19.01.2010 - 10 - OWL 2

Post on 19-Jan-2015

1.570 views 0 download

description

 

Transcript of 19.01.2010 - 10 - OWL 2

Vorlesung

Dr. Harald Sack

Hasso-Plattner-Institut für Softwaresystemtechnik

Universität Potsdam

Wintersemester 2009/10

Semantic Web

Blog zur Vorlesung: http://sewe0910.blogspot.com/Die nichtkommerzielle Vervielfältigung, Verbreitung und Bearbeitung dieser Folien ist zulässig (Lizenzbestimmungen CC-BY-NC).

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

1. Einführung

2. Semantic Web BasisarchitekturDie Sprachen des Semantic Web - Teil 1

3. Wissensrepräsentation und LogikDie Sprachen des Semantic Web - Teil 2

4. Ontology Engineering

5. Semantic Web Applications

2

Semantic Web - Vorlesungsinhalt

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

Semantic Web Architektur3

URI / IRI

XML / XSDData Interchange: RDF

RDFS

Ontology: OWL Rule: RIF

Query:SPARQL

Proof

Unifying Logic

Cry

pto

Trust

Interface & Application

3. Wissensrepräsentation und Logik

Ontology-Level

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

419.01.2010 – Vorlesung Nr. 101 2 3 4 5 6 7 8 119 12

13

3. Wissensrepräsentation und LogikDie Sprachen des Semantic Web - Teil 2

3.1.Ontologien in der Philosophie und der Informatik

3.2.Wiederholung Aussagenlogik und Prädikatenlogik

3.3.RDFS-Semantik

3.4.Beschreibungslogiken

3.5.OWL und OWL-Semantik

3.6.OWL2

3.7.Regeln mit SWRL/RIF

14

Semantic Web - Vorlesungsinhalt

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

5

OWL 2

OWL

OWL 2

SHOIN(D) SHROIQ(D)

Erweiterung

3.6 OWL 2

3.6.1 Entwicklung von OWL 2

3.6.2 Von SHOIN(D) zu SHROIQ(D)

3.6.3 OWL 2 Syntax

3.6.4 Komplexität und andere Eigenschaften

3.6.5 OWL 2 Profile

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

6

3. Wissensrepräsentationen3.5 OWL und OWL-Semantik

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

7

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.1 Die Entwicklung von OWL 2

OWL 2 – Web Ontology Language 2• DAML (DARPA Agent Markup Language, 1999)

• RDF-basierte Markupsprache zur Darstellung vonWissensrepräsentationen

• DAML+OIL (Ontology Inference Layer, 2002)

• Einbettung einer Infrastruktur für Semantic Web Anwendungen

• Basiert aus Konzepten aus Beschreibungslogiken und Frame Logic

• OWL 1 - W3C Recommendation seit 2004

• OWL 2 (zuvor OWL 1.1)

• W3C Recommendation seit 27. Oktober 2009

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

8

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.1 Die Entwicklung von OWL 2

OWL 2 – Web Ontology Language 2• Was hat sich seit OWL 1 geändert?

• Erweiterungen aufgrund der gewonnenen Praxis-erfahrungen mit OWL 1

• Zusätzliche Ausdrucksstärke durch neue ontologische Axiome

• Überarbeitung der OWL Sprachvarianten

• Zusätzliche Erweiterungen

• neue Syntaxvariante, Kommentare, etc.

• Dabei weitestgehende Kompatibilität zum alten Standard

• Erhaltung der Entscheidbarkeit für OWL 2 DL

• Behebung von Problemen om OWL 1 Standard

3.6 OWL 2

3.6.1 Entwicklung von OWL 2

3.6.2 Von SHOIN(D) zu SHROIQ(D)

3.6.3 OWL 2 Syntax

3.6.4 Komplexität und andere Eigenschaften

3.6.5 OWL 2 Profile

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

9

3. Wissensrepräsentationen3.5 OWL und OWL-Semantik

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

10

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.2 Von SHOIN(D) zu SHROIQ(D)

• OWL DL basiert auf der Beschreibungslogik SHOIN(D)

• Axiome

• TBox: Subklassenbeziehungen C ⊑ D

• RBox: Subrollenbeziehungen R ⊑ S (H), inverse Rollen R- (I),

Transitivität ⊑+ (S)

• ABox: Fakten zu Klassen C(a), Rollen R(a,b), Gleichheit a=b, Verschiedenheit a≠b

•Klassenkonstruktoren:

• Konjunktion C ⊓ D, Disjunktion C ⊔ D, Negation ¬C von Klassen

• Rollenrestriktionen: universell ∀R.C und existenziell ∃R.C

• Kardinalitätsrestriktion: ≤n R und ≥n R (N)

• Abgeschlossene Klassen: {a} (O)

•Datentypen (D)

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

11

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.2 Von SHOIN(D) zu SHROIQ(D)

ABox• SHOIN(D) unterstützt verschiedene ABox-Fakten:

• Klassenzugehörigkeit C(a) (C ist komplexe Klasse)

• Sonderfall: negierte Klassenzugehörigkeit ¬C(a) (C ist komplexe Klasse)

• Gleichheit a=b

• Verschiedenheit a≠b

• Rollenbeziehung R(a,b)

• negierte Rollenbeziehungen....?

Erweiterung von SHOIN(D) auf SHROIQ(D)

SHROIQ(D) erlaubt negierte Rollen in der ABox: ¬R(a,b)

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

12

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.2 Von SHOIN(D) zu SHROIQ(D)

Kardinalitätsrestriktionen

• SHOIN(D) unterstützt nur einfache Kardinalitätsrestriktionen (N):

