La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Chapitre 4 Langage d'ontologie du web : OWL

Présentations similaires


Présentation au sujet: "Chapitre 4 Langage d'ontologie du web : OWL"— Transcription de la présentation:

1 Chapitre 4 Langage d'ontologie du web : OWL
Grigoris Antoniou Frank van Harmelen Chapter 4 A Semantic Web Primer

2 Sommaire Fondements de OWL Le langage OWL Exemples
L'espace des noms OWL Extensions futures Chapter 4 A Semantic Web Primer

3 Critères des langages d'ontologie
Les langages d'ontologie permettent d'écrire des conceptualisations formelles et explicites des modèles de domaines Les critères essentiels sont: une syntaxe précise l'efficacité du support de raisonnement une sémantique formelle une puissance d'expression suffisante la facilité d'expression Chapter 4 A Semantic Web Primer

4 Compromis entre puissance d'expression et efficacité du support de raisonnement
Plus le langage est riche plus le support de raisonnement devient inefficace Parfois, elle traverse la frontière de la non calculabilité On recherche donc un compromis un langage supporté par des raisonneurs assez efficaces un langage capable d'exprimer de vastes classes d'ontologies et de connaissances Chapter 4 A Semantic Web Primer

5 Raisonner à propos des connaissances dans les langages d'ontologie
Faire partie d'une classe Si x est une instance de la classe C et C une sous-classe de D, on peut inférer que x est une instance de D Equivalence des classes Si la classe A est équivalente à la classe B, et classe B équivalente à la classe C, A est aussi équivalente à C Chapter 4 A Semantic Web Primer

6 Raisonner à propos des connaissances dans les langages d'ontologie (2)
Cohérence X instance des classes A et B, mais A et B sont disjoints c'est l'indication d'une erreur dans l'ontologie Classification certaines paires propriété-valeur constituent une condition suffisante pour faire partie de la classe A; si un individu x remplit ces conditions, on peut conclure que x est une instance de A. Chapter 4 A Semantic Web Primer

7 Utilisations du raisonnement
Le support du raisonnement est important pour vérifier la cohérence de l'ontologie et des connaissances vérifier les relations involontaires entre les classes ranger automatiquement les instances en classes Ce genre de vérifications est utile pour concevoir de grandes ontologies impliquant de nombreux auteurs intégrer et partager les ontologies de plusieurs sources Chapter 4 A Semantic Web Primer

8 Support de raisonnement de OWL
La sémantique est un préalable du support de raisonnement La sémantique formelle et le support de raisonnement sont généralement fournis par la cartographie du langage d’ontologie jusqu'à un formalisme logique connu l'utilisation de raisonneurs automatiques existant déjà pour ces formalismes OWL est (en partie) calqué sur une logique descriptive et fait appel à des raisonneurs comme FaCT et RACER La logique descriptive est un sous-ensemble de la logique de prédicat pour laquelle le support de raisonnement efficace est possible Chapter 4 A Semantic Web Primer

9 Restrictions de la puissance d'expression de RDF Schema
Portée locales des propriétés rdfs:range définit l'étendue d'une propriété (par ex. mange) pour toutes les classes En RDFS, on ne peut pas déclarer des restrictions d'étendue ne s'appliquant qu’à certaines classes par ex., on ne peut pas dire que les vaches sont uniquement herbivores tandis que d'autres animaux sont aussi carnivores Chapter 4 A Semantic Web Primer

10 Restrictions de la puissance d'expression de RDF Schema (2)
Disjonction des classes on veut parfois exprimer que des classes sont disjointes (par ex. mâle et femelle) Combinaisons booléennes On veut parfois construire de nouvelles classes en combinant d'autres classes par union, intersection et complément par ex. personne est l'union disjointe des classes mâle et femelle Chapter 4 A Semantic Web Primer

11 Restrictions de la puissance d'expression de RDF Schema (3)
Restrictions de cardinalité par ex., une personne a exactement deux parents et, évidemment, reçoit l'enseignement d'au moins un professeur Caractéristiques particulières des propriétés Propriété transitive (comme "plus grand que") Propriété unique (comme "est mère de") Propriété inverse d'une autre (comme "mange" et "est mangé par") Chapter 4 A Semantic Web Primer

12 Combinaison de OWL et RDF Schema
Dans l'idéal, OWL devrait étendre RDFS c'est cohérent avec l'architecture en couches du web sémantique Mais étendre simplement RDFS ne fonctionnerait pas pour obtenir la puissance d'expression et l'efficacité de raisonnement la combinaison de RDFS avec la logique conduit à des particularités de calcul indéterminables Chapter 4 A Semantic Web Primer

13 Les trois espèces de OWL
Le groupe de travail Ontologie W3C’sWeb définit OWL en trois sous-langages : OWL Full OWL DL OWL Lite Chaque sous-langage visant à satisfaire à plusieurs aspects des critères Chapter 4 A Semantic Web Primer

