Outils personnels
User menu

Tutoriel édition de mappings

De Dbpedia.fr.

(Différences entre les versions)
(partie édition d'une classe)
(partie édition des propriétés)
Ligne 15 : Ligne 15 :
Chaque classes est définie par un modèle [http://mappings.dbpedia.org/index.php/Template:Class <nowiki>{{Class}}</nowiki>] dans la page dans l'espace de noms ''OntologyClass:'' avec le nom de la classe.  
Chaque classes est définie par un modèle [http://mappings.dbpedia.org/index.php/Template:Class <nowiki>{{Class}}</nowiki>] dans la page dans l'espace de noms ''OntologyClass:'' avec le nom de la classe.  
-
Par exemple la classe ''Person'' est définie dans la page http://mappings.dbpedia.org/index.php/OntologyClass:Person qui contient :
+
Par exemple la classe ''http://dbpedia.org/ontology/Person'' est définie dans la page http://mappings.dbpedia.org/index.php/OntologyClass:Person qui contient :
  <nowiki>{{Class
  <nowiki>{{Class
| labels =
| labels =
Ligne 38 : Ligne 38 :
=== Édition des propriétés ===
=== Édition des propriétés ===
-
* Liste des propriétés  : http://mappings.dbpedia.org/index.php?title=Special:AllPages&namespace=202
 
 +
Chaque propriété est définie dans la page dans l'espace de noms ''OntologyProperty:'' avec le nom de la propriété.
 +
Deux modèles sont utilisés suivant s'il s'agit
 +
* d'une propriété ayant pour valeur des instances : [http://mappings.dbpedia.org/index.php/Template:ObjectProperty <nowiki>{{ObjectProperty}}</nowiki>],
 +
* ou une propriété ayant pour valeur des litéraux : [http://mappings.dbpedia.org/index.php/Template:DatatypeProperty <nowiki>{{DatatypeProperty}}</nowiki>].
-
=== Édition des datatypes ===
+
Les champs de ces modèles sont les mêmes, la seule différence concerne les valeurs admises pour le champ ''rdfs:range''.
 +
Par exemple pour propriété ''http://dbpedia.org/ontology/locationCity'' est définie dans la page http://mappings.dbpedia.org/index.php/OntologyProperty:LocationCity qui contient :
 +
<nowiki>{{ObjectProperty
 +
| labels =
 +
{{label|en|location city}}
 +
{{label|fr|situé dans la ville}}
 +
[...]
 +
| rdfs:domain = Organisation
 +
| rdfs:range = City
 +
| rdfs:subPropertyOf = location
 +
|comments =
 +
{{comment|en|City the thing is located.}}
 +
}}</nowiki>
 +
Le champ ''rdfs:range'' doit contenir une classe définie dans le wiki.
 +
La propriété ''http://dbpedia.org/ontology/birthDate'' est définie dans la page http://mappings.dbpedia.org/index.php/OntologyProperty:BirthDate qui contient :
 +
<nowiki>{{DatatypeProperty
 +
| labels =
 +
{{label|en|birth date}}
 +
{{label|fr|date de naissance}}
 +
{{label|de|Geburtsdatum}}
 +
[...]
 +
| rdfs:domain = Person
 +
| rdfs:range = xsd:date
 +
| rdf:type = owl:FunctionalProperty
 +
| owl:equivalentProperty = schema:birthDate
 +
}}</nowiki>
 +
Le champ ''rdfs:range'' doit contenir soit un datatype XSD, soit un datatype défini dans le wiki (voir [[#Édition_des_datatypes]]).
 +
 +
 +
Les autres champs sont en commun :
 +
* ''labels'' et ''comments'', définis comme pour les classes permettent d'exprimer et d'expliquer la propriété dans différentes langues.
 +
* ''rdfs:domain'' donne le domaine de la propriété, c'est-à-dire une classe à laquelle doivent appartenir les sujets de la propriété, celle-ci doit avoir été définie dans le wiki.
 +
* ''rdfs:subPropertyOf'' et ''owl:equivalentProperty'' permettent de définir des relations de généralisation/spécialisation ou d'équivalence par rapport à d'autres propriétés, celles-ci doivent être définies dans le wiki.
 +
* ''rdf:type'' permet de préciser le type de la propriété (au delà du type ''owl:ObjectProperty'' / ''owl:DatatypeProperty''). Actuellement seul le type ''owl:FunctionalProperty'' peut être donné, il signifie que la propriété définit une fonction, c'est-à-dire qu'elle ne peut prendre qu'une valeur par sujet.
 +
 +
 +
''Liens utiles'' :
 +
* Liste des propriétés  : http://mappings.dbpedia.org/index.php?title=Special:AllPages&namespace=202
 +
 +
 +
 +
=== Édition des datatypes ===
== Édition des mappings ==
== Édition des mappings ==

Version du 18 mars 2013 à 10:09

Les mappings sont édités sur le site http://mappings.dbpedia.org, la documentation en Anglais peut être consultée cette la page.

Il s'agit d'un mediawiki, différentes données de DBpedia y sont éditées :

  • l'ontologie
    • les classes
    • les propriétés
    • les datatypes
  • les mappings pour faire correspondre les modèles à des classes de l'ontologie et leurs attributs à des propriétés.


Sommaire

Édition de l'ontologie

Édition des classes

Chaque classes est définie par un modèle {{Class}} dans la page dans l'espace de noms OntologyClass: avec le nom de la classe.

Par exemple la classe http://dbpedia.org/ontology/Person est définie dans la page http://mappings.dbpedia.org/index.php/OntologyClass:Person qui contient :

{{Class
| labels =
{{label|en|person}}
{{label|de|Person}}
{{label|fr|personne}}
[...]
| rdfs:subClassOf = Agent
| owl:equivalentClass = foaf:Person, schema:Person
}}

Le nom de la classe est donnée par le nom de la page qui contient ce modèle (ici Person), le modèle contient en plus les champs :

  • label qui permet de donner les labels dans différentes langues en utilisant le modèle {{label}}. Ces entrées gênèrent des triplets avec la propriété rdfs:label.
  • comments qui permet de donner une explication plus détaillée de la classe dans différentes langues avec les modèles {{comment}}. Ces entrées génèrent des triplets avec la propriété rdfs:comment. Une bonne pratique est d'y inclure une référence à un article Wikipédia ou Wiktionnaire.
  • rdfs:subClassOf, owl:equivalentClass et owl:disjointWith pour placer la classe dans la hiérarchie de classes.
  • specificProperties permet de spécifier l'unité par défaut à utiliser pour les valeurs d'une propriété applicable à cette classe.


Liens utiles:


Édition des propriétés

Chaque propriété est définie dans la page dans l'espace de noms OntologyProperty: avec le nom de la propriété.

Deux modèles sont utilisés suivant s'il s'agit

Les champs de ces modèles sont les mêmes, la seule différence concerne les valeurs admises pour le champ rdfs:range.

Par exemple pour propriété http://dbpedia.org/ontology/locationCity est définie dans la page http://mappings.dbpedia.org/index.php/OntologyProperty:LocationCity qui contient :

{{ObjectProperty
| labels =
{{label|en|location city}}
{{label|fr|situé dans la ville}}
[...]
| rdfs:domain = Organisation
| rdfs:range = City
| rdfs:subPropertyOf = location
|comments =
{{comment|en|City the thing is located.}}
}}

Le champ rdfs:range doit contenir une classe définie dans le wiki.

La propriété http://dbpedia.org/ontology/birthDate est définie dans la page http://mappings.dbpedia.org/index.php/OntologyProperty:BirthDate qui contient :

{{DatatypeProperty
| labels =
{{label|en|birth date}}
{{label|fr|date de naissance}}
{{label|de|Geburtsdatum}}
[...]
| rdfs:domain = Person
| rdfs:range = xsd:date
| rdf:type = owl:FunctionalProperty
| owl:equivalentProperty = schema:birthDate
}}

Le champ rdfs:range doit contenir soit un datatype XSD, soit un datatype défini dans le wiki (voir #Édition_des_datatypes).


Les autres champs sont en commun :

  • labels et comments, définis comme pour les classes permettent d'exprimer et d'expliquer la propriété dans différentes langues.
  • rdfs:domain donne le domaine de la propriété, c'est-à-dire une classe à laquelle doivent appartenir les sujets de la propriété, celle-ci doit avoir été définie dans le wiki.
  • rdfs:subPropertyOf et owl:equivalentProperty permettent de définir des relations de généralisation/spécialisation ou d'équivalence par rapport à d'autres propriétés, celles-ci doivent être définies dans le wiki.
  • rdf:type permet de préciser le type de la propriété (au delà du type owl:ObjectProperty / owl:DatatypeProperty). Actuellement seul le type owl:FunctionalProperty peut être donné, il signifie que la propriété définit une fonction, c'est-à-dire qu'elle ne peut prendre qu'une valeur par sujet.


Liens utiles :


Édition des datatypes

Édition des mappings

Mapping élémentaire d'un modèle

Mappings des propriétés

Introduction de noeuds intermédiaires

Mappings conditionnels