• Person ⊓ ≥3 hatKind

• Klasse aller Personen mit mindestens 3 Kindern

• SHROIQ(D) erlaubt auch qualifizierte Kardinalitätsrestriktionen (Q):

• Person ⊓ ≥3 hatKind.(Frau ⊓ Professor)

• Klasse aller Personen mit mindestens 3 Töchtern, die alle Professorinnen sind

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

13

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.2 Von SHOIN(D) zu SHROIQ(D)

Das Konzept Self

• Modellierungsaufgabe: „Jeder Mensch kennt sich selbst.“

• SHOIN(D)

• kennt(Harald, Harald) kennt(Jörg, Jörg) ...

• Allgemeine Modellierung in TBox nicht möglich

• SHROIQ(D) besitzt einen speziellen Ausdruck dafür: Self

• Mensch ⊑ ∃kennt.Self

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

14

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.2 Von SHOIN(D) zu SHROIQ(D)

Rollenaxiome• In SHOIN(D) können Rollen modelliert werden als

• transitiv, symmetrisch, funktional und invers funktional

• SHROIQ(D) erlaubt zusätzliche Rollenaxiome:

• Antisymmetrie: ∀a,b ∈ ΔI: (a,b)∈RI → (b,a)∉RI

• Reflexivität: ∀a ∈ ΔI: (a,a)∈RI

• Irreflexivität: ∀a ∈ ΔI: (a,a)∉RI

• Disjunktheit: ∀a,b ∈ ΔI: (a,b)∉RI∩SI

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

15

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.2 Von SHOIN(D) zu SHROIQ(D)

Rollenaxiome

•Zusätzlich wird in SHROIQ(D) eine universelle Rolle U eingeführt:

• ∀a,b ∈ ΔI: (a,b)∈UI, UI=∆Ix∆I

• U wurde als Gegenstück zur universellen Klasse ⊤ eingeführt

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

16

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.2 Von SHOIN(D) zu SHROIQ(D)

Allgemeine Rolleninklusion

• „Die Freunde meiner Freunde sind auch meine Freunde.“

• kann in SHOIN(D) als transitive Rolle ausgedrückt werden.

•Aber: „Die Feinde meiner Freunde sind auch meine Feinde.“

• kann in SHOIN(D) nicht ausgedrückt werden.

• In FOL als Regel:• ∀x,y,z: hatFreund(x,y) ∧ hatFeind(y,z) → hatFeind(x,z)

• hatFreund º hatFeind ⊑ hatFeind

hatFeindhatFreund

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

17

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.2 Von SHOIN(D) zu SHROIQ(D)

Allgemeine Rolleninklusion

• „Die Freunde meiner Freunde sind auch meine Freunde.“

• kann in SHOIN(D) als transitive Rolle ausgedrückt werden.

•Aber: „Die Feinde meiner Freunde sind auch meine Feinde.“

• kann in SHOIN(D) nicht ausgedrückt werden.

Rolleninklusion• RBox-Ausdrücke der Form R1 º R2 º R3 º ..... º Rn ⊑ S

Bsp.: hatFreund º hatFeind ⊑ hatFeind• Semantik: wenn (x0,x1)∈R1I, (x1,x2)∈R2I..... (xn-1,xn)∈RnI , dann

gilt auch (x0,xn)∈SI

Bsp.: (x0,x1)∈hatFreundI und (x1,x2)∈hatFeindI, dann gilt auch (x0,x2)∈hatFeindI

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

18

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.2 Von SHOIN(D) zu SHROIQ(D)

Ausdruckstärke der Rolleninklusion

• Mit RBoxen lassen sich formale Sprachen definieren

Beispiel• Grammatik für die Sprache der Wörter ab, aabb, aaabbb, ...

• ∃L.⊤ ≢ ⊥ („ ∃L.⊤ notwendig nicht-leer“) bedeutet:„Es gibt eine Kette aus Ra und Rb die zur Sprache gehört.“

• ∃L1.∃L2- ≢ ⊥ für zwei kodierte Sprachen L1 und L2 bedeutet:„Es gibt ein Wort, das zu L1 und L2 gehört.“

L ::= abL ::= aLb

wird zu Ra º Rb ⊑ LRa º L º Rb ⊑ L

Aber aus formalen Sprachen bekannt:Leerheit der Überschneidung kontextfreier Sprachen ist unentscheidbar

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

19

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.2 Von SHOIN(D) zu SHROIQ(D)

Ausdruckstärke der Rolleninklusion

• Mit RBoxen lassen sich formale Sprachen definieren

Beispiel• Grammatik für die Sprache der Wörter ab, aabb, aaabbb, ...

• ∃L.⊤ ≢ ⊥ („ ∃L.⊤ notwendig nicht-leer“) bedeutet:„Es gibt eine Kette aus Ra und Rb die zur Sprache gehört.“

• ∃L1.∃L2- ≢ ⊥ für zwei kodierte Sprachen L1 und L2 bedeutet:„Es gibt ein Wort, das zu L1 und L2 gehört.“

L ::= abL ::= aLb

wird zu Ra º Rb ⊑ LRa º L º Rb ⊑ L

OWL mit allgemeiner Rolleninklusion ist UNENTSCHEIDBAR !

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

20

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.2 Von SHOIN(D) zu SHROIQ(D)

Reguläre RBoxen• Kann man Rolleninklusion so einschränken, dass sie entscheidbar bleibt?

• Rboxen sind wie Grammatiken für kontextfreie Sprachen

• Überschneidung von kontextfreien Sprachen problematisch

• Also Einschränkung auf reguläre Sprachen!

