Upload
harald-sack
View
1.231
Download
3
Embed Size (px)
DESCRIPTION
Citation preview
VorlesungDr. Harald Sack
Hasso-Plattner-Institut für SoftwaresystemtechnikUniversität Potsdam
Wintersemester 2011/12
Semantic Web Technologien
Blog zur Vorlesung: http://wwwsoup2011.blogspot.com/
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
OWL
Web On
tology
Langu
age2
Semantic Web Technologien Wiederholung
Dienstag, 20. Dezember 11
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
Dienstag, 20. Dezember 11
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 3.7.Regeln mit SWRL/RIF
Semantic Web Technologien Vorlesungsinhalt
4
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
5 OWL
OWL 2
Erweiterung
SHROIQ(D)
SHOIN(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
OWL
OWL 2
Erweiterung
SHROIQ(D)
SHOIN(D)
63.6 OWL 2
3.6.1 Entwicklung von OWL 23.6.2 Von SHOIN(D) zu SHROIQ(D)3.6.3 OWL 2 Syntax3.6.4 Komplexität und andere Eigenschaften3.6.5 OWL 2 Profile
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
7
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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
8
OWL2 – 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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
9
OWL2 – Web Ontology Language 2
• DAML (DARPA Agent Markup Language, 1999)• RDF-basierte Markupsprache zur Darstellung von
Wissensrepräsentationen (http://www.daml.org/)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
9
OWL2 – Web Ontology Language 2
• DAML (DARPA Agent Markup Language, 1999)• RDF-basierte Markupsprache zur Darstellung von
Wissensrepräsentationen (http://www.daml.org/)
• DAML+OIL (Ontology Inference Layer, 2002)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
9
OWL2 – Web Ontology Language 2
• DAML (DARPA Agent Markup Language, 1999)• RDF-basierte Markupsprache zur Darstellung von
Wissensrepräsentationen (http://www.daml.org/)
• DAML+OIL (Ontology Inference Layer, 2002)• Einbettung einer Infrastruktur für Semantic Web
Anwendungen
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
9
OWL2 – Web Ontology Language 2
• DAML (DARPA Agent Markup Language, 1999)• RDF-basierte Markupsprache zur Darstellung von
Wissensrepräsentationen (http://www.daml.org/)
• DAML+OIL (Ontology Inference Layer, 2002)• Einbettung einer Infrastruktur für Semantic Web
Anwendungen• Basiert aus Konzepten aus Beschreibungslogiken und
Frame Logic
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
9
OWL2 – Web Ontology Language 2
• DAML (DARPA Agent Markup Language, 1999)• RDF-basierte Markupsprache zur Darstellung von
Wissensrepräsentationen (http://www.daml.org/)
• 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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
9
OWL2 – Web Ontology Language 2
• DAML (DARPA Agent Markup Language, 1999)• RDF-basierte Markupsprache zur Darstellung von
Wissensrepräsentationen (http://www.daml.org/)
• 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)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
9
OWL2 – Web Ontology Language 2
• DAML (DARPA Agent Markup Language, 1999)• RDF-basierte Markupsprache zur Darstellung von
Wissensrepräsentationen (http://www.daml.org/)
• 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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
10
OWL2 – Web Ontology Language 2
• Was hat sich seit OWL 1 geändert?
• Erweiterungen aufgrund der gewonnenen Praxis-erfahrungen mit OWL 1
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
10
OWL2 – 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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
10
OWL2 – 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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
10
OWL2 – 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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
10
OWL2 – 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.
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
10
OWL2 – 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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
10
OWL2 – 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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
10
OWL2 – 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 des OWL 1 Standards
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
11
3.6 OWL 23.6.1 Entwicklung von OWL 23.6.2 Von SHOIN(D) zu SHROIQ(D)3.6.3 OWL 2 Syntax3.6.4 Komplexität und andere Eigenschaften3.6.5 OWL 2 Profile
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
12
OWL DL basiert auf der Beschreibungslogik SHOIN(D)• Axiome
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
12
OWL DL basiert auf der Beschreibungslogik SHOIN(D)• Axiome• TBox: Subklassenbeziehungen C ⊑ D
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
12
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)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
12
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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
12
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:
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
12
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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
12
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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
12
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)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
12
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)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
12
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)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
13
Von SHOIN(D) zu SHROIQ(D)• SHOIN(D) unterstützt verschiedene ABox-Fakten:
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
13
Von SHOIN(D) zu SHROIQ(D)• SHOIN(D) unterstützt verschiedene ABox-Fakten:
• Klassenzugehörigkeit C(a) (C ist komplexe Klasse)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
13
Von SHOIN(D) zu SHROIQ(D)• 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)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
13
Von SHOIN(D) zu SHROIQ(D)• 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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
13
Von SHOIN(D) zu SHROIQ(D)• 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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
13
Von SHOIN(D) zu SHROIQ(D)• 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)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
13
Von SHOIN(D) zu SHROIQ(D)• 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....?
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
13
Von SHOIN(D) zu SHROIQ(D)• 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)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
13
Von SHOIN(D) zu SHROIQ(D)• 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)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
14Kardinalitätsrestriktionen
• SHOIN(D) unterstützt nur einfache Kardinalitätsrestriktionen (N):
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
14Kardinalitätsrestriktionen
• SHOIN(D) unterstützt nur einfache Kardinalitätsrestriktionen (N):
• Person ⊓ ≥3 hatKind
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
14Kardinalitätsrestriktionen
• SHOIN(D) unterstützt nur einfache Kardinalitätsrestriktionen (N):
• Person ⊓ ≥3 hatKind
• Klasse aller Personen mit mindestens 3 Kindern
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
14Kardinalitä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äts-restriktionen (Q):
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
14Kardinalitä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äts-restriktionen (Q):
• Person ⊓ ≥3 hatKind.(Frau ⊓ Professor)
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
14Kardinalitä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äts-restriktionen (Q):
• Person ⊓ ≥3 hatKind.(Frau ⊓ Professor)
• Klasse aller Personen mit mindestens 3 Töchtern, die alle Professorinnen sind
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
15Das Konzept Self
• Modellierungsaufgabe: „Jeder Mensch kennt sich selbst.“
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
15Das Konzept Self
• Modellierungsaufgabe: „Jeder Mensch kennt sich selbst.“
• SHOIN(D)
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
15Das Konzept Self
• Modellierungsaufgabe: „Jeder Mensch kennt sich selbst.“
• SHOIN(D)
• kennt(Harald, Harald) kennt(Jörg, Jörg) ...
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
15Das 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
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
15Das 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
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
15Das 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
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
16 Rollenaxiome• In SHOIN(D) können Rollen modelliert werden als
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
16 Rollenaxiome• In SHOIN(D) können Rollen modelliert werden als
• transitiv, symmetrisch, funktional und invers funktional
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
16 Rollenaxiome• In SHOIN(D) können Rollen modelliert werden als
• transitiv, symmetrisch, funktional und invers funktional
• SHROIQ(D) erlaubt zusätzliche Rollenaxiome:
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
16 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
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
16 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
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
16 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
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
16 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
Von SHOIN(D) zu SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
17
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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
18
Von SHOIN(D) zu SHROIQ(D)
Allgemeine Rolleninklusion
• „Die Freunde meiner Freunde sind auch meine Freunde.“
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
18
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.
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
18
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.“
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
18
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.
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
18
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.
hatFeindhatFreund
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität PotsdamTurmbau zu Babel, Pieter Brueghel, 1563
18
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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
19
Von SHOIN(D) zu SHROIQ(D)
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
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.
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
20
Von SHOIN(D) zu SHROIQ(D)
Ausdruckstärke der Rolleninklusion
• Mit RBoxen lassen sich formale Sprachen definieren
Beispiel•Grammatik für die (kontextfreie) 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 ⊑ L
Ra º L º Rb ⊑ L
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
20
Von SHOIN(D) zu SHROIQ(D)
Ausdruckstärke der Rolleninklusion
• Mit RBoxen lassen sich formale Sprachen definieren
Beispiel•Grammatik für die (kontextfreie) 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 ⊑ L
Ra º L º Rb ⊑ L
Aber aus formalen Sprachen bekannt:Leerheit der Überschneidung kontextfreier Sprachen ist unentscheidbar
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
21
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 ⊑ L
Ra º L º Rb ⊑ L
OWL mit allgemeiner Rolleninklusion ist UNENTSCHEIDBAR !
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
22
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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
23
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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
23
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)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
23
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)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
24
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
•Nicht-einfache Rollen sind Rollen, die direkt oder indirekt vonRollenverkettungen (º ) abhängen
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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
25
Von SHOIN(D) zu SHROIQ(D)
Beschränkung einfacher Rollen• Folgende Ausdrücke sind NUR für einfache Rollen
erlaubt:
•≤n R.C und ≥n R.C (qualifizierte Kardinalitätsrestriktionen)• Irreflexive Rollen•Disjunkte Rollen•∃R.Self•¬R(a,b)
•Grund: Sicherstellung der Entscheidbarkeit
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
26
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ätsrestriktionen
• 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 Wissensbasen diese erfüllen.
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
27
Ü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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
28
3.6 OWL 23.6.1 Entwicklung von OWL 23.6.2 Von SHOIN(D) zu SHROIQ(D)3.6.3 OWL 2 Syntax3.6.4 Komplexität und andere Eigenschaften3.6.5 OWL 2 Profile
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
29
• 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• Turtle: optional
• Funktionale Syntax ist einfacher zu definieren, keine RDF-Beschränkungen, kompakter
• RDF-Syntax wichtig für Abwärtskompatibilität• Turtle: einfach und wenig zu schreiben
OWL 2 Syntaxvarianten
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
30
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 )
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
31
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 ,...
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
32
OWL 2 - Turtle Syntax
:HappyPerson a owl:Class ; owl:equivalentClass [ a owl:Class ; owl:intersectionOf ([ a owl:Restriction ; owl:onProperty :hasChild ; owl:allValuesFrom :HappyPerson ] [ a owl:Restriction ; owl:onProperty :hasChild ; owl:someValuesFrom :HappyPerson ] ) ].
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
33• 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• Turtle: optional • Funktionale Syntax ist einfacher zu definieren,
Keine RDF-Beschränkungen, kompakter• RDF-Syntax wichtig für Abwärtskompatibilität
OWL 2 Syntaxvarianten
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
34 • In OWL 2 können Individuen als benannte Entitäten auch ohne direkte Klassenzugehörigkeit deklariert werden
:HaraldSack a owl:NamedIndividual .
OWL 2 Individuendeklaration
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
35
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
[] a owl:AllDisjointClasses ; owl:members ( :KindergartenKinder :Schueler :Studenten :Professoren ) .
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
36
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=⊥
:Musikinstrumente a owl:class; rdfs:subClassOf [ owl:disjointUnionOf ( :Streichinstrumente :Schlaginstrumente :Zupfinstrumente :Tasteninstrumente ) ] .
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
37
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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
38
OWL 2 Rolleneigenschaften und Beziehungen
• Zusätzlich gestattet OWL 2 die Modellierung von Aussagen folgender Art:
„Alle Studenten des HPIs mit demselben Namen und demselben Geburtsdatum 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.
:HPIStudenten rdf:type owl:Class ; owl:hasKey (:hatName :hatGeburtsdatum ) .
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
39
OWL 2 Rolleneigenschaften und Beziehungen
• Zusätzlich gestattet OWL 2 die Modellierung von Aussagen folgender Art:
„Alle Studenten des HPIs mit demselben Namen und demselben Geburtsdatum 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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
40
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
:hatElternteil a owl:ObjectProperty ; owl:propertyDisjointWith :hatKind .
[] rdf:type owl:AllDisjointProperties owl:members ( :hatElternteil :hatKind :hatEnkel ) .
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
41
OWL 2 Rolleneigenschaften und Beziehungen
• OWL 2 definiert jeweils universelle und leere Rollen als Gegenstücke zu Top- und Bottom-Klassen:• owl:topObjectProperty
Verbindet 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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
42
OWL 2 Rolleneigenschaften und Beziehungen
• OWL 2 erlaubt die Definition inverser Rollen
• Nicht erlaubt für konkrete Rollen
:hatPruefer a owl:ObjectProperty ; rdfs:subPropertyOf [ a owl:ObjectProperty ; owl:inverseOf :nimmtTeilAn ] .
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
43
OWL 2 allgemeine Rolleninklusion
• OWL 2 erlaubt die Verkettung von Rollen
• Nicht erlaubt für konkrete Rollen
:hatFreundesFeind a owl:ObjectProperty ; owl:PropertyChainAxiom ( :hatFreund :hatFeind ) .
hatFeindhatFreund
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
44
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
:Pruefung a owl:Class; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty :hatPruefer ; owl:minQualifiedCardinality “2“^^xsd:nonNegativeInteger; owl:onClass :Professor ] .
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
45
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
:Philosoph a owl:Class ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty :kennt ; owl:hasSelf “true“^^xsd:boolean ] .
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
46
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(Nadine, Joerg)
[] rdf:type owl:negativePropertyAssertion ; owl:sourceIndividual :Nadine ; owl:assertionProperty :istBruder ; owl:targetIndividual :Joerg .
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
47
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:minExclusive,
xsd:maxInclusive, xsd:minInclusive• Strings: xsd:minLength, xsd:maxLength, xsd:length,
xsd:pattern
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
48 3.6 OWL 23.6.1 Entwicklung von OWL 23.6.2 Von SHOIN(D) zu SHROIQ(D)3.6.3 OWL 2 Syntax3.6.4 Komplexität und andere Eigenschaften3.6.5 OWL 2 Profile
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
49
Wie kompliziert ist SHROIQ(D)?
• SHOIN(D) (OWL DL) ist sehr komplex (NExpTime)
• Wie steht es mit SHROIQ(D)?
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
49
Wie kompliziert ist SHROIQ(D)?
• SHOIN(D) (OWL DL) ist sehr komplex (NExpTime)
• Wie steht es mit SHROIQ(D)?• Beobachtung: einige Ausdrucksmittel sind nicht wirklich
nötig
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
49
Wie kompliziert ist SHROIQ(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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
49
Wie kompliziert ist SHROIQ(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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
49
Wie kompliziert ist SHROIQ(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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
49
Wie kompliziert ist SHROIQ(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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
49
Wie kompliziert ist SHROIQ(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}
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
49
Wie kompliziert ist SHROIQ(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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
49
Wie kompliziert ist SHROIQ(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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
50
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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
51
Entscheidbarkeit von SHROIQ(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.
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
52
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• ...
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
53
OWL 2 DL 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).
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
54
„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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
55
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 semantischer Bezug
• OWL 2 verändert die Bedeutung von Annotationen: keine semantische Interaktion, aber struktureller Teil von OWL-Ontologien.
• Zusätzlich ist die Annotation ganzer Axiome möglich, nicht nur von Individuen
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
56
3.6 OWL 23.6.1 Entwicklung von OWL 23.6.2 Von SHOIN(D) zu SHROIQ(D)3.6.3 OWL 2 Syntax3.6.4 Komplexität und andere Eigenschaften3.6.5 OWL 2 Profile
Via http://lifeinbonetown.blogspot.com/2010_08_01_archive.html
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
57
OWL 2 Profile
• OWL 2 Profile sind Untersprachen von OWL 2
• OWL 2 DL entspricht SHROIQ(D)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
57
OWL 2 Profile
• OWL 2 Profile sind Untersprachen von OWL 2
• OWL 2 DL entspricht SHROIQ(D)
• OWL 2 Full wäre dann eine Erweiterung von OWL 1 Full
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
57
OWL 2 Profile
• OWL 2 Profile sind Untersprachen von OWL 2
• OWL 2 DL entspricht SHROIQ(D)
• OWL 2 Full wäre dann eine Erweiterung von OWL 1 Full• Was ist mit OWL 2 Lite?
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
57
OWL 2 Profile
• OWL 2 Profile sind Untersprachen von OWL 2
• OWL 2 DL entspricht SHROIQ(D)
• OWL 2 Full wäre dann eine Erweiterung von OWL 1 Full• Was ist mit OWL 2 Lite?
• OWL 1 Lite ist fasst genauso komplex wie OWL 1 DL
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
57
OWL 2 Profile
• OWL 2 Profile sind Untersprachen von OWL 2
• OWL 2 DL entspricht SHROIQ(D)
• OWL 2 Full wäre dann 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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
57
OWL 2 Profile
• OWL 2 Profile sind Untersprachen von OWL 2
• OWL 2 DL entspricht SHROIQ(D)
• OWL 2 Full wäre dann 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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
57
OWL 2 Profile
• OWL 2 Profile sind Untersprachen von OWL 2
• OWL 2 DL entspricht SHROIQ(D)
• OWL 2 Full wäre dann 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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
57
OWL 2 Profile
• OWL 2 Profile sind Untersprachen von OWL 2
• OWL 2 DL entspricht SHROIQ(D)
• OWL 2 Full wäre dann 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:
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
57
OWL 2 Profile
• OWL 2 Profile sind Untersprachen von OWL 2
• OWL 2 DL entspricht SHROIQ(D)
• OWL 2 Full wäre dann 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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
58
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...
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
59
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
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
60
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,..
⊓∃⊤⊥ ⊑ ⊓∃⊤⊥
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
61
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,..
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
62
OWL 2 EL
• OWL 2 EL Beispiele:• ∃has.Sorrow ⊑ ∃has.Liqueur
• ∃married.⊤ ⊓ CatholicPriest ⊑ ⊥
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
62
OWL 2 EL
• OWL 2 EL Beispiele:• ∃has.Sorrow ⊑ ∃has.Liqueur
• ∃married.⊤ ⊓ CatholicPriest ⊑ ⊥
• German ⊑ ∃knows.{angela}
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
62
OWL 2 EL
• OWL 2 EL Beispiele:• ∃has.Sorrow ⊑ ∃has.Liqueur
• ∃married.⊤ ⊓ CatholicPriest ⊑ ⊥
• German ⊑ ∃knows.{angela}
• hasParent º hasParent ⊑ hasGrandparent
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
63
OWL 2 QL
• OWL 2 QL Profil basiert auf der Beschreibungslogik DL Lite:
• Beispiel:• ∃married.⊤ ⊑ Lucky ⊓ ∃has.noSorrows
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)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
64
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)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
65
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), ...
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
66
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), ...
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
67
• OWL 2 RL Beispiele:• ∃parentOf.∃parentOf.⊤ ⊑ Grandfather
(als Regel: parentOf(x,y) ⋀ parentOf(y,z) → Grandfather(x)
OWL 2 RL
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
67
• 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)
OWL 2 RL
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
67
• 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 )
OWL 2 RL
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
67
• 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) )
OWL 2 RL
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
68
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)
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
69
•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...)
OWL 2 Reasoner
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
70
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
Dienstag, 20. Dezember 11
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 23.7.Regeln mit SWRL/RIF
Semantic Web Technologien Vorlesungsinhalt
71
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
72
die nächste Vorlesung....
Rules
&
the Se
mantic
Web
Dienstag, 20. Dezember 11
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
73
3. Wissensrepräsentation und Logik3.6 OWL 2
• P. Hitzler, S. Roschke, Y. Sure: Semantic Web Grundlagen, Springer, 2007.
• P. Hitzler, M. Krötzsch, S. Rudolph:Foundations of Semantic Web Technologies,CRC Press, 2009.
Dienstag, 20. Dezember 11
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_10
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
74
3. Wissensrepräsentation und Logik3.6 OWL 2
Dienstag, 20. Dezember 11