• Aucun résultat trouvé

OWL comme une variété de DL

3.2 Les Logiques de Description

3.2.2 OWL comme une variété de DL

Il est toujours possible d’augmenter l’expressivité d’un langage formel quelconque en lui adjoignant de nouveaux opérateurs ou en assouplissant les règles de leur utilisation. Dans le cas de DL comme dans celui d’autres formalismes logiques – e.g. le calcul des prédicats dont la Logique du Premier Ordre (L1) constitue une forme à

la fois cohérente et complète – le surplus d’expressivité se fait toujours au détriment des raisonnements ou, plus justement, du temps nécessaire à un solveur pour décider de la vérité d’une formule. S’est instauré avec le temps une convention permettant de connaître les propriétés expressives d’une DL sur la seule base de son nom. Les premières lettres du nom indiquent la famille à laquelle appartient la logique, les suivantes les extensions qu’elle possède.

Ainsi que nous l’avons vu en sec.3.2.1, une logique de description appartenant à AL est une logique dotée de la possibilité d’exprimer i) une négation atomique (¬D), ii) une intersection de concepts (C ⊓D), iii) une restriction universelle ( ∀R.C) et iv) une quantification existentielle limitée (C ⊓ ∃R.⊤).

24Nous verrons en sec.4.3.2 que cette confusion est largement répandues au sein d’une partie des

détracteurs de l’ingénierie ontologique.

Une première extension dont il peut être intéressant de se pourvoir n’est autre que la possibilité d’exprimer la négation sur autre chose que des concepts atomiques (extension C) – e.g. ¬(C ⊓D) : tous les individus qui ne sont pas à la fois des C et des

D. Une logique pourvue de ce pouvoir expressif est alors uneALC. On peut également choisir de se doter de la possibilité d’exprimer une disjonction de concepts (extension U) – e.g. (C ⊔ D) tous les individus qui sont des C ou des D – de se doter de rôles transitifs – e.g. etreAncetreDe – ou encore, de pouvoir exprimer des quantificateurs existentiels non limités (extension E) – e.g. P ersonne ⊓ ∃aP ourEnfant.F eminin : parents dont au moins l’un des enfants est de sexe féminin. En raison de la similitude de la logique ainsi obtenue – autrefois appelée ALCUE ou ALCR+ – avec la logique

multi-modale S4m, l’on doit à (Schild 1991) la commode abréviation S que nous

adopterons.

Hiérarchie de classes, rôle inverses et type de données La logique de des-

cription S constitue le bagage commun de l’ensemble des langages développés pour la sémantique du web (Horrocks, P.F. Patel-Schneider et al. 2007) soit, plus spécifiquement, OWL (Cf sec.1.3.3) ou l’Ontology Inference Layer (OIL) – langage ontologique basé sur la syntaxe de RDF/XML quoique antérieur à sa spécifica- tion définitive (Horrocks, Fens et al. 2000 ; Horrocks, Sattler et Tobies 1999). Il manque toutefois certaines capacités expressives pour retrouver les pro- priétés de OWL. La première, et non des moindres, capacité est celle de pouvoir exprimer les rapports hiérarchiques entretenus par des rôles (extension H) – e.g.

aP ourEnf ant ⊑ aP ourDescendant signifie que «avoir un enfant» est une moda- lité particulière d’«avoir un descendant».26Une autre importante capacité partagée

par toutes les versions de OWL consiste à pouvoir exprimer le fait qu’un rôle est l’inverse d’un autre (extension I) qui correspond à la relation owl : inverseOf – e.g. «être parent de » «être enfant de». Une autre propriété ((D) pour «Data property»), implicite car laissée de côté dans une partie des sources traitant des rapports entre- tenus par DL et les langages ontologiques, est la possibilité de distinguer les rôles entre individus des rôles entre individus et littéraux (ou valeurs) – il s’agit là d’une distinction commune et utilisée, bien que rien ne s’oppose à introduire davantage de contraintes de types de données (entier, décimale, chaîne de caractères, etc etc). 27

