Sitzung 9

25
Semantic Technologies Übung, Wintersemester 2011/12 7. Dezember 2011 - Regeln

Transcript of Sitzung 9

Page 1: Sitzung 9

Semantic TechnologiesÜbung, Wintersemester 2011/12

7. Dezember 2011 - Regeln

Page 2: Sitzung 9

Aufgabe

• Bearbeiten Sie das Protégé OWL Tutorial:

‣ http://owl.cs.manchester.ac.uk/tutorials/protegeowltutorial/

• Schauen Sie sich die entstehende OWL-Datei beim Bearbeiten parallel in einem Text-Editor an.

• Folgen Sie den einzelnen Exercises soweit wie sie können und senden Sie mir die entstandene Pizza-Ontologie.

Page 3: Sitzung 9

Reasoner

• Inferenzmaschine im Kontext des Semantic Web

•Nützlich für:

• Ableitung neuer Tripel aus bestehenden

• Prüfung der Konsistenz von Ontologien

• Beispiele: Pellet, FaCT++, HermiT

Page 4: Sitzung 9

Beispiel 1Uni-Vokabular

Page 5: Sitzung 9

a

Page 6: Sitzung 9

a

Page 7: Sitzung 9

aa

Page 8: Sitzung 9

aaa

Page 9: Sitzung 9

aaaa

Page 10: Sitzung 9

aaaaa

Page 11: Sitzung 9

RulesRegelsprachen für das Semantic Web

Page 12: Sitzung 9

Rules

• Implizite Regeln in RDFS & OWL

• Beispiele:

• „Alle Professoren sind Dozenten“ - rdfs:subClassOf

• „Wenn ein Seminar von einem Dozenten gehalten wird, dann hält dieser Dozent das Seminar“ - owl:inverseOf

• „Hauptseminare werden nur von Professoren gehalten“ - owl:Restriction

• ...

Page 13: Sitzung 9

Rules

• Problem:

• „Eine Person mit einem männlichen Geschwisterteil hat einen Bruder.“

• IF ?x hasSibling ?yAND ?y rdf:type ManTHEN ?x ?hasBrother ?y.

• Nicht durch OWL-Konstrukte ausdrückbar.

➡Lösung: Regelsprachen

Page 14: Sitzung 9

SWRLSemantic Web Rule Language

Page 15: Sitzung 9

SWRL

• Kombiniert OWL mit Horn-Logik

• Bsp.:

• IF ?x hasSibling ?yAND ?y rdf:type ManTHEN ?x ?hasBrother ?y.

➡In SWRL:

• hasSibling(?x,?y), Man(?y) -> hasBrother(?x,?y)

Page 16: Sitzung 9

SWRL

• Allgemeine Syntax:

• B1,...,Bn -> A1,...,Am

• Sprich:

• „Aus B1 und B2 ... und Bn folgt A1 und A2 ... und Am.“

Page 17: Sitzung 9

SWRL

• Dabei gilt:

• Die Prädikate B1 ... Bn und A1 ... An sind

• OWL-Klassen der Form C(x)

• OWL-Eigenschaften der Form P(x,y)

Page 18: Sitzung 9

SWRL

• Außerdem gilt:

• Die Werte x und y der Prädikate sind

• Werte eines Datentyps

• OWL-Individuen

• Variablen der Form „?a“

Page 19: Sitzung 9

SWRL

• Beispiele:

• Professor(?x) -> Dozent(?x)

• haelt(?x,?y) -> wirdGehaltenVon(?y,?x)

• haelt(thaller,?y), teilnehmer(?x,?y)! -> interessiertSichFuer(?x,?y)

• title("Semantic Technologies",?y), Uebung(?y)! -> interessiertSichFuer(?x,?y)

Page 20: Sitzung 9

RuleML

• Familie von XML-Formaten zur Repräsentation von Regeln

• Basis für XML-Serialisierung von SWRL

Page 21: Sitzung 9

Beispiel 2Personen

Page 22: Sitzung 9

Aufgabe 1

• Erstellen Sie mit Protégé eine möglichst reichhaltige OWL-Ontologie für Familienbeziehungen. Folgende Klassen und Eigenschaften sollen enthalten sein:

• Person, MalePerson, FemalePerson, hasSibling, hasBrother, hasSister, hasChild, hasSon, hasDaughter, hasParent, hasFather, hasMother

• Nutzen Sie den Reasoner für Konsistenzchecks.

Page 23: Sitzung 9

Aufgabe 2

• Legen sie mehrere Individuals als Instanzen von Thing und Beziehungen zwischen diesen Instanzen an.

• Nutzen Sie den Reasoner um automatisch auf die Klassen dieser Individuals zu schließen.

Page 24: Sitzung 9

Aufgabe 3

• Löschen Sie alle Domains und Ranges der Ontologie und formulieren Sie stattdessen Regeln, die den gleichen Effekt haben.

Page 25: Sitzung 9

Aufgabe 4

• Geben Sie Regeln in SWRL an, die die Ableitung spezifischerer Properties möglich machen.

• Bsp.:

• MalePerson(?y), Person(?p), hasSibling(?p, ?y) ! -> hasBrother(?p, ?y)