Archiv

Artikel Tagged ‘Resource Description Framework’

[Semantic Web Technologies] Übung 3 – SPARQL und OWL

17. Januar 2010

Mit dieser Übung werden Ihre Kenntnisse in SPARQL und OWL (Web Ontology Language) überprüft.

Der erste Teil des Übungsblattes behandelt in den Aufgaben 1, 2 und 3 die Definition von SPARQL SELECT Anfragen inklusive einiger Besonderheiten.

Der zweite Teil beschäftigt sich dann mit der Definition von OWL Ontologien sowie dem Folgern von Schlüssen aus vorhandenen Wissensbasen.

Uebung 3 – SPARQL und OWL (PDF)

Reblog this post [with Zemanta]

Steffen Schloenvoigt , , , ,

[Semantic Web Technologies] Slides zu Vorlesung 9+10+11 : OWL

17. Januar 2010

Während der letzten Vorlesungen, haben wir uns die Web Ontology Language OWL angesehen.

Dazu sind wir zunächst kurz auf den Begriff der Ontologie eingegangen und haben uns dann mit den Anforderungen an eine Ontologiesprache und warum RDF(S) nicht für alle Fälle ausreicht, beschäftigt.

Anschließend wurde die Version 1 der Sprache OWL vorgestellt. Dabei haben wir die drei Dialekte Light, DL und Full sowie ihre jeweiligen Einsatzgebiete behandelt und gesehen, dass diese in ansteigender Komplexität und Ausdrucksstärke aufeinander aufbauen.

Daraufhin haben wir uns die Details der Sprache näher angesehen. Es wurde besprochen aus welchen Bestandteilen OWL Ontologien bestehen, welche Konzepte (Klassen, Individuen sowie konkrete und abstrakte Rollen) , Sprachelemente (owl:Class, owl:Thing, …) und Kurzschreibweisen existieren sowie welche speziellen Beziehungen zwischen Klassen und Individuen bestehen bzw beschrieben werden können.
Im Anschluss daran wurde erklärt, wie wir durch Beschränkungen auf Rollen (z.B. alle “hatFreund” Beziehungen besitzen “Frau” als Klasse des Subjekts) komplexe Klassen erstellen können und wie sich diese sich durch Intersektion, Vereinigung oder Komplementbildung zu weiteren komplexen Klassen vereinen lassen.

Wir haben uns mit der Klassifizierung von Rollen anhand ihrer Eigenschaften (invers zueinander, transitiv, symmetrisch, (invers) funktional) sowie mit der Bedeutung der Festlegung und den Gefahren von domain und range für diese Rollen beschäftigt.

Nach einer erneuten näheren Betrachtung der Dialekte, und der OWL zur Grunde liegenden Open Word Assumption haben wir uns mit Inferenz, dem “automatischen Schließen aus implizitem Wissen” beschäftigt und dabei die Funktionsweise und Probleme des Tableauverfahrens betrachtet.

Der nächste Abschnitt hat sich mit der neuen Version 2 von OWL beschäftigt. Dabei haben wir gelernt, das OWL 2 auf einer SROIQ Beschreibungslogik fusst und damit der SHOIN Logik von OWL 1 überlegen ist.Mit qualifizierten Zahlenrestriktionen, dem Konzept SELF sowie der Rolleninklusion haben wir die wichtigsten Elemente der neuen Version behandelt. Abschließend wurden Themen wie punning und die Aufgliederung des Light Dialekts in die Profile EL, QL und RL besprochen.

[]Während der letzten Vorlesungen, haben wir uns die Web Ontology Language OWL angesehen.
Dazu sind wir zunächst kurz auf den Begriff der Ontologie eingegangen und haben uns dann mit den Anforderungen an eine Ontologiesprache und warum RDF(S) nicht für alle Fälle ausreicht, beschäftigt.

Anschließend wurde die Version 1 der Sprache OWL vorgestellt. Dabei haben wir die drei Dialekte Light, DL und Full sowie ihre jeweiligen Einsatzgebiete behandelt und gesehen, dass diese in ansteigender Komplexität und Ausdrucksstärke aufeinander aufbauen.

Daraufhin haben wir uns die Details der Sprache näher angesehen. Es wurde besprochen aus welchen Bestandteilen OWL Ontologien bestehen, welche Konzepte (Klassen, Individuen sowie konkrete und abstrakte Rollen) , Sprachelemente (owl:Class, owl:Thing, …) und Kurzschreibweisen existieren sowie welche speziellen Beziehungen zwischen Klassen und Individuen bestehen bzw beschrieben werden können.
Im Anschluss daran wurde erklärt, wie wir durch Beschränkungen auf Rollen (z.B. alle “hatFreund” Beziehungen besitzen “Frau” als Klasse des Subjekts) als komplexe Klassen erstellen können und wie sich diese sich durch Intersektion, Vereinigung oder Komplementbildung zu weiteren komplexen Klassen vereinen lassen.

Wir haben uns mit der Klassifizierung von Rollen anhand ihrer Eigenschaften (invers zueinander, transitiv, symmetrisch, (invers) funktional) sowie mit der Bedeutung der Festlegung und den Gefahren von domain und range für diese Rollen beschäftigt.

Nach einer erneuten näheren Betrachtung der Dialekte, und der OWL zur Grunde liegenden Open Word Assumption haben wir uns mit Inferenz, dem “automatischen Schließen aus implizitem Wissen” beschäftigt und dabei die Funktionsweise und Probleme des Tableauverfahrens betrachtet.

