Motivations RDF-Schema OWL Discussions
Web sémantique
Pierre-Antoine Champin*, Michael Mrissa
2010-2011
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 1 / 31
Motivations RDF-Schema OWL Discussions
Sémantique spécifique
RDF fournit une base sémantique commune pour le Web de données
distribuées et liées.
Mais on souhaiterait pouvoir également exprimer la sémantique
spécifique d’un vocabulaire donné (i.e. un ensemble d’URIs), i.e. :
les relations sémantiques au sein de ce vocabulaire,
les relations sémantiques avec d’autres vocabulaires
(interopérabilité).
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 2 / 31
Motivations RDF-Schema OWL Discussions
Inférences
rdf:type
r univ:MaîtreDeConférences
|=
rdf:type
r univ:EnseignantChercheur
|=
rdf:type
r foaf:Person
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 3 / 31
Motivations RDF-Schema OWL Discussions
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.
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 4 / 31
Motivations RDF-Schema OWL Discussions
Origine
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:.
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 5 / 31
Motivations RDF-Schema OWL Discussions
rdfs:subClassOf
rdf:type rdfs:subClassOf
r C D
|=
rdf:type
r D
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 6 / 31
Motivations RDF-Schema OWL Discussions
rdfs:subPropertyOf
rdfs:subPropertyOf
p q
p
r s
|=
q
r s
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 7 / 31
Motivations RDF-Schema OWL Discussions
rdfs:domain
rdfs:domain
p C
p
r s
|=
rdf:type
r C
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 8 / 31
Motivations RDF-Schema OWL Discussions
rdfs:range
rdfs:range
p C
p
r s
|=
rdf:type
s C
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 9 / 31
Motivations RDF-Schema OWL Discussions
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.
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 10 / 31
Motivations RDF-Schema OWL Discussions
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.
rdf:type rdf:type rdf:type
:dumbo :Éléphant :Espèce rdfs:Class
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 11 / 31
Motivations RDF-Schema OWL Discussions
Exemple : FOAF
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 12 / 31
Motivations RDF-Schema OWL Discussions
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.
→ 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.
foaf:knows rdf:type
:JohnDoe :doc1 foaf:Document
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 13 / 31
Motivations RDF-Schema OWL Discussions
Logiques de description
Les logiques de description (LD) sont une famille de langages, tous
sous-ensemble de la logique du premier ordre (LPO, ou logique des
prédicats). L’objectif des LD est de :
fournir un formalisme de plus haut niveau que la logique des
prédicats ;
garantir certaines propriétés de décidabilité et de complexité
pour les mécanismes de raisonnement.
(rappel : la LPO est indécidable)
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 14 / 31
Motivations RDF-Schema OWL Discussions
Formalisme de plus haut niveau
En logique de description, l’univers du discours est composé de :
LD RDF LPO
Individu Ressource Terme
Concept Classe Prédicat 1-aire
Rôle Propriété Prédicat 2-aire
/!\ en logique, ces trois catégories sont disjointes
→ pas de méta-modélisation (mais on verra que l’on peut
partiellement contourner cette limitation)
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 15 / 31
Motivations RDF-Schema OWL Discussions
Concepts complexes : constructeurs ensemblistes
⊤ concept universel (top), dénote le domaine
d’interprétation
∆
⊥ concept absurde (bottom), dénote l’ensemble vide
∅
¬C complément
{ x | ¬C(x) }
C ⊓ D intersection
{ x | C(x) } ∩ { x | D(x) }
C ⊔ D union
{ x | C(x) } ∪ { x | D(x) }
{x} extension
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 16 / 31
Motivations RDF-Schema OWL Discussions
Constructeurs ensemblistes : exemples
¬Docteur
Femme ⊓ Docteur
Homme ⊔ Femme
Homme ⊔ (Femme ⊓ ¬Docteur)
{john, paul, george, ringo}
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 17 / 31
Motivations RDF-Schema OWL Discussions
Concepts complexes : restrictions
r C qualificateur existentiel
∃
{ x | ∃ y, r(x, y) ∧ C(y) }
∀ r C qualificateur universel
{ x | ∀ y, ¬r(x, y) ∨ C(y) }
= n r C quantificateur
{ x | #{y | r(x, y) ∧ C(y)} = n }
≤ n r C quantificateur (max)
≥ n r C quantificateur (min)
NB : on omet généralement C lorsqu’il s’agit de ⊤ ; e.g. ∃ r, = 1 r.
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 18 / 31
Motivations RDF-Schema OWL Discussions
Restrictions : exemples
∃ enfant
∀ enfant Docteur
(∃ enfant) ⊓ (∀ enfant Docteur)
≥ 2 enfant Docteur
≥ 2 enfant (Homme ⊓ Docteur)
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 19 / 31
Motivations RDF-Schema OWL Discussions
Rôles complexes
r− rôle inverse
{ (x, y) | r(y, x) }
r∘s rôle composé
{ (x, y) | ∃ z, r(x, z) ∧ s(z, y) }
¬r complément
{ (x, y) | ¬r(x, y) }
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 20 / 31
Motivations RDF-Schema OWL Discussions
Rôles complexes : exemples
enfant−
parent ∘ parent
parent ∘ fils
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 21 / 31
Motivations RDF-Schema OWL Discussions
Axiomes
C ⊑ D subsomption de concept
∀ x, C(x) → D(x)
r ⊑ s subsomption de rôles
∀ x, y, r(x, y) → s(x, y)
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 22 / 31
Motivations RDF-Schema OWL Discussions
Axiomes : exemples
Femme ⊑ Personne (rdfs:subClassOf)
fils ⊑ enfant (rdfs:subPropertyOf)
∃ enfant ⊑ Parent (rdfs:domain)
∃ fils− ⊑ Homme (rdfs:range)
Personne ⊑ Homme ⊔ Femme
Personne ⊑ (= 1 père Homme) ⊓ (= 1 mère Femme)
Personne ⊑ ¬Document
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 23 / 31
Motivations RDF-Schema OWL Discussions
Décidabilité et complexité
Chaque LD impose des contraintes sur :
les axiomes autorisés,
les constructeurs autorisés,
la manière de les combiner,
afin de garantir que les mécanismes de raisonnement
seront décidables,
auront une complexité maximale.
→ compromis entre expressivité et complexité.
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 24 / 31
Motivations RDF-Schema OWL Discussions
OWL et OWL 2
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.
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 25 / 31
Motivations RDF-Schema OWL Discussions
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
comme SQL
RL peut s’implémenter au dessus d’un langage à base de
règles
OWL2 Full
OWL2 DL
OWL2 EL OWL2 QL OWL2 RL
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 26 / 31
Motivations RDF-Schema OWL Discussions
Méta-modélisation en OWL 2
En LD, les individus, les concepts et les rôles sont disjoints, alors
qu’en RDF-Schema, les classes et les propriétés sont également
des ressources.
En OWL 2, chaque URI peut désigner à la fois un individu, une
classe et/ou une propriété.
On peut toujours déterminer syntaxiquement laquelle des
signification est souhaitée :
{ foo } ⊑ ∃ foo foo
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 27 / 31
Motivations RDF-Schema OWL Discussions
Représentation des LD en RDF
rdf:type owl:onProperty owl:someValuesFrom rdfs:subClassOf
owl:Restriction :Personne
owl:inverseOf owl:unionOf
:enfant
rdf:first rdf:rest
:Homme
rdf:first rdf:rest
:Femme rdf:nil
−
Figure: ∃ enfant Personne ⊑ Homme ⊔ Femme
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 28 / 31
Motivations RDF-Schema OWL Discussions
Implémentations
FaCT [Link]
Racer [Link]
Pellet [Link]
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 29 / 31
Motivations RDF-Schema OWL Discussions
Complexité de la sémantique de OWL
Faire « rentrer » la sémantique des LD dans celle de RDF n’est pas
simple.
RDF est moins structuré que les LD (tout est ressource) ;
certaines formules atomiques en LD deviennent composites en
RDF, autorisant des formes dégradées (incomplètes ou
ambigües).
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 30 / 31
Motivations RDF-Schema OWL Discussions
Problème des différents régimes d’inférence
Chaque « couche » sémantique (RDF, RDF-S, OWL) définit son
propre régime d’inférence.
Nécessaire car l’expressivité de chaque couche est limitée (elle ne
peut pas exprimer la couche suivante).
Limite la portabilité : étant donné un graphe RDF, comment
savoir quels termes sont censé avoir une sémantique
particulière ?
→ proposition de Pat Hayes (ISWC 2009) d’augmenter RDF pour lui
donner l’expressivité de la LPO. Les autres couches deviendraient
alors simplement du « sucre » syntaxique.
Pierre-Antoine Champin*, Michael Mrissa Web sémantique 31 / 31