How to edit the DBpedia Ontology

From Mediawiki1
Revision as of 12:19, 9 March 2022 by Wladek92 (talk | contribs) (DBpedia has moved to GitHub; old -> http://dbpedia.hg.sourceforge.net/hgweb/dbpedia/extraction_framework/file/84eeec36fa5d/core/doc/mapping_language/)
Jump to navigationJump to search

The DBpedia ontology is based on OWL and forms the structural backbone of DBpedia. It describes classes, e.g. person, city, country, and properties, e.g. birth place, longitude. Information in Wikipedia articles is then mapped via the above described mapping to this ontology. Most prominently, many Wikipedia pages use so called infoboxes. For instance, the English wikipedia article about London contains a "settlement infobox". This infobox may be mapped to e.g. the class "populated place" (see PopulatedPlace) in the DBpedia ontology and the attributes in the infobox are mapped to properties in the DBpedia ontology. This way, a unified view over all data in infoboxes can be obtained. Since this information conforms to Semantic Web standards, it can be queried and combined by a broad range of tools in a useful way. This increases the value of information entered by the Wikipedia community.

A listing of all classes, properties and datatypes used by the DBpedia ontology is found below:

You can also download an OWL file containing all classes, properties and datatypes as they are currently defined.

Tools

These tools might help you edit the ontology:

  • Exploring the Ontology
  • Ontology Validator. When you are editing a mapping, there is a validate button on the bottom of the page. Pressing the button validates your changes for syntactic correctness and highlights inconsistencies such as missing property definitions.
  • Mapping Validator. Checks if mappings conform to the DBpedia ontology, it is updated once per day
  • MappingTool. The DBpedia MappingTool is a graphical user interface that supports users to create and edit mappings.
  • DBpedia Mapping [

https://github.com/dbpedia/extraction-framework/tree/master/core/doc/mapping_language Language Specification] (detailed)

How to edit

How to add an ontology class

  • Find a list of existing ontology classes via the sidebar (Ontology Classes) or have a look at the class hierarchy.
  • If you like to add a new ontology class, create a wiki page in the OntologyClass namespace. The page name has to be upper camel case.
  • Write a Class template defining the ontology class properties like label, super class etc..

How to add an ontology property

Ontology Schema Definition Language

The language consists of the following templates to cover the ontology schema definition:

The Class template offers the following template parameters:

  • rdfs:label
  • rdfs:comment: you must fill this out explaining the particulars of usage
  • rdfs:subClassOf
  • owl:equivalentClass

The DatatypeProperty template offers the following template parameters:

  • rdfs:label
  • rdfs:comment: you must fill this out explaining the particulars of usage
  • rdfs:domain
  • rdfs:range
  • owl:equivalentProperty

The ObjectProperty template offers the following template parameters:

  • rdfs:label
  • rdfs:comment: you must fill this out explaining the particulars of usage
  • rdfs:domain
  • rdfs:range
  • owl:equivalentProperty

Examples

The definition of the DBpedia ontology class Person (using the Class template):

{{Class
| labels =
{{label|en|Person}}
}}

The definition of the DBpedia ontology property height (using the DatatypeProperty template):

{{DatatypeProperty
| labels =
{{label|en|height}}
| rdfs:domain = Person
| rdfs:range  = centimeter
}}

The definition of the DBpedia ontology property doctoralAdvisor (using the ObjectProperty template):

{{ObjectProperty
| labels =
{{label|en|doctoral advisor}}
| rdfs:domain = Scientist
| rdfs:range  = Person
}}