14 OWL Full Utilise toutes les primitives des langages OWL
Permet de combiner ces primitives de manière arbitraire avec RDF et RDFS OWL Full est totalement compatible en amont avec RDF, tant du point de vue syntaxique que sémantique OWL Full est puissant au point d'être indécidable n'offre pas de support complet (ou efficace) de raisonnement Chapter 4 A Semantic Web Primer

15 OWL DL OWL DL (Description Logic) est un sous-langage de OWL Full qui restreint l'application des constructeurs au départ de OWL et RDF l'application des constructeurs de OWL les uns aux autres n'est pas autorisée correspond donc à une logique descriptive bien étudiée OWL DL permet le support de raisonnement efficace Mais on perd alors la compatibilité totale avec RDF: tous les documents RDF ne sont pas forcément des documents OWL DL autorisés par contre, tout document OWL DL autorisé est aussi un document RDF autorisé Chapter 4 A Semantic Web Primer

16 OWL Lite Toute restriction supplémentaire limite OWL DL à un dialecte des constructeurs de langage par ex., OWL Lite exclut les classes énumératives, les déclarations de disjonction et la cardinalité arbitraire Avantage de ce langage: plus facile à saisir pour les utilisateurs plus facile à mettre en oeuvre pour les créateurs d'outils Inconvénients d'une expressivité restreinte Chapter 4 A Semantic Web Primer

17 Compatibilité en amont entre espèces OWL
Toute ontologie autorisée OWL Lite est aussi une ontologie autorisée OWL DL Toute ontologie autorisée OWL DL est aussi une ontologie autorisée OWL Full Toute conclusion valide OWL Lite est aussi une conclusion OWL DL valide Toute conclusion valide OWL DL est aussi une conclusion OWL Full valide Chapter 4 A Semantic Web Primer

18 Compatibilité OWL avec RDF Schema
Toutes les variantes de OWL utilisent RDF pour leur syntaxe Les instances sont déclarées comme en RDF et utilisent les descriptions RDF ainsi que l'information de typage Les constructeurs OWL sont les spécialisations de leurs contreparties RDF rdfs:Ressouce rdfs:Class rdfs:Property owl:Class owl:ObjectProperty owl:DataProperty Chapter 4 A Semantic Web Primer

19 Compatibilité OWL avec RDFS (2)
La conception du web sémantique vise la compatibilité en aval en réutilisant le logiciel à travers les différentes couches L'avantage de la compatibilité totale en aval de OWL n'est obtenu que pour OWL Full au prix de l‘indéterminabilité du calcul Chapter 4 A Semantic Web Primer

20 Sommaire Fondements de OWL Le langage OWL Exemples
L'espace des noms OWL Extensions futures Chapter 4 A Semantic Web Primer

21 Diversité de syntaxe OWL
OWL repose sur RDF et utilise la syntaxe XML de RDF D'autres formes de syntaxe ont été également définies pour OWL: la syntaxe sur base XML plus lisible une syntaxe abstraite beaucoup plus compacte et lisible que les langages XML une syntaxe graphique basée sur les conventions de UML Chapter 4 A Semantic Web Primer

22 Syntaxe OWL XML/RDF: en-tête (header)
<rdf:RDF xmlns:owl =" xmlns:rdf =" syntax-ns#" xmlns:rdfs=" schema#" xmlns:xsd =" XLMSchema#"> Une ontologie OWL peut commencer par une collection d'assertions à des fins internes utilisant l'élément owl:Ontology Chapter 4 A Semantic Web Primer

23 owl:Ontology <owl:Ontology rdf:about="">
<rdfs:comment>An example OWL ontology </rdfs:comment> <owl:priorVersion rdf:resource=" <owl:imports rdf:resource=" <rdfs:label>University Ontology</rdfs:label> </owl:Ontology> owl:imports est une propriété transitive Chapter 4 A Semantic Web Primer

24 Classes Les classes se définissent avec owl:Class
owl:Class est une sous-classe de rdfs:Class La disjonction se définit par owl:disjointWith <owl:Class rdf:about="#associateProfessor"> <owl:disjointWith rdf:resource="#professor"/> <owl:disjointWith rdf:resource="#assistantProfessor"/> </owl:Class> Chapter 4 A Semantic Web Primer

25 Classes (2) owl:equivalentClass définit l'équivalence des classes
<owl:Class rdf:ID="faculty"> <owl:equivalentClass rdf:resource= "#academicStaffMember"/> </owl:Class> owl:Thing est la classe la plus générale pouvant tout contenir owl:Nothing est la classe vide Chapter 4 A Semantic Web Primer

