80
Vorlesung Dr. Harald Sack Hasso-Plattner-Institut für Softwaresystemtechnik Universität Potsdam Wintersemester 2009/10 Semantic Web Blog zur Vorlesung: http://sewe0910.blogspot.com / Die nichtkommerzielle Vervielfältigung, Verbreitung und Bearbeitung dieser Folien ist zulässig (Lizenzbestimmungen CC-BY-NC ).

26.01.2010 - 11 - Regeln mit SWRL und RIF

Embed Size (px)

DESCRIPTION

Nicht alles Wissen lässt sich mit Ontologiebeschreibungssprachen wie OWL ausdrücken, da diese nur auf einer eingeschränkt ausdrucksmächtigen Beschreibungslogik aufbauen. Regeln erweitern OWL Wissensbasen, wobei wir Kriterien wie Entscheidbarkeit und semantische Ausdrucksstärke im Auge behalten...

Citation preview

Page 1: 26.01.2010 - 11 - Regeln mit SWRL und RIF

Vorlesung

Dr. Harald Sack

Hasso-Plattner-Institut für Softwaresystemtechnik

Universität Potsdam

Wintersemester 2009/10

Semantic Web

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

Page 2: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

1. Einführung

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

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

4. Ontology Engineering

5. Semantic Web Applications

2

Semantic Web - Vorlesungsinhalt

Page 3: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

Semantic Web Architektur3

URI / IRI

XML / XSDData Interchange: RDF

RDFS

Ontology: OWL Rule: RIF

Query:SPARQL

Proof

Unifying Logic

Cry

pto

Trust

Interface & Application

3. Wissensrepräsentation und Logik

Ontology-Level

Page 4: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

Semantic Web Architektur4

URI / IRI

XML / XSDData Interchange: RDF

RDFS

Ontology: OWL Rule: RIF

Query:SPARQL

Proof

Unifying Logic

Cry

pto

Trust

Interface & Application

3. Wissensrepräsentation und Logik

Page 5: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

526.01.2010 – Vorlesung Nr. 111 2 3 4 5 6 7 8 109 12

13

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

3.1.Ontologien in der Philosophie und der Informatik

3.2.Wiederholung Aussagenlogik und Prädikatenlogik

3.3.RDFS-Semantik

3.4.Beschreibungslogiken

3.5.OWL und OWL-Semantik

3.6.OWL2

3.7.Regeln mit SWRL/RIF

14

Semantic Web - Vorlesungsinhalt

Page 6: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

6

Können wir wirklich alles Wissen mit OWL modellieren....?

Page 7: 26.01.2010 - 11 - Regeln mit SWRL und RIF

3.7 Regeln mit SWRL/RIF

3.7.1 Motivation

3.7.2 Konjunktive Anfragen für OWL DL

3.7.3 Regelsprachen und das Semantic Web

3.7.4 Regeln für OWL mit SWRL

3.7.5 Regeln austauschen mit RIF

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

7

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF

Page 8: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

8

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.1 Motivation

Reicht OWL zur Wissensmodellierung aus?•OWL-Konzepte als Anfragesprache ungenügend

•Bsp.:

•Sei eine Wissensbasis gegeben mit den Rollen istKindVon undlebtZusammenMit

• Folgende Fragen können nicht über die Konstruktion einfacher OWL-Klassen beantwortet werden:

•Welche Paare von Personen haben ein gemeinsames Elternteil?

•Welche Personen wohnen bei einem ihrer Eltern?

•Welche Paare (direkter oder indirekter) Nachkommen gibt es?

•Die ersten beiden Fragen könnten mit SPARQL-Anfragen formuliert werden

• ...die letzte Anfrage nicht

Page 9: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

9

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.1 Motivation

Ausdruckstarke Anfragen für OWL•SPARQL als Anfragesprache für RDF

•Besitzt keine direkte Unterstützung für OWL

•SPARQL ist Abfragesprache für RDF-Graphen

•Komplexe (OWL) Ontologien beschreiben aber keine Graphen, sondern vielmehr eine Vielzahl möglicher Interpretationen

•Zwar könnte man folgende Intepretation wählen:

•Rollen R(a,b) können als (binäre) Relationen zwischen Instanzen (Knoten) modelliert werden

•Klassen C(a) könnten als zusätzliches Label an einen Knoten notiert werden

•Aber....

Page 10: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

10

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.1 Motivation

Ausdruckstarke Anfragen für OWL•SPARQL als Anfragesprache für RDF

•Besitzt keine direkte Unterstützung für OWL

•Jede OWL DL Ontologie beschreibt nicht nur eine, sondern viele mögliche Interpretationen

•Anders als bei RDF gibt es keine „möglichst ausführliche“ (most specific) Interpretation als Grundlage für einen Graphen

•OWL DL Interpretationen können potenziell unendlich viele Elemente enthalten...

•Es ist noch nicht genau klar, wie eine SPARQL-Erweiterung für OWL genau aussehen könnte....

Page 11: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

11

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.1 Motivation

Ausdruckstarke Anfragen für OWL•SPARQL als Anfragesprache für RDF

•Besitzt keine direkte Unterstützung für OWL

•Anfrageformalismus für OWL DL: konjunktive Anfragen

•keine offizielle Spezifikation, keine normative Syntax, uns reichen hier Kurzschreibweisen anstelle von vollen URIs

