08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

134
Vorlesung Dr. Harald Sack Hasso-Plattner-Institut für Softwaresystemtechnik Universität Potsdam Wintersemester 2011/12 Semantic Web Technologien Blog zur Vorlesung: http://wwwsoup2011.blogspot.com/ Mittwoch, 14. Dezember 11

description

 

Transcript of 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Page 1: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

VorlesungDr. Harald Sack

Hasso-Plattner-Institut für SoftwaresystemtechnikUniversität Potsdam

Wintersemester 2011/12

Semantic Web Technologien

Blog zur Vorlesung: http://wwwsoup2011.blogspot.com/

Mittwoch, 14. Dezember 11

Page 2: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

Formal

e Sema

ntik

für RD

F(S)

Rembrandt van Rijn, Die Anatomie des Dr. Tulp, 1632

2

Semantic Web Technologien Wiederholung

Mittwoch, 14. Dezember 11

Page 3: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

1. Einführung 2. Semantic Web Basisarchitektur

Die Sprachen des Semantic Web - Teil 1

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

4. Semantic Web Anwendungen

3

Semantic Web Technologien Vorlesungsinhalt

Mittwoch, 14. Dezember 11

Page 4: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

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

3.1.Exkurs: Ontologien in Philosophie und Informatik

3.2.Wiederholung: Aussagenlogik und Prädikatenlogik

3.3.Beschreibungslogiken (Description Logics)3.4.RDF(S)-Semantik3.5.OWL und OWL-Semantik3.6.OWL 2 und Regeln

Semantic Web Technologien Vorlesungsinhalt

4

Mittwoch, 14. Dezember 11

Page 5: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

OWL

Web On

tology

Langu

age5

Mittwoch, 14. Dezember 11

Page 6: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

6

3. Wissensrepräsentation und Logik3.5 OWL und OWL Semantik

3.5 OWL und OWL-Semantik3.5.1 OWL 1 - Übersicht 3.5.2 OWL 1 - Syntax3.5.3 OWL 1 - Werkzeuge3.5.4 OWL - Semantik

Mittwoch, 14. Dezember 11

Page 7: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

7

Why OWL and not WOL ...?

Mittwoch, 14. Dezember 11

Page 8: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

8• OWL - W3C Recommendation seit 2004• OWL 2 - W3C Recommendation seit 2009

OWL – Web Ontology Language

Mittwoch, 14. Dezember 11

Page 9: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

8• OWL - W3C Recommendation seit 2004• OWL 2 - W3C Recommendation seit 2009

• OWL Ontologie besteht aus

OWL – Web Ontology Language

Mittwoch, 14. Dezember 11

Page 10: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

8• OWL - W3C Recommendation seit 2004• OWL 2 - W3C Recommendation seit 2009

• OWL Ontologie besteht aus• Klassen / Properties / Individuen (Instanzen von Klassen)

OWL – Web Ontology Language

Mittwoch, 14. Dezember 11

Page 11: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

8• OWL - W3C Recommendation seit 2004• OWL 2 - W3C Recommendation seit 2009

• OWL Ontologie besteht aus• Klassen / Properties / Individuen (Instanzen von Klassen)

• Open World Assumption

OWL – Web Ontology Language

Mittwoch, 14. Dezember 11

Page 12: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

8• OWL - W3C Recommendation seit 2004• OWL 2 - W3C Recommendation seit 2009

• OWL Ontologie besteht aus• Klassen / Properties / Individuen (Instanzen von Klassen)

• Open World Assumption• „Fehlen von Information wird nicht als negative Information

gewertet“

OWL – Web Ontology Language

Mittwoch, 14. Dezember 11

Page 13: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

8• OWL - W3C Recommendation seit 2004• OWL 2 - W3C Recommendation seit 2009

• OWL Ontologie besteht aus• Klassen / Properties / Individuen (Instanzen von Klassen)

• Open World Assumption• „Fehlen von Information wird nicht als negative Information

gewertet“• Bsp.: sitztNeben(PersonA, PersonB)

PersonA kann auch neben anderen Personen sitzen…

OWL – Web Ontology Language

Mittwoch, 14. Dezember 11

Page 14: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

8• OWL - W3C Recommendation seit 2004• OWL 2 - W3C Recommendation seit 2009

• OWL Ontologie besteht aus• Klassen / Properties / Individuen (Instanzen von Klassen)

• Open World Assumption• „Fehlen von Information wird nicht als negative Information

gewertet“• Bsp.: sitztNeben(PersonA, PersonB)

PersonA kann auch neben anderen Personen sitzen…

• Keine Unique Name Assumption

OWL – Web Ontology Language

Mittwoch, 14. Dezember 11

Page 15: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

8• OWL - W3C Recommendation seit 2004• OWL 2 - W3C Recommendation seit 2009

• OWL Ontologie besteht aus• Klassen / Properties / Individuen (Instanzen von Klassen)

• Open World Assumption• „Fehlen von Information wird nicht als negative Information

gewertet“• Bsp.: sitztNeben(PersonA, PersonB)

PersonA kann auch neben anderen Personen sitzen…

• Keine Unique Name Assumption• „Verschiedenheit muss explizit ausgedrückt werden“

OWL – Web Ontology Language

Mittwoch, 14. Dezember 11

Page 16: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

8• OWL - W3C Recommendation seit 2004• OWL 2 - W3C Recommendation seit 2009

• OWL Ontologie besteht aus• Klassen / Properties / Individuen (Instanzen von Klassen)

• Open World Assumption• „Fehlen von Information wird nicht als negative Information

gewertet“• Bsp.: sitztNeben(PersonA, PersonB)

PersonA kann auch neben anderen Personen sitzen…

• Keine Unique Name Assumption• „Verschiedenheit muss explizit ausgedrückt werden“

• Bsp.: PersonA kann die selbe Instanz bezeichnen wie

PersonB

OWL – Web Ontology Language

Mittwoch, 14. Dezember 11

Page 17: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

9

OWL – Web Ontology Language

• Semantisches Fragment von FOL• OWL existiert in 5 Varianten

FOL

SWRL/RIF OWL Full

OWL DL

OWL Lite RDFS

KonzeptHierarchien

OWL ELOWL RLOWL QL

Mittwoch, 14. Dezember 11

Page 18: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

9

OWL – Web Ontology Language

• Semantisches Fragment von FOL• OWL existiert in 5 Varianten• OWL Lite ⊆ OWL DL ⊆ OWL Full

FOL

SWRL/RIF OWL Full

OWL DL

OWL Lite RDFS

KonzeptHierarchien

OWL ELOWL RLOWL QL

Mittwoch, 14. Dezember 11

Page 19: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

9

OWL – Web Ontology Language

• Semantisches Fragment von FOL• OWL existiert in 5 Varianten• OWL Lite ⊆ OWL DL ⊆ OWL Full

FOL

SWRL/RIF OWL Full

OWL DL

OWL Lite RDFS

KonzeptHierarchien

OWL ELOWL RLOWL QL

OWL1

Mittwoch, 14. Dezember 11

Page 20: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

10

OWL – Web Ontology Language

• Semantisches Fragment von FOL• OWL existiert in 5 Varianten• OWL Lite ⊆ OWL DL ⊆ OWL Full

FOL

SWRL/RIF OWL Full

OWL DL

OWL Lite RDFS

KonzeptHierarchien

OWL ELOWL RLOWL QL

OWL2

Mittwoch, 14. Dezember 11

Page 21: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

10

OWL – Web Ontology Language

• Semantisches Fragment von FOL• OWL existiert in 5 Varianten• OWL Lite ⊆ OWL DL ⊆ OWL Full

• für OWL2:FOL

SWRL/RIF OWL Full

OWL DL

OWL Lite RDFS

KonzeptHierarchien

OWL ELOWL RLOWL QL

OWL2

Mittwoch, 14. Dezember 11

Page 22: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563

10

OWL – Web Ontology Language

• Semantisches Fragment von FOL• OWL existiert in 5 Varianten• OWL Lite ⊆ OWL DL ⊆ OWL Full

• für OWL2:• OWL EL, OWL RL, OWL QL

⊆ OWL DL ⊆ OWL Full

FOL

SWRL/RIF OWL Full

OWL DL

OWL Lite RDFS

KonzeptHierarchien

OWL ELOWL RLOWL QL

OWL2

Mittwoch, 14. Dezember 11

Page 23: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

11

OWL – Web Ontology Language

• OWL Lite SHIF(D)

• Teilmenge von OWL DL , eingeschränkt (Keine Aufzählungsklassen, Kardinalität, Disjunktheit)

Lite

DLFull

Mittwoch, 14. Dezember 11

Page 24: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

11

OWL – Web Ontology Language

• OWL Lite SHIF(D)

• Teilmenge von OWL DL , eingeschränkt (Keine Aufzählungsklassen, Kardinalität, Disjunktheit)

• Komplexität ExpTime (worst case)