Reguläre RBoxen• Rollennamen werden mit ≺ geordnet (strenge totale Ordnung).• Jede RBox Inklusion muss eine der folgenden Formen besitzen:

• Dabei gilt: Si ≺ R für alle i=1,2,...,n• Eine RBox ist regulär, wenn solch eine Ordnung ≺ existiert.

•R º R ⊑ R•R- ⊑ R•S1 º S2 º S3 º ..... º Sn ⊑ R

•R º S1 º S2 º S3 º ..... º Sn ⊑ R •S1 º S2 º S3 º..... º Sn º R ⊑ R

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

21

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.2 Von SHOIN(D) zu SHROIQ(D)

Reguläre RBoxen - Beispiele• Beispiel:

R º S ⊑ R S º S ⊑ S R º S º R ⊑ Tist regulär mit Ordnung S ≺ R ≺ T

• Beispiel:R º T º S ⊑ Tist nicht regulär (unzulässige Inklusionsform)

• Beispiel:R º S ⊑ S S º R ⊑ Rist nicht regulär (keine gültige Ordnung möglich)

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

22

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.2 Von SHOIN(D) zu SHROIQ(D)

Beschränkung einfacher Rollen• Einfache Rollen in SHOIN(D) sind Rollen ohne transitive Unterrollen

• In SHROIQ(D) muss zusätzlich Rolleninklusion beachtet werden

Einfache Rollen• sind alle Rollen, die• nicht auf der rechten Seite einer Rolleninklusion

vorkommen,• die Inverse von anderen einfachen Rollen sind,• die nur auf der rechten Seite von Rolleninklusionen R ⊑ S,

bei der links einzelne einfache Rollen stehen

•Nicht-einfache Rollen sind Rollen, die direkt oder indirekt vonRollenverkettungen (º ) abhängen

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

23

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.2 Von SHOIN(D) zu SHROIQ(D)

Beschränkung einfacher Rollen• Folgende Ausdrücke sind NUR für einfache Ausdrücke erlaubt:

•≤n R.C und ≥n R.C (qualifizierte Kardinalitätsrestriktionen)•Irreflexive Rollen•Disjunkte Rollen•∃R.Self•¬R(a,b)

•Grund: Sicherstellung der Entscheidbarkeit

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

24

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.2 Von SHOIN(D) zu SHROIQ(D)

Zusammenfassung• Um die Entscheidbarkeit zu gewährleisten müssen folgende

strukturellen Beschränkungen für SHROIQ(D) gelten:

• Regularität: Einschränkung des möglichen Zusammenspiels von RBox-Axiomen

• Einfachheit von Rollen:Einschränkungen der Verwendbarkeit von Rollen in Kardinalitätsrerstriktionen

• Daraus ergeben sich Einschränkungen auf die Gesamtstruktur einer Wissensbasis, bei der alle Axiome beachtet werden müssen

• Vorsicht: Die Vereinigung mehrerer SHROIQ(D) Wissensbasen kann diese Einschränkungen verletzen, auch wenn die einzelnen Wissensbasis diese erfüllen.

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

25

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.2 Von SHOIN(D) zu SHROIQ(D)

Überblick über SHROIQ(D)Klassenausdrücke• Klassennamen A,B• Konjunktion C ⊓ D• Disjunktion C ⊔ D• Negation ¬C• Exist. Rollenrestriktion ∃R.C• Univ Rollenrestriktion ∀R.C• Self ∃S.Self• Größer-als ≥n S.C• Kleiner-als ≤ S• Nominale {a}

Rollen• Rollennamen R,S,T• Einfache Rollen S,T• Inverse Rollen R-

• Universelle Rolle U

Tbox (Klassenaxiome)• Inklusion C ⊑ D• Äquivalenz C ≣ D

Rbox (Rollenaxiome)• Inklusion R1 ⊑ R2

• Allgemeine Inklusion R(-)1 º R (-) 2 º ..... º R (-) n ⊑ R• Transitivität• Symmetrie• Reflexivität• Irreflexivität• Disjunktheit

Abox (Fakten)• Klassenzugehörigkeit C(a)• Rollenbeziehung R(a,b)• Negierte Rollenbeziehung ¬S(a,b)• Gleichheit a=b• Ungleichheit a≠b

3.6 OWL 2

3.6.1 Entwicklung von OWL 2

3.6.2 Von SHOIN(D) zu SHROIQ(D)

3.6.3 OWL 2 Syntax

3.6.4 Komplexität und andere Eigenschaften

3.6.5 OWL 2 Profile

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

26

3. Wissensrepräsentationen3.5 OWL und OWL-Semantik

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

27

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

Syntaxvarianten• OWL 2 kann in unterschiedlichen Syntaxvarianten ausgedrückt werden

• Funktionale Syntax: ersetzt abstrakte Syntax von OWL 1

• RDF-Syntax: Erweiterung der bestehenden OWL/RDF Abbildung

• XML-Syntax: Eigenständige XML-Serialisierung

• Manchester-Syntax: menschenlesbare Syntax, insbesondere für Ontologie-Editoren

• Funktionale Syntax ist einfacher zu definieren,Keine RDF-Beschränkungen, kompakter

• RDF-Syntax wichtig für Abwärtskompatibilität

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

28

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

