Web Technologien – Regelbasiertes Schlussfolgern mit OWL Univ.-Prof. Dr.-Ing. Wolfgang Maass Chair in Information and Service Systems Department of Law and Economics WS 2011/2012 Wednesdays, 8:00 – 10:00 a.m. Room HS 021, B4 1
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 2
Wrap-Up
• Da OWL DL auf eine entscheidbare Beschreibungslogik abgebildet werden kann, ist es möglich auf Basis von in OWL beschriebenem Wissen zu schlussfolgern.
• Ein Reasoner kann die in das Austauschformat DIG umgewandelten Aussagen auf Konsistenz prüfen und implizites Wissen errechnen.
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 3
Wissensabfragen in OWL
• Mittels OWL DL kann Wissen mit logischen Restriktionen beschrieben werden: (∀X)(MasterStudent(X) → Student(X) ∧ hatAbschluss(X, Bachelor))#
• OWL-Konzepte können auch zur Abfrage genutzt werden: à Suche alle Studenten die bereits einen
Bachelor-Abschluss haben
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 4
Wissensabfragen mit SPARQL
• SPARQL erlaubt die Abfrage über OWL-Konzepte hinaus: Welche Studenten sind für ein Master-Studium qualifiziert? Hat Max bereits einen Abschluss?
• Problem: SPARQL ist die Anfragesprache für RDF(-Graphen) und unterstützt daher keine komplexen logischen Zusammenhänge wie sie in OWL beschrieben werden können: Welche Personen an der Universität (egal welchen Typs) haben einen Bachelor- und einen Masterabschluss?
à Kann mit SPARQL nicht beantwortet werden.
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 5
Konjunktive Anfragen
• Konjunktive Anfragen sind ein einfacher Weg zur komplexen Anfrage auf in OWL DL beschriebenem Wissen
• Konjunktive Anfragen sind prädikatenlogische Anfragen reduziert auf atomare Formeln, Konjunktionen (∧) und Existenzquantoren (∃) Student(X) ∧ Kurs(K) ∧ (∃Y)(Student(Y)) ∧ besucht(X, K) ∧ besucht(Y, K) ∧ hatAbschluss(Y, „Master“) Welche Studenten sind in Kursen in denen mindestens ein Masterstudent teilnimmt?
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 6
Regelbasiertes Schlussfolgern?
Die Kombination der Beschreibungslogik beim Schlussfolgern und der Ansatz konjunktiver Anfragen stellt die Grundlage für regelbasiertes Schlussfolgern dar. Ø Regeln als Implikationen der Prädikatenlogik
Ø Prädikatenlogische Regeln ermöglicht die Generierung neuer Aussagen in der Wissensbasis über die ontologische Beschreibung hinaus.
Prämisse → Konklusion
Wenn X, dann Y Wenn ein Student einen Bachelorabschluss gemacht hat,
dann ist er ein Absolvent.
Antezedenz → Konsequenz
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 7
Implikationsformeln der Prädikatenlogik
Regeln als Horn-Klauseln: • Können zur Auswertung umgeschrieben werden als
konjunktive Anfragen • Können Konstanten, Variablen und Prädikate enthalten
A1 ∧ A2 ∧ ... ∧ An → H Rumpf Kopf
¬A1 ∨ ¬A2 ∨ ... ∨ ¬An ∨ H
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 8
„Forward“ vs. „Backward Chaining“
• Regeln können vorwärts (Rumpf → Kopf) oder rückwärts (Kopf ⟵ Rumpf) geschrieben und verarbeitet werden.
• Der Hauptunterschied liegt nicht in der Notation sondern in der Abarbeitung durch das Regelsystem (= inference engine). Je nach Problemstellung und Datenlage ist die jeweilige Methode zu bevorzugen.
• „Forward Chaining“: • Vorgehen nach dem Ausschlussprinzip • Datengetriebene Inferenz
• „Backward Chaining“: • Vorgehen nach dem Ziel bis zur Bestätigung • Zielorientierte Inferenz
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 9
Semantic Web Rule Language
• Die Semantic Web Rule Language (SWRL) ist eine Regelsprache für OWL DL.
• Beim W3C als Standardisierungsvorschlag eingereicht. • SWRL ist XML-codiert und kann somit RuleML codierte Regeln
direkt in OWL DL einbetten. • SWRL ist in OWL einbettbar oder separat in RuleML Notation
speicherbar.
Ø SWRL erweitert OWL DL um Regeln in der Form von Horn-Klauseln.
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 10
Erfüllung von SWRL Regeln
• Die Wissensbasis bei der Evaluierung ist die SHOIN Wissensbasis der OWL Ontologie in Kombination mit dem Regelset: k = (∑, P)
• Bei der Ausführung der Regeln werden die konjugierten Axiome der Antezedenz evaluiert und dementsprechend die Konsequenz erfüllt, wenn alle Axiome zutreffen.
• Sind Antezedenz und Konsequenz erfüllt, dann ist die Regel erfüllt.
• Sonderfälle: • Die Antezedenz ist leer à Die Konsequenz wird erfüllt (triviale Regel) • Die Konsequenz besteht aus einer Konjunktion von Axiomen à Die Regel
wird aufgeteilt in mehrere Regeln atomaren Konsequenzen
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 11
SWRL Beispiel
<swrl:Imp rdf:ID="Absolventenregel"> <swrl:body> <swrl:AtomList> <rdf:first> <rdf:Description> <rdf:type rdf:resource="&swrl;ClassAtom"/> <swrl:argument1> <rdf:Description rdf:about="#s"/> </swrl:argument1> <swrl:classPredicate rdf:resource="#Student"/> </rdf:Description> </rdf:first> <rdf:rest> <swrl:AtomList> <rdf:first> <rdf:Description> <rdf:type rdf:resource="&swrl;IndividualPropertyAtom"/> <swrl:argument2> <rdf:Description rdf:about="#a"/> </swrl:argument2> <swrl:argument1> <rdf:Description rdf:about="#s"/> </swrl:argument1> <swrl:propertyPredicate rdf:resource="#hatAbschluss"/> </rdf:Description> </rdf:first> <rdf:rest>
SWRL Regel <swrl:AtomList> <rdf:first> <rdf:Description> <rdf:type rdf:resource="&swrl;ClassAtom"/> <swrl:argument1> <rdf:Description rdf:about="#a"/> </swrl:argument1> <swrl:classPredicate rdf:resource="#Abschluss"/> </rdf:Description> </rdf:first> <rdf:rest rdf:resource="&rdf;nil"/> </swrl:AtomList> </rdf:rest> </swrl:AtomList> </rdf:rest> </swrl:AtomList> </swrl:body> <swrl:head> <swrl:AtomList> <rdf:first> <rdf:Description> <rdf:type rdf:resource="&swrl;ClassAtom"/> <swrl:argument1> <rdf:Description rdf:about="#s"/> </swrl:argument1> <swrl:classPredicate rdf:resource="#Absolvent"/> </rdf:Description> </rdf:first> <rdf:rest rdf:resource="&rdf;nil"/> </swrl:AtomList> </swrl:head> </swrl:Imp>
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 12
SWRL Beispiel
OWL Axiome: Student(Max), MasterAbschluss(MaxMA), hatAbschluss(Max, MaxMA), MasterAbschluss ⊑ Abschluss
SWRL Regel:
Student(?s) ∧ hatAbschluss(?s, ?a) ∧ Abschluss(?a) → Absolvent(?s)
Regelergebnis:
Absolvent(Max)
Ø OWL DL Subklassen-Beziehung wird vom Regelsystem mit beachtet
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 13
SWRL Beispiel mit Protégé und Jess
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 14
SWRL Syntax
SWRL unterstützt folgende konjugierten Atome: C(i) | D(v) | R(i,j) | U(i,v) | builtIn(p,v1,...,vn) | i = j | i ≠ j
• OWL DL Klassen (C = Class, i & j = Objektvariablen oder Individuals)
• (Typisierte) OWL DL Datenwerte (D = Data type) • OWL DL Objekt- und Datentyp-Properties
(R = Object properites, U = Data type properties) • OWL DL Datenfelder (v1,...vn = Datenfeldvariablen oder Datenwerte) • Eine Menge interner Funktionen (sog. built ins = p) zur minimalen
Datenmanipulation (temporäre Addition, Zahlenvergleiche) • sameAs(i, j) und differentFrom(i, j) zum Wertevergleich
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 15
SQWRL
Äquivalent zu SPARQL kann SQWRL (Semantic Query-Enhanced Web Rule Language, „squirrel“) zur Datenabfrage verwendet werden: • Der Volle Sprachumfang von SWRL wird unterstützt • Zusätzliche interne Funktionen erlauben die Ausgabe und
Filterung der Ergebniswerte
Beispiel: SWRL Regel: Person(?p) ∧ hasAge(?p, ?age) ∧ swrlb:greaterThan(?age, 17) → Adult(?p)#SQWRL Abfrage: Adult(?p) → sqwrl:select(?p)"
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 16
Semantische Regelframeworks
• Diverse Reasoner unterstützten SWRL: Bossam, Hoolet, Jess, KAOM2, Pellet, RacerPro, R2ML
• Mittels Protégé, Jess und SWQLJessTab können SWRL Regeln modelliert und validiert werden
• Problem: • SWRL ist auch nach über 5 Jahren noch nicht als Standard
angenommen • Diverse RDF/OWL Frameworks besitzen ihre eigenen, proprietären
Regelsysteme, teils historisch bedingt bereits für RDF (z.B. JENA)
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 17
Rule Interchange Format
Das Rule Interchange Format (RIF) ist ein Bestreben des W3C einen Standard zum Austausch von Regeln zwischen Systemen zu schaffen: • Eine Regelsprache kann nicht ideal für alle webbasierten
Beschreibungssprachen passen • Selbst bei gleichem Beschreibungsstandard (z.B. OWL DL)
muss der Regelaustausch, z.B. bzw. verwendeter Ontologien, koordiniert werden
Univ.-Prof. Dr.-Ing. Wolfgang Maass
17.01.12 Slide 18
Literatur
Bücher: • Pascal Hitzler, Markus Krötzsch, Sebastian Rudolph, York Sure
Semantic Web: Grundlagen, Springer-Verlag ISBN 978-3-540-33993-9
Artikel: • Gerd G. Hillebrand, Paris C. Kanellakis, Harry G. Mairson, Moshe Y. Vardi
Undecidable Boundedness Problems for Datalog Programs In: J. Log. Program. Band 25, Nr. 2, 1995, S. 163–190
Web: • http://www.w3.org/Submission/SWRL/ • http://protege.cim3.net/cgi-bin/wiki.pl?SWRLTab • http://www.w3.org/TR/rif-overview/
http://jena.sourceforge.net/inference/#rules
Univ.-Prof. Dr.-Ing. Wolfgang Maass
Univ.-Prof. Dr.-Ing. Wolfgang Maass Chair in Information and Service Systems Saarland University, Germany