•Ziel: ausdrucksstärkere Anfragen nach Individuen

•keine Betrachtung von Formatierung oder Nachbearbeitung der Ergebnisse

•praktische Bedeutung für Anwendungen

•verschiedene Implementationen verfügbar

Page 12: 26.01.2010 - 11 - Regeln mit SWRL und RIF

3.7 Regeln mit SWRL/RIF

3.7.1 Motivation

3.7.2 Konjunktive Anfragen für OWL DL

3.7.3 Regelsprachen und das Semantic Web

3.7.4 Regeln für OWL mit SWRL

3.7.5 Regeln austauschen mit RIF

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

12

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF

Page 13: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

13

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.2 konjunktive Anfragen für OWL DL

Syntax und Intuition konjunktiver Anfragen•Konjunktive Anfragen sind recht einfach!

•Beispiel:

•„Welche Bücher sind bei Springer erschienen und wer hat sie geschrieben?“

•Syntax angelehnt an Prädikatenlogik

•Hauptelemente: Bezeichner von Rollen/Klassen/Individuen, Variablen, Konjunktion ∧

Buch(x) ∧ VerlegtBei(x, Springer) ∧ Autor(x, y)

Page 14: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

14

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.2 konjunktive Anfragen für OWL DL

Syntax und Intuition konjunktiver Anfragen•Hauptelemente (Atome):

•C(e) oder ¬C(e) , mit C ist Klassenname, e ist Variable oder Name eines Individuums

•R(e,f), mit R Rollenname, e und f jeweils Variablen oder Namen von Individuen

•Beispiel:

Buch(x) ∧ VerlegtBei(x, Springer) ∧ Autor(x, y)

Page 15: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

15

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.2 konjunktive Anfragen für OWL DL

Semantik konjunktiver Anfragen•Konjunktive Anfragen ähneln logischen Formeln

•Anfragen ohne Variablen können aus einer Ontologie folgen

•Variablen dienen als Platzhalter für Bezeichner von Individuen (bestimmte Variablen, distinguished variables)

•Funktion µ ist Lösung einer konjunktiven Anfrage q für eine OWL DL Ontologie O, falls gilt:

(1)Domäne von µ ist die Menge der freien Variablen in q

(2)Wertebereich von µ ist die Menge der Individuenbezeichner in O

(3)O ⊨ µ(q), d.h. q mit dieser Variablenbelegung folgt aus O

•keine partielle Funktion – alle Variablen müssen belegt sein

•Literale (Datentypen) hier zur Vereinfachung nicht betrachtet

Page 16: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

16

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.2 konjunktive Anfragen für OWL DL

Unbenannte Elemente•Variablen traten bisher als Platzhalten für (benannte) Individuen auf

•OWL-Ontologien können aber auch die Existenz unbenannter Elemente implizieren

•Beispiel:

Buch(a) (a ist ein Buch)Buch ⊑ ∃Autor.⊤ (jedes Buch hat einen Autor)

Anfrage:Buch(x) ∧ Autor(x,y)

--> keine Lösung möglich!

Page 17: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

17

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.2 konjunktive Anfragen für OWL DL

Unbestimmte Variablen•Wie können in Anfragen auch unbenannte Elemente berücksichtigt werden?

•Ausgabe unbenannter Elemente als Teil der Lösung problematisch

•Aber Existenzaussage wäre sinnvoll!

Unbestimmte Variablen werden durch Existenzquantoren gebunden

Buch(a) (a ist ein Buch)Buch ⊑ ∃Autor.⊤ (jedes Buch hat einen Autor)