Lite

DLFull

Mittwoch, 14. Dezember 11

Page 25: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

11

OWL – Web Ontology Language

• OWL Lite SHIF(D)

• Teilmenge von OWL DL , eingeschränkt (Keine Aufzählungsklassen, Kardinalität, Disjunktheit)

• Komplexität ExpTime (worst case)

• OWL DL (Description Logic) SHOIN (D) bzw. SHROIQ (D) [OWL2]

Lite

DLFull

Mittwoch, 14. Dezember 11

Page 26: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

11

OWL – Web Ontology Language

• OWL Lite SHIF(D)

• Teilmenge von OWL DL , eingeschränkt (Keine Aufzählungsklassen, Kardinalität, Disjunktheit)

• Komplexität ExpTime (worst case)

• OWL DL (Description Logic) SHOIN (D) bzw. SHROIQ (D) [OWL2]• formal definierte Semantik

Lite

DLFull

Mittwoch, 14. Dezember 11

Page 27: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

11

OWL – Web Ontology Language

• OWL Lite SHIF(D)

• Teilmenge von OWL DL , eingeschränkt (Keine Aufzählungsklassen, Kardinalität, Disjunktheit)

• Komplexität ExpTime (worst case)

• OWL DL (Description Logic) SHOIN (D) bzw. SHROIQ (D) [OWL2]• formal definierte Semantik

• entscheidbar, vollständig, korrekt

Lite

DLFull

Mittwoch, 14. Dezember 11

Page 28: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

11

OWL – Web Ontology Language

• OWL Lite SHIF(D)

• Teilmenge von OWL DL , eingeschränkt (Keine Aufzählungsklassen, Kardinalität, Disjunktheit)

• Komplexität ExpTime (worst case)

• OWL DL (Description Logic) SHOIN (D) bzw. SHROIQ (D) [OWL2]• formal definierte Semantik

• entscheidbar, vollständig, korrekt• Komplexität NExpTime (worst case)

Lite

DLFull

Mittwoch, 14. Dezember 11

Page 29: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

11

OWL – Web Ontology Language

• OWL Lite SHIF(D)

• Teilmenge von OWL DL , eingeschränkt (Keine Aufzählungsklassen, Kardinalität, Disjunktheit)

• Komplexität ExpTime (worst case)

• OWL DL (Description Logic) SHOIN (D) bzw. SHROIQ (D) [OWL2]• formal definierte Semantik

• entscheidbar, vollständig, korrekt• Komplexität NExpTime (worst case)

• OWL FullLite

DLFull

Mittwoch, 14. Dezember 11

Page 30: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

11

OWL – Web Ontology Language

• OWL Lite SHIF(D)

• Teilmenge von OWL DL , eingeschränkt (Keine Aufzählungsklassen, Kardinalität, Disjunktheit)

• Komplexität ExpTime (worst case)

• OWL DL (Description Logic) SHOIN (D) bzw. SHROIQ (D) [OWL2]• formal definierte Semantik

• entscheidbar, vollständig, korrekt• Komplexität NExpTime (worst case)

• OWL Full• Vereinigung von OWL Syntax und RDFS

Lite

DLFull

Mittwoch, 14. Dezember 11

Page 31: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

11

OWL – Web Ontology Language

• OWL Lite SHIF(D)

• Teilmenge von OWL DL , eingeschränkt (Keine Aufzählungsklassen, Kardinalität, Disjunktheit)

• Komplexität ExpTime (worst case)

• OWL DL (Description Logic) SHOIN (D) bzw. SHROIQ (D) [OWL2]• formal definierte Semantik

• entscheidbar, vollständig, korrekt• Komplexität NExpTime (worst case)

• OWL Full• Vereinigung von OWL Syntax und RDFS

• Metamodellierung (Schachtelung)

Lite

DLFull

Mittwoch, 14. Dezember 11

Page 32: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

11

OWL – Web Ontology Language

• OWL Lite SHIF(D)

• Teilmenge von OWL DL , eingeschränkt (Keine Aufzählungsklassen, Kardinalität, Disjunktheit)

• Komplexität ExpTime (worst case)

• OWL DL (Description Logic) SHOIN (D) bzw. SHROIQ (D) [OWL2]• formal definierte Semantik

• entscheidbar, vollständig, korrekt• Komplexität NExpTime (worst case)

• OWL Full• Vereinigung von OWL Syntax und RDFS

• Metamodellierung (Schachtelung)

• Unentscheidbar (keine Beschreibungslogik)

Lite

DLFull

Mittwoch, 14. Dezember 11

Page 33: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

12

OWL – Web Ontology Language

Lite

DLFull

• Disjunktheit von Klassen•Bsp.: Klassen Person und Getränk sind disjunkt

• Inverse Properties

Mittwoch, 14. Dezember 11

Page 34: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

12

OWL – Web Ontology Language

Lite

DLFull

• Disjunktheit von Klassen•Bsp.: Klassen Person und Getränk sind disjunkt

• Inverse Properties•Bsp.: mag ↔ wird gemocht von

Mittwoch, 14. Dezember 11

Page 35: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

12

OWL – Web Ontology Language

Lite

DLFull

• Disjunktheit von Klassen•Bsp.: Klassen Person und Getränk sind disjunkt

• Inverse Properties•Bsp.: mag ↔ wird gemocht von

• Verschiedenheit von Instanzen

Mittwoch, 14. Dezember 11

Page 36: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

12

OWL – Web Ontology Language

Lite

DLFull

• Disjunktheit von Klassen•Bsp.: Klassen Person und Getränk sind disjunkt

• Inverse Properties•Bsp.: mag ↔ wird gemocht von

• Verschiedenheit von Instanzen•Bsp.: PersonA != PersonB

Mittwoch, 14. Dezember 11

Page 37: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

12

OWL – Web Ontology Language

Lite

DLFull

• Disjunktheit von Klassen•Bsp.: Klassen Person und Getränk sind disjunkt

• Inverse Properties•Bsp.: mag ↔ wird gemocht von

• Verschiedenheit von Instanzen•Bsp.: PersonA != PersonB

• Klassenbeschreibungen

Mittwoch, 14. Dezember 11

Page 38: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

12

OWL – Web Ontology Language

Lite

DLFull

• Disjunktheit von Klassen•Bsp.: Klassen Person und Getränk sind disjunkt

• Inverse Properties•Bsp.: mag ↔ wird gemocht von

• Verschiedenheit von Instanzen•Bsp.: PersonA != PersonB

• Klassenbeschreibungen•Bsp.: Klasse Kaffeeliebhaber besteht aus Mitgliedern der Klasse Person, die für das Property mag den Wert “Kaffee“ besitzen

Mittwoch, 14. Dezember 11

Page 39: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

13

3. Wissensrepräsentation und Logik3.5 OWL und OWL Semantik

3.5 OWL und OWL-Semantik3.5.1 OWL 1 - Übersicht 3.5.2 OWL 1 - Syntax3.5.3 OWL 1 - Werkzeuge3.5.4 OWL - Semantik

Mittwoch, 14. Dezember 11

Page 40: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

14

OWL 1 – Syntax Varianten

<owl:Class rdf:ID=“Wein“> <rdfs:subClassOf rdf:resource=“#Getraenk“/></owl:Class>

class(a:Wine partial a:Getraenk)

Wein ⊆ Getraenk

RDF(S)-Syntax

abstract Syntax

DL-Syntax

:Getraenk a owl:Class .:Wein a owl:Class ; rdfs:subClass :Getraenk .

Turtle

Mittwoch, 14. Dezember 11

Page 41: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

15

OWL 1 – RDF(S)-Syntax

• OWL-Dokumente sind RDF Dokumente (zumindest in der Standard-Syntax)

• OWL-Dokumente bestehen aus• Kopf mit allgemeinen Angaben• Rest mit der eigentlichen Ontologie

<rdf:RDF xmlns ="http://www.semanticweb-grundlagen.de/beispielontologie#" xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:xsd ="http://www.w3.org/2001/XMLSchema#" xmlns:rdfs ="http://www.w3.org/2000/01/rdf-schema#" xmlns:owl ="http://www.w3.org/2002/07/owl#“ > ...</rdf:RDF>

Mittwoch, 14. Dezember 11

Page 42: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

16

3.5 OWL und OWL-Semantik3.5.1 OWL - Übersicht 3.5.2 OWL Syntax - OWL Document Header - OWL Klassen, Rollen und Individuen - OWL - komplexe Klassen - OWL - Eigenschaften von Rollen - OWL Varianten - Anfragen an OWL3.5.3 OWL Werkzeuge3.5.4 OWL Semantik

Mittwoch, 14. Dezember 11

Page 43: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

17

OWL Document Header

<owl:Ontology rdf:about=""> <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string“> SWRC Ontologie in der Version vom Januar 2009 </rdfs:comment> <owl:versionInfo>v0.5</owl:versionInfo> <owl:imports rdf:resource="http://www.hpi.uni-potsdam.de/foo"/> <owl:priorVersion rdf:resource="http://www.semweb.de/swrc"/></owl:Ontology>

