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

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]

[Webtreff] Low Budget Usability

Patric Schmid von der Uni Konstanz hat gestern auf dem Webtreff Konstanz/Kreuzlingen einen interessanten Vortrag über Usability-Testing, gerade auch mit geringem Budget, gehalten:

Themen waren unter anderem:

  • Wer hat was von Usability?
  • Lohnt sich das überhaupt?
  • Was und wie wird getestet? – Testmethoden
  • (Online)-Tools zum Usability-Testing

Während des Vortrags und im Anschluss darauf wurde angeregt über Usability und andere angelehnte Themen diskutiert.

Wer Interesse an Themen rund um das Web und Technologie oder vielleicht auch mal gerne selber einen Vortrag dort halten würde und im Raum Konstanz/Kreuzlingen zugegen ist, ist herzlich eingeladen sich zu uns zu gesellen:

Reblog this post [with Zemanta]

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

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]

[Semantic Web Technologies] Slides zur Vorlesung 5: Formale Semantik von RDF(S)

Bevor wir uns nun den weiteren Technologien und Sprachen des Semantic Web zuwenden, beschäftigen wir uns mit den formalen Grundlagen des Semantic Web.

Was steckt für eine Bedeutung in RDF und RDFS und ihren Vokabularen? Wie können wir dies mathematisch korrekt formulieren?
Dies ist wichtig, damit der Standard nicht beliebig interpretiert werden kann (was leider schon des öfteren vorgekommen ist).

Hierzu werden wir uns zunächst ansehen, wie wir die Sätze (Triple) und Elemente des RDF(S) Vokabulars (URIs, B-Nodes, Literale) in ein theoretisches Modell überführen, um anhand dessen dann die Semantik genau auszuleuchten.
Da dieses Verfahren für die Umsetzung auf Maschinen allerdings viel zu komplex ist, werden wir uns anschließend damit auseinandersetzen, wie wir rein auf der Basis der Syntax Schlüsse ziehen können.
Abschließend werden wir noch sehen, das wir mit RDFS nicht jegliche Semantik ausdrücken können (Negation ist beispielsweise nicht möglich).

Download

Reblog this post [with Zemanta]