Der nächste Abschnitt hat sich mit der neuen Version 2 von OWL beschäftigt. Dabei haben wir betrachtet, das OWL 2 auf einer SROIQ Beschreibungslogik fusst und damit der SHOIN Logik von OWL 1 überlegen ist.Mit qualifizierten Zahlenrestriktionen, dem Konzept SELF sowie der Rolleninklusion haben wir die wichtigsten Elemente der neuen Version behandelt. Abschließend wurden Themen wie punning und die Aufgliederung des Light Dialekts in die Profile EL, QL und RL besprochen.

8 – Sprachen des Semantic Web – OWL (PDF)

Literatur:

Reblog this post [with Zemanta]

Steffen Schloenvoigt , , , , , , ,

[Semantic Web Technologies] Slides zu Vorlesung 7+8 : SPARQL

10. Dezember 2009

Im Anschluss an die RDF(S)-Frameworks und einer Übungseinheit, haben wir uns in den letzten beiden Vorlesungen mit dem Thema SPARQL, der SPARQL Protocol And RDF Query Language, befasst.

Dabei wurden folgende Themen behandelt:

  • SPARQL Query Language – Anfragesprache
    • Erstellen einfacher Anfragen – Wie funktionieren Anfragemuster
    • Behandlung von Literalen und Blank Nodes
    • Gruppierung von Mustern, optionale Muster, alternative Muster, Kombination
    • Filter, Vergleichsoperatore, Funktionen
    • Modifikatoren zur Sortierung, Entfernung doppelter Lösungen und zur Aufteilung von Ergebnismengen
    • Anfragetypen in SPARQL – SELECT, CONSTRUCT, ASK und DESCRIBE
    • RDF Dataset – Default und Named Graphen
  • SPARQL Query Result XML Format für SELECT und ASK Anfragen
  • SPARQL Protokoll
  • Zukünftige Features von SPARQL
    • Aggregatfunktionen – COUNT, SUM, AVG etc.
    • Subqueries
    • Negation
    • Project Expressions
    • SPARQL Update – RDF Graphen verändern per Query Language
    • Dienstbeschreibung
    • Übersicht über eventuelle weitere Features

PDF Download

Wer SPARQL selbst ausprobieren möchte, ohne selbst einen SPARQL Endpoint zu installiere, kann dies etwa auf einem der Webservices der DBpedia tun:

Literatur:

Reblog this post [with Zemanta]

Steffen Schloenvoigt , , ,

[Semantic Web Technologies] Übung 2 – RDF-Contacts

23. November 2009

ExampleContacts

In der heutigen Übung soll einen kleine Applikation zur Kontaktverwaltung in Java mit Hilfe des Jena Frameworks, welches in der letzten Vorlesung vorgestellt wurde, erstellt werden.

Ich habe hierfür ein kleines Rahmenprogramm erstellt, dass uns als Ausgangspunkt dienen soll und bereits die Oberfläche implementiert. Sie müssen also nur noch die für den Datenzugriff wichtigen Codestellen ausfüllen. Entsprechende Stellen sind im Co

de mit TODO markiert.

Inhalte der Übung sind:

  • Erstellen einer Konstantenklasse mit dem Jena schemagen Werkzeug
  • Laden des Modells von einer Datei
  • Speichern der Triple in einer Datei
  • Erstellen von Triplen
  • Finden und Lesen von Triplen
  • Löschen von Triplen

Als Vokabular für die Übungsapplikation verwenden wir einen Teil des FOAF-Vokabulars, den wir mit eigenen Properties für die foaf:Person angereichert haben (siehe Grafik auf der rechten Seite).

Wenn Sie möchten, können Sie das mitgelieferte Vokabular oder die Benutzerschnittstelle gerne um eigene Elemente erweitern. Focus der Übung liegt aber ganz klar darauf, das Jena-Framework und seine grundlegende Funktionalität kennen zu lernen.

Uebungsblatt: Uebung 2 – RDF Contacts

Material:

Links:

Reblog this post [with Zemanta]

Steffen Schloenvoigt , , , , , , ,

[Semantic Web Technologies] Slides zu Vorlesung 6: RDF(S) Frameworks

16. November 2009

Nach den theoretischen Grundlagen vom letzten Mal, wenden wir uns nun wieder den eher praktischen Gefielden zu. In der aktuellen Vorlesung beschäftigen wir uns mit RDF(S)-Frameworks aus der Java Welt.

Zunächst wird mit Sesame eines der bekanntesten Frameworks vorgestellt. Durch sein Storage and Inference Layer (SAIL) kann es semantische Daten mit praktisch beliebigen Mechanismen persistieren.

Der Mulgara Semantic Store ist ein Triple Store, der nativ in Java als Triple Store implementiert ist und nicht auf relationale Datenbanken angewiesen ist. Als wichtigstes Feature gibt es bei Mulgara das Resolver-SPI, mit dem es möglich ist, entfernten Content zu integrieren.
Mit dem Topaz Projekt existiert eine Erweiterung zu Mulgara, die die Idee eines Objekt Relational Mappers ala Hibernate in die Semantic Web Welt transferiert.

Abschließend beschäftigen wir uns mit Jena, dem marktführenden Semantic Web Framework, dass ursprünglich von Hewlett Packard als Open Source entwickelt wurde und seit kurzem als OpenJena verfügbar ist. Viele Beispiele demonstrieren, wie man mit dem Jena API die wichtigsten Aufgaben erledigt.

PDF Download

Literatur:

Reblog this post [with Zemanta]

Steffen Schloenvoigt , , , , , , ,

Additional Information