Mittwoch, 14. Dezember 11

Page 44: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

18

OWL Document Header

• von rdfs geerbt:• rdfs:comment• rdfs:label• rdfs:seeAlso• rdfs:isDefinedBy

• sonstiges:• owl:imports

Mittwoch, 14. Dezember 11

Page 45: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

18

OWL Document Header

• von rdfs geerbt:• rdfs:comment• rdfs:label• rdfs:seeAlso• rdfs:isDefinedBy

• sonstiges:• owl:imports

• zur Versionierung:• owl:versionInfo• owl:priorVersion• owl:backwardCompatibleWith• owl:incompatibleWith• owl:DeprecatedClass• owl:DeprecatedProperty

Mittwoch, 14. Dezember 11

Page 46: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

19

3.5 OWL und OWL-Semantik3.5.1 OWL - Übersicht 3.5.2 OWL Syntax - OWL Document Header - OWL Klassen, Rollen und Individuen - OWL - komplexe Klassen - OWL - Eigenschaften von Rollen - OWL Varianten - Anfragen an OWL3.5.3 OWL Werkzeuge3.5.4 OWL Semantik

Mittwoch, 14. Dezember 11

Page 47: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

20

OWL – Klassen, Rollen und Individuen

• Ontologieaxiome setzen sich aus drei Bausteinen zusammen:

• Klassen•Vergleichbar mit Klassen in RDFS

• Individuen•Vergleichbar mit Objekten in RDFS

• Rollen•Vergleichbar mit Properties in RDFS

Mittwoch, 14. Dezember 11

Page 48: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

21• es existieren zwei vordefinierte Klassen• Thing (Klasse, die alle Individuen enthält)• Nothing (leere Klasse)

• Definition einer Klasse

<owl:Class rdf:ID=“Wein"/>

:Wein a :owlClass .

OWL – Klassen

Mittwoch, 14. Dezember 11

Page 49: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

22 • Individuendefinition über Klassenzugehörigkeit

<rdf:Description rdf:ID=“WegelerRheingauRiesling"> <rdf:type rdf:resource="Wein"/></rdf:Description>

• gleichbedeutend:

<Wein rdf:ID=“WegelerRheingauRiesling"/>

:WegelerRheingauRiesling a :Wein .

OWL – Individuen

Mittwoch, 14. Dezember 11

Page 50: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

23

OWL – Rollen

• es existieren zwei Varianten: • abstrakte Rollen (Object Properties)• konkrete Rollen (Datatype Properties)

• abstrakte Rollen (Relation) werden definiert wie Klassen

<owl:ObjectProperty rdf:ID=“wirdHergestelltAus"/>

• Domain und Range abstrakter Rollen

<owl:ObjectProperty rdf:ID=“wirdHergestelltAus"> <rdfs:domain rdf:resource="Wein"/> <rdfs:range rdf:resource="Weintrauben"/></owl:ObjectProperty>

Mittwoch, 14. Dezember 11

Page 51: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

23

OWL – Rollen

• es existieren zwei Varianten: • abstrakte Rollen (Object Properties)• konkrete Rollen (Datatype Properties)

• abstrakte Rollen (Relation) werden definiert wie Klassen

<owl:ObjectProperty rdf:ID=“wirdHergestelltAus"/>

• Domain und Range abstrakter Rollen

<owl:ObjectProperty rdf:ID=“wirdHergestelltAus"> <rdfs:domain rdf:resource="Wein"/> <rdfs:range rdf:resource="Weintrauben"/></owl:ObjectProperty>

:wirdHergestelltAus a owl:ObjectProperty .

Mittwoch, 14. Dezember 11

Page 52: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

23

OWL – Rollen

• es existieren zwei Varianten: • abstrakte Rollen (Object Properties)• konkrete Rollen (Datatype Properties)

• abstrakte Rollen (Relation) werden definiert wie Klassen

<owl:ObjectProperty rdf:ID=“wirdHergestelltAus"/>

• Domain und Range abstrakter Rollen

<owl:ObjectProperty rdf:ID=“wirdHergestelltAus"> <rdfs:domain rdf:resource="Wein"/> <rdfs:range rdf:resource="Weintrauben"/></owl:ObjectProperty>

:wirdHergestelltAus a owl:ObjectProperty .

:wirdHergestelltAus a owl:ObjectProperty ; rdfs:domain :Wein ; rdfs:range :Weintrauben .

Mittwoch, 14. Dezember 11

Page 53: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

24

OWL – Rollen

• konkrete Rollen (Attribut) haben Datentypen im Range

<owl:DatatypeProperty rdf:ID=“qualitaetstufe"/>

• Domain und Range konkreter Rollen

<owl:DatatypeProperty rdf:ID=“qualitaetstufe"> <rdfs:domain rdf:resource="Wein"/> <rdfs:range rdf:resource="&xsd;string"/></owl:DatatypeProperty>

• Viele XML Datentypen können verwendet werden.Im Standard vorgeschrieben sind integer und string.

Mittwoch, 14. Dezember 11

Page 54: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

24

OWL – Rollen

• konkrete Rollen (Attribut) haben Datentypen im Range

<owl:DatatypeProperty rdf:ID=“qualitaetstufe"/>

• Domain und Range konkreter Rollen

<owl:DatatypeProperty rdf:ID=“qualitaetstufe"> <rdfs:domain rdf:resource="Wein"/> <rdfs:range rdf:resource="&xsd;string"/></owl:DatatypeProperty>

• Viele XML Datentypen können verwendet werden.Im Standard vorgeschrieben sind integer und string.

:qualitaetstufe a owl:DatatypeProperty .

Mittwoch, 14. Dezember 11

Page 55: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

24

OWL – Rollen

• konkrete Rollen (Attribut) haben Datentypen im Range

<owl:DatatypeProperty rdf:ID=“qualitaetstufe"/>

• Domain und Range konkreter Rollen

<owl:DatatypeProperty rdf:ID=“qualitaetstufe"> <rdfs:domain rdf:resource="Wein"/> <rdfs:range rdf:resource="&xsd;string"/></owl:DatatypeProperty>

• Viele XML Datentypen können verwendet werden.Im Standard vorgeschrieben sind integer und string.

:qualitaetstufe a owl:DatatypeProperty .

:wirdHergestelltAus a owl:DatatypeProperty ; rdfs:domain :Wein ; rdfs:range xsd:string .

Mittwoch, 14. Dezember 11

Page 56: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

25

OWL – Rollen und Individuen

<Wein rdf:ID=“WegelerRheingauRiesling"> <wirdHergestelltAus rdf:resource="Riesling"/> <qualitaetstufe rdf:datatype="&xsd;string"> Spätlese </qualitaetstufe></Wein>

• Rollen sind im Allgemeinen nicht funktional

Mittwoch, 14. Dezember 11

Page 57: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

25

OWL – Rollen und Individuen

<Wein rdf:ID=“WegelerRheingauRiesling"> <wirdHergestelltAus rdf:resource="Riesling"/> <qualitaetstufe rdf:datatype="&xsd;string"> Spätlese </qualitaetstufe></Wein>

• Rollen sind im Allgemeinen nicht funktional

:WegelerRheingauRiesling a :Wein ; :wirdHergestelltAus :Riesling ; :qualitaetstufe “Spätlese“ .

Mittwoch, 14. Dezember 11

Page 58: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

26

OWL – Klassenhierarchien

<owl:Class rdf:ID=“Wein“> <rdfs:subClassOf rdf:resource=“AlkoholischesGetraenk“/></owl:Class><owl:Class rdf:ID=“AlkoholischesGetraenk“> <rdfs:subClassOf rdf:resource=“Getraenk“/></owl:Class>

• durch Inferenz kann jetzt geschlossen werden, dass “Wein“ eine Subklasse von “Getraenk“ ist

Mittwoch, 14. Dezember 11

Page 59: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

26

OWL – Klassenhierarchien

<owl:Class rdf:ID=“Wein“> <rdfs:subClassOf rdf:resource=“AlkoholischesGetraenk“/></owl:Class><owl:Class rdf:ID=“AlkoholischesGetraenk“> <rdfs:subClassOf rdf:resource=“Getraenk“/></owl:Class>

• durch Inferenz kann jetzt geschlossen werden, dass “Wein“ eine Subklasse von “Getraenk“ ist

:Wein a owl:Class ; rdfs:subClass :AlkoholischesGetraenk .:AlkoholischesGetraenk a owl:Class ; rdfs:subClass :Getraenk .

Mittwoch, 14. Dezember 11

Page 60: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

27

OWL – Klassenhierarchien und Disjunktheit