26 Propriétés OWL a deux types de propriétés
propriétés objet , qui relient des objets à d'autres objets par ex., is-TaughtBy (est enseigné par), est chef de propriétés de type de données, reliant les objets aux valeurs des types de données par ex., téléphone, titre, âge, etc. Chapter 4 A Semantic Web Primer

27 Propriétés des types de données
OWL utilise les types de données XMLS avec l'architecture en couches de SW <owl:DatatypeProperty rdf:ID="age"> <rdfs:range rdf:resource= " #nonNegativeInteger"/> </owl:DatatypeProperty> Chapter 4 A Semantic Web Primer

28 Propriétés des objets Types de données définies par l'utilisateur
<owl:ObjectProperty rdf:ID="isTaughtBy"> <owl:domain rdf:resource="#course"/> <owl:range rdf:resource= "#academicStaffMember"/> <rdfs:subPropertyOf rdf:resource="#involves"/> </owl:ObjectProperty> Chapter 4 A Semantic Web Primer

29 Propriétés inverses <owl:ObjectProperty rdf:ID="teaches">
<rdfs:range rdf:resource="#course"/> <rdfs:domain rdf:resource= "#academicStaffMember"/> <owl:inverseOf rdf:resource="#isTaughtBy"/> </owl:ObjectProperty> Chapter 4 A Semantic Web Primer

30 Propriétés équivalentes
owl:equivalentProperty <owl:ObjectProperty rdf:ID="lecturesIn"> <owl:equivalentProperty rdf:resource="#teaches"/> </owl:ObjectProperty> Chapter 4 A Semantic Web Primer

31 Restrictions des propriétés
En OWL, on peut déclarer que la classe C remplit certaines conditions toutes les instances de C remplissent les conditions Cela revient à dire que C est une sous-classe de C', où C' rassemble tous les objets remplissant les conditions C' peut rester anonyme Chapter 4 A Semantic Web Primer

32 Restrictions des propriétés (2)
Une classe (restriction) s’obtient par l’élément owl:Restriction Cet élément contient un élément owl:onProperty et une ou plusieurs déclarations de restriction Un type définit les restrictions de cardinalité (au moins un, au plus 3,…) Chapter 4 A Semantic Web Primer

33 Restrictions des propriétés (3)
L'autre type définit les restrictions des diverses valeurs que la propriété peut prendre owl:allValuesFrom indique une quantification universelle owl:hasValue indique une valeur spécifique owl:someValuesFrom indique une quantification existentielle Chapter 4 A Semantic Web Primer

34 owl:allValuesFrom <owl:Class rdf:about="#firstYearCourse">
<rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#isTaughtBy"/> <owl:allValuesFrom rdf:resource="#Professor"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class> Chapter 4 A Semantic Web Primer

35 owl:hasValue <owl:Class rdf:about="#mathCourse">
<rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource= "#isTaughtBy"/> <owl:hasValue rdf:resource= "#949352"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class> Chapter 4 A Semantic Web Primer

36 owl:someValuesFrom <owl:Class rdf:about="#academicStaffMember">
<rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#teaches"/> <owl:someValuesFrom rdf:resource= "#undergraduateCourse"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class> Chapter 4 A Semantic Web Primer

37 Restrictions de cardinalité
On peut spécifier un nombre minimum et maximum avec owl:minCardinality et owl:maxCardinality On peut spécifier un nombre précis en mettant un même nombre pour minimum et maximum Pour être pratique, OWL propose aussi owl:cardinality Chapter 4 A Semantic Web Primer

38 Restrictions de cardinalité (2)
<owl:Class rdf:about="#course"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#isTaughtBy"/> <owl:minCardinality rdf:datatype= "&xsd;nonNegativeInteger"> 1 </owl:minCardinality> </owl:Restriction> </rdfs:subClassOf> </owl:Class> Chapter 4 A Semantic Web Primer

39 Propriétés spéciales owl:TransitiveProperty (propriété transitive)
par ex. "a un grade supérieur à", "est l'ancêtre de" owl:SymmetricProperty (symmétrie) par ex. "a le même grade que", "a le même parent que" owl:FunctionalProperty définit une propriété ayant au moins une valeur pour chaque objet par ex. “âge”, “hauteur”, “chefDirect” owl:InverseFunctionalProperty définit une propriété pour laquelle deux objets différents ne peuvent pas avoir la même valeur Chapter 4 A Semantic Web Primer

40 Propriétés spéciales (2)
<owl:ObjectProperty rdf:ID="hasSameGradeAs"> <rdf:type rdf:resource="&owl;TransitiveProperty"/> <rdf:type rdf:resource="&owl;SymmetricProperty"/> <rdfs:domain rdf:resource="#student"/> <rdfs:range rdf:resource="#student"/> </owl:ObjectProperty> Chapter 4 A Semantic Web Primer

