Vorlesung Semantic Web Technologien - Sommersemester 2011 - Steffen Schlönvoigt

Übungsblatt 3


Aufgabe 1 – FOAF Profil erstellen

Friend-of-a-friend (FOAF) ist ein Internet-Standard, um Menschen und ihre Beziehungen

untereinander in einer maschinen-verständlichen Form zu beschreiben.

Erstellen Sie ein FOAF Profil von sich selbst auf http://foaf.me (oder von Hand bzw. einem anderen Generator). Geben Sie darin möglichst viele Informationen an. Verlinken Sie sich mit Ihren Nebensitzern/Freunden.

Fügen Sie zum von foaf.me generierten XML-Dokument weitere Informationen hinzu. Sehen Sie sich auch an, was für Dateien der FOAF-Generator unter http://www.ldodds.com/foaf/foaf-a-matic.de.html erstellt.

Überfliegen Sie die FOAF Spezifikation unter http://xmlns.com/foaf/spec/ und sehen Sie nach, ob es noch weitere interessante Informationen gibt, die Sie codieren können. Vergleichen Sie Ihr Profil mit dem von Tim Berners-Lee unter http://www.w3.org/People/BernersLee/card .

Laden Sie eine Version des Profils auf Ihren Rechner.

Weitere Information zu FOAF finden Sie auch unter http://was-ist-foaf.de/ .

Aufgabe 2 – FOAF Crawler

Erstellen Sie ein oder mehrere Programme mit Hilfe des Jena Frameworks (dieses ist auf den Pool Rechnern bereits installiert). Beginnen Sie damit, daß Sie das vorher heruntergeladene Profil in ein Speicherbasiertes Modell einlesen und dann über alle Statements (der Jena Ausdruck für Triple) iterieren, um dann deren Subjekt, Prädikat und Objekt auszugeben.

Erweitern Sie Ihr Programm darum, das nur noch Triple ausgegeben werden, die eine Person als Subjekt haben.

Versuchen Sie auch, die Informationen von ihrer (oder einer beliebigen anderen FOAF URL)anstatt direkt aus der lokalen Datei zu lesen. Erweitern Sie das Programm, so dass es versucht Informationen zu Ihren Freunden (Oder den Freunden eines anderen Profils) abzurufen. Geben Sie dann etwa Vor- und Nachnamen dieser Freunde aus.

Sie können beispielsweise auch das Profil von Tim Berners-Lee aus Aufgabe 1 als Ausgangspunkt verwenden.

Erweitern Sie ihr Programm um weitere nützliche Funktionen. Lassen Sie die abzurufende URL

beispielsweise als Parameter übergeben, bauen Sie eine Suche (unter meinen Freunden) ein...

Anlegen eines Jena Projekts in Eclipse

Zum Anlegen eines Projekts mit Jena müssen Sie in der Regel nichts anderes tun als ein JavaProjekt anlegen und die JARs aus dem lib Verzeichnis von Jena als Bibliotheken einfügen.

Legen Sie als eine Java Applikation in Eclipse an, klicken sie den Projektordner im Project

Explorer dann rechts an um das Kontextmenü zu öffnen. Wählen Sie dort den Punkt „Properties“.

Im sich öffnenden Dialog wechseln Sie auf den Punkt „Java Build Path“ und dort auf den Reiter

„Libraries“. Klicken Sie den Button „Add External JARs“ und navigieren Sie zum Jena lib

Verzeichnis. Selektieren Sie dort alle JAR-Dateien und bestätigen den Dialog.

Die wichtigsten (und für diese Übung vermutlich ausreichend) sind:

Jena befindet sich (vermutlich) auf den Pool-Rechnern im Verzeichnis C:\Programme\Jena-2.6.4

Schließen Sie nun den Properties Dialog – Ihrem Projekt sollte nun die Jena-Bibliothek zur

Verfügung stehen.

Der JAVA Namespace von Jena ist com.hp.hpl.jena das wichtigste Interface wird vermutlich com.hp.hpl.jena.rdf.model.Model sein.

Unter http://jena.sourceforge.net/tutorial/RDF_API/ finden Sie ein Tutorial, dass Ihnen nochmal die wichtigsten Schritte mit Jena demonstriert. Auch die Einführung von IBM unter

http://www.ibm.com/developerworks/xml/library/j-jena/ ist sehr lesenswert!