1 / 38

Ontologiesprachen XML / RDF / OWL in Protegé

Ontologiesprachen XML / RDF / OWL in Protegé. Wissensorganisation Seminar Prof. Dr. Spree. Joachim Köpf - Claudia Irle | Wissensorganisation | HAW-Hamburg | WS 08/09. XML / RDF / OWL in Protégé Aufbau · OWL · Code · Demo · Ausblick. Übersicht. Aufbau XML / RDF OWL Code Demo

avalon
Download Presentation

Ontologiesprachen XML / RDF / OWL in Protegé

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. OntologiesprachenXML / RDF / OWL in Protegé WissensorganisationSeminarProf. Dr. Spree Joachim Köpf - Claudia Irle | Wissensorganisation | HAW-Hamburg | WS 08/09

  2. XML / RDF / OWL in ProtégéAufbau · OWL · Code · Demo · Ausblick Übersicht • Aufbau XML / RDF • OWL • Code • Demo • Ausblick

  3. XML / RDF / OWL in ProtégéAufbau· OWL · Code · Demo · Ausblick Semantic Web

  4. XML / RDF / OWL in ProtégéAufbau· OWL · Code · Demo · Ausblick XML • Extensible Markup Language • Tagbasierte Metasprache • Wird für die Nutzung von OWL genommen • da Webstandard • der Datenaustausch wird unterstützt • einfach zu parsen und plattformunabhängig

  5. XML / RDF / OWL in Protégé Aufbau· OWL · Code · Demo · Ausblick XML • Nachteile von XML: • XML definiert Syntax, aber keine Semantik • XML-Beschreibungen können für Computer mehrdeutig sein • Relationen können nicht definiert werden • Noch nicht ausreichend für den Einsatz von OWL

  6. XML / RDF / OWL in Protégé Aufbau· OWL · Code · Demo · Ausblick RDF(System zur Beschreibung von Bezugsquellen) Resource Description Framework • Datenmodell zu Bereitstellung von Metadaten • Aussagen beschreiben Ressourcen und deren Attribute => Tripel

  7. XML / RDF / OWL in Protégé Aufbau· OWL · Code · Demo · Ausblick RDF-Tripel • Beschreiben Ressourcen und deren Attribute • Bestehen aus Ressource, Eigenschaft, Literal oder Ressource

  8. XML / RDF / OWL in Protégé Aufbau· OWL · Code · Demo · Ausblick RDF • RDF reicht leider auch noch nicht aus • Modell fehlt, um Daten aus dem RDF-Datenmodell auszutauschen • Semantik reicht noch nicht für die Beschreibung von Ontologien aus

  9. XML / RDF / OWL in Protégé Aufbau· OWL · Code · Demo · Ausblick RDF/XML • Auch noch nicht ausreichend • Keine Beschreibung von Klassen möglich • Kein Konzept für Aufzählung von Datentypen und Aufzählungen

  10. XML / RDF / OWL in Protégé Aufbau· OWL · Code · Demo · Ausblick RDF-Schema • Neutrale Schema-Sprache • Enthält Basisstrukturen für Klassen und Properties • RDFS-Klassen enthalten Instanzen (Assoziierte Ressourcen)rdfs:class Definition von Klassen

  11. XML / RDF / OWL in Protégé Aufbau· OWL · Code · Demo · Ausblick RDF-Schema • RDF-Schema auch noch nicht ausreichend • Aussage über Kardinalitäten nicht möglich • Keine Aussage über Eigenschaften von Eigenschaften • Zu wenige Deskriptoren, um Inferenzierung zu unterstützen

  12. XML / RDF / OWL in Protégé Aufbau·OWL· Code · Demo · Ausblick OWL • Web Ontology Language • Standardsprache zur Erstellung von Ontologien um im Semantic Web Informationen zu repräsentieren • W3C Recommendation seit 2004 • Code soll von Software-Agenten verstanden werden

  13. XML / RDF / OWL in Protégé Aufbau·OWL· Code · Demo · Ausblick OWL Versionen • Lite • DL • Full

  14. XML / RDF / OWL in Protégé Aufbau·OWL· Code · Demo · Ausblick OWL-Aufbau Die drei Bausteine von OWL-Ontologien • Klassen • Individuen (Objekte in RDF) • Rollen (Properties in RDFS)

  15. XML / RDF / OWL in Protégé Aufbau·OWL· Code · Demo · Ausblick OWL Besonderheiten • OWL kann Klassen logisch kombinieren • Vereinigung • Durchschnitt • Komplement (Gegenteil) • OWL kann Eigenschaften definieren als • Transitiv (schlussfolgernd) • Symmetrisch • Funktional • Als inverses einer anderen Eigenschaft

  16. XML / RDF / OWL in Protégé Aufbau·OWL· Code · Demo · Ausblick OWL Besonderheiten • Fehlen von Informationen ist keine negative Information • mag(PersonA, GetränkB) -> Person kann auch andere Getränke mögen • Keine Unique Name Assumption • Verschiedenheit muss explizit ausgedrückt werden • Person A kann nicht die selbe Instanz bezeichnen wie Person B OWL:sameAs OWL:differentFrom

  17. OWL-Ontologie Dokument Header XML Deklaration und RDF Start Tag <?xml version="1.0"?><rdf:RDF > Namespacedeklarationen Ontologie-Element Informationen über die Version Importierte Elemente Body Aussagen über Klassen,Eigenschaften und Individuen Footer RDF-Endtag </rdf:RDF>

  18. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Header Informationen zu • Namensräumen • Versionierung • Annotationen

  19. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Exemplarischer Header mit Namespace-Deklaration <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:daml="http://www.daml.org/2001/03/daml+oil#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://www.owl-ontologies.com/travel.owl#" xml:base="http://www.owl-ontologies.com/travel.owl">

  20. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Exemplarischer Header mit allgemeinen Informationen zur gesamten Ontologie <owl:Ontology rdf:about=""> <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"> 1.0 </owl:versionInfo> <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"> An example ontology for tutorial purposes. </rdfs:comment> </owl:Ontology>

  21. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Einfache Klassen | Benennung <owl:Class rdf:ID="Relaxation"> Referenzierung auf diese Klasse innerhalb eines Dokuments <rdf:resource="#Relaxation“> Alternativ: <rdf:resource=“http://www.owl-ontologies.com/travel.owl#Relaxation”> Erweiterung einer importierten Klassendefinition <owl:Class rdf:about="#Relaxation">

  22. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Einfache Klassen | Referenzierung auf Klasse via ENTITY Im Header: <!DOCTYPE rdf:RDF [ <!ENTITY owl "http://www.w3.org/2002/07/owl#" > ]> Referenzierung: <owl:Class rdf:about="&owl;Thing"/>

  23. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Einfache Klassen | equivalentClass <owl:Class rdf:about="#US_President"> <equivalentClass rdf:resource="#PrincipalResidentOfWhiteHouse"/> </owl:Class> Zwei Klassen besitzen exakt dieselben Instanzen.

  24. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Einfache Klassenbeziehungen | subClassOf <owl:Class rdf:ID="Relaxation"> <owl:Class rdf:ID="Sunbathing"> <rdfs:subClassOf> <owl:Class rdf:about="#Relaxation"/> </rdfs:subClassOf> </owl:Class> Sunbathing ist subClassOf Relaxation.

  25. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Einfache Klassenbeziehungen | disjointWith <owl:Class rdf:about="#Relaxation"> <rdfs:subClassOf rdf:resource="#Activity"/> <owl:disjointWith rdf:resource="#Sightseeing"/> <owl:disjointWith rdf:resource="#Sports"/> </owl:Class> Relaxation ist disjunkt mit Sightseeing und Sports

  26. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Einfache Klassenbeziehungen | disjointWith <owl:Class rdf:about="#Relaxation"> <rdfs:subClassOf rdf:resource="#Activity"/> <owl:disjointWith rdf:resource="#Sightseeing"/> <owl:disjointWith rdf:resource="#Sports"/> </owl:Class> Relaxation ist disjunkt mit Sightseeing und Sports

  27. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Einfache Klassenbeziehungen | Inferenz <owl:Class rdf:ID="Professor"> <rdfs:subClassOf rdf:resource="#Fakultaetsmitglied"/> </owl:Class> <owl:Class rdf:ID="Buch"> <rdfs:subClassOf rdf:resource="#Publikation"/> </owl:Class> <owl:Class rdf:about="#Fakultaetsmitglied"> <owl:disjointWith rdf:resource="#Publikation"/> </owl:Class> Fakultätsmitglied ist disjunkt mit Publikation. Es folgt durch Inferenz, dass ein Professor kein Buch ist (Professor ist auch disjunkt mit Buch).

  28. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Einfache Klassenbeziehungen | Inferenz <owl:Class rdf:ID="Professor"> <rdfs:subClassOf rdf:resource="#Fakultaetsmitglied"/> </owl:Class> <owl:Class rdf:ID=„Fakultätsmitglied"> <rdfs:subClassOf rdf:resource=„Person"/> </owl:Class> Es folgt durch Inferenz, dass ein Professor eine Person ist. „subClassOf“ ist transitiv. Einfach ausgedrückt: Aus xRy und yRz folgt: xRz

  29. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Individuals <Capital rdf:about="#Sydney„/> Identisch mit <owl:Thing rdf:about="#Sydney"> <rdf:type rdf:resource=„#Capital„> </rdf:type> </owl:Thing>

  30. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Properties von Individuals <owl:DatatypeProperty rdf:about="#hasZipCode"> <rdf:type rdf:resource="&owl;FunctionalProperty"/> <rdfs:domain rdf:resource="#Contact"/> <rdfs:range rdf:resource="&xsd;int"/> </owl:DatatypeProperty> <Capital rdf:about="#Sydney"> <hasZipCode>33587</hasZipCode> <hasPart rdf:resource="#BondiBeach"/> <hasPart rdf:resource="#CurrawongBeach"/> <hasAccommodation rdf:resource="#FourSeasons"/> </Capital>

  31. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Individuals <owl:Class rdf:ID="Professor"> <rdfs:subClassOf rdf:resource="#Fakultaetsmitglied"/> </owl:Class> <owl:Class rdf:ID="Fakultaetsmitglied"> <rdfs:subClassOf rdf:resource="#Person"/> </owl:Class> Es folgt durch Inferenz, dass Professor eine Subklasse von Person ist.

  32. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Properties definieren • Einschränkung durch • Domain (RDFS) • Range (RDFS) • Type (RDF) • 2 Unterklassen von rdf:Property • Object-Properties (abstrakte Rollen): Individuals mit Individuals unterschiedlicher Klassen. Bsp.: <owl:ObjectProperty rdf:about="#hasAccommodation"> <Capital rdf:about="#Sydney"> <hasAccommodation rdf:resource="#FourSeasons"/> Datatype-Properties (konkrete Rollen): Individuals mit Datenwerten. Bsp.: <owl:DatatypeProperty rdf:about="#hasZipCode"> <Capital rdf:about="#Sydney"> <hasZipCode>33587</hasZipCode>

  33. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Properties • Einschränkung durch • Domain (RDFS) • Range (RDFS) • 2 Unterklassen von rdf:Property: • Object-Properties (abstrakte Rollen):Individuals mit Individuals unterschiedlicher Klassen Bsp.: <owl:ObjectProperty rdf:about="#hasAccommodation"> • Datatype-Properties (konkrete Rollen): Individuals mit Datenwerten Bsp.: <owl:DatatypeProperty rdf:about="#hasZipCode">

  34. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Property Datatypes • Datatype-Properties können RDF-Literale darstellen oder auch simple Datentypen, gemäß den XML-Schema Datentypen Vereinbarungen. • OWL unterstützt die meisten der in XML-Schema enthaltenen Datentypen plus rdfs:Literal • Alle OWL-Reasoner müssen xsd:integer und xsd:string-Datentypen unterstützten.

  35. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Property Characteristics • TransitiveProperty P(x,y) and P(y,z) implies P(x,z) • SymmetricProperty P(x,y) gdw P(y,x) gdw (genau dann wenn) x Property von y genau dann wenn y Property von x • FunctionalProperty P(x,y) and P(x,z) implies y = z • InverseOf P1(x,y) gdw P2(y,x) • InverseFunctionalProperty P(y,x) and P(z,x) implies y = z

  36. XML / RDF / OWL in ProtégéAufbau· OWL ·Code· Demo · Ausblick OWL Code Property Restrictions value constraints (Quantifizierer) schränkt die Range der Property ein - owl:allValuesFrom (alle) - owl:someValuesFrom (mindestens eine) - owl:hasValue (genauer Wert) cardinality constraints (Kardinalität) schränkt die Anzahl von Values ein, die eine Property haben kann. - owl:maxCardinality (obere Grenze der Anzahl) - owl:minCardinality (untere Grenze der Anzahl) - owl:Cardinality (exakte Anzahl)

  37. XML / RDF / OWL in ProtégéAufbau· OWL · Code · Demo ·Ausblick OWL Ausblick • Dient aktuell nur zur Repräsentation von Wissen • Erfüllt noch keine alltäglichen Zweck • Viel Arbeit, um alles Wissen in Ontologien zu transportieren • Schwer zu erweitern

  38. XML / RDF / OWL in ProtégéAufbau· OWL · Code · Demo · Ausblick Vielen Dank für Eure Aufmerksamkeit!

More Related