<owl:Class rdf:ID=“Wein“> <rdfs:subClassOf rdf:resource=“AlkoholischesGetraenk“/></owl:Class><owl:Class rdf:ID=“Pizza“> <rdfs:subClassOf rdf:resource=“Hauptgericht“/></owl:Class><owl:Class rdf:about=“AlkoholischesGetraenk“> <owl:disjointWith rdf:resource=“Hauptgericht“/></owl:Class>

• durch Inferenz kann jetzt geschlossen werden, dass “Wein“ und “Pizza“ ebenfalls disjunkte Klassen sind

Mittwoch, 14. Dezember 11

Page 61: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

27

OWL – Klassenhierarchien und Disjunktheit

<owl:Class rdf:ID=“Wein“> <rdfs:subClassOf rdf:resource=“AlkoholischesGetraenk“/></owl:Class><owl:Class rdf:ID=“Pizza“> <rdfs:subClassOf rdf:resource=“Hauptgericht“/></owl:Class><owl:Class rdf:about=“AlkoholischesGetraenk“> <owl:disjointWith rdf:resource=“Hauptgericht“/></owl:Class>

• durch Inferenz kann jetzt geschlossen werden, dass “Wein“ und “Pizza“ ebenfalls disjunkte Klassen sind

:Wein a owl:Class ; rdfs:subClass :AlkoholischesGetraenk .:Pizza a owl:Class ; rdfs:subClass :Hauptgericht .:AlkoholischesGetraenk owl:disjointWith :Hauptgericht .

Mittwoch, 14. Dezember 11

Page 62: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

28

OWL – Klassenhierarchien und Äquivalenz

<owl:Class rdf:ID=“Wein“> <rdfs:subClassOf rdf:resource=“alkoholischesGetraenk“/></owl:Class>

<owl:Class rdf:about=“alkoholischesGetraenk“> <owl:equivalentClass rdf:resource=“AlcoholicBeverage“/></owl:Class>

• durch Inferenz kann jetzt geschlossen werden, dass “Wein“ eine Subklasse von “AlcoholicBeverage“ ist

Mittwoch, 14. Dezember 11

Page 63: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

28

OWL – Klassenhierarchien und Äquivalenz

<owl:Class rdf:ID=“Wein“> <rdfs:subClassOf rdf:resource=“alkoholischesGetraenk“/></owl:Class>

<owl:Class rdf:about=“alkoholischesGetraenk“> <owl:equivalentClass rdf:resource=“AlcoholicBeverage“/></owl:Class>

• durch Inferenz kann jetzt geschlossen werden, dass “Wein“ eine Subklasse von “AlcoholicBeverage“ ist

:Wein a owl:Class ; rdfs:subClass :AlkoholischesGetraenk .:AlkoholischesGetraenk owl:equivalentWith :AlcoholicBeverage .

Mittwoch, 14. Dezember 11

Page 64: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

29

OWL – Individuen und Klassenbeziehungen

<Wein rdf:ID=“WegelerRheingauRiesling"> <wirdHergestelltAus rdf:resource="Riesling"/> <qualitaetstufe rdf:datatype="&xsd;string"> Spätlese </qualitaetstufe></Wein><owl:Class rdf:ID=“Wein“> <rdfs:subClassOf rdf:resource=“alkoholischesGetraenk“/></owl:Class>

• durch Inferenz kann jetzt geschlossen werden, dass “WegelerRheingauRiesling“ ein “alkoholischesGetraenk“ ist

Mittwoch, 14. Dezember 11

Page 65: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

29

OWL – Individuen und Klassenbeziehungen

<Wein rdf:ID=“WegelerRheingauRiesling"> <wirdHergestelltAus rdf:resource="Riesling"/> <qualitaetstufe rdf:datatype="&xsd;string"> Spätlese </qualitaetstufe></Wein><owl:Class rdf:ID=“Wein“> <rdfs:subClassOf rdf:resource=“alkoholischesGetraenk“/></owl:Class>

• durch Inferenz kann jetzt geschlossen werden, dass “WegelerRheingauRiesling“ ein “alkoholischesGetraenk“ ist

:WegelerRheingauRiesling a :Wein ; :wirdHergestelltAus :Riesling ; :qualitaetstufe “Spätlese“ .:Wein a owl:Class ; rdfs:subClass AlkoholischesGetraenk .

Mittwoch, 14. Dezember 11

Page 66: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

30

OWL – Beziehungen zwischen Individuen

<Wein rdf:ID=“WegelerRheingauRiesling"> <wirdHergestelltAus rdf:resource="Riesling"/> <Qualitätstufe rdf:datatype="&xsd;string"> Spätlese </Qualitätstufe></Wein><rdf:Description rdf:about=“WegelerRheingauRiesling“> <owl:sameAs rdf:resource=“WRR012345“/></rdf:Description>

• durch Inferenz kann jetzt geschlossen werden, dass “WRR012345“ ein “alkoholischesGetraenk“ ist

• Verschiedenheit von Individuen über owl:differentFrom

Mittwoch, 14. Dezember 11

Page 67: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

30

OWL – Beziehungen zwischen Individuen

<Wein rdf:ID=“WegelerRheingauRiesling"> <wirdHergestelltAus rdf:resource="Riesling"/> <Qualitätstufe rdf:datatype="&xsd;string"> Spätlese </Qualitätstufe></Wein><rdf:Description rdf:about=“WegelerRheingauRiesling“> <owl:sameAs rdf:resource=“WRR012345“/></rdf:Description>

• durch Inferenz kann jetzt geschlossen werden, dass “WRR012345“ ein “alkoholischesGetraenk“ ist

• Verschiedenheit von Individuen über owl:differentFrom

:WegelerRheingauRiesling a :Wein ; :wirdHergestelltAus :Riesling ; :qualitaetstufe “Spätlese“ ; owl:sameAs :WRR012345 .

Mittwoch, 14. Dezember 11

Page 68: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

31

OWL – Beziehungen zwischen Individuen

<owl:AllDifferent> <owl:distinctMembers rdf:parseType="Collection"> <Wein rdf:about="WegelerRheingauRiesling"/> <Wein rdf:about="AltoAdigeChardonnay"/> <Wein rdf:about="ChateauxLafiteRothschild"/> </owl:distinctMembers></owl:AllDifferent>

• Abgekürzte Schreibweise anstelle der Verwendung von mehreren owl:differentFrom.

• Der Einsatz von owl:AllDifferent und owl:distinctMembers ist nur dafür vorgesehen.

Mittwoch, 14. Dezember 11

Page 69: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

31

OWL – Beziehungen zwischen Individuen

<owl:AllDifferent> <owl:distinctMembers rdf:parseType="Collection"> <Wein rdf:about="WegelerRheingauRiesling"/> <Wein rdf:about="AltoAdigeChardonnay"/> <Wein rdf:about="ChateauxLafiteRothschild"/> </owl:distinctMembers></owl:AllDifferent>

• Abgekürzte Schreibweise anstelle der Verwendung von mehreren owl:differentFrom.

• Der Einsatz von owl:AllDifferent und owl:distinctMembers ist nur dafür vorgesehen.

_:x1 a owl:AllDifferent ; owl:distinctMembers (:WegelerRheingauRiesling :AltoAdigeChardonnay :ChateauxLafiteRothschild) .

Mittwoch, 14. Dezember 11

Page 70: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

32

OWL – abgeschlossene Klassen (Nominale)

<owl:Class rdf:about=RotweineImWarenbestand> <owl:oneOf rdf:parseType="Collection"> <Wein rdf:about="ChateauxLatourPauillac"/> <Wein rdf:about="ChateauxLafiteRothschild"/> </owl:oneOf></owl:Class>

• Dies besagt, dass es genau nur zwei Rotweine im Warenbestand gibt

Mittwoch, 14. Dezember 11

Page 71: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

32

OWL – abgeschlossene Klassen (Nominale)

<owl:Class rdf:about=RotweineImWarenbestand> <owl:oneOf rdf:parseType="Collection"> <Wein rdf:about="ChateauxLatourPauillac"/> <Wein rdf:about="ChateauxLafiteRothschild"/> </owl:oneOf></owl:Class>

• Dies besagt, dass es genau nur zwei Rotweine im Warenbestand gibt

:ChateauxLatourPauillac a :Wein .:ChateauxLafiteRothschild a :Wein .:RotweineImWarenbestand a owl:Class ; owl:oneOf (:ChateauxLatourPauillac, :ChateauxLafiteRothschild) .

Mittwoch, 14. Dezember 11

Page 72: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

33

OWL – Klassendisjunktheit (2)

• Definieren wir zusätzlich einen dritten Wein

<Wein rdf:about="AltoAdigeSauvignonBlanc"/><owl:AllDifferent> <owl:distinctMembers rdf:parseType=“Collection“> <Wein rdf:about="ChateauxLatourPauillac"/> <Wein rdf:about="ChateauxLafiteRothschild"/> <Wein rdf:about="AltoAdigeSauvignonBlanc"/> </owl:distinctMembers></owl:AllDifferent>

