Hallo zusammen,
Markus Grandpré hat die Übung 2 sehr schön ausgearbeitet und den Lösungsweg dazu recht ausführlich beschrieben. Dabei werden einige Dinge, denke ich, wesentlich verständlicher und es treten Erkenntnisse ans Licht die man sonst so vielleicht nicht gesehen hätte.
In der Ausarbeitung auf Seite 6 werden die wichtigsten Schnittstellen von Jena beschrieben. Ich habe dies hier nochmal in einem Diagramm zusammengefasst:

Jena RDF(S) Interfaces
Man sieht hier sehr schön, das man in Jena mit RDFNode jedes RDF Element bezeichnen kann. RDFNodes teilen sich in Resource (Objektwerte/Ressourcen) und Literal(Datenwerte) auf. Auch Resource kann man noch weiter unterteilen.
Wenn wir uns die erlaubten Werte für die einzelnen Teile der Triple aus dem RDF-Kapitel noch mal in Erinnerung rufen so erhalten wir folgende Zuordnung
| Stelle |
Erlaubte Werte |
Passendes Jena Interface |
| Subjekt |
URI oder Blank Node |
Resource |
| Prädikat |
URI |
Property (ist etwas spezieller als Resource) |
| Objekt |
URI, Blank Node, Literal |
RDFNode |
Mit diesen Interfaces sind dann auch die jeweiligen Teile der Statement Objekte die z.B. ein StmtIterator zurückliefert getypt.
Steffen Schloenvoigt Java (programming language), Jena, Resource Description Framework, Uniform Resource Identifier
Nachdem wir uns jetzt in den letzten Vorlesungen mit SPARQL beschäftigt haben, ist es nun an der Zeit, dieses Wissen einmal selbst auszuprobieren. Dies soll nun in Übung 3 geschehen:
Uebung 3 – SPARQL (PDF)
Wir beschäftigen uns in dieser Übung mit der DBpedia (http://www.dbpedia.org) die ein wichtiger Bestandteil der Linked-Open-Data Initiative darstellt.
Das DBpedia Projekt extrahiert die strukturierten Daten die in der Wikipedia in den Informationskästen vorhanden sind und stellt sie für das Semantic Web im RDF-Format zur Verfügung. Desweiteren bietet die DBpedia diverse Schnittstellen über die man die in ihr enthaltenen Daten mit Hilfe von SPARQL abfragen kann. Genau dies wollen wir in dieser Übung nun tun.
Hilfreiche Links:
- DBpedia
- W3C
- SPARQL Test Tool
Steffen Schloenvoigt DBpedia, Linked Data, Resource Description Framework, Semantic Web, SPARQL, Übung
In der heutigen Übung geht es vor allem darum, dass sie mit dem Jena Framework vertraut werden. Anhand von Friend-Of-A-Friend (FOAF) Profilen soll die Funktionsweise der Bibliothek gelernt werden. FOAF ist ein Internet-Standard, um Menschen und ihre Beziehungen untereinander in einer maschinen-verständlichen Form zu beschreiben.
Ziel der Übung soll es sein, einen Crawler zu schreiben, der sich von einem Startpunkt aus durchs Netz angelt und weitere Informationen findet.
Uebung 2 – FOAF (PDF)
Interessante Links:
Java Code um einen InputStream von einer Remote-URL zu bekommen:
URL location = new URL( "http://www.w3.org/People/Berners-Lee/card" );
InputStream in = location.openStream();
Steffen Schloenvoigt FOAF, Frameworks, Jean, Libraries, Programming, RDF, Resource Description Framework, Semantic Web
In der heutigen Übung werden wir uns mit den bisher kennengelernten Technologien XML,RDF und RDFS beschäftigen.
Download (PDF) – Übung 1 – XML bis RDFS
Links zur Übung
Lösungen:
Steffen Schloenvoigt Metadata, RDF Schema, RDF/XML, Resource Description Framework, Semantic Web