OWL 2 - Functional SyntaxSubClassOf(  :Teenager DataSomeValuesFrom( :hasAge DatatypeRestriction( xsd:integer xsd:minExclusive "12"^^xsd:integer xsd:maxInclusive "19"^^xsd:integer ) ) )SubClassOf( :Woman :Person )SubClassOf( :Mother :Woman )...SubObjectPropertyOf( :hasWife :hasSpouse )SymmetricObjectProperty( :hasSpouse ) AsymmetricObjectProperty( :hasChild )...Declaration( NamedIndividual( :John ) )Declaration( NamedIndividual( :Mary ) )Declaration( NamedIndividual( :Jim ) )...ClassAssertion( :Person :Mary )ClassAssertion( :Woman :Mary )...ObjectPropertyAssertion( :hasWife :John :Mary )NegativeObjectPropertyAssertion( :hasWife :Bill :Mary )

aus Hitzler, Krötzsch, Parsia, Patel-Schneider, Rudolph: OWL 2 Web Ontology Language: Primer,

W3C Working Group Note 27 October 2009

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

29

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

OWL 2 - Manchester Syntax

Class: Person Annotations: ... SubClassOf: owl:Thing that hasFirstName exactly 1 and hasFirstName only string[minLength 1] ,... SubClassOf: hasAge exactly 1 and hasAge only not NegInt,... SubClassOf: hasGender exactly 1 and hasGender only {female , male} ,... SubClassOf: not hates Self, ... EquivalentTo: g:People ,... DisjointWith: g:Rock , g:Mineral ,...

ObjectProperty: hasWife Annotations: ... Characteristics: Functional, InverseFunctional, Reflexive, Irreflexive, Asymmetric, Transitive Domain: Man Range: Person, Woman SubPropertyOf: hasSpouse, loves EquivalentTo: isMarriedTo ,... DisjointWith: hates ,... InverseOf: hasSpouse

Individual: John Annotations: ... Types: Person , hasFirstName value "John" or hasFirstName value "Jack"^^xsd:string Facts: hasWife Mary, not hasChild Susan, hasAge 33, hasChild _:child1 SameAs: Jack ,... DifferentFrom: Susan ,...

aus Horridge, Patel-Schneider: OWL 2 Web Ontology Language Manchester Syntax,

W3C Working Group Note 27 October 2009

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

30

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

Syntaxvarianten• OWL 2 kann in unterschiedlichen Syntaxvarianten ausgedrückt werden

• Funktionale Syntax: ersetzt abstrakte Syntax von OWL 1

• RDF-Syntax: Erweiterung der bestehenden OWL/RDF Abbildung

• XML-Syntax: Eigenständige XML-Serialisierung

• Manchester-Syntax: menschenlesbare Syntax, insbesondere für Ontologie-Editoren

• Funktionale Syntax ist einfacher zu definieren,Keine RDF-Beschränkungen, kompakter

• RDF-Syntax wichtig für Abwärtskompatibilität

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

31

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

OWL 2 Individuendeklaration• In OWL 2 können Individuen als benannte Entitäten auch ohne direkte

Klassenzugehörigkeit deklariert werden

• oder kürzer

<rdf:Description rdf:about=“haraldSack“> <rdf:type rdf:resource=“&owl:NamedIndividual“/></rdf:Description>

< owl:NamedIndividual rdf:about=“haraldSack“ />

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

32

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

OWL 2 Disjunkte Klassen• In OWL 1 können 2 Klassen als disjunkt deklariert werden

(owl:disjointWith)

• OWL 2 erlaubt eine abkürzende Schreibweise, um mehrere Klassen auf einmal als disjunkt deklarieren zu können

<owl:AllDisjointClasses> <owl:members rdf:parseType=“Collection“> <owl:Class rdf:about=“KindergartenKinder“ /> <owl:Class rdf:about=“Schueler“ /> <owl:Class rdf:about=“Studenten“ /> <owl:Class rdf:about=“Professoren“ /> </owl:members></owl:AllDisjointClasses>

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

33

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

OWL 2 Disjunkte Klassen• In OWL 1 kann eine Klasse als Vereinigung zweier Klassen über

owl:unionOf beschrieben werden

• OWL 2 erlaubt die Deklaration einer Klasse als disjunkte Vereinigung von Klassen, d.h. C ⊑ D ⊔ E mit D⊓E=⊥

<owl:Class ref:about=“Musikinstrumente“> <owl:disjointUnionOf rdf:parseType=“Collection“> <owl:Class rdf:about=“Streichinstrumente“ /> <owl:Class rdf:about=“Schlaginstrumente“ /> <owl:Class rdf:about=“Zupfinstrumente“ /> <owl:Class rdf:about=“Tasteninstrumente“ /> </owl:disjointUnionOf></owl:Class>

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

34

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

OWL 2 Rolleneigenschaften und Beziehungen• In OWL 1 können Rollen als transitiv, symmetrisch, funktional und

inverse funktional deklariert werden

• OWL 2 erlaubt darüberhinaus

• Asymmetrische Rollen via owl:AsymmetricProperty

• Reflexive Rollen via owl:ReflexiveProperty

• Irreflexive Rollen via owl:IrreflexiveProperty

• Dabei dürfen Asymmetrie, Reflexivität und Irreflexivität auch nicht für konkrete Rollen (Datatype Properties) verwendet werden.

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

35

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

OWL 2 Rolleneigenschaften und Beziehungen• Zusätzlich gestattet OWL 2 die Modellierung von Aussagen folgender Art:

„Alle Studenten des HPI mit demselben Namen und demselben Geburtstag sind auch tatsächlich die selben Studenten“

• Allgemein: Für eine Klasse können in OWL 2 eine Menge von Rollen festgelegt werden, die einzelne Instanzen der Klasse gleich einem Schlüssel (Key) identifizieren.

<owl:Class ref:about=“HPIStudenten“> <owl:hasKey rdf:parseType=“Collection“> <owl:DatatypeProperty rdf:about=“hatName“ /> <owl:DatatypeProperty rdf:about=“hatGeburtsdatum“ /> </owl:hasKey></owl:Class>

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