La logique ainsi obtenue SHI(D) est commune à l’ensemble des versions de OWL et OIL (Danyaro, Jaafar et Liew 2012 ; Horrocks, P.F. Patel-Schneider

26

Formulé en premier ordre : ∀x, y(aP ourEnfant(x, y) → aP ourDescendant(x, y))

T-box A-box

P ersonne⊑ Animal ⊓ Bipede Sally: GrandMere F emme= P ersonne ⊓ F eminin. Sam: ¬P arent M ere= F emme ⊓ ∃P arentDe.P ersonne. John: Homme

P arent= Mere ⊔ P ere. (P eter, John) : P arentDe P arentDe= EnfantDe.

Homme= P ersonne ⊓ ¬F emme.

M ereSansF ille= Mere ⊓ ∀P arentDe.¬F emme. GrandM ere= F emme ⊓ ∃P arentDe.P arent.

Table 3.2 – A-Box Vs T-Box

et al. 2007). Elles diffèrent par leur manière de gérer les contraintes de cardinalité et leur capacité à dénoter des individus spécifiques de la A-box.

Quelques inférences possibles en SH L’exemple qui va suivre présentera, mais il n’y a rien d’étonnant à cela, une évidente analogie de structure avec les exemples d’inférences que pourrait effectuer un système expert sur un réseau de connaissances liées à travers le web – voir sec.2.2.1.3. Imaginons qu’une base de connaissance possède les faits suivants.

Sur la base des ces axiomes et des règles précédemment évoquées, ce système est en mesure de savoir i) que Sally est une femme, ii) une mère et, par là même, non une mère sans enfant. Il est également en mesure de savoir, de par la définition de ce rôle par son inverse, que John est l’enfant de Peter.

Ce système demeure cependant incapable de déduire que Peter est père, entendu que ce concept n’a été défini que comme le complémentaire de mère et non au moyen d’une définition par le rôle ParentDe comme cela est le cas pour mère. Enfin, spécificité des DL suffisamment pertinente pour s’y attarder un instant, il n’est pas non plus possible pour le système de savoir si Peter est parent d’un autre enfant que John. Cela tient au fait que la sémantique de la A-box admet une hypothèse dite de

monde ouvert sur laquelle nous reviendrons en sec.3.2.3 p.105.

Expressivité en OWL : Restriction de cardinalité Semblable à une assertion

d’unicité dans d’autres logiques mathématiques (∃!xF (x)), le seul type de contrainte de cardinalité exprimable au moyen de OWL-Lite (SHIF(D)) consiste à exprimer qu’un rôle est fonctionnel (F Role Functionality) soit, en d’autres termes, qu’il ne doit exister qu’un unique individu capable de satisfaire le rôle. Tel serait, par

exemple, le cas d’un rôle comme «est situé dans le Pays», entendu que rien ni personne ne saurait se trouver dans deux pays à la fois.

OWL-DL (SHOIN (D)) et OWL-Full (SHOIQ(D)) partagent la capacité d’ex- primer des contraintes de cardinalité supérieures à 1. Elles diffèrent par leur manière de le faire. Ainsi, là ou OWL-DL quantifie sur les valeurs d’une propriété, OWL-Full quantifie sur les valeurs d’une propriété qui instancient certains types (classes, types de données) – par opposition à la restriction de cardinalité standard, on parle alors de restriction de cardinalité qualifiée (qualified cardinality restrictions). Quelques exemples devraient éclairer cette importante nuance. Une restriction de cardinalité standard serait la définition d’un quartet. Un quartet est un groupe dans lequel jouent exactement quatre musiciens. Une telle définition s’exprimerait de la sorte, en OWL/XML. <owl:Class rdf:about="Quartet"> <rdfs:subClassOf rdf:resource="Goupe"/> <owl:Restriction> <owl:onProperty rdf:resource="joueDansleGroupe"/> <owl:cardinality rdf:datatype="nonNegativeInteger"> 4 </owl:cardinality> </owl:Restriction> </owl:Class>

Décomposée en langue naturelle, cette définition exprime qu’un quartet est un type (owl : Class), sous-type de groupe tel que exactement 4 individus satisfont le rôle (owl : onP roperty) joue dans le groupe. Par contraste, une restriction de cardinalité qualifiée serait nécessaire pour définir un big band de jazz. En effet, un groupe de jazz n’est un big band que s’il possède une section de cuivre – au moins 3 cuivres. En d’autres termes, il faut qu’au moins 3 musiciens du groupes soient des cuivres – i.e. qu’au moins trois individus non seulement satisfassent le rôle joue dans