41 Combinations booléennes
On peut combiner des classes par des opérations booléennes (union, intersection, complément) <owl:Class rdf:about="#course"> <rdfs:subClassOf> <owl:Restriction> <owl:complementOf rdf:resource= "#staffMember"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class> Chapter 4 A Semantic Web Primer

42 Combinations booléennes (2)
<owl:Class rdf:ID="peopleAtUni"> <owl:unionOf rdf:parseType="Collection"> <owl:Class rdf:about="#staffMember"/> <owl:Class rdf:about="#student"/> </owl:unionOf> </owl:Class> La nouvelle classe n'est pas une sous-classe de l'union mais bien égale à l'union on a ainsi établi une équivalence de classes Chapter 4 A Semantic Web Primer

43 Combinations booléennes (3)
<owl:Class rdf:ID="facultyInCS"> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#faculty"/> <owl:Restriction> <owl:onProperty rdf:resource="#belongsTo"/> <owl:hasValue rdf:resource= "#CSDepartment"/> </owl:Restriction> </owl:intersectionOf> </owl:Class> Chapter 4 A Semantic Web Primer

44 Emboîtage des opérateurs booléens
<owl:Class rdf:ID="adminStaff"> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#staffMember"/> <owl:complementOf> <owl:unionOf rdf:parseType="Collection"> <owl:Class rdf:about="#faculty"/> <owl:Class rdf:about= "#techSupportStaff"/> </owl:unionOf> </owl:complementOf> </owl:intersectionOf> </owl:Class> Chapter 4 A Semantic Web Primer

45 Enumérations avec owl:oneOf
<owl:oneOf rdf:parseType="Collection"> <owl:Thing rdf:about="#Monday"/> <owl:Thing rdf:about="#Tuesday"/> <owl:Thing rdf:about="#Wednesday"/> <owl:Thing rdf:about="#Thursday"/> <owl:Thing rdf:about="#Friday"/> <owl:Thing rdf:about="#Saturday"/> <owl:Thing rdf:about="#Sunday"/> </owl:oneOf> Chapter 4 A Semantic Web Primer

46 Déclarations des instances
Les instances des classes sont déclarées comme en RDF <rdf:Description rdf:ID="949352"> <rdf:type rdf:resource= "#academicStaffMember"/> </rdf:Description> <academicStaffMember rdf:ID="949352"> <uni:age rdf:datatype="&xsd;integer"> 39<uni:age> </academicStaffMember> Chapter 4 A Semantic Web Primer

47 Absence d'hypothèse de noms uniques (UNA)
OWL ne souscrit pas à l'hypothèse UNA des bases de données si deux instances ont un nom ou une ID différent, cela n'implique pas qu'il s'agisse d'individus différents Supposons que nous déclarions que chaque cours est enseigné par au moins un professeur et qu'un cours précis est enseigné par deux professeurs un raisonneur OWL ne signale pas d'erreur au contraire, il infère que les deux ressources sont égales Chapter 4 A Semantic Web Primer

48 Objets distincts Pour garantir que deux individus différents sont bien reconnus comme tels, il faut explicitement affirmer leur inégalité: <lecturer rdf:about="949318"> <owl:differentFrom rdf:resource="949352"/> </lecturer> Chapter 4 A Semantic Web Primer

49 Objets distincts (2) OWL propose une notation abrégée pour déclarer l'inégalité de manière appariée de tous les individus d'une liste <owl:allDifferent> <owl:distinctMembers rdf:parseType="Collection"> <lecturer rdf:about="949318"/> <lecturer rdf:about="949352"/> <lecturer rdf:about="949111"/> </owl:distinctMembers> </owl:allDifferent> Chapter 4 A Semantic Web Primer

50 Types de données en OWL XMLS offre un mécanisme de construction de types de données définies par l'utilisateur par ex., le type de données de adultAge inclut tous les nombres entiers supérieurs à 18 Ces types de données dérivées ne peuvent pas s'utiliser en OWL le document de référence OWL énumère tous les types de données XMLS utilisables il s'agit des types les plus souvent utilisés comme string(chaîne), integer (nombre entier), Boolean (booléen), time (heure) et date. Chapter 4 A Semantic Web Primer

51 Information sur les versions
owl:priorVersion indique des versions antérieures de l'ontologie actuelle pas de signification formelle, exploitable en gestion d'ontologies owl:versionInfo contient généralement une chaîne avec l'information de la version en cours, par ex. mots-clés Chapter 4 A Semantic Web Primer

52 Information sur les versions (2)
owl:backwardCompatibleWith contient une référence à une autre ontologie tous les identifiants de la version précédente ont les mêmes interprétations supposées que la nouvelle version les documents peuvent donc en toute sécurité être changés pour exécuter la nouvelle version owl:incompatibleWith indique que l'ontologie contenante est une version ultérieure de celle référencée mais est incompatible avec elle en amont Chapter 4 A Semantic Web Primer