36

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

OWL 2 Rolleneigenschaften und Beziehungen• Zusätzlich gestattet OWL 2 die Modellierung von Aussagen folgender Art:

„Alle Studenten des HPI mit demselben Namen und demselben Geburtstag sind auch tatsächlich die selben Studenten“

• Allgemein: Für eine Klasse können in OWL 2 eine Menge von Rollen festgelegt werden, die einzelne Instanzen der Klasse gleich einem Schlüssel (Key) identifizieren.

Achtung:• Keys können nur auf benannte Instanzen (NamedIndividuals)

angewandt werden• Keys ist kein beschreibungslogisches Element

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

37

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

OWL 2 Rolleneigenschaften und Beziehungen• OWL 2 gestattet die Definition von disjunkten Rollen

• Zwei Rollen R und S heißen disjunkt, wenn gilt, dass zwei Individuen x,y niemals in beiden Rollen gemeinsam miteinander verbunden sein dürfen

• Abkürzende Schreibweise für mehrere gleichzeitig disjunkte Rollen

<owl:ObjectProperty ref:about=“hatElternteil“> <owl:propertyDisjointWith rdf:resource=“hatKind“ /></owl:ObjectProperty>

<owl:AllDisjointProperties> <owl:members rdf:parseType=“Collection“> <owl:ObjectProperty ref:about=“hatElternteil“ /> <owl:propertyDisjointWith rdf:resource=“hatKind“ /> <owl:propertyDisjointWith rdf:resource=“hatEnkel“ /> </owl:members></owl:AllDisjointProperties>

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

38

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

OWL 2 Rolleneigenschaften und Beziehungen• OWL 2 definiert jeweils universelle und leere Rollen als Gegenstücke

zu Top- und Bottom-Klassen:

• owl:topObjectPropertyVerbindet jedes beliebige Paar von Individuen, Oberklasse für alle abstrakten Rollen

• owl:bottomObjectPropertyBeinhaltet keine Individuen, Unterklasse aller abstrakten Rollen

• owl:topDatatypePropertyVerbindet jedes Individuum mit allen Datentyp-Literalen, Oberklasse für alle konkreten Rollen

• owl:bottomDatatypePropertyBeinhaltet kein Individuum und kein Literal, Unterklasse aller konkreten Rollen

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

39

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

OWL 2 Rolleneigenschaften und Beziehungen• OWL 2 erlaubt die Definition inverser Rollen

• Nicht erlaubt für konkrete Rollen

<owl:ObjectProperty ref:about=“hatPrüfer“> <rdfs:subPropertyOf> <owl:ObjectProperty> <owl:inverseOf rdf:resource=“nimmtTeilAn“ /> </owl:ObjectProperty> </rdfs:subPropertyOf></owl:ObjectProperty>

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

40

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

OWL 2 Allgemeine Rolleninklusion• OWL 2 erlaubt die Verkettung von Rollen

• Nicht erlaubt für konkrete Rollen

<owl:ObjectProperty ref:about=“hatFreundesFeind“> <owl:PropertyChainAxiom rdf:parseType=“Collection“> <owl:ObjectProperty rdf:resource=“hatFreund“ /> <owl:ObjectProperty rdf:resource=“hatFeind“ /> </owl:PropertyChainAxiom></owl:ObjectProperty>

hatFeindhatFreund

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

41

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

OWL 2 Qualifizierte Kardinalitätsrestriktion• OWL 2 erlaubt Klassenkonstruktoren mit Kardinalitätsrestriktionen auf

Rollen verknüpft mit Einschränkungen des Bildraumes

• Bsp.: Pruefung ⊑ ≥2 hatPruefer.Professor

• owl:maxQualifiedCardinality, owl:minQualifiedCardinality, owl:qualifiedCardinality

<owl:Class rdf:about=“Pruefung“> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty ref:resource=“hatPruefer“ /> <owl:maxQualifiedCardinality rdf:datatype=“xsd;nonNegativeInteger“> 2 </owl:maxQualifiedCardinality> <owl:onClass rdf:resource=“Professor“ /> </owl:Restriction> </rdfs:subClassOf></owl:Class>

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

42

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

OWL 2 Reflexive Rollenrestriktion• OWL 2 erlaubt die Deklaration von Klassen, die Individuen enthalten, die

unter bestimmten Rollen mit sich selbst in Bezug stehen

• Bsp.: Philosoph ⊑ ∃kennt.Self

<owl:Class rdf:about=“Philosoph“> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty ref:resource=“kennt“ /> <owl:hasSelf rdf:datatype=“&xsd;boolean“>true</owl:hasSelf> </owl:Restriction> </rdfs:subClassOf></owl:Class>

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

43

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

OWL 2 negierte Rolleninstantiierung• OWL 1 erlaubt es, zwei Individuen über eine abstrakte Rolle miteinander

in Beziehung zu setzen

• OWL 2 erlaubt es ebenfalls auszudrücken, dass zwei Individuen NICHT über eine Rolle miteinander in Bezug stehen

• Bsp.: ¬istBruder(Harald, Joerg)

<owl:negativePropertyAssertion> <owl:sourceIndividual rdf:about=“Harald“ /> <owl:assertionProperty rdf:about=“istBruder“ /> <owl:targetIndividual rdf:about=“Joerg“ /></owl:negativePropertyAssertion>

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

44

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.3 OWL 2 Syntax

OWL 2 Datentypen• OWL 2 unterstützt die meisten XML Schema Datentypen, die auch bereits

von OWL 1 unterstützt wurden

