Writing Mappings/Tables: Difference between revisions

From DBpedia Mappings
Jump to navigationJump to search
No edit summary
No edit summary
Line 1: Line 1:
The full [http://dbpedia.svn.sourceforge.net/viewvc/dbpedia/trunk/extraction/doc/mapping%20language/DBpedia%20Mapping%20Language.docx documentation] on writing mappings can be found via the DBpedia SVN Repository.
Table mappings apply to tables containing a set of keywords in the table header.  
 
Table mappings should be added to the ''Mapping'' namespace, using the ''Table'' prefix, e.g. [[Mapping:Table/Automobile|here]].


If a table mapping is defined, all rows of the table are mapped to instances of an ontology class, all of its columns are be mapped to ontology properties.
If a table mapping is defined, all rows of the table are mapped to instances of an ontology class, all of its columns are be mapped to ontology properties.
A table mapping applies to a table if a set of keywords occurs in the table header.


The [[Template:TableMapping|TableMapping]] template offers the following template parameters:
== How to map a Wikipedia table ==
* ''mapToClass''
** Table rows are mapped to ontology classes. The template parameter mapToClass allows one DBpedia ontology class as a value.
* ''correspondingClass'', ''correspondingProperty''
** If an instance of type correspondingClass is found in the same section as the table, it will be connected to the instances extracted from the table rows by correspondingProperty.
* ''keywords''
** Keywords define mandatory table column headers or parts of them. Keywords can be separated by semicolons meaning they have to occur in different column headers. Alternatives of keywords can be separated by colons.
* ''header''
** Lists all mapped table column headers, separated by semicolons. Each column definition can contain alternative definitions, separated by colons. If the column is defined by several keywords, the keywords have to be separated by & in the order of their appearance.
* ''mappings''
** Mappings map table columns to ontology properties, they have to be defined by using the same templates as in mappings on [[Template:TemplateMapping]]. A separate mapping for each alternative column header definition has to be specified.
<!--
The DBpediaTableMapping template offers the following template parameters:
• mapToClass
Table rows are mapped to ontology classes. The template parameter mapToClass allows one DBpedia ontology class as a value.
• correspondingClass, correspondingProperty
If an instance of type correspondingClass is found in the same section as the table, it will be connected to the instances extracted from the table rows by correspondingProperty.
• keywords
Keywords define mandatory table column headers or parts of them. Keywords can be separated by semicolons meaning they have to occur in different column headers. Alternatives of keywords can be separated by colons.
• header
Lists all mapped table column headers, separated by semicolons. Each column definition can contain alternative definitions, separated by colons. If the column is defined by several keywords, the keywords have to be separated by & in the order of their appearance.
• mappings
Mappings map table columns to ontology properties, they have to be defined by using the same templates as in mappings on [[Template:TemplateMapping]]. A separate mapping for each alternative column header definition has to be specified.


* Find important and unique keywords in the table header.
* Create a wiki page in this wiki in the Mapping namespace, using the ''Table'' prefix. You can define more than one table mapping on one wiki page. The wiki page name doesn't have to refer to any of the table keywords. Bundling table mappings depending on the table topic could be useful.
* Decide on the ontology class you would like to map the table to.
* Write a [[Template:TableMapping]] to map the Wikipedia table rows to an ontology class and save it to the created wiki page in the Mapping namespace.




R9. All rows of a table shall be mapped to instances of an ontology class, all of its columns shall be mapped to ontology properties.
The full [http://dbpedia.svn.sourceforge.net/viewvc/dbpedia/trunk/extraction/doc/mapping%20language/DBpedia%20Mapping%20Language.docx documentation] on writing mappings can be found via the DBpedia SVN Repository.
Example: The rows of tables with the columns Engine Name, Type, Engine code, and Top speed are mapped to instances of the ontology class Automobile Engine, while the columns are mapped to the corresponding ontology properties. If an infobox that is mapped to the ontology class Automobile is in the same section as the table, the instances generated for the table rows are connected to the instance generated from the infobox by the ontology property MeanOfTransportation/engine.
Implementation:
{{ TableMapping
| mapToClass            = AutomobileEngine
| correspondingClass    = Automobile
| correspondingProperty = MeanOfTransportation/engine
| keywords              = engine; speed
| header                = speed; code; name, engine ; type
| mappings              =
{{ PropertyMapping | templateProperty = engine | ontologyProperty = AutomobileEngine/name }}
{{ PropertyMapping | templateProperty = type | ontologyProperty = AutomobileEngine/type }}
{{ PropertyMapping | templateProperty = code | ontologyProperty = AutomobileEngine/code }}
{{ PropertyMapping | templateProperty = speed | ontologyProperty = AutomobileEngine/speed | unit = kilometerPerHour }}
}}
-->

Revision as of 13:01, 8 March 2010

Table mappings apply to tables containing a set of keywords in the table header.

If a table mapping is defined, all rows of the table are mapped to instances of an ontology class, all of its columns are be mapped to ontology properties.

How to map a Wikipedia table

  • Find important and unique keywords in the table header.
  • Create a wiki page in this wiki in the Mapping namespace, using the Table prefix. You can define more than one table mapping on one wiki page. The wiki page name doesn't have to refer to any of the table keywords. Bundling table mappings depending on the table topic could be useful.
  • Decide on the ontology class you would like to map the table to.
  • Write a Template:TableMapping to map the Wikipedia table rows to an ontology class and save it to the created wiki page in the Mapping namespace.


The full documentation on writing mappings can be found via the DBpedia SVN Repository.