53 Combinaisons de possibilités
Dans les langages OWL, il y a plusieurs séries de restrictions sur l'applications des possibilités dans OWL Full, tous les constructeurs du langage peuvent s'utiliser dans n'importe quelle combinaison tant que le résultat donne un RDF autorisé Chapter 4 A Semantic Web Primer

54 Restriction des possibilités dans OWL DL
Segmentation du vocabulaire Toute ressource ne peut être qu'une classe, un type de données, une propriété de type de données, une propriété d'objet, une instance, une valeur de données ou une partie du vocabulaire intégré et rien de plus Typage explicite La segmentation de toutes les ressources doit être déclarée explicitement (par ex. une classe doit être déclarée si elle est utilisée conjointement à rdfs:subClassOf) Chapter 4 A Semantic Web Primer

55 Restriction des possibilités dans OWL DL (2)
Séparation des propriétés la série des propriétés d'un objet et les propriétés des types de données sont disjointes ce qui suit ne peut donc jamais être spécifié pour les propriétés des types de données owl:inverseOf owl:FunctionalProperty owl:InverseFunctionalProperty owl:SymmetricProperty Chapter 4 A Semantic Web Primer

56 Restriction des possibilités dans OWL DL (3)
Pas de restrictions de cardinalité transitive aucune restriction de cardinalité ne peut être imposée aux propriétés transitives Classes anonymes restreintes: ces classes ne sont permises que comme domaine et étendue de owl:equivalentClass ou owl:disjointWith étendue (mais non le domaine) de rdfs:subClassOf Chapter 4 A Semantic Web Primer

57 Restriction des possibilités dans OWL Lite
Restrictions plus strictes que pour OWL DL owl:oneOf, owl:disjointWith, owl:unionOf, owl:complementOf et owl:hasValue ne sont pas autorisés Les déclarations de cardinalité (cardinalité minimale, maximale et exacte) ne peuvent se faire que sur les valeurs 0 et 1 owl:equivalentClass ne peuvent plus se faire entre classes anonymes mais uniquement entre identifiants de classes Chapter 4 A Semantic Web Primer

58 Principe légataire dans la hiérarchie des classes
Restriction d'étendue: Les cours ne peuvent être donnés que par les membres du corps académique Michael Maher est professeur Il "hérite" de la capacité d'enseigner via la classe des membres du corps académique En RDFS, ceci se fait en déterminant la sémantique de "est une sous-classe de" ce n'est pas le rôle de l'application (logiciel de traitement RDF) d'interpréter "est une sous-classe de" Chapter 4 A Semantic Web Primer

59 Sommaire Fondements de OWL Le langage OWL Exemples
L'espace des noms OWL Extensions futures Chapter 4 A Semantic Web Primer

60 Ontologie de la vie faune et la flore Africaine - hiérarchie des classes
animal plante herbivore carnivore arbre girafe lion Chapter 4 A Semantic Web Primer

61 Ontologie de la vie sauvage africaine - représentation schématique
Les branches font partie des arbres isPartOf onProperty isSubclassOf branche toClass arbre Chapter 4 A Semantic Web Primer

62 Ontologie de la vie sauvage africaine - propriétés
<owl:TransitiveProperty rdf:ID="is-part-of"/> <owl:ObjectProperty rdf:ID="eats"> <rdfs:domain rdf:resource="#animal"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:ID="eaten-by"> <owl:inverseOf rdf:resource="#eats"/> Chapter 4 A Semantic Web Primer

63 Ontologie de la vie sauvage africaine - plantes et arbres
<owl:Class rdf:ID="plant"> <rdfs:comment>les plantes sont disjointes des animaux </rdfs:comment> <owl:disjointWith="#animal"/> </owl:Class> <owl:Class rdf:ID="tree"> <rdfs:comment>les arbres sont un type de plantes </rdfs:comment> <rdfs:subClassOf rdf:resource="#plant"/> Chapter 4 A Semantic Web Primer

64 Ontologie de la vie sauvage africaine - branches
<owl:Class rdf:ID="branch"> <rdfs:comment>les branches font partie des arbres </rdfs:comment> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#is-part-of"/> <owl:allValuesFrom rdf:resource="#tree"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class> Chapter 4 A Semantic Web Primer

65 Ontologie de la vie sauvage africaine - feuilles
<owl:Class rdf:ID="leaf"> <rdfs:comment>les feuilles font partie des branches </rdfs:comment> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#is-part-of"/> <owl:allValuesFrom rdf:resource="#branch"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class> Chapter 4 A Semantic Web Primer

