1 / 43

Protégé-OWL Tutorial

Protégé-OWL Tutorial. 8 th International Protégé Conférence Madrid, July 2005 Nick Drummond, Matthew Horridge, University of Manchester Holger Knublauch University of Manchester, University of Standford. Protégé-OWL Tutorial Plan. Introduction RDF et OWL Lite OWL-DL

hercules
Download Presentation

Protégé-OWL Tutorial

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Protégé-OWL Tutorial • 8 th International Protégé Conférence • Madrid, July 2005 • Nick Drummond, Matthew Horridge, • University of Manchester • Holger Knublauch • University of Manchester, University of Standford Systèmes Intelligents – M2- BD-IA

  2. Protégé-OWL TutorialPlan • Introduction • RDF et OWL Lite • OWL-DL • Classes et propriétés • Classes définies • Raisonnement • OWL-Full • Compléments Systèmes Intelligents – M2- BD-IA

  3. Protégé-OWL TutorialLe Web sémantique • Plate-forme pour le partage de la représentation de domaines / d’ontologies de domaines • Modélisés par les hommes • Compréhensibles par les machines • Les langages standard du W3C • XML, RDF, OWL • ..SWRL • Semantic Web Rule Language : langage qui combine OWL et RuleML qui est un langage à base de règles Systèmes Intelligents – M2- BD-IA

  4. Protégé-OWL TutorialRDF (S) • Langage de représentation simple pour représenter un domaine • Description de ressources et de liens entre ces ressources • Classes, Propriétés, individus (instances) Systèmes Intelligents – M2- BD-IA

  5. Protégé-OWL TutorialInterface Interface Utilisateur Systèmes Intelligents – M2- BD-IA

  6. Protégé-OWL TutorialInterface Interface Utilisateur Systèmes Intelligents – M2- BD-IA

  7. Protégé-OWL TutorialInterface Interface Utilisateur Systèmes Intelligents – M2- BD-IA

  8. Protégé-OWL TutorialSauvegarde (projet .pprj, fichier  .owl) • <?xml version="1.0"?> <rdf:RDF • xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" • …. • <owl:Ontology rdf:about=""/> • <rdfs:Class rdf:ID="City"><rdfs:subClassOf> <rdfs:Class rdf:ID="Area"/></rdfs:subClassOf> • </rdfs:Class> • <rdfs:Class rdf:ID="Country"><rdfs:subClassOf rdf:resource="#Area"/></rdfs:Class> • <rdf:Property rdf:ID="hasPart"> • <rdfs:range rdf:resource="#Area"/> • <rdfs:domain rdf:resource="#Area"/> • </rdf:Property> • <rdf:Property rdf:ID="hasPopulation"> • <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#int"/> • <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string" • >The number of people living in a given Area.</rdfs:comment> • <rdfs:domain rdf:resource="#Area"/> • </rdf:Property> … • </rdf:RDF> • <!-- Created with Protege (with OWL Plugin 2.1, Build 284) http://protege.stanford.edu --> Systèmes Intelligents – M2- BD-IA

  9. Protégé-OWL TutorialLimitations • RDF ne permet d’exprimer certaines contraintes comme : • Chaque « country » doit avoir au moins une « city » • Chaque « country » ne peut pas avoir une propriété « hasPart » dans « country ». • Il y a au plus une valeur pour la propriété « hasPopulation » • Etc … Systèmes Intelligents – M2- BD-IA

  10. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Classes/Sous-classes • Création d’une hiérarchie de classes qui décrivent les « ingrédients » d’une pizza • PizzaTopping • CheeseTopping • MozarellaTopping Systèmes Intelligents – M2- BD-IA

  11. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Classes/Sous-classes • Création d’une hiérarchie de classes pour des pizzas « spécifiques » • NamedPizza • MargueritaPizza • AmericanaPizza • SpicyBeefPizza • … Systèmes Intelligents – M2- BD-IA

  12. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Héritage multiple • Création d’une classe nommée : « MeatyVegetable » • Comme sous-classe de VegetableTopping • Et de MeatTopping en ajoutant une 2ème classe parent Systèmes Intelligents – M2- BD-IA

  13. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Héritage multiple • Que représente la classe « MeatyVegetable » ? • Cela a-t-il un sens ? Systèmes Intelligents – M2- BD-IA

  14. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Vérification de l’ontologie • Intuitivement, il ne devrait pas exister d’instances qui soient à la fois du type MeatTopping et VegetableTopping. • Ces instances n’auraient pas de sens d’un point de vue modélisation mais peuvent-elles exister d’un point de vue logique. • Idéalement, il est important de vérifier automatiquement que le sens logique correspond bien au sens « prévu ». • Utilisation possible d’outils de raisonnements Systèmes Intelligents – M2- BD-IA

  15. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Vérification de l’ontologie • Pour les ontologies écrites en OWL-DL, il est possible d’utiliser des outils de raisonnement de la logique de description pour : • Classifier les informations (subsumption) • Vérifier l’équivalence de concepts/classes • Vérifier la cohérence de spécifications • Vérifier les instances Systèmes Intelligents – M2- BD-IA

  16. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Vérification de l’ontologie • Vérification de la cohérence des classes • Protégé-OWL peut être utilisé avec tout raisonneur qui « respecte » l’interface DIG qui a été définie pour définir une « norme » • Description Logic Interface • La communication est réalisée via HTTP • Lorsque un raisonneur est en cours d’exécution, il est possible de demander la vérification de la consistance des classes. Systèmes Intelligents – M2- BD-IA

  17. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Vérification de l’ontologie • Axiomes de disjonction • La vérification de la cohérence des classes de l’ontologie décrite indique que la classe MeatyVegetable est consistante. • Il est possible de définir des instances pour cette classe • Par défaut les classes OWL peuvent se « superposer » à moins que la disjonction entre les classes soit explicitement décrite, ou bien que l’on peut inférer leur disjonction • Ici, la classe MeatTopping peut être décrite comme disjointe de VegetableTopping Systèmes Intelligents – M2- BD-IA

  18. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Vérification de l’ontologie • L’ajout de la disjonction entre les classes VegetableTopping et MeatTopping entraîne l’inconsistance des spécifications. Systèmes Intelligents – M2- BD-IA

  19. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Propriétés • OWL a deux types de propriétés : • Les propriétés qui relient des instances (Object Property) • Les propriétés qui relient une instance avec une valeur (Datatype property) • Il y a un troisième type de propriétés : les annotations qui permettent d’associer/décrire des méta-données aux classes, propriétés et instances. Systèmes Intelligents – M2- BD-IA

  20. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Propriétés • OWL permet la spécification de hiérarchies de propriétés • L’héritage multiple est autorisé. • Les propriétés doivent avec des « sur-propriétés » de leur type. • Les propriétés objets doivent avoir des « sur-propriétés » de type objet • De même pour les propriétés de type « datatype » Systèmes Intelligents – M2- BD-IA

  21. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Propriétés • On peut créer une propriété « hasIngredient » • Avec une sous-propriété « hasTopping » • Et une sous-propriété « hasBase » Systèmes Intelligents – M2- BD-IA

  22. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Propriétés • Une propriété peut être définie comme fonctionnelle, inverse fonctionnelle, symétrique ou transitive • Mais attention • Certaines combinaisons de ces propriétés relèvent de OWL-Full • Des contraintes existent pour OWL-DL Systèmes Intelligents – M2- BD-IA

  23. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Propriétés • Une pizza ne comporte qu’une seule « base » • La propriété « hasBase » est définie comme fonctionnelle • La propriété « hasIngredient » peut être définie comme transitive. • Les éléments qui composent les éléments d’une pizza sont aussi des éléments d’une pizza. Systèmes Intelligents – M2- BD-IA

  24. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Restrictions • Restriction existentielle • Elle permet de décrire l’ensemble des individus qui ont au moins un lien pour une propriété donnée vers un individu d’une classe donnée • On peut spécifier qu’une pizza a au moins une « base » de type PizzaBase. • En protégé OWL, on peut définir ces conditions Systèmes Intelligents – M2- BD-IA

  25. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Restrictions • On peut définir d’autres restrictions comme : • Une MargheritaPizza a au moins un « MozarellaTopping » et au moins un « TomatoTopping » • Une AmericanaPizza a au moins un « MozarellaTopping » et au moins un « TomatoTopping » et au moins un « PepperoniTopping » • Une SpicyBeefPizza comporte au moins de « la mozarella, du tomato et du peperoni » Systèmes Intelligents – M2- BD-IA

  26. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Restrictions Systèmes Intelligents – M2- BD-IA

  27. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Conditions nécessaires • Les conditions décrites sont des conditions nécessaires • i.e. que pour une classe donnée, les conditions nécessaires doivent être vérifiées par les membre de cette classe • Un individu de la classe MargheritaPizza doit remplir les 3 conditions Systèmes Intelligents – M2- BD-IA

  28. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Conditions nécessaires et suffisantes • Avec une condition nécessaire, • si l’on sait qu’un individu est un membre d’une classe, • on sait qu’il doit remplir les conditions nécessaires de cette classe. • Mais étant donné un individu qui remplit des conditions, peut-on dire à quelle classe il appartient ? • i.e. définir des conditions nécessaires et suffisantes qui permettent d’inférer le type d’un individu à partir de ses propriétés. Systèmes Intelligents – M2- BD-IA

  29. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Conditions nécessaires et suffisantes • On crée une classe CheesyPizza • Comme sous-classe de la classe Pizza • Avec au moins un « CheeseTopping » • En conditions nécessaires et suffisantes Systèmes Intelligents – M2- BD-IA

  30. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Conditions nécessaires et suffisantes • Classification de l’ontologie Systèmes Intelligents – M2- BD-IA

  31. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Terminologie • Les classes qui ne comportent que des conditions suffisantes • sont dites « primitives » • ont une « description » • Et les classes qui ont au moins une condition nécessaire et suffisante • sont dites « définies » • et ont une définition • Une distinction peut être faite entre les informations « énoncées » et « inférées ». Systèmes Intelligents – M2- BD-IA

  32. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Hiérarchie • La hiérarchie des classes « énoncées » (asserted) est une arborescence. • Mais la hiérarchie des classes inférées peut être un treillis (graphe), les classes peuvent avoir plusieurs classes parentes. Systèmes Intelligents – M2- BD-IA

  33. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Union • On veut définir une « VegetarianPizza » comme une pizza qui a uniquement des « ingrédients » végétariens. • On peut définir « VegetarianTopping » comme un « CheeseTopping » ou un « VegetableTopping ». • On peut utiliser l’union de classes. Systèmes Intelligents – M2- BD-IA

  34. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Restriction universelle • On définit la classe « VegetarianPizza » comme une pizza dont tous les ingrédients sont végétariens • En utilisant une restriction universelle • Et comme une classe « définie » Systèmes Intelligents – M2- BD-IA

  35. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Restriction universelle Systèmes Intelligents – M2- BD-IA

  36. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Vérification de l’ontologie • On peut utiliser un raisonneur • Pour classifier les classes/concepts • Quelles sont les sous-classes de VegetarianPizza? • Et vérifier que la consistance • La définition de la classe VegetarianPizza est-elle correcte ?  aucune classe n’est classifiée comme sous-classe de la classe VegetarianPizza Systèmes Intelligents – M2- BD-IA

  37. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Hypothèse du monde ouvert • Une MargheritaPizza a été décrite par : Systèmes Intelligents – M2- BD-IA

  38. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Hypothèse du monde ouvert (HMO) • L’hypothèse du monde ouvert s’appuie sur le fait • qu’on ne peut pas dire que quelque chose n’est pas vrai • simplement parce qu’il n’a pas été énoncé • Ici, on n’a pas décrit qu’une MargheritaPizza a un ingrédient peperoni, mais sous l’HMO il est possible qu’elle en est un. Systèmes Intelligents – M2- BD-IA

  39. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Clôture • Pour « préciser » les descriptions des pizzas, il est nécessaire de compléter pour dire que : • Les pizzas ont des ingrédients et seulement ceux-là. • Par exemple, la MargheritaPizza a de la mozarella et du tomato et seulement ces ingrédients. • i.e faire une « clôture » de la classe Systèmes Intelligents – M2- BD-IA

  40. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Axiomes de clôture • On peut utiliser la restriction universelle. Systèmes Intelligents – M2- BD-IA

  41. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Axiomes de clôture • On peut donc compléter l’ontologie pour faire la fermeture de la description des pizzas pour la propriété hasTopping. • La forme générale consiste à créer une restriction universelle sur l’union des classes des restrictions existentielles. • On peut alors re-classifier l’ontologie. Systèmes Intelligents – M2- BD-IA

  42. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Classification • Hiérarchies énoncée et inférées. Systèmes Intelligents – M2- BD-IA

  43. Protégé-OWL TutorialCréation d’une ontologie OWL-DL « Les pizzas » - Conclusion • Les classes sont les « briques » d’une ontologie • Il existe des classes « nommées » et des classes « anonymes » • OWL distingue les conditions nécessaires et les conditions nécessaires et suffisantes • OWL-DL s’appuie sur la logique de description, des raisonneurs peuvent être utilisés • OWL applique l’hypothèse du monde ouvert. Systèmes Intelligents – M2- BD-IA

More Related