• Ausnahmen: xsd:time, xsd:date, xsd:gYear, xsd:gMonth, xsd:gDay, xsd:gMonthDay, xsd:gYearMonth

• Folgenden neuen Datentypen sind in OWL 2 erlaubt:

• owl:real, owl:rational, rdf:PlainLiteral, rdf:XMLLiteral, xsd:dateTimeStamp

• Zusätzliche Möglichkeiten, Wertebereiche konkreter Rollen zu beschränken:

• Zahlen: xsd:maxExclusive, xsd:minInclusive

• Strings: xsd:minLength, xsd:maxLength, xsd:length, xsd:pattern

3.6 OWL 2

3.6.1 Entwicklung von OWL 2

3.6.2 Von SHOIN(D) zu SHROIQ(D)

3.6.3 OWL 2 Syntax

3.6.4 Komplexität und andere Eigenschaften

3.6.5 OWL 2 Profile

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

45

3. Wissensrepräsentationen3.5 OWL und OWL-Semantik

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

46

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.4 Komplexität und andere Eigenschaften

Wie kompliziert ist SHRIOQ(D)?• SHOIN(D) (OWL DL) ist sehr komplex (NExpTime)

• Wie steht es mit SHROIQ(D)?

• Beobachtung: einige Ausdrucksmittel sind nicht wirklich nötig

• Transitive Rollen durch R º R ⊑ R ausdrückbar

• Symmetrie durch R- ⊑ R ausdrückbar

• Irreflexivität durch ⊤ ⊑ ¬∃R.Self ausdrückbar

• Universelle Rolle darstellbar durch Hilfsaxiom:⊤ ⊑ ∃R.{a}, R º R- ⊑ U

• ABox durch Nominale darstellbar, z.B. R(a,b) durch {a} ⊑ ∃R.{b}

• Qualifizierte Kardinalitätsrestriktion nicht problematisch

• Hauptproblem: Rollenaxiome und allgemeine Rolleninklusion

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

47

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.4 Komplexität und andere Eigenschaften

Wie geht man mit Rolleninklusionen um?

• RBox-Regeln ähneln formalen Grammatiken

• jede Rolle R definiert eine reguläre Sprache: die Sprache der Rollen-Ketten, aus denen R folgt

• reguläre Sprachen ≡ reguläre Ausdrücke ≡ endliche Automaten

• Ansatz: Tableauverfahren werden mit „RBox-Automaten“ erweitert

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

48

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.4 Komplexität und andere Eigenschaften

Entscheidbarkeit von SHRIOQ(D)?• Tableaux-Verfahren für SHROIQ(D) verfügbar:

• Tableaux-Verfahren ungeeignet für enge Komplexitätsabschätzung

• Komplexitätsresultat (2008): SHROIQ(D) ist N2ExpTime-vollständig

• Aber: Tableaux-Algorithmus hat gute Anpassungseigenschaften, d.h. ungenutzte Merkmale belasten die Abarbeitung kaum

SHROIQ(D) ist entscheidbar.

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

49

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.4 Komplexität und andere Eigenschaften

OWL 2 DL: Weitere Aspekte• SHROIQ(D) ist „nur“ logische Grundlage von OWL 2 DL

• Bereits behandelt:

• Syntaxerweiterung

• Datentypdeklaration und Datentypfunktionen, neue Datentypen

• Invers-funktionale konkrete Rollen (DatatypeProperties): „Simple Keys“

• Weitere nicht-logische Aspekte:

• Metamodellierung: „Punning“

• Kommentarfunktionen und ontologische Metadaten

• Mechanismen zu Ontologieimport

• ...

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

50

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.4 Komplexität und andere Eigenschaften

OWL 2 Metamodellierung

• Beispiele:

• „Die Klasse Person wurde am 3.1.2010 von JoergW angelegt.“

• „Für die Klasse Stadt wird das Property Einwohnerzahl empfohlen.“

• „Die Aussage ‚Dresden wurde 1206 gegründet‘ wurde maschinell ermittelt mit einer Sicherheit von 85%.“

• (Vergleiche auch Reifikation in RDF Schema)

MetamodellierungSpezifikation ontologischen Wissens über einzelne Elementeder Ontologie (einschließlich Klassen, Rollen, Axiome).

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

51

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.4 Komplexität und andere Eigenschaften

„Wortspiele“ in OWL 2: Punning• Metamodellierung in ausdruckstarken Logiken ist gefährlich und teuer...

• OWL 2 unterstützt aktuell nur eine sehr einfache Form der Metamodellierung

• Bsp.:

• Person(Harald), klasseErstelltVon(Person, Joerg)

Punning• Bezeichner für Klassen, Rollen, Individuen müssen nicht disjunkt

sein (Ausnahme: ObjectPropertys und DataPropertys)

• keine logische Beziehung zwischen Klasse, Individuum und Rolle gleichen Namens

• Beziehung nur relevant für pragmatische Interpretation

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

52

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.4 Komplexität und andere Eigenschaften

Kommentare und Metadaten• Punning unterstützt einfache Metadaten mit (schwacher) semantischer

Bedeutung

• Wie kann man rein „syntaktische“ Kommentare zu einer Ontologie machen?

• Kommentare in XML-Dateien: <!-- Kommentar --> kein Bezug auf OWL-Axiome dieser Datei

• nicht-logische Annotationen in OWL 1: owl:AnnotationPropertyfest verknüpft mit (semantischem) ontologischem Element, kein syntaktischer Bezug

• OWL 2 verändert die Bedeutung von Annotationen: keine semantische Interaktion, aber struktureller Teil von OWL-Ontologien.