66 Ontologie de la vie sauvage africaine - carnivores
<owl:Class rdf:ID="carnivore"> <rdfs:comment>les carnivores sont précisément les animaux qui mangent aussi de la viande</rdfs:comment> <owl:intersectionOf rdf:parsetype="Collection"> <owl:Class rdf:about="#animal"/> <owl:Restriction> <owl:onProperty rdf:resource="#eats"/> <owl:someValuesFrom rdf:resource="#animal"/> </owl:Restriction> </owl:intersectionOf> </owl:Class> Chapter 4 A Semantic Web Primer

67 Ontologie de la vie sauvage africaine
<owl:Class rdf:ID="herbivore"> <rdfs:comment>Les herbivores sont précisément les animaux qui mangent des plantes ou des parties de plantes</rdfs:comment> <rdfs:comment> Essayez ! Consultez le livre pour les codes </owl:Class> Chapter 4 A Semantic Web Primer

68 Ontologie de la vie sauvage africaine
<owl:Class rdf:ID="giraffe"> <rdfs:comment>les girafes sont des herbivores et elles ne mangent que des feuilles</rdfs:comment> <rdfs:subClassOf rdf:type="#herbivore"/> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#eats"/> <owl:allValuesFrom rdf:resource="#leaf"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class> Chapter 4 A Semantic Web Primer

69 Ontologie de la vie sauvage africaine - lions
<owl:Class rdf:ID="lion"> <rdfs:comment>les lions sont des animaux qui ne mangent </rdfs:comment>que des herbivores <rdfs:subClassOf rdf:type="#carnivore"/> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#eats"/> <owl:allValuesFrom rdf:resource="#herbivore"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class> Chapter 4 A Semantic Web Primer

70 Ontologie de la vie sauvage africaine - plantes savoureuses
owl:Class rdf:ID="tasty-plant"> <rdfs:comment>plantes mangées par les herbivores et les carnivores </rdfs:comment> <rdfs:comment> Essayez ! Consultez le livre pour les codes </owl:Class> Chapter 4 A Semantic Web Primer

71 Ontologie de l'imprimante - hiérarchie des classes
produit hpproduit padid imprimante laserJetImprimante imprimantepersonelle hpimprimante hpLaserJetimprimante 1100series 1100se 1100xi Chapter 4 A Semantic Web Primer

72 Ontologie de l'imprimante - produits et appareils
<owl:Class rdf:ID="product"> <rdfs:comment>les produits forment une classe </rdfs:comment> </owl:Class> <owl:Class rdf:ID="padid"> <rdfs:comment>Appareils d'impression et d'imagerie numérique forment une sous-classe de produits</rdfs:comment> <rdfs:label>Device</rdfs:label> <rdfs:subClassOf rdf:resource="#product"/> Chapter 4 A Semantic Web Primer

73 Ontologie de l'imprimante - produits HP
<owl:Class rdf:ID="hpProduct"> <owl:intersectionOf> <owl:Class rdf:about="#product"/> <owl:Restriction> <owl:onProperty rdf:resource="#manufactured-by"/> <owl:hasValue> <xsd:string rdf:value="Hewlett Packard"/> </owl:hasValue> </owl:Restriction> </owl:intersectionOf> </owl:Class> Chapter 4 A Semantic Web Primer

74 Ontologie de l'imprimante
<owl:Class rdf:ID="printer"> <rdfs:comment>les imprimantes sont des appareils d'impression et d'imagerie numérique</rdfs:comment> <rdfs:subClassOf rdf:resource="#padid"/> </owl:Class> <owl:Class rdf:ID="personalPrinter"> <rdfs:comment>les imprimantes à usage privé forment une sous-classe des imprimantes</rdfs:comment> <rdfs:subClassOf rdf:resource="#printer"/> Chapter 4 A Semantic Web Primer

75 Ontologie de l'imprimante
<owl:Class rdf:ID="1100se"> <rdfs:comment>les imprimantes 1100se appartiennent à la série 1100 et coûtent $450.</rdfs:comment> <rdfs:subClassOf rdf:resource="#1100series"/> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#price"/> <owl:hasValue><xsd:integer rdf:value="450"/> </owl:hasValue> </owl:Restriction> </rdfs:subClassOf> </owl:Class> Chapter 4 A Semantic Web Primer

76 Ontologie de l'imprimante - propriétés
<owl:DatatypeProperty rdf:ID="manufactured-by"> <rdfs:domain rdf:resource="#product"/> <rdfs:range rdf:resource="&xsd;string"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:ID="printingTechnology"> <rdfs:domain rdf:resource="#printer"/> Chapter 4 A Semantic Web Primer

77 Sommaire Fondements de OWL Le langage OWL Exemples
L'espace des noms OWL Extensions futures Chapter 4 A Semantic Web Primer

78 OWL par lui-même Présentation d'une partie de la définition de OWL par ses propres termes Les explications qui suivent prennent certaines significations OWL dans OWL elles ne reflètent pas la totalité de la sémantique il faut pour cela une spécification sémantique distincte L'URI de la définition de OWL est défini comme espace de noms par défaut Chapter 4 A Semantic Web Primer