• folgt, dass “AltoAdigeSauvignonBlanc“ nicht im Warenbestand ist.

Mittwoch, 14. Dezember 11

Page 73: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

33

OWL – Klassendisjunktheit (2)

• Definieren wir zusätzlich einen dritten Wein

<Wein rdf:about="AltoAdigeSauvignonBlanc"/><owl:AllDifferent> <owl:distinctMembers rdf:parseType=“Collection“> <Wein rdf:about="ChateauxLatourPauillac"/> <Wein rdf:about="ChateauxLafiteRothschild"/> <Wein rdf:about="AltoAdigeSauvignonBlanc"/> </owl:distinctMembers></owl:AllDifferent>

• folgt, dass “AltoAdigeSauvignonBlanc“ nicht im Warenbestand ist.

:AltoAdigeSauvignonBlanc a :Wein ._:x1 rdf:type owl:AllDifferent ; owl:distinctMembers (:ChateauxLatourPauillac :ChateauxLafiteRothschild :AltoAdigeSauvignonBlanc) .

Mittwoch, 14. Dezember 11

Page 74: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

34

3.5 OWL und OWL-Semantik3.5.1 OWL - Übersicht 3.5.2 OWL Syntax - OWL Document Header - OWL Klassen, Rollen und Individuen - OWL - komplexe Klassen - OWL - Eigenschaften von Rollen - OWL Varianten - Anfragen an OWL3.5.3 OWL Werkzeuge3.5.4 OWL Semantik

Mittwoch, 14. Dezember 11

Page 75: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

35

• logisches und (Konjunktion): owl:intersectionOf ⊓

• logisches oder (Disjunktion): owl:unionOf ⊔

• logische Negation: owl:complementOf ¬

•Logische Konstruktoren werden verwendet, um komplexe Klassen aus einfachen Klassen zu konstruieren.

OWL – logische Klassenkonstruktoren

Mittwoch, 14. Dezember 11

Page 76: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

36

OWL – logische Klassenkonstruktoren

<owl:Class rdf:ID=“WeinImWarenbestand“> <owl:intersectionOf rdf:parseType=“Collection“> <owl:Class rdf:about=“Wein“/> <owl:Class rdf:about=“ImWarenbestand“/> </owl:intersectionOf></owl:Class>

• Die Klasse “WeinImWarenbestand“ ergibt sich aus der Schnittmenge aller Individuen der Klassen “ImWarenbestand“ und “Wein“

Mittwoch, 14. Dezember 11

Page 77: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

36

OWL – logische Klassenkonstruktoren

<owl:Class rdf:ID=“WeinImWarenbestand“> <owl:intersectionOf rdf:parseType=“Collection“> <owl:Class rdf:about=“Wein“/> <owl:Class rdf:about=“ImWarenbestand“/> </owl:intersectionOf></owl:Class>

• Die Klasse “WeinImWarenbestand“ ergibt sich aus der Schnittmenge aller Individuen der Klassen “ImWarenbestand“ und “Wein“

:Wein a owl:Class .:ImWarenbestand a owl:Class .:WeinImWarenbestand a owl:Class ; :owl:intersectionOf (:Wein :ImWarenbestand) .

Mittwoch, 14. Dezember 11

Page 78: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

37

OWL – logische Klassenkonstruktoren

<owl:Class rdf:about=“Wein“> <owl:equivalentClass> <owl:unionOf rdf:parseType=“Collection“> <owl:Class rdf:about=“TrockenerWein“/> <owl:Class rdf:about=“HalbtrockenerWein“/> <owl:Class rdf:about=“LieblicherWein“/> </owl:unionOf> </owl:equivalentClass></owl:Class>

• Trockene, halbtrockene und liebliche Weine sind ebenfalls Weine…

Mittwoch, 14. Dezember 11

Page 79: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

37

OWL – logische Klassenkonstruktoren

<owl:Class rdf:about=“Wein“> <owl:equivalentClass> <owl:unionOf rdf:parseType=“Collection“> <owl:Class rdf:about=“TrockenerWein“/> <owl:Class rdf:about=“HalbtrockenerWein“/> <owl:Class rdf:about=“LieblicherWein“/> </owl:unionOf> </owl:equivalentClass></owl:Class>

• Trockene, halbtrockene und liebliche Weine sind ebenfalls Weine…

:Wein a owl:Class ; owl:equivalentClass [ owl:unionOf ( :TrockenerWein :HalbtrockenerWein :LieblicherWein) ] .

Mittwoch, 14. Dezember 11

Page 80: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

38

OWL – logische Klassenkonstruktoren

<owl:Class rdf:about="Wein"> <rdfs:subClassOf> <owl:complementOf rdf:resource="Pizza"/> </rdfs:subClassOf></owl:Class>

• semantisch äquivalente Aussage:

<owl:Class rdf:about="Wein"> <owl:disjointWith rdf:resource="Pizza"/></owl:Class>

Mittwoch, 14. Dezember 11

Page 81: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

38

OWL – logische Klassenkonstruktoren

<owl:Class rdf:about="Wein"> <rdfs:subClassOf> <owl:complementOf rdf:resource="Pizza"/> </rdfs:subClassOf></owl:Class>

• semantisch äquivalente Aussage:

<owl:Class rdf:about="Wein"> <owl:disjointWith rdf:resource="Pizza"/></owl:Class>

:Wein a owl:Class ; rdfs:subClassOf [ owl:complementOf :Pizza ] .

Mittwoch, 14. Dezember 11

Page 82: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

38

OWL – logische Klassenkonstruktoren

<owl:Class rdf:about="Wein"> <rdfs:subClassOf> <owl:complementOf rdf:resource="Pizza"/> </rdfs:subClassOf></owl:Class>

• semantisch äquivalente Aussage:

<owl:Class rdf:about="Wein"> <owl:disjointWith rdf:resource="Pizza"/></owl:Class>

:Wein a owl:Class ; rdfs:subClassOf [ owl:complementOf :Pizza ] .

:Wein a owl:Class ; owl:disjointWith :Pizza .

Mittwoch, 14. Dezember 11

Page 83: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

39

OWL – Rolleneinschränkungen

• dienen der Definition komplexer Klassen durch Rollen

• Werterestriktionen:• owl:hasValue • owl:allValuesFrom• owl:someValuesFrom

• Kardinalitätsrestriktionen:• owl:cardinality• owl:minCardinality• owl:maxCardinality

Mittwoch, 14. Dezember 11

Page 84: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

40

OWL – Rolleneinschränkungen mit Konstanten

<owl:Class rdf:about=“HaraldsLehrveranstaltungen“> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource=“wirdGehaltenVon“/> <owl:hasValue rdf:resource=“Harald“/> </owl:Restriction> <rdfs:subClassOf></owl:Class>

• Klasse „HaraldsLehrveranstaltungen“ wird definiert durch feste Wertzuweisung (=Konstante) des Individuums Harald an das Property „wirdGehaltenVon“

HaraldsLehrveranstaltungen ⊑ wirdGehaltenVon.(Harald)

Mittwoch, 14. Dezember 11

Page 85: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

40

OWL – Rolleneinschränkungen mit Konstanten

<owl:Class rdf:about=“HaraldsLehrveranstaltungen“> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource=“wirdGehaltenVon“/> <owl:hasValue rdf:resource=“Harald“/> </owl:Restriction> <rdfs:subClassOf></owl:Class>

• Klasse „HaraldsLehrveranstaltungen“ wird definiert durch feste Wertzuweisung (=Konstante) des Individuums Harald an das Property „wirdGehaltenVon“

HaraldsLehrveranstaltungen ⊑ wirdGehaltenVon.(Harald)

:HaraldsLehrveranstaltungen a owl:Class ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty :wirdGehaltenVon ; owl:hasValue :Harald ] .

Mittwoch, 14. Dezember 11

Page 86: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

41

OWL – Rolleneinschränkungen

• owl:allValuesFromlegt alle Instanzen einer bestimmten Klasse C als erlaubten Wertebereich für ein Property P fest → (Allquantor) ∀P.C

<owl:Class rdf:about=“Wein“> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource=“hatHersteller“/> <owl:allValuesFrom rdf:resource=“Winzer“/> </owl:Restriction> <rdfs:subClassOf></owl:Class>

Wein ⊑ ∀ hatHersteller.Winzer

Mittwoch, 14. Dezember 11

Page 87: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

41

OWL – Rolleneinschränkungen

• owl:allValuesFromlegt alle Instanzen einer bestimmten Klasse C als erlaubten Wertebereich für ein Property P fest → (Allquantor) ∀P.C

<owl:Class rdf:about=“Wein“> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource=“hatHersteller“/> <owl:allValuesFrom rdf:resource=“Winzer“/> </owl:Restriction> <rdfs:subClassOf></owl:Class>

Wein ⊑ ∀ hatHersteller.Winzer