• Zusätzlich ist die Annotationen ganzer Axiome möglich, nicht nur von Individuen

3.6 OWL 2

3.6.1 Entwicklung von OWL 2

3.6.2 Von SHOIN(D) zu SHROIQ(D)

3.6.3 OWL 2 Syntax

3.6.4 Komplexität und andere Eigenschaften

3.6.5 OWL 2 Profile

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

53

3. Wissensrepräsentationen3.5 OWL und OWL-Semantik

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

54

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.5 OWL 2 Profile

OWL 2 Profile• OWL 2 Profile sind Untersprachen von OWL 2

• OWL 2 DL entspricht SHROIQ(D)

• OWL 2 Full wäre entsprechend eine Erweiterung von OWL 1 Full

• Was ist mit OWL 2 Lite?

• OWL 1 Lite ist fasst genauso komplex wie OWL 1 DL

• Komplizierte Syntax gibt keinen Zugang zu wahrer Ausdrucksstärke

• Verwendung in Ontologien heute praktisch eher „zufällig“ als intendiert

• Ursprünglich gedacht als einfach und effizient implementierbarer Teil von OWL

• Neuer Ansatz in OWL 2:

• Definition mehrerer einfacher Sprachprofile

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

55

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.5 OWL 2 Profile

OWL 2 Profile• Ansatz:

• Identifiziere maximale OWL 2 Subsprachen (Fragmente), die noch in Polynomialzeit entscheidbar sind

• Hauptursache für Nicht-Polynomialzeit: Non-Determinismus(erfordert Raten / Backtracking)• Disjunktion bzw. Negation + Konjunktion• Maximum-Kardinalitätsrestriktionen

• Kombination von Existenzquantoren und Universalquantoren in einer Superklasse

• Nicht-unäre, finite Klassendefinitionen (abgeschlossene Klassen)

• wird daher in OWL 2 Profilen nicht erlaubt

• Vorsicht: viele andere Features führen auch zu Non-Determinismus...

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

56

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.5 OWL 2 Profile

OWL 2 Profile• Ansatz:

• Identifiziere maximale OWL 2 Subsprachen (Fragmente), die noch in Polynomialzeit entscheidbar sind

• Praktische Überlegungen

• Einfache Implementierungen und praktische Nutzbarkeit

• Definition von 3 OWL Profilen:• OWL 2 EL

• OWL 2 QL• OWL 2 RL

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

57

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.5 OWL 2 Profile

OWL 2 EL• OWL 2 EL Profil basiert auf der Beschreibungslogik EL++:

Beschreibungslogik EL++

• Konjunktion C ⊓ D, existentielle Restriktion ∃R.C, ⊤ und ⊥• Abgeschlossene Klassen, eingeschränkter Rollen-Bildbereich• Allgemeine Rolleninklusion (RBox), Transitivität• Nicht erlaubt: Allquantoren, Disjunktion, Komplement,

Kardinalitätsrestriktionen, Disjunktheit und Inverses von Rollen,..

⊓∃⊤⊥ ⊑ ⊓∃⊤⊥

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

58

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.5 OWL 2 Profile

OWL 2 EL• OWL 2 EL Profil basiert auf der Beschreibungslogik EL++:

• Vorteile:

• Polynomielle Komplexität für alle Standard-Inferenztypen, d.h. Erfüllbarkeit, Klassifikation, Instanzüberprüfung, etc.

• Relativ einfache Implementierung

• Unterstützt praktisch relevante Ontologien (z.B. SNOMED-CT)

Beschreibungslogik EL++

• Konjunktion C ⊓ D, existentielle Restriktion ∃R.C, ⊤ und ⊥• Abgeschlossene Klassen, eingeschränkter Rollen-Bildbereich• Allgemeine Rolleninklusion (RBox), Transitivität• Nicht erlaubt: Allquantoren, Disjunktion, Komplement,

Kardinalitätsrestriktionen, Disjunktheit und Inverses von Rollen,..

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

59

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.5 OWL 2 Profile

OWL 2 EL• OWL 2 EL Beispiele:

• ∃has.Sorrow ⊑ ∃has.Liqueur

• ∃married.⊤ ⊓ CatholicPriest ⊑ ⊥

• German ⊑ ∃knows.{angela}

• hasParent º hasParent ⊑ hasGrandparent

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

60

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.5 OWL 2 Profile

OWL 2 QL• OWL 2 QL Profil basiert auf der Beschreibungslogik DL Lite:

• Beispiel:• ∃married.⊤ ⊑ ¬Free ⊓ ∃has.Sorrow

Beschreibungslogik DL Lite• Oberklassen (R⊑S): ⊓, ¬, ∃R.C

• Unterklassen (R⊑S): ∃R.⊤• Inverse Rollen, einfache Rollenhierarchien• ABox wie in SHROIQ(D) • Nicht erlaubt: Allquantoren, abgeschlossene Klassen, Disjunktion,

Self, funktionale und invers-funktionale Rollen (owl:hasKey), Kardinalitätsrestriktionen, Transitivität, allgemeine Rolleninklusion, Gleichheit von Individuen (owl:sameAs)

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

61

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.5 OWL 2 Profile

OWL 2 QL• OWL 2 QL Profil basiert auf der Beschreibungslogik DL Lite:

• Vorteile:• Sub-polynomielle Komplexität (verwandt mit relationalen

Datenbanken), Instanzretrieval in LogSpace• Schnelle Implementierungen verfügbar, Skalierbarkeit

Beschreibungslogik DL Lite• Oberklassen (R⊑S): ⊓, ¬, ∃R.C