79 Classes des classes (métaclasses)
La classe de toutes les classes OWL est en elle-même une sous-classe de la classe de toutes les classes RDFS: <rdfs:Class rdf:ID="Class"> <rdfs:label>Class</rdfs:label> <rdfs:subClassOf rdf:resource="&rdfs;Class"/> </rdfs:Class> Chapter 4 A Semantic Web Primer

80 Classes des classes (métaclasses) – "Thing" et "Nothing" (‘chose’ et ‘rien’)
Thing est la classe d'objet la plus générale en OWL Nothing est la classe la plus spécifique: classe d'objet vide Les relations suivantes s'établissent Chapter 4 A Semantic Web Primer

81 Classes des classes (métaclasses) – "Thing" et "Nothing" (2)
<Class rdf:ID="Thing"> <rdfs:label>Thing</rdfs:label> <unionOf rdf:parseType="Collection"> <Class rdf:about="#Nothing"/> <Class> <complementOf rdf:resource="#Nothing"/> </Class> </unionOf> <Class rdf:ID="Nothing"> <rdfs:label>Nothing</rdfs:label> <complementOf rdf:resource="#Thing"/> Chapter 4 A Semantic Web Primer

82 Equivalences de classes et de propriétés
<rdf:Property rdf:ID="EquivalentClass"> <rdfs:label>EquivalentClass</rdfs:label> <rdfs:subPropertyOf rdf:resource="&rdfs;subClassOf"/> <rdfs:domain rdf:resource="#Class"/> <rdfs:range rdf:resource="#Class"/> </rdf:Property> <rdf:Property rdf:ID="EquivalentProperty"> <rdfs:label>EquivalentProperty</rdfs:label> <rdfs:subPropertyOf rdf:resource="&rdfs;subPropertyOf"/> Chapter 4 A Semantic Web Primer

83 Disjonction de classes
<rdf:Property rdf:ID="disjointWith"> <rdfs:label>disjointWith</rdfs:label> <rdfs:domain rdf:resource="#Class"/> <rdfs:range rdf:resource="#Class"/> </rdf:Property> Chapter 4 A Semantic Web Primer

84 Egalité et inégalité Egalité et inégalité peuvent être déclarées entre choses arbitraires en OWL Full, cette déclaration peut aussi s'appliquer aux classes Propriétés sameIndividualAs, sameAs et differentFrom Chapter 4 A Semantic Web Primer

85 Egalité et inégalité (2)
<rdf:Property rdf:ID="sameIndividualAs"> <rdfs:domain rdf:resource="#Thing"/> <rdfs:range rdf:resource="#Thing"/> </rdf:Property> <rdf:Property rdf:ID="sameAs"> <EquivalentProperty rdf:resource= "#sameIndividualAs"/> Chapter 4 A Semantic Web Primer

86 Union et intersection de classes
Pour construire une classe au départ d'une liste supposée être une liste d'autres expressions de classes <rdf:Property rdf:ID="unionOf"> <rdfs:domain rdf:resource="#Class"/> <rdfs:range rdf:resource="&rdf;List"/> </rdf:Property> Chapter 4 A Semantic Web Primer

87 Classe avec restriction
En OWL, les restrictions définissent la classe des objets répondant à certaines conditions <rdfs:Class rdf:ID="Restriction"> <rdfs:label>Restriction</rdfs:label> <rdfs:subClassOf rdf:resource="#Class"/> </rdfs:Class> Chapter 4 A Semantic Web Primer

88 Propriétés avec restriction
Toutes les propriétés :(onProperty, allValuesFrom, minCardinality, etc.) ne sont autorisées qu'à l'intérieur d'une définition de restriction Leur domaine est owl:Restriction, mais sont différentes en fonction de leur étendue Chapter 4 A Semantic Web Primer

89 Propriétés avec restriction (2)
<rdf:Property rdf:ID="onProperty"> <rdfs:label>onProperty</rdfs:label> <rdfs:domain rdf:resource="#Restriction"/> <rdfs:range rdf:resource="&rdf;Property"/> </rdf:Property> <rdf:Property rdf:ID="allValuesFrom"> <rdfs:label>allValuesFrom</rdfs:label> <rdfs:range rdf:resource="&rdfs;Class"/> Chapter 4 A Semantic Web Primer

90 Propriétés avec restriction (3)
<rdf:Property rdf:ID="hasValue"> <rdfs:label>hasValue</rdfs:label> <rdfs:domain rdf:resource="#Restriction"/> </rdf:Property> <rdf:Property rdf:ID="minCardinality"> <rdfs:label>minCardinality</rdfs:label> <rdfs:range rdf:resource= "&xsd;nonNegativeInteger"/> Chapter 4 A Semantic Web Primer