:Wein a owl:Class ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty :hatHersteller ; owl:allValuesFrom :Winzer ] .

Mittwoch, 14. Dezember 11

Page 88: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

42

OWL – Rolleneinschränkungen

• owl:someValuesFromdefiniert, dass ein Individuum mit dem Property P existieren muss und legt dessen Wertebereich fest → (Existenzquantor) ∃P.C

Tiere ⊑ ∃ ernaehrtSichVon.PflanzlicheNahrung

<owl:Class rdf:about=“Tiere“> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource=„ernaehrtSichVon“/> <owl:someValuesFrom rdf:resource=“PflanzlicheNahrung“/> </owl:Restriction> </rdfs:subClassOf></owl:Class>

Mittwoch, 14. Dezember 11

Page 89: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

42

OWL – Rolleneinschränkungen

• owl:someValuesFromdefiniert, dass ein Individuum mit dem Property P existieren muss und legt dessen Wertebereich fest → (Existenzquantor) ∃P.C

Tiere ⊑ ∃ ernaehrtSichVon.PflanzlicheNahrung

<owl:Class rdf:about=“Tiere“> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource=„ernaehrtSichVon“/> <owl:someValuesFrom rdf:resource=“PflanzlicheNahrung“/> </owl:Restriction> </rdfs:subClassOf></owl:Class>

:Tiere a owl:Class ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty :ernaehrtSichVon ; owl:somelValuesFrom :PflanzlicheNahrung ] .

Mittwoch, 14. Dezember 11

Page 90: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

43

OWL – Kardinalitätsrestriktion

• owl:cardinality gibt exakte Anzahl an (OWL Lite nur 1/0)• owl:minCardinality, owl:maxCardinality gibt Ober-/

Untergrenze an

<owl:Class rdf:about=“Streichquartett“> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource=“hatMitglied“/> <owl:cardinality rdf:datatype=“&xsd;nonNegativeInteger/> 4 </owl:cardinality> </owl:Restriction> <rdfs:subClassOf></owl:Class>

Streichquartett ⊑ (=4) hatMitglied

Mittwoch, 14. Dezember 11

Page 91: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

43

OWL – Kardinalitätsrestriktion

• owl:cardinality gibt exakte Anzahl an (OWL Lite nur 1/0)• owl:minCardinality, owl:maxCardinality gibt Ober-/

Untergrenze an

<owl:Class rdf:about=“Streichquartett“> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource=“hatMitglied“/> <owl:cardinality rdf:datatype=“&xsd;nonNegativeInteger/> 4 </owl:cardinality> </owl:Restriction> <rdfs:subClassOf></owl:Class>

Streichquartett ⊑ (=4) hatMitglied

:Streichquartett a owl:Class ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty :hatMitglied ; owl:cardinality 4^^<http://www.w3.org/2001/XMLSchema#nonNegativeInteger> ] .

Mittwoch, 14. Dezember 11

Page 92: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

44

3.5 OWL und OWL-Semantik3.5.1 OWL - Übersicht 3.5.2 OWL Syntax - OWL Document Header - OWL Klassen, Rollen und Individuen - OWL - komplexe Klassen - OWL - Eigenschaften von Rollen - OWL Varianten - Anfragen an OWL3.5.3 OWL Werkzeuge3.5.4 OWL Semantik

Mittwoch, 14. Dezember 11

Page 93: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

45

OWL – Rollenbeziehungen

• Rollenhierarchien können über Spezialisierungen aufgebaut werden: rdfs:subPropertyOf

• inverse Rollen werden definiert über owl:inverseOf• Identische Rollen werden definiert über

owl:equivalentProperty

<owl:ObjectProperty rdf:ID=“wirdHergestelltAus"> <rdfs:subPropertyOf rdf:resource=“bestehtAus“/></owl:ObjectProperty>

<owl:ObjectProperty rdf:ID=“wirdVerarbeitetZu"> <owl:inverseOf rdf:resource=“wirdHergestelltAus“/></owl:ObjectProperty>

Mittwoch, 14. Dezember 11

Page 94: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

45

OWL – Rollenbeziehungen

• Rollenhierarchien können über Spezialisierungen aufgebaut werden: rdfs:subPropertyOf

• inverse Rollen werden definiert über owl:inverseOf• Identische Rollen werden definiert über

owl:equivalentProperty

<owl:ObjectProperty rdf:ID=“wirdHergestelltAus"> <rdfs:subPropertyOf rdf:resource=“bestehtAus“/></owl:ObjectProperty>

<owl:ObjectProperty rdf:ID=“wirdVerarbeitetZu"> <owl:inverseOf rdf:resource=“wirdHergestelltAus“/></owl:ObjectProperty>

:wirdHergestelltAus a owl:ObjectProperty ; rdfs:subPropertyOf :bestehtAus .

:wirdVerarbeitetZu a owl:ObjectProperty ; owl:inverseOf :wirdHergestelltAus .

Mittwoch, 14. Dezember 11

Page 95: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

46

OWL – Rollenbeziehungen

•TransitiveProperty•Bsp: A teilVon B, B teilVon C ⇒ A teilVon C

•SymmetricProperty•Bsp: A istNachbarVon B ⇒ B istNachbarVon A

•FunctionalProperty•Bsp.: A hatMutter B, A hatMutter C ⇒ B=C

• inverseFunctionalProperty•Bsp.: B istMutterVon A, C istMutterVon A ⇒ B=C

Mittwoch, 14. Dezember 11

Page 96: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

47

OWL – Transitive Rollen

<owl:ObjectProperty rdf:ID= "liegtIn" > <rdf:type rdf:resource=“&owl;TransitiveProperty" /> <rdfs:domain rdf:resource="&owl;Thing" /> <rdfs:range rdf:resource="Region" /> </owl:ObjectProperty> <Region rdf:ID=“Rheinhessen"> <liegtIn rdf:resource="Hessen" /> </Region> <Region rdf:ID=“Hessen"> <liegtIn rdf:resource="Deutschland" /> </Region>

•durch Inferenz kann darauf geschlossen werden, dass Rheinhessen in Deutschland liegt

Mittwoch, 14. Dezember 11

Page 97: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

47

OWL – Transitive Rollen

<owl:ObjectProperty rdf:ID= "liegtIn" > <rdf:type rdf:resource=“&owl;TransitiveProperty" /> <rdfs:domain rdf:resource="&owl;Thing" /> <rdfs:range rdf:resource="Region" /> </owl:ObjectProperty> <Region rdf:ID=“Rheinhessen"> <liegtIn rdf:resource="Hessen" /> </Region> <Region rdf:ID=“Hessen"> <liegtIn rdf:resource="Deutschland" /> </Region>

•durch Inferenz kann darauf geschlossen werden, dass Rheinhessen in Deutschland liegt

:liegtIn a owl:ObjectProperty ; a owl:TransitiveProperty ; rdfs:domain owl:Thing ; rdfs:range :region .:Rheinhessen a :Region ; :liegtIn :Hessen .:Hessen a :Region ; :liegtIn :Deutschland .

Mittwoch, 14. Dezember 11

Page 98: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

48

3.5 OWL und OWL-Semantik3.5.1 OWL - Übersicht 3.5.2 OWL Syntax - OWL Document Header - OWL Klassen, Rollen und Individuen - OWL - komplexe Klassen - OWL - Eigenschaften von Rollen - OWL Varianten - Anfragen an OWL3.5.3 OWL Werkzeuge3.5.4 OWL Semantik

Mittwoch, 14. Dezember 11

Page 99: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

49

OWL – Web Ontology Language

• OWL Lite SHIF(D)

• Teilmenge von OWL DL , eingeschränkt (Keine Aufzählungsklassen, Kardinalität, Disjunktheit)

• Komplexität ExpTime (worst case)

• OWL DL (Description Logic) SHOIN (D) bzw. SHROIQ (D) [OWL2]• formal definierte Semantik

• entscheidbar, vollständig, korrekt• Komplexität NExpTime (worst case)

• OWL Full• Vereinigung von OWL Syntax und RDFS

• Metamodellierung (Schachtelung)

• Unentscheidbar (keine Beschreibungslogik)

Lite

DLFull

Mittwoch, 14. Dezember 11

Page 100: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

49

OWL – Web Ontology Language

• OWL Lite SHIF(D)

• Teilmenge von OWL DL , eingeschränkt (Keine Aufzählungsklassen, Kardinalität, Disjunktheit)

• Komplexität ExpTime (worst case)

• OWL DL (Description Logic) SHOIN (D) bzw. SHROIQ (D) [OWL2]• formal definierte Semantik

• entscheidbar, vollständig, korrekt• Komplexität NExpTime (worst case)

• OWL Full• Vereinigung von OWL Syntax und RDFS

• Metamodellierung (Schachtelung)

• Unentscheidbar (keine Beschreibungslogik)

Lite

DLFull

veraltet.

..

