Vocabulaires et ontologies¶§
author: | Pierre-Antoine Champin |
---|
Introduction¶§
Motivation¶§
Objectif : expliciter formellement la sémantique des vocabulaires (en conformité avec la sémantique de RDF), afin de
- limiter les problèmes d’ambigüité sur les termes
- permettre leur découverte dynamique
- relations sémantiques internes
- assurer l’interopérabilité
- relations sémantiques avec d’autres vocabulaires
Expression de la sémantique¶§
On souhaite bien sûr exprimer la sémantique des termes en utilisant RDF lui même. Il faut donc définir un méta-vocabulaire, dont la sémantique soit connue a priori.
- Analogie : XML-Schema est un vocabulaire XML dont la sémantique est connue a priori, et qui permet d’exprimer la structure de nouveaux vocabulaires.
RDF-Schema¶§
Présentation¶§
RDF-Schema (ou RDF-S) est une recommandation du W3C publiée en même temps que RDF (1999 et révisée en 2004).
Il permet d’exprimer une hiérarchie de classes et une hiérarchie de propriétés (relations).
→ hiérarchie au sens large : treillis
Il permet aussi d’exprimer des contraintes sémantiques sur les propriétés et les classes.
⚠ contrainte sémantique ≠ contrainte d’intégrité
Le préfixe habituellement associé à ce méta-vocabulaire est
rdfs:
.
Sémantique¶§
La sémantique de RDF-Schema est construite sur la sémantique de RDF :
- \(𝔍\) est la fonction d’interprétation qui associe une ressource à un nœud ;
- \(𝔍_p\) est la fonction qui associe une relation binaire à une ressource
On y ajoute une interprétation spécifique des classes :
- \(𝔍_c\) associe un ensemble de ressource à une ressource
Enfin, une interprétation conforme à RDF-S doit vérifier un certain nombre de contraintes qui traduisent la sémantique propre aux termes du méta-vocabulaire.
rdfs:subClassOf¶§
Contrainte :
Exemple :
⊧
rdfs:subPropertyOf¶§
Contrainte :
Exemple :
⊧
rdfs:domain¶§
Contrainte :
Exemple :
⊧
rdfs:range¶§
Contrainte :
Exemple :
⊧
Documentation¶§
RDF-Schema fournit aussi des termes pour documenter un vocabulaire :
rdfs:label
permet d’associer un libellé textuel à un URI (éventuellement plusieurs, par exemple dans plusieurs langues) ;rdfs:comment
permet d’associer un commentaire textuel plus long ;rdfs:seeAlso
permet de pointer vers une autre ressource.
Méta-modélisation¶§
Rien n’empèche, en RDF-S, d’avoir une classe qui soit elle même une instance d’une autre classe (méta-classe). C’est d’ailleurs de cette manière que les classes sont identifiées.
Contrainte sémantique ≠ contraintes d’intégrit鶧
Les méta-propriétés rdfs:domain
et rdfs:range
ne servent pas à vérifier qu’un graphe serait « valide ». Il ne permettent que d’inférer des faits supplémentaires.
Comme RDF-S n’a pas de négation, ceci n’entraîne jamais d’incohérence formelle au niveau des classes et des propriétés.
→ en d’autre termes, la sémantique de RDF-S ne permet pas de détecter les incohérences (conceptuelles) que pourraient entrainer ces inférences.
OWL¶§
Présentation¶§
OWL (Web Ontology Language) a été recommandé par le W3C en 2004, et sa version 2 en 2009.
- C’est un méta-vocabulaire (comme RDF-S) inspiré des logiques de descriptions avec valeurs concrètes (littéraux).
- Il définit plusieurs profils offrant des compromis différents en terme d’expressivité et de complexité.
- Il mime les capacités de méta-modélisation de RDF-S (punning).
Profils OWL 2¶§
Full | aucune contrainte, indécidable |
DL | minimum de contraintes, décidable mais très complexe |
EL | quantifications existentielles (EL++), expressivité adaptée à certains domaines (biologie) |
QL | peut s’implémenter au dessus d’un langage de requêtes (SQL) |
RL | peut s’implémenter au dessus d’un langage à base de règles (Prolog) |
Axiomes OWL¶§
OWL offre des axiomes « de haut niveau » qui visent à
- améliorer la lisibilité de la base de connaissance
- optimiser le raisonnement
- contraindre l’utilisation de certains constructeurs à certaines formes d’axiome selon les profils (e.g. Property Chain)
Sur les concepts¶§
OWL | LD |
---|---|
rdfs:subClassOf |
C ⊑ D |
rdf:type |
C(a) |
owl:equivalentClass |
C ⊑ D et D ⊑ C |
owl:disjointWith , owl:AllDisjointClasses |
C ⊑ ¬D |