91 Propriétés owl:ObjectProperty et owl:DatatypeProperty sont des cas spéciaux de rdf:Property <rdfs:Class rdf:ID="ObjectProperty"> <rdfs:label>ObjectProperty</rdfs:label> <rdfs:subClassOf rdf:resource="&rdf;Property"/> </rdfs:Class> Chapter 4 A Semantic Web Primer

92 Propriétés (2) Les propriétés symétriques, fonctionnelles et fonctionnelles inverses ne peuvent s'appliquer qu'aux propriétés objets <rdfs:Class rdf:ID="TransitiveProperty"> <rdfs:label>TransitiveProperty</rdfs:label> <rdfs:subClassOf rdf:resource= "#ObjectProperty"/> </rdfs:Class> Chapter 4 A Semantic Web Primer

93 Propriétés (3) owl:inverseOf relie deux propriétés objets:
<rdf:Property rdf:ID="inverseOf"> <rdfs:label>inverseOf</rdfs:label> <rdfs:domain rdf:resource="#ObjectProperty"/> <rdfs:range rdf:resource="#ObjectProperty"/> </rdf:Property> Chapter 4 A Semantic Web Primer

94 Sommaire Fondements de OWL Le langage OWL Exemples
L'espace des noms OWL Extensions futures Chapter 4 A Semantic Web Primer

95 Extensions futures de OWL
Modules et imports Valeurs par défaut Hypothèse du monde fermé Hypothèse des noms uniques Suffixes de procédure Règles de mise en chaîne des propriétés Chapter 4 A Semantic Web Primer

96 Modules et imports L'outil d'importation de OWL est des plus simples:
sert à importer uniquement des ontologies entières, et non des parties de celles-ci Modules en langages de programmation basés sur le masquage des informations : déclarent les fonctionnalités, cachent les détails de l'implémentation Question ouverte de la définition du mécanisme adéquat des modules pour les langages d'ontologies du web Chapter 4 A Semantic Web Primer

97 Valeurs par défaut De nombreux systèmes pratiques de représentation des connaissances permettent de contourner les valeurs héritées par des classes plus spécifiques dans la hiérarchie traite les valeurs héritées comme valeurs par défaut Aucun accord n'a été trouvé sur une formalisation correcte du comportement non monotone des valeurs par défaut Chapter 4 A Semantic Web Primer

98 Hypothèse du monde fermé
OWL choisit actuellement l'hypothèse du monde ouvert: une déclaration ne peut pas être supposée vraie sur la base d'une erreur pour le prouver sur l'immense www que l'on ne peut que partiellement connaître, cette hypothèse est correcte Hypothèse du monde fermé: une déclaration est vraie si sa négation ne peut pas être prouvée reliée à la notion de valeurs par défaut, conduit à un comportement non monotonique Chapter 4 A Semantic Web Primer

99 Hypothèse des noms uniques
Les applications classiques des bases de données supposent que les individus dont les noms sont différents sont en effet des individus différents OWL suit le paradigme logique habituel où ceci n'est pas le cas plausible sur WWW On peut vouloir indiquer les parties d'une ontologie pour lesquelles l'hypothèse vaut ou ne vaut pas Chapter 4 A Semantic Web Primer

100 Suffixes de procédure Une idée habituelle dans la représentation des connaissances est de définir le sens d'un mot en ajoutant un segment de code exécutable servant à élaborer la signification du mot et non par des définitions explicites dans la langue Bien que largement appliquée, cette idée ne se prête pas très bien à l'intégration en système avec une sémantique formelle et elle n'est pas incluse dans OWL Chapter 4 A Semantic Web Primer

101 Règles de mise en chaîne des propriétés
OWL n'autorise pas la composition de propriétés pour des motifs de décidabilité Dans de nombreuses applications, cette opération est utile On peut souhaiter définir des propriétés en tant de règles générales (Horn ou autres) couvrant d'autres propriétés L'intégration de la représentation des connaissances basée sur des règles et la représentation de type DL sont actuellement des secteurs de recherche intensive Chapter 4 A Semantic Web Primer

102 Récapitulation OWL est le standard proposé pour les ontologies du web
OWL repose sur RDF et RDFS: on utilise la syntaxe à base XML les instances sont définies par des descriptions RDF la plupart des primitives de modélisation RDFS sont appliquées Chapter 4 A Semantic Web Primer

103 Récapitulation (2) La sémantique formelle et le support de raisonnement sont fournis par la cartographie de OWL en logique la logique de prédicats et de descriptions servent à cet usage Bien que OWL soit assez puissant pour son utilisation pratique, on développe des extensions où on trouvera encore d'autres possibilités logiques et des règles. Chapter 4 A Semantic Web Primer


Télécharger ppt "Chapitre 4 Langage d'ontologie du web : OWL"

Présentations similaires


Annonces Google