Mittwoch, 14. Dezember 11

Page 101: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

50

OWL FULL

• Uneingeschränkte Nutzung aller OWL und RDFS-Sprachelemente (muss gültiges RDFS sein).

• Schwierig z.B.: nicht vorhandene Typentrennung (Klassen, Rollen, Individuen), dadurch:• owl:Thing dasselbe wie rdfs:resource• owl:Class dasselbe wie rdfs:Class• owl:DatatypeProperty Subklasse von

owl:ObjectProperty• owl:ObjectProperty dasselbe wie rdfs:Property

Mittwoch, 14. Dezember 11

Page 102: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

51

OWL DL

• Nur Verwendung von explizit erlaubten RDFS Sprachelementen (z.B. die in unseren Beispielen).• Nicht erlaubt: rdfs:Class, rdfs:Property

• Typentrennung: • Klassen und Rollen müssen explizit deklariert werden.

• Konkrete Rollen dürfen nicht als Transitiv, Symmetrisch, Invers oder Invers-Funktional deklariert werden.

• Zahlenrestriktionen dürfen nicht mit transitiven Rollen, deren Subrollen, oder Inversen davon verwendet werden

Mittwoch, 14. Dezember 11

Page 103: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

52

OWL LITE (alt...)

•Alle Einschränkungen für OWL DL gelten.•Nicht erlaubt:

•oneOf, •unionOf,•complementOf, •hasValue, •disjointWith

•Zahlenrestriktionen nur mit 0 und 1 erlaubt.•Einige Einschränkungen zum Auftreten von anonymen (komplexen) Klassen, d.h. In manchen Fällen ist die Verwendung von Klassennamen bzw. Rollenrestriktionen vorgeschrieben

veraltet.

..

Mittwoch, 14. Dezember 11

Page 104: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

53

3.5 OWL und OWL-Semantik3.5.1 OWL - Übersicht 3.5.2 OWL Syntax - OWL Document Header - OWL Klassen, Rollen und Individuen - OWL - komplexe Klassen - OWL - Eigenschaften von Rollen - OWL Varianten - Anfragen an OWL3.5.3 OWL Werkzeuge3.5.4 OWL Semantik

Mittwoch, 14. Dezember 11

Page 105: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

54

Terminologische OWL-Anfragen

•Klassenäquivalenz•Subklassenbeziehung•Disjunktheit von Klassen•globale Konsistenz (Erfüllbarkeit, Widerspruchsfreiheit)•Klassenkonsistenz: Eine Klasse ist inkonsistent, wenn sie äquivalent zu owl:Nothing ist.

•deutet oft auf einen Modellierungsfehler hin

<owl:Class rdf:about="#Wein"> <rdfs:subClassOf rdf:resource="#Getraenk"/> <owl:disjointWith rdf:resource="#Getraenk"/></owl:Class>

Mittwoch, 14. Dezember 11

Page 106: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

55

Assertionale OWL-Anfragen

• Instanzüberprüfung: • Gehört gegebenes Individuum zu gegebener Klasse?

Mittwoch, 14. Dezember 11

Page 107: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

55

Assertionale OWL-Anfragen

• Instanzüberprüfung: • Gehört gegebenes Individuum zu gegebener Klasse?

• Klassenextension:

Mittwoch, 14. Dezember 11

Page 108: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

55

Assertionale OWL-Anfragen

• Instanzüberprüfung: • Gehört gegebenes Individuum zu gegebener Klasse?

• Klassenextension: • Suche nach allen Individuen, die in einer Klasse

enthalten sind.

Mittwoch, 14. Dezember 11

Page 109: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

55

Assertionale OWL-Anfragen

• Instanzüberprüfung: • Gehört gegebenes Individuum zu gegebener Klasse?

• Klassenextension: • Suche nach allen Individuen, die in einer Klasse

enthalten sind.

• Rollenüberprüfung:

Mittwoch, 14. Dezember 11

Page 110: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

55

Assertionale OWL-Anfragen

• Instanzüberprüfung: • Gehört gegebenes Individuum zu gegebener Klasse?

• Klassenextension: • Suche nach allen Individuen, die in einer Klasse

enthalten sind.

• Rollenüberprüfung:• Werden zwei gegebene Individuen durch Rolle

verknüpft?

Mittwoch, 14. Dezember 11

Page 111: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

55

Assertionale OWL-Anfragen

• Instanzüberprüfung: • Gehört gegebenes Individuum zu gegebener Klasse?

• Klassenextension: • Suche nach allen Individuen, die in einer Klasse

enthalten sind.

• Rollenüberprüfung:• Werden zwei gegebene Individuen durch Rolle

verknüpft?• Rollenextension:

Mittwoch, 14. Dezember 11

Page 112: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

55

Assertionale OWL-Anfragen

• Instanzüberprüfung: • Gehört gegebenes Individuum zu gegebener Klasse?

• Klassenextension: • Suche nach allen Individuen, die in einer Klasse

enthalten sind.

• Rollenüberprüfung:• Werden zwei gegebene Individuen durch Rolle

verknüpft?• Rollenextension:

• Suche nach allen Individuenpaaren, die durch eine Rolle verknüpft sind.

Mittwoch, 14. Dezember 11

Page 113: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

56

3. Wissensrepräsentation und Logik3.5 OWL und OWL Semantik

3.5 OWL und OWL-Semantik3.5.1 OWL - Übersicht 3.5.2 OWL Syntax - OWL Document Header - OWL Klassen, Rollen und Individuen - OWL - komplexe Klassen - OWL - Eigenschaften von Rollen - OWL Varianten - Anfragen an OWL3.5.3 OWL Werkzeuge3.5.4 OWL Semantik

Mittwoch, 14. Dezember 11

Page 114: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

57

OWL Werkzeuge

•Editoren•Protegé, http://protege.stanford.edu•SWOOP, http://www.mindswap.org/2004/SWOOP/•KAON(2) OWL Tools, http://owltools.ontoware.org/

•Inferenzmaschinen•Pellet, http://clarkparsia.com/pellet•KAON2, http://kaon2.semanticweb.org•FACT++, http://owl.man.ac.uk/factplusplus/•Racer, http://www.racer-systems.com/•HermiT, http://hermit-reasoner.com/

Mittwoch, 14. Dezember 11

Page 115: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

58

3. Wissensrepräsentation und Logik3.5 OWL und OWL Semantik

3.5 OWL und OWL-Semantik3.5.1 OWL - Übersicht 3.5.2 OWL Syntax - OWL Document Header - OWL Klassen, Rollen und Individuen - OWL - komplexe Klassen - OWL - Eigenschaften von Rollen - OWL Varianten - Anfragen an OWL3.5.3 OWL Werkzeuge3.5.4 OWL Semantik

Mittwoch, 14. Dezember 11

Page 116: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

59

Description Logics revisited

Operator/Construktor Syntax SpracheSprache

Konjunktion A ⊓ B

FLWertrestriktion ∀R.C FL

Existenzquantor ∃R

Top ⊤

Bottom ⊥S*

Negation ¬AS*

Disjunktion A ⊔ B AL*

Existentielle Restriktion ∃R.C

AL*

Zahlenrestriktion (≤nR) (≥nR)

Menge von Individuen {a1,...,a2}

Beziehungshierarchie R ⊑ S HH

inverse Beziehung R-1 II

Qualifizierte Zahlenrestriktion (≤nR.C) (≥nR.C) QQ

Mittwoch, 14. Dezember 11

Page 117: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

60

Description Logics revisited

•ALC: Attribute Language with Complement

•S: ALC + Rollentransitivität

•H: Subrollenbeziehung

•O: abgeschlossene Klassen

•I: inverse Rollen

•N: Zahlenrestriktionen ≤n R etc.

•Q: Qualifizierende Zahlenrestriktionen ≤n R.C etc.

•(D): Datentypen

•F: Funktionale Rollen

•R: Rollenkonstruktoren

•OWL 1 DL ist SHOIN(D) / OWL 2 DL ist SHROIQ(D)

Mittwoch, 14. Dezember 11

Page 118: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

61

OWL und ALC

•Folgende OWL DL Sprachelemente sind in ALC repräsentierbar:•Klassen, Rollen, Individuen•Klassenzugehörigkeit, Rolleninstanzen•owl:Thing und owl:Nothing•Klasseninklusion, -äquivalenz, -disjunktheit•owl:intersectionOf, owl:unionOf•owl:complementOf•owl:allValuesFrom, owl:someValuesFrom•rdfs:range und rdfs:domain

Mittwoch, 14. Dezember 11

Page 119: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

62

OWL DL als SHOIN(D)

•owl:sameAs•gibt an dass zwei Individuennamen dasselbe Element bezeichnen

•DL: a=b•FOL: Erweiterung durch Gleichheitsprädikat

•owl:differentFrom•gibt an dass zwei Individuennamen unterschiedliche Elemente bezeichnen

•DL: a≠b•FOL: ¬(a=b)