le groupe mais également instancie le type Cuivre.

<owl:Class rdf:about="BigBand">

<rdfs:subClassOf rdf:resource="Goupe"/> <owl:Restriction>

<owl:onProperty rdf:resource="joueDansleGroupe"/> <owl:onClass rdf:resource="Cuivre"/>

DL OWL (v2.0)

Nom Syntaxe Semantique Sufixe

concept atomique A AI ⊆ ΔI owl : Class rôle atomique R RI ⊆ ΔI × ΔI

owl: ObjectP roperty

rôle transitif R∈ R+ RI= (RI)+ owl: T ransitiveP roperty

conjonction C⊓ D CI ∩ DI S owl: intersectionOf disjonction C⊔ D CI ∪ DI owl: unionOf négation ¬C ΔI |CI owl : complementOf exists restriction ∃R.C {x|∃y.(x, y) ∈ RI

et y∈ CI

} owl: someV aluesF rom

value restriction ∀R.C {x|∀y.(x, y) ∈ RI

implique y∈ CI

} owl: allV aluesF rom

hiérarchie de rôle R⊑ S RI

⊆ SI

H rdf s: subP ropertyOf

nominal {o} {oI

} O owl: hasV alue

rôle inverse R{(x, y)|(y, x) ∈ RI } I owl: inverseOf restriction ≥ nP {x|#{y.(x, y) ∈ PI } ≥ n} owl: minCardinality de cardinalité28 ≤ nP {x|#{y.(x, y) ∈ PI } ≤ n} N owl: maxCardinality = nP {x|#{y.(x, y) ∈ PI } = n} owl: cardinality restriction ≥ nP.C {x|#{y.(x, y) ∈ PI et y∈ CI

} ≥ n} owl: minQualif iedCardinality

de cardinalité ≥ nP.C {x|#{y.(x, y) ∈ PIet y

∈ CI

} ≤ n} Q owl: maxQualif iedCardinality qualifiée29

= nP.C {x|#{y.(x, y) ∈ PI

et y∈ CI

} = n} owl: qualif iedCardinality30

Table3.3 – Correspondance expressive Owl - Dl : pour une certaine interprétation I, ∆I désigne le domaine de connaissance.

<owl:owl:minQualifiedCardinalit rdf:datatype="nonNegativeInteger"> 3

</owl:cardinality> </owl:Restriction> </owl:Class>

Expressivité en OWL : nominaux Un autre importante notion desSHOIN (D) et SHOIQ(D) qui les distingue d’OWL-Lite (SHIF(D)) est celle de nominaux (no-

minals). Dans le vocabulaire desDL, inspiré des Logiques Hybrides de (Blackburn et Seligman 1995), un nominal est un concept atomique instancié par un unique individu a de l’univers de discours. Appliqué à un cas concret, il peut arriver qu’il devienne nécessaire de pouvoir définir de concepts ou rôles spécifiques au moyen d’un individu. Il pourrait être commode pour un raisonneur qui opérerait, à titre d’exemple, sur les faits mythologiques enregistrés sur Wikipedia de posséder une classe Enfant de Zeus. En OWL, cette opération est réalisé par une restriction par la valeur d’une propriété :

<owl:Class rdf:about="EnfantDeZeus"> <owl:equivalentClass> <owl:Restriction> <owl:onProperty rdf:resource="hasParent"/> <owl:hasValue rdf:resource="Zeus"/> </owl:Restriction>

</owl:equivalentClass> </owl:Class>

Cette dernière propriété achève notre cette succincte présentation du pouvoir expressif de OWL. En résumé, les trois versions de OWL – OWL-Lite, OWL-DL, OWL-Full – correspondent à trois types de Logiques de Description – SHIF(D), SHOIN (D) et SHOIQ(D) – qui diffèrent essentiellement par leur i) la manière dont il est possible, en leur sein, de restreindre la cardinalité de classes et ii) la pos- sibilité de définir des classes au moyen d’individus. Cette présentation demeurerait cependant inutile en l’absence d’une illustration de l’impact de l’expressivité sur les raisonnements, soit l’objet des sections à suivre.