Anfrage:∃y.(Buch(x) ∧ Autor(x,y)=

Lösung {x⟼a}, aber y ist nicht Teil der Lösung

Page 18: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

18

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.2 konjunktive Anfragen für OWL DL

Variablen in SPARQL und konjunktiven Anfragen•Kennzeichen verschiedener Arten von Anfragevariablen:

•Unbenannte Werte: Sind Werte möglich, die keine Bezeichner (URI/Literal) haben?

•Ausgabe: Erscheint die Variable in Lösungen der Anfrage?

•Unterschiedliche Formen von Variablen:

unbenannte Werte Ausgabe

bestimmte Variable - Ja

unbestimmte Variable Ja -

SPARQL Variable Ja Ja

leerer Knoten in SPARQL Ja -

nicht ausgewählte SPARQL Variable Ja -

Page 19: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

19

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.2 konjunktive Anfragen für OWL DL

Vergleich mit SPARQL

SPARQL konjunktive Anfragen

Muster in Graphen logische Konjunktionen

kanonisches Modell viele mögliche Modelle

Optionen, Alternativen, Filter -

Abfrage beliebiger Elementenur Abfrage von Instanzen (strikte Typung)

Variablen für beliebige Elemente bestimmte und unbestimmte Variablen

Page 20: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

20

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.2 konjunktive Anfragen für OWL DL

Vergleich mit SPARQL•SPARQL für OWL ist möglich:

•Darstellung einer logischen Konsequenz als Graph

•Typung wie bei OWL DL, ev. Erweiterung um in OWL übliche Anfragen (z.B. Klassenhierarchie)

•Inkompatibilitäten bgl. der Variablensemantik bleiben bestehen

•Aber:

•OWL unterscheidet nicht zwischen Blank Nodes und irgendwelchen unbenannten, hergeleiteten Elementen

•Daher müsste eine SPARQL Erweiterung für OWL DL auch alle herleitbaren Ergebniselemente auf eine Abfrage mit zurückliefern(dies könnten aber unendlich viele sein)

Page 21: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

21

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.2 konjunktive Anfragen für OWL DL

Erweiterungen konjunktiver Anfragen•Mögliche Erweiterungen konjunktiver Anfragen:

•Filter, Modifikatoren, Ergebnisformate: Definition wie in SPARQL möglich, unabhängig von Anfrage (Filter unproblematisch wenn kein OPTIONAL)

•Negation: Zulassen von ¬ vor Anfrageausdrücken

•Disjunktionen: Zulassen von ∨, entspricht UNION in SPARQL, „disjunktive Anfragen“

•Komplexe Pfadausdrücke: Reguläre Ausdrücke zur Beschreibung von Mustern aus Rollen, z.B. Anfrage nach allen Vorfahren einer Person (enthält beliebig lange Kette aus Rolle „KindVon“)

Page 22: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

22

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.2 konjunktive Anfragen für OWL DL

Komplexität und Entscheidbarkeit•Schlussfolgern mit OWL DL ist sehr komplex (NEXPTIME-vollständig)

•Wie schwierig sind dann konjunktive Anfragen?

•Bisher noch nicht abschließend geklärt!

•Konjunktive Anfragen für SHIQ (und für OWL Lite): 2EXPTIME-vollständig!

•Konjunktive Anfragen für SHOQ: entscheidbar in 2EXPTIME

•Konjunktive Anfragen für SHROIQ (und für OWL DL):Entscheidbarkeit nicht bekannt! (29.01.2009)

• konjunktive Anfragen für OWL sind also äußerst kompliziert...

Page 23: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

23

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.2 konjunktive Anfragen für OWL DL

Implementationen•KAON2: konjunktive Anfragen ohne unbestimmte Variablen, eingeschränkte Negation zulässig

•Pellet: konjunktive Anfragen mit unbestimmten Variablen und Negationen, nicht vollständig für OWL DL

•HermiT: konjunktive Anfragen ohne unbestimmte Variablen werden unterstützt

•weitere Systeme mit speziellen Anfragesprachen (RacerPro) oder Beschränkung auf einfachere DLs (QuOnto für OWL QL)

Einschränkung des Problems für bessere Implementierbarkeit

Page 24: 26.01.2010 - 11 - Regeln mit SWRL und RIF

3.7 Regeln mit SWRL/RIF

3.7.1 Motivation

3.7.2 Konjunktive Anfragen für OWL DL

3.7.3 Regelsprachen und das Semantic Web

3.7.4 Regeln für OWL mit SWRL

3.7.5 Regeln austauschen mit RIF

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

24

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF

Page 25: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

25

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.3 Regelsprachen und Semantic Web

Was sind Regeln?•Logische Regeln (Implikationen in Prädikatenlogik):

•F → G (≡ ¬F ∨ G)

•Logische Erweiterung der Wissensbasis (statisch)

•Open World, Deklarativ (beschreibend)

•Prozedurale Regeln (z.B. Production Rules):

•If X then Y else Z

•Ausführbare Maschinen-Anweisungen (dynamisch)

•Operational (Bedeutung = Effekt bei Ausführung)

Page 26: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

26

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.3 Regelsprachen und Semantic Web

Was sind Regeln?•Logikprogrammierung (z.B. Prolog, F-Logik):

•„mann(X) <- person(X) AND NOT frau(X)“

•Approximation logischer Semantik mit operationalen Aspekten,

•typischerweise Closed World, Semi-deklarativ

•Ableitungsregeln eines Kalküls (z.B. Regeln zur RDF-Semantik)

•Regeln zum Definieren neuer Regeln („Meta-Regeln“)

•Ableitungsregeln selbst sind nicht Teil der Wissensbasis

•(nicht Thema dieser Vorlesung)

Page 27: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

27

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.3 Regelsprachen und Semantic Web

Welches ist die geeignete Regelsprache?•Regelsprachen sind untereinander kaum kompatibel!

•Wahl der geeigneten Regelsprache sehr wichtig

•Mögliche Kriterien:

•Klare Spezifikation von Syntax und Semantik?

•Unterstützung durch Software-Tools?

•Welche Ausdrucksmittel werden benötigt?

•Komplexität der Implementierung? Performanz?

•Kompatibilität mit bestehenden Formaten wie OWL?

•Deklarativ (Beschreiben) oder operational (Programmieren)?

Page 28: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

28

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.3 Regelsprachen und Semantic Web

Welches ist die geeignete Regelsprache?•Logische Regeln (Implikationen in Prädikatenlogik):

•klar definiert, umfassend erforscht, gut verstanden

•sehr gut kompatibel mit OWL DL und RDF

•ohne Einschränkungen nicht entscheidbar

•Prozedurale Regeln (z.B. Production Rules):

•viele unabhängige Ansätze, oft nur vage definiert

•Verwendung oft wie Programmiersprachen

•Beziehung zu OWL und RDF unklar

•effiziente Abarbeitung möglich

Page 29: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

29

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.3 Regelsprachen und Semantic Web

Welches ist die geeignete Regelsprache?•Logikprogrammierung (z.B. Prolog, F-Logik):

•klar definiert, aber viele unterschiedliche Ansätze

•teilweise kompatibel mit OWL und RDF

•Entscheidbarkeit/Komplexität stark vom gewählten Ansatz abhängig

•Wir betrachten prädikatenlogische Regeln(die aber auch die Grundlage der Logikprogrammierung sind)

Page 30: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

30

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.3 Regelsprachen und Semantic Web

Prädikatenlogik als Regelsprache•Regeln als Implikationsformeln der Prädikatenlogik (Horn-Klauseln)

•semantisch äquivalent zu

•Konstanten, Variablen und Funktionssymbole erlaubt

•Quantoren für Variablen werden oft weggelassen, freie Variablen werden als universell quantifiziert verstanden

•d.h. Regel gilt für alle Belegungen

A1 ∧ A2 ∧ . . . ∧ An → H⎧ |

| ⎨ |

| ⎩Rumpf ⎧ ⎨ ⎩

Kopf

¬A1 ∨ ¬A2 ∨ . . . ∨ ¬An ∨ H

Page 31: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

31

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.3 Regelsprachen und Semantic Web

⎧ | |

| ⎨ |

| ⎩⎧ |

| ⎨ |

| ⎩

Arten von Regeln•Disjunktive Regeln

•Disjunktion von mehreren nicht-negierten Atomen

A1 ∧ A2 ∧ . . . ∧ An → H1 ∨ H2 ∨ . . . ∨ Hm

Rumpf Kopf

Page 32: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

32

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.3 Regelsprachen und Semantic Web

Arten von Regeln•Bezeichnungen für „Regeln“ in der Prädikatenlogik

•Klausel: Disjunktion von atomaren Aussagen oder negierten atomaren Aussagen

•Hornklausel: Klausel mit max. einem nicht-negierten Atom

•Definite Klausel: Klausel mit genau einem nicht-negierten Atom

•Fakt: Klausel aus einem einzigen nicht-negierten Atom

¬p ∨ ¬q ∨ . . . ∨ ¬t ∨ u kann geschrieben werden als p ∧ q ∧ . . . ∧ t → u

Page 33: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

33

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.3 Regelsprachen und Semantic Web

Arten von Regeln•Beispiele

•Semantik von Regeln entspricht der Standardsemantik der Prädikatenlogik

Person(x) → Frau(x) ∨ Mann(x)

Mann(x) ∧ hatKind(x, y) → Vater(x)

hatBruder(mutter(x), y) → OnkelVon(x, y)

Mann(x) ∧ Frau(x) →

Frau(katarina)

(Klausel)

(definite Klausel)

(Funktionsymbole)

(Hornklausel)

(Fakt)

Page 34: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

34

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.3 Regelsprachen und Semantic Web

Datalog•logische Regelsprache, bestehend aus Hornklauseln ohne Funktionssymbole

•ursprünglich entwickelt als Grundlage deduktiver Datenbanken

•Wissensbasen (Datalog-Programme) sind Mengen von Hornklauseln ohne Funktionssymbole

•entscheidbar

•effizient für große Datenmengen, Komplexität entspricht OWL Lite, d.h. ExpTime

Page 35: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

35

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.3 Regelsprachen und Semantic Web

Datalog Semantik•Interpretation I mit Domäne ΔI

•Auswertung von Variablen: Variablenzuweisung Z (Abbildung von Variablen auf ΔI)

•Interpretation von Formeln und Termen unter I (und Z):

•Interpretation einer Konstante: aI,Z = aI ∈ ΔI

•Interpretation einer Variable: xI,Z = Z(x) ∈ ΔI

•Interpretation eines n-stelligen Prädikats: pI ∈ ΔI n

•I,Z ⊨ p(t1,...,tn) genau dann wenn (tI,Z1,...,tI,Zn ) ∈ pI,

•I ⊨ B → H genau dann wenn für jede Variablenzuweisung Z gilt: entweder I,Z ⊨ H oder I,Z ⊭ B.

•I ist ein Modell für eine Regelmenge, wenn gilt: I ⊨ B → H für alle Regeln B → H dieser Menge

Page 36: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

36

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.3 Regelsprachen und Semantic Web

Aber wie lässt sich Datalog mit OWL

kombinieren?

Page 37: 26.01.2010 - 11 - Regeln mit SWRL und RIF

3.7 Regeln mit SWRL/RIF

3.7.1 Motivation

3.7.2 Konjunktive Anfragen für OWL DL

3.7.3 Regelsprachen und das Semantic Web

3.7.4 Regeln für OWL mit SWRL

3.7.5 Regeln austauschen mit RIF

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

37

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF

Page 38: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

38

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL SemanticWeb Rule Language•W3C Submission (bereits im Mai 2004)(developed by the Joint US/EU ad hoc Agent Markup Language Committee (JC), in collaboration with RuleML Initiative)

•basiert auf Kombination aus Teilen von OWL und RuleML/Datalog

•hier OWL DL/OWL Lite und Unary/Binary Datalog RuleML

•Idee: Datalog Regeln, die sich auf OWL Ontologien beziehen

•Symbole in Regeln können OWL-Bezeichner sein (oder neue Datalog Bezeichner)

•Syntax: XML Concrete Syntax (erweitert OWL XML Presentation Language), RDF Concrete Syntax und abstrakte Syntax

•Regeln werden als Implikation eines Antecedents (Body) und einer Konsequenz (Head) formuliert

•SWRL ist unentscheidbar

Page 39: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

39

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL Semantic Web Rule Language

•Einschränkung:

•antecedent und consequent sind Konjunktionen von Ausdrücken (Atomen) der Form

•C(x) oder P(x,y)

•sameAs(x,y), differentFrom(x,y)

•wobei x,y Variablen, OWL-Individuen oder Elemente einer OWL concrete domain sind,

•C(x) eine OWL Beschreibung und P(x,y) ein OWL Property.

antecedent → consequent

Page 40: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

40

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL Semantic Web Rule Language

•leeres antecedent

•consequent ist trivialerweise für jede Belegung wahr

•leeres consequent

•antecedent ist trivialerweise für jede Belegung falsch

antecedent → ⊥

⊥ → consequent

Page 41: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

41

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL Beispiele

•Person(?p) Λ hatGeschwister(?p,?s) Λ männlich(?s) → hatBruder(?p, ?s)

•hatVater (?x, ?y) Λ hatBruder (?y, ?z) → hatOnkel (?x, ?z)

•Person (?x) Λ hatVater (?y, ?x) Λ männlich (?y) → hatSohn (?x, ?y)

•Person (?x) Λ (≤1 hatKind) (?x) → (≤1 hatSohn) (?x)

•Inheriting trauma from body parts (often needed in medical ontologies).

•Location(?x) Λ Trauma(?y) Λ isLocationOf(?x, ?y) Λ isPartOf(?x,?z) → isLocationOf(?z, ?y)

Page 42: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

42

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL - Abstract Language Definition•SWRL-Regel

•SWRL Wissensbasis

•Atome sind definiert als

•C ... Klasse, D ... Datentyp

•R ... abstrakte Rolle (Object Property)

•U ... konkrete Rolle (Datatype Property)

• i,j ... Variablen/Individuen-Name

a ← b1,...,bn wobei, a: head (ein Atom) b1,...,bn: body (alle Atome)

Atom ← C(i) | D(v) | R(i, j) | U(i,v) | builtIn(p, v1, ..., vn) | i = j | i ≠ j

•v1,...vn ... Datentyp Variablen/Werte- Namen

•p ... Name der BuiltIn-Funktion

k=(Σ,P) wobei, Σ ist eine SHOIN(D) Wissensbasis P ist eine endliche Regelmenge

Page 43: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

43

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL -Semantik•OWL DL (Beschreibungslogik) und Datalog verwenden die gleichen Interpretationen

•OWL-Individuen sind Datalog Konstanten

•OWL-Klassen sind einstellige Datalog-Prädikate

•OWL-Rollen sind zweistellige Datalog-Prädikate

•Interpretation kann gleichzeitig Modell sein für OWL-Ontologie und eine Menge von Datalog-Regeln

Schlussfolgerungen über OWL-Datalog Kombination möglich

Page 44: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

44

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL - Semantik

•Sei I = (ΔI, ΔD, .I , .D) eine Interpretation mit,

•ΔI = Object Interpretation domain

•ΔD = Datatype Interpretation domain

•.I = Object Interpretation function

•.D = Datatype Interpretation function

•mit ΔI ∩ ΔD =⊥

•VIX seien Objektvariablen mit VIX → 2 ΔI

•VDX seinen Datentypvariablen mit VDX → 2 ΔD

Page 45: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

45

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL - Semantik•SWRL-Atome werden folgendermaßen interpretiert:

SWRL-Atome Interpretation

C(i) iI∈CI

R(i,j) (iI,jI)∈RI

U(i,v) (iI,vD)∈UI

D(v) vD∈DD

builtIn(p,v1,...,vn) v1D,...,vnD∈pD

i=j iI=jI

i≠j iI≠jI

Page 46: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

46

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL - Semantik•SWRL Antecedent wird genau dann erfüllt,

•wenn das Antecedent leer ist (trivial)

•wenn alle Atome des Antecedents erfüllt sind

•SWRL Consequent ist genau dann erfüllt,

•wenn es nicht leer ist und

•wenn das Atom des Consequent erfüllt ist

•Eine Regel wird von einer Interpretation I erfüllt, gdw.

•die Interpretation I, die das Antecedent erfüllt ebenso das Consequent erfüllt.

Page 47: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

47

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL - Abstract Language Definition

•All variables in a rule must occur (at least) in the antecedent.

rule ::= 'Implies(' { annotation } antecedent consequent ')'

antecedent ::= 'Antecedent(' { atom } ')'consequent ::= 'Consequent(' { atom } ')'

atom ::= description '(' i-object ')' atom ::= individualvaluedPropertyID '(' i-object i-object ')' atom ::= datavaluedPropertyID '(' i-object d-object ')' atom ::= sameAs '(' i-object i-object ')' atom ::= differentFrom '(' i-object i-object ')'

i-object ::= 'I-variable(' URIreference ')' | individualID d-object ::= 'D-variable(' URIreference ')' | dataLiteral

Page 48: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

48

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL -XML Concrete Syntax•extends owlx:Ontology

<swrlx:Ontology swrlx:name = xsd:anyURI > Content: (owlx:VersionInfo | owlx:PriorVersion | owlx:BackwardCompatibleWith | owlx:IncompatibleWith | owlx:Imports | owlx:Annotation | owlx:Class | owlx:EnumeratedClass | owlx:SubClassOf | owlx:EquivalentClasses | owlx:DisjointClasses | owlx:DatatypeProperty | owlx:ObjectProperty | owlx:SubPropertyOf | owlx:EquivalentProperties | owlx:Individual | owlx:SameIndividual | owlx:DifferentIndividuals | ruleml:imp | ruleml:var)*</swrlx:Ontology>

Page 49: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

49

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL - XML Concrete Syntax•SWRL Rule

<ruleml:imp> Content: ( _rlab?, owlx:Annotation*, _body, _head )</ruleml:imp>

<ruleml:_rlab ruleml:href = xsd:anyURI (required) > Content: ( ) </ruleml:_rlab>

Page 50: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

50

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL - XML Concrete Syntax•SWRL Rule - Antecedent

•SWRL Rule - Consequent

<ruleml:_body> Content: ( swrlx:atom* )</ruleml:_body>

<ruleml:_head> Content: ( swrlx:atom* )</ruleml:_head>

Both _body and _head are lists of atoms and are read as the conjunction of the component atoms.

Page 51: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

51

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL - XML Concrete Syntax•Rule _head und _body bestehen aus einer Menge von SWRL Atomen

• swrlx:classAtom• swrlx:datarangeAtom• swrlx:individualPropertyAtom• swrlx:datavaluedPropertyAtom• swrlx:sameIndividualAtom• swrlx:differentIndividualsAtom• swrlx:builtinAtom

Atoms can be formed from unary predicates (classes), binary predicates (properties), equalities or inequalities.

Page 52: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

52

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL - XML Concrete Syntax•swrlx:classAtom

•Tests or asserts that the instance is of the specified class

•Can use a named class or class expression

<swrlx:classAtom> Content: ( owlx:description, swrlx:iObject )</swrlx:classAtom>

<swrlx:classAtom> <owlx:Class owlx:name=“&foaf;Person”/> <ruleml:var> person </ruleml:var></swrlx:classAtom>

Page 53: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

53

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL - XML Concrete Syntax•swrlx:datarangeAtom

•Tests or asserts that the literal value or variable is of the specified datatype

<swrlx:datarangeAtom> Content: ( owlx:datarange, swrlx:dObject )</swrlx:datarangeAtom>

<swrlx:datarangeAtom> <owlx:Datatype owlx:name=“&xsd;int”/> <ruleml:var> age </ruleml:var></swrlx:datarangeAtom>

Page 54: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

54

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL - XML Concrete Syntax•swrlx:individualPropertyAtom

•Tests or asserts value of an owl:ObjectProperty

<swrlx:individualPropertyAtom swrlx:property = xsd:anyURI {required}> Content: ( swrlx:iObject, swrlx:iObject )</swrlx:individualPropertyAtom>

<swrlx:individualPropertyAtom swrlx:property=“&foaf;orangization”> <ruleml:var> person </ruleml:var> <ruleml:var> company </ruleml:var></swrlx:individualPropertyAtom>

Page 55: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

55

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL - XML Concrete Syntax•swrlx:datavaluedPropertyAtom

•Tests or asserts value of an owl:DatatypeProperty

<swrlx:datavaluedPropertyAtom swrlx:property = xsd:anyURI {required}> Content: ( swrlx:iObject, swrlx:dObject )</swrlx:datavaluedPropertyAtom>

<swrlx:datavaluedPropertyAtom swrlx:property=“&foaf;organization”> <ruleml:var> person </ruleml:var> <ruleml:var> name </ruleml:var></swrlx:datavaluedPropertyAtom>

Page 56: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

56

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL - BeispielhatVater (?x, ?y) Λ hatBruder (?y, ?z) → hatOnkel (?x, ?z)

<ruleml:imp> <ruleml:_rlab ruleml:href="#onkel"/> <owlx:Annotation> <owlx:Documentation>Bruder des Vaters</owlx:Documentation> </owlx:Annotation> <ruleml:_body> <swrlx:individualPropertyAtom swrlx:property=“&family;hatVater"> <ruleml:var>x</ruleml:var> <ruleml:var>y</ruleml:var> </swrlx:individualPropertyAtom> <swrlx:individualPropertyAtom swrlx:property=“&family;hatBruder"> <ruleml:var>y</ruleml:var> <ruleml:var>z</ruleml:var> </swrlx:individualPropertyAtom> </ruleml:_body> <ruleml:_head> <swrlx:individualPropertyAtom swrlx:property=“&family;hatOnkel"> <ruleml:var>x</ruleml:var> <ruleml:var>z</ruleml:var> </swrlx:individualPropertyAtom> </ruleml:_head></ruleml:imp>

Page 57: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

57

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL - XML Concrete Syntax•swrlx:sameIndividualAtom

•swrlx:differentIndividualAtom

<swrlx:sameIndividualAtom> Content: ( swrlx:iObject* ) </swrlx:sameIndividualAtom>

<swrlx:sameIndividualAtom> <owlx:Individual owlx:name=“President_Obama" /> <owlx:Individual owlx:name=“Barack_Obama" /></swrlx:sameIndividualAtom>

<swrlx:differentIndividualAtom> Content: ( swrlx:iObject* ) </swrlx:differentIndividualAtom>

Page 58: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

58

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL - XML Concrete Syntax•swrlx:builtinAtom

•provides access to builtin functions

<swrlx:builtinAtom swrlx:builtin = xsd:anyURI {required}> Content: ( swrlx:dObject* )</swrlx:builtinAtom>

<swrlx:builtinAtom swrlx:builtin=“&swrlb;multiply”> <ruleml:var>zentimeter</ruleml:var> <ruleml:var>meter</ruleml:var> <owlx:DataValue owlx:datatype=“&xsd;int”>100</owlx:DataValue></swrlx:builtinAtom>

Page 59: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

59

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

Komplexität von SWRL•Logisches Schlussfolgern in OWL DL ist NEXPTIME-vollständig

•Logisches Schlussfolgern in OWL 2 DL ist N2EXPTIME-vollständig

•Logisches Schlussfolgern in Datalog ist EXPTIME-vollständig

•Wie schwer ist logisches Schließen in OWL+SWRL?

•Logisches Schlussfolgern in OWL+SWRL ist unentscheidbar(selbst für OWL 2 EL)

Page 60: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

60

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

SWRL ist unentscheidbar•Es existiert kein bekannter Algorithmus, mit dem alle logischen Schlussfolgerungen aus allen SWRL Wissensbasen gezogen werden können, selbst bei unbegrenzten Ressourcen und in unbeschränkter Zeit.

•Praktisch aber möglich:

•Algorithmen, die alle Schlussfolgerungen für einige SWRL Wissensbasen ziehen können

•Algorithmen, die einige Schlussfolgerungen für alle SWRL-Wissensbasen ziehen können

Page 61: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

61

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

Entscheidbare Fragmente von SWRL•Welche SWRL-Wissensbasen erlauben vollständige Inferenzalgorithmen?

•Alle SWRL Wissensbasen, die nur aus OWL/OWL 2 Axiomen bestehen

•Alle SWRL Wissensbasen, die nur aus Mengen von Datalog-Programmen bestehen

•Jede statische finite Klasse von SWRL Wissensbasen

•Gibt es noch mehr interessante entscheidbare SWRL Fragmente?

•Description Logics RulesSWRL-Regeln, die bereits in OWL 2 ausgedrückt werden können

•DL-safe Rules Beschränkung der SWRL-Regeln durch Einschränkung der möglichen Variablenzuweisungen

Page 62: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

62

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

Description Logics Rules•Einfache Regeln in OWL 2

•entspricht

Class1 ⊑ Class2Property1 ⊑ Property2

Class1(x) → Class2(x)Property1(x,y) → Property2(x,y)

Page 63: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

63

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

Description Logics Rules•Einige Klassen können in Regeln zerlegt werden

•entspricht

Happy ⊓ Unhappy ⊑ ⊥∃livesIn.∃locatedIn.EUCountry ⊑ EUCitizen

Happy(x) ∧ Unhappy(x) → livesIn(x,y) ∧ locatedIn(y,z) ∧ EUCountry(z) → EUCitizen(x)

Page 64: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

64

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

Description Logics Rules•Allgemeine Rolleninklusion (Property Chains) können auch als Regeln dargestellt werden:

•entspricht

hasParent ∘ hasBrother ⊑ hasUncle

hasParent(x,y) ∧ hasBrother(y,z) → hasUncle(x,z)

Page 65: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

65

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

Description Logics Rules•Probleme:

•Wenn auf beiden Seiten der Regel nicht nur Klassen oder Rollen auftauchen

•Head mit zwei Variablen: nicht als Subklassenaxiom darstellbar

•Body mit Klassenausdruck: nicht darstellbar als Subpropertyaxiom

•Wie könnte man das in OWL 2 ausdrücken?

Bsp.: Man(x) ∧ hasChild(x,y) → fatherOf(x,y)

Page 66: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

66

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

Description Logics Rules

•Wie könnte man das in OWL 2 ausdrücken?

•Idee:

•ersetze Man(x) durch eine Rolle, um die Regel als Rolleninklusion auszudrücken

•Nutze „Self“ um Klassen in Rollen umzuwandeln

•Hilfsrolle PMan

•Hilfsaxiom Man ≣ ∃PMan.Self

•Damit:

Bsp.: Man(x) ∧ hasChild(x,y) → fatherOf(x,y)

PMan ∘ hasChild ⊑ fatherOf

Page 67: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

67

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

Description Logics Rules•Probleme:

•Wie könnte man das in OWL 2 ausdrücken?

•Idee:

•Nutze universelle Rolle U, um unverbundene Teile des Body zu verknüpfen

•Hilfsrollen: PVegetarian und PFishproduct

Bsp.: Vegetarian(x) ∧ Fishproduct(y) → dislikes(x,y)

Vegetarian ≣ ∃PVegetarian.SelfFishproduct ≣ ∃PFishproduct.SelfPVegetarian ∘ U ∘ PFishproduct ⊑ dislikes

Page 68: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

68

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

Entscheidbare Fragmente von SWRL•Welche SWRL-Wissensbasen erlauben vollständige Inferenzalgorithmen?

•Alle SWRL Wissensbasen, die nur aus OWL/OWL 2 Axiomen bestehen

•Alle SWRL Wissensbasen, die nur aus Mengen von Datalog-Programmen bestehen

•Jede statische finite Klasse von SWRL Wissensbasen

•Gibt es noch mehr interessante entscheidbare SWRL Fragmente?

•Description Logics RulesSWRL-Regeln, die bereits in OWL 2 ausgedrückt werden können

•DL-safe Rules Beschränkung der SWRL-Regeln durch Einschränkung der möglichen Variablenzuweisungen

Page 69: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

69

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

DL-Safe Rules•Idee:

•SWRL soweit einschränken, dass Entscheidbarkeit garantiert istdurch Einschränkung der möglichen Variablenbelegungen

•Beliebige Datalog-Regeln erlaubt, wobei OWL-Klassen und -Rollennamen eingebaut werden dürfen

•Regeln müssen DL-safe sein: Jede Variable im Head muss auch in einem Ausdruck im Rumpf auftreten, der keine OWL-Klasse oder -Rolle verwendet (= Datalog Atom)

•Semantik übernommen von OWL+SWRL (Prädikatenlogik).

DL-safety schränkt die Anwendbarkeit von Regeln auf benannte Individuen (=Konstanten) ein

Page 70: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

70

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

Erzwingen von DL-Safety•Beispiel:

•nicht DL-safe, wenn „bruder“ und „vater“ OWL-Rollen sind

•Erzwingen von DL-Safeness durch Einschränken der Regeln auf bekannte Individuen:

•wobei der Fakt O(a) für alle OWL-Individuen a angelegt wird.

•Regel nur noch auf bekannte OWL-Individuen (Named Individuals) anwendbar

onkel(x, y) ← bruder(x, z), vater(z, y)

onkel(x, y) ← bruder(x, z), vater(z, y),O(x),O(y),O(z)

Page 71: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

71

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

Zusammenfassung•SWRL („OWL + Datalog“) ist unentscheidbar

•Description Logic Rules

•SWRL Fragment, das mit OWL 2 ausgedrückt werden kann

•Wird indirekt durch OWL 2 Reasoner unterstützt

•DL-safe Rules

•SWRL Fragment in dem Variablen nur konkrete Werte (Konstanten) annehmen können

•Unterstützung durch OWL Reasoner

•DL-safety lässt sich erzwingen

•Standard und Best-Practise für Regeln noch nicht vorhanden

Page 72: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

72

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.4 Regeln für OWL mit SWRL

Tool Support für SWRL•Bossam, R2ML, Hoolet, Pellet, KAON2, RacerPro,

•Jess, SWRLTab, SWRLQueryTab

Page 73: 26.01.2010 - 11 - Regeln mit SWRL und RIF

3.7 Regeln mit SWRL/RIF

3.7.1 Motivation

3.7.2 Konjunktive Anfragen für OWL DL

3.7.3 Regelsprachen und das Semantic Web

3.7.4 Regeln für OWL mit SWRL

3.7.5 Regeln austauschen mit RIF

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

73

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF

Page 74: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

74

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF / 3.7.5 Regeln austauschen mit RIF

RIF - Rule Interchange Format•W3C Standard (Oktober 2009)

•Ziel: Definition eines Standards zum Austausch von Regeln (speziell für Web-basierte Rule Engines)

•Bestandteile:

•RIF BLD (Basic Logic Dialect) - Sprachstandard

•RIF-RDF / RIF-OWL - Interoperable Semantik mit bestehenden Wissensrepräsentationssprachen des Semantic Web

•RIF-PRD (Production Rules Dialect) - Standard für Produktionsregeln

•RIF-DTB (Data Types and Builtins)

•RIF-FLD (Framework of Logic Dialects)

•W3C RIF Working Grouphttp://www.w3.org/2001/sw/wiki/RIF

Page 75: 26.01.2010 - 11 - Regeln mit SWRL und RIF

3.7 Regeln mit SWRL/RIF

3.7.1 Motivation

3.7.2 Konjunktive Anfragen für OWL DL

3.7.3 Regelsprachen und das Semantic Web

3.7.4 Regeln für OWL mit SWRL

3.7.5 Regeln austauschen mit RIF

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

75

3. Wissensrepräsentationen3.7 Regeln mit SWRL/RIF

Page 76: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

7626.01.2010 – Vorlesung Nr. 111 2 3 4 5 6 7 8 109 12

13

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

3.1.Ontologien in der Philosophie und der Informatik

3.2.Wiederholung Aussagenlogik und Prädikatenlogik

3.3.RDFS-Semantik

3.4.Beschreibungslogiken

3.5.OWL und OWL-Semantik

3.6.OWL2

3.7.Regeln mit SWRL/RIF

14

Semantic Web - Vorlesungsinhalt

Page 77: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

1. Einführung

2. Semantic Web BasisarchitekturDie Sprachen des Semantic Web - Teil

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

4. Ontology Engineering

5. Semantic Web Applications

77

Semantic Web - Vorlesungsinhalt

Page 78: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

78

Semantic Web

Nächste Vorlesung: Ontological Engineering

Page 79: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

79

Literatur

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

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

3. Wissensrepräsentation und Logik

Page 80: 26.01.2010 - 11 - Regeln mit SWRL und RIF

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

80

Literatur

•Bloghttp://sewe0910.blogspot.com/

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

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

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

3. Wissensrepräsentation und Logik