Mittwoch, 14. Dezember 11

Page 120: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

63

OWL DL als SHOIN(D)

•Abgeschlossene Klassen (Nominale)•owl:oneOf

•definiert eine Klasse durch vollständige Aufzählung ihrer Instanzen

•DL: C ≡ {a,b,c}•FOL: (∀x) (C(x) ↔ (x=a ∨ x=b ∨ x=c))

•owl:hasValue•„erzwingt“ Rolle zu einem bestimmten Individuum•darstellbar mittels owl:someValuesFrom und owl:oneOf

Mittwoch, 14. Dezember 11

Page 121: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

64

OWL DL als SHOIN(D)

•Kardinalitätsrestriktion

•Eine Prüfung kann höchstens zwei Prüfer haben.•DL: Pruefung ⊑ ≤2 hatPruefer

•FOL: (P… Prüfung, h…hatPruefer)• (∀x)(P(x) → ¬(∃x1)(∃x2)(∃x3)

(x1 ≠ x2 Λ x2 ≠ x3 Λ x1≠ x3 Λ h(x,x1) Λ h(x,x2) Λ h(x,x3)))

<owl:Class rdf:about="Pruefung"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="hatPruefer"/> <owl:maxCardinality>2</owl:maxcardinality> </owl:Restriction> </rdfs:subClassOf></owl:Class>

Mittwoch, 14. Dezember 11

Page 122: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

65

OWL DL als SHOIN(D)

•Rollenkonstruktoren•rdfs:subPropertyOf

•DL: R ⊑ S•FOL: (∀x)∀(y)(R(x,y) → S(x,y))•Entsprechend Rollenäquivalenz

•Inverse Rollen: R ≡ S-

•FOL: (∀x)(∀y)(R(x,y) ↔ S(y,x))

•Transitive Rollen: R ⊑+ R•FOL: (∀x)(∀y)(∀z)(R(x,y) Λ R(y,z) → R(x,z))

•Symmetrie: R ≡ R-

•Funktionalität: ⊤ ⊑ ≤1 R

•Inverse Funktionalität: ⊤ ⊑ ≤1 R-

Mittwoch, 14. Dezember 11

Page 123: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

66

OWL DL als SHOIN(D)

•Für OWL DL ist erlaubt:

•ALC•Gleichheit und Ungleichheit zwischen Individuen•Abgeschlossene Klassen•Zahlenrestriktionen•Subrollen und Rollenäquivalenz• Inverse und transitive Rollen•Datentypen

•Erlaubt ist die Verwendung von Datentypen im zweiten Argument konkreter Rollen in der ABox.

•Eine Menge konkreter Daten kann eine abgeschlossene Klasse bilden.

•Datentypen lassen sich nicht ohne Weiteres in FOL ausdrücken. Man kann die FOL Semantik aber entsprechend erweitern.

Mittwoch, 14. Dezember 11

Page 124: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

67

OWL DL Syntax - Übersicht

Concepts

Atomic A, B

Not ¬C

And C ⊓ D

Or C ⊔ D

Exists ∃R.C

For all ∀R.C

At least ≥n R.C (≥n R)

At most ≤n R.C (≤n R)

Nominal {i1,...in}

ALC

Q(N)

O

Roles

Atomic Roles

Inverse R-I

Concept Axioms (TBox)Concept Axioms (TBox)

Subclass C ⊑ D

Equivalent C ≡ D

Role Axioms (TBox)Role Axioms (TBox)

Subrole R ⊑ S

Transitivity R+

Assertional Axioms (ABox)Assertional Axioms (ABox)

Instance C(a)

Role R(a,b)

Same a=b

Different a≠b

HS

Mittwoch, 14. Dezember 11

Page 125: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

68

OWL DL Syntax - Klassenkonstruktoren

Konstruktor DL Syntax Beispiel FOL Syntax

intersectionOf C1 ⊓… ⊓ Cn Person ⊓ Male C1(x)∧…∧Cn(x)

unionOf C1 ⊔… ⊔ Cn Student ⊔ Professor C1������Cn���

complementOf �C � Male �C(x)

oneOf {x1} ⊔… ⊔ {xn} {john} ⊔ {mary} x=x1 ��� x=xn

allValuesFrom ∀P.C ∀nimmtTeil.Seminar ∀y,P(x,y)�����

someValuesFrom ∃P.C ∃nimmtTeil.Seminar ∃y,P(x,y)�����

maxCardinality ≤nP ≤2 nimmtTeil ∃≤n y,P(x,y)

minCardinality ≥nP ≥1 nimmtTeil ∃≥n y,P(x,y)

Mittwoch, 14. Dezember 11

Page 126: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

69

OWL DL Syntax - Axiome

Axiome DL Syntax Beispiel

subClassOf C1 ��C2 Human ��Animal ⊓ Biped

equivalentClass C1 � C2 � ����� Human ⊓ Female

disjointWith C1 ���C2 ����������

sameAs {x1} ��{x2} {JamesBond} � {007}

differentFrom {x1} ���{x2} {John} ���{Mary}

subPropertyOf P1 ��P2 hasDaughter ��hasChild

equivalentProperty P1 ��P2 cost ��price

inverseOf P1 ��P2-

dsdsd

hasChild ��hasParent_

transitiveProperty P1 �+�P2 hasAncester �+�hasAncester

functionalProperty ����≤1P ����≤1hasMother

inverseFunctionalProperty ����≤1P_ ����≤1isMotherOf_

Mittwoch, 14. Dezember 11

Page 127: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

70

OWL DL Syntax

• Beliebig komplexes Schachteln von Konstruktoren erlaubt:• Person ⊓ ∀hasChild.(Doctor ⊔ ∃hasChild.Doctor)

• General Class Inclusion (⊑) genügt:

• C ≡ D gdw. ( C ⊑ D und D ⊑ C )

• Offensichtliche FOL-Äquivalenzen• C ≡ D ←→ (∀x) ( C(x) ↔ D(x) )

• C ⊑ D ←→ (∀x) ( C(x) → D(x) )

Mittwoch, 14. Dezember 11

Page 128: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

71

OWL DL und OWL RDF Syntax

• Person ⊓ ∀hasChild.(Doctor ⊔ ∃hasChild.Doctor)

<owl:Class> <owl:intersectionOf rdf:parseType="collection"> <owl:Class rdf:about="Person"/> <owl:Restriction> <owl:onProperty rdf:resource="hasChild"/> <owl:allValuesFrom> <owl:unionOf rdf:parseType="collection"> <owl:Class rdf:about="Doctor"/> <owl:Restriction> <owl:onProperty rdf:resource="hasChild"/> <owl:someValuesFrom rdf:resource="Doctor"/> </owl:Restriction> </owl:unionOf> </owl:allValuesFrom> </owl:Restriction> </owl:intersectionOf></owl:Class>

Mittwoch, 14. Dezember 11

Page 129: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

72

OWL DL und OWL RDF Syntax

• Person ⊓ ∀hasChild.(Doctor ⊔ ∃hasChild.Doctor)

[ a owl:Class; owl:IntersectionOf ( :person [ a owl:Restriction ; owl:onProperty :hasChild ; owl:allValuesFrom [ owl:unionOf ( :Doctor [ a owl:Restriction ; owl:onProperty :hasChild ; owl:someValuesFrom :Doctor ] ) ] ] )] .

Mittwoch, 14. Dezember 11

Page 130: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

73

3. Wissensrepräsentation und Logik3.5 OWL und OWL Semantik

3.5 OWL und OWL-Semantik3.5.1 OWL 1 - Übersicht 3.5.2 OWL 1 - Syntax3.5.3 OWL 1 - Werkzeuge3.5.4 OWL - Semantik

Mittwoch, 14. Dezember 11

Page 131: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

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

3.1.Exkurs: Ontologien in Philosophie und Informatik

3.2.Wiederholung: Aussagenlogik und Prädikatenlogik

3.3.Beschreibungslogiken (Description Logics)3.4.RDF(S)-Semantik3.5.OWL und OWL-Semantik3.6.OWL 2 und Regeln

Semantic Web Technologien Vorlesungsinhalt

74

Mittwoch, 14. Dezember 11

Page 132: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

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

75

die nächste Vorlesung....

OWL

OWL 2

Erweiterung

SHROIQ(D)

SHOIN(D)

Mittwoch, 14. Dezember 11

Page 134: 08 - OWL und OWL Semantik - Semantic Web Technologien WS 2011/12

Materialien

□Bloghttp://wwwsoup2011.blogspot.com/

□Webseitehttp://www.hpi.uni-potsdam.de/studium/lehrangebot/veranstaltung/semantic_web_technologien.html

□bibsonomy - Bookmarkshttp://www.bibsonomy.org/user/lysander07/swt1112_08

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

77

3. Wissensrepräsentation und Logik3.5 OWL und OWL Semantik

Mittwoch, 14. Dezember 11