• Unterklassen (R⊑S): ∃R.⊤• Inverse Rollen, einfache Rollenhierarchien• ABox wie in SHROIQ(D) • Nicht erlaubt: Allquantoren, abgeschlossene Klassen, Disjunktion,

Self, funktionale und invers-funktionale Rollen (owl:hasKey), Kardinalitätsrestriktionen, Transitivität, allgemeine Rolleninklusion, Gleichheit von Individuen (owl:sameAs)

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

62

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.5 OWL 2 Profile

OWL 2 RL• OWL 2 RL Profil basiert auf Horn-Regel-Fragment von OWL 2:

• Subklassenaxiome (R⊑S) können als Regel interpretiert werden (R→S)

Horn-Regel-Fragment von OWL 2:• Oberklassen (R⊑S): ⊓, ∃R.{a},∀R.C, ≤1R.C

• Unterklassen (R⊑S): ⊓, ⊔, ∃R.C, ∃R.{a}

• ⊤, ⊥

• Nicht erlaubt: negierte Fakten, Reflexivität (sonst alle RBox-Features erlaubt), ...

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

63

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.5 OWL 2 Profile

OWL 2 RL• OWL 2 RL Profil basiert auf Horn-Regel-Fragment von OWL 2:

• Subklassenaxiome (R⊑S) können als Regel interpretiert werden (R→S)

• Vorteile:• Polynomielle Komplexität (PTime-complete)• Einfache Implementierung (OWL-Axiome als Regeln)• Verwandt mit Regelsprachen

Horn-Regel-Fragment von OWL 2:• Oberklassen (R⊑S): ⊓, ∃R.{a},∀R.C, ≤1R.C

• Unterklassen (R⊑S): ⊓, ⊔, ∃R.C, ∃R.{a}

• ⊤, ⊥

• Nicht erlaubt: negierte Fakten, Reflexivität (sonst alle RBox-Features erlaubt), ...

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

64

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.5 OWL 2 Profile

OWL 2 RL• OWL 2 RL Beispiele:

• ∃parentOf.∃parentOf.⊤ ⊑ Grandfather(als Regel: parentOf(x,y) ⋀ parentOf(y,z) → Grandfather(x)

• Orphan ⊑ ∀hasParent.Dead(als Regel: Orphan(x) ⋀ hasParent(x,y) → Dead(y)

• Monogamous ⊑ ≤1 married.Alive(als Regel: Monogamous(x) ⋀ married(x,y) ⋀ Alive(y) ⋀ married(x,z) ⋀ Alive(z)→ y=z )

• childOf º childOf ⊑ grandchildOf(als Regel: childOf(x,y) ⋀ childOf(y,z) → grandchildOf(x,z) )

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

65

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.5 OWL 2 Profile

OWL 2 Full• Erweiterung von OWL 1 Full um neue OWL 2 Konstrukte,

d.h. Vereinigung von OWL 2 DL und RDFS

• Semantik (größtenteils) als Erweiterung der OWL Full-Semantik

• Gedacht eher als konzeptionelle Modellierungssprache, aktuell aber nur wenig Softwareunterstützung für automatische Ableitungen

• Logische Konsistenz der Spezifikation weiter offen (wie bei OWL Full)

• Aber:

• Viele OWL 1 Full Ontologien sind jetzt auch als OWL 2 DL Ontologie interpretierbar(vgl. Punning)

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

66

3. Wissensrepräsentationen3.6 OWL 2 / 3.6.5 OWL 2 Profile

OWL 2 Reasoner

•OWL 2 DL:

• Pellet: http://clarkparsia.com/pellet/

• HermiT: http://www.hermit-reasoner.com/

•OWL 2 EL:

• CEL: http://code.google.com/p/cel/

•OWL 2 RL:

• im Prinzip jeder regelbasierte Reasoner

•OWL 2 QL:

• Im Prinzip jede SQL Datenbank (natürlich mit entsprechenden Umformulierungen...)

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

6719.01.2010 – Vorlesung Nr. 101 2 3 4 5 6 7 8 119 12

13

3. Wissensrepräsentation und LogikDie Sprachen des Semantic Web - Teil 2

3.1.Ontologien in der Philosophie und der Informatik

3.2.Wiederholung Aussagenlogik und Prädikatenlogik

3.3.RDFS-Semantik

3.4.Beschreibungslogiken

3.5.OWL und OWL-Semantik

3.6.OWL2

3.7.Regeln mit SWRL/RIF

14

Semantic Web - Vorlesungsinhalt

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

Semantic Web Architektur68

URI / IRI

XML / XSDData Interchange: RDF

RDFS

Ontology: OWL Rule: RIF

Query:SPARQL

Proof

Unifying Logic

Cry

pto

Trust

Interface & Application

Ontology-Level

3. Wissensrepräsentation und Logik

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

69

Semantic Web

Nächste Vorlesung: Regeln und Semantic Web Rule Language

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

70

Literatur

»P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure Semantic Web Grundlagen, Springer, 2008.

»P. Hitzler, M. Krötzsch, S. Rudolph:Foundations of Semantic Web Technologies,CRC Press, 2009.

3. Wissensrepräsentation und Logik

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam

71

Literatur

•Bloghttp://sewe0910.blogspot.com/

•Materialien-Webseitehttp://www.hpi.uni-potsdam.de/meinel/teaching/lectures_classes/semanticweb_ws0910.html

•bibsonomy - Bookmarkshttp://www.bibsonomy.org/user/lysander07/sw0910_10

Besten Dank auch an Pascal Hitzler, Sebastian Rudolph und Markus Krötzsch für die Vorlesungsunterlagen auf semantic-web-grundlagen.de

3. Wissensrepräsentation und Logik