Beispiel für DESCRIBE in SPARQL

Mit dem SPARQL-Befehl DESCRIBE kann man aus einem SPARQL-Endpoint Informationen über Ressourcen anfordern. Aus der W3C-Recommendation zu SPARQL:

The DESCRIBE form returns a single result RDF graph containing RDF data about resources. This data is not prescribed by a SPARQL query, where the query client would need to know the structure of the RDF in the data source, but, instead, is determined by the SPARQL query processor. The query pattern is used to create a result set. The DESCRIBE form takes each of the resources identified in a solution, together with any resources directly named by IRI, and assembles a single RDF graph by taking a “description” which can come from any information available including the target RDF Dataset. The description is determined by the query service. The syntax DESCRIBE * is an abbreviation that describes all of the variables in a query.

Aktueller Fall, einfaches Beispiel: Ich möchte wissen, welche Informationen zu der Ressource http://dewey.info/class/020/ bereitstehen.

1
2
3
4
5
6
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
 
DESCRIBE ?p ?o WHERE {
<http://dewey.info/class/020/> ?p ?o
}
LIMIT 10

Und so sieht dann das Ergebnis aus. Als Ausgabeformat habe ich hier Turtle gewählt.

Linked Library of Congress

Adrian Pohl hat in seiner Stimme für Plan3t.info wieder vier Links parat, diesmal unter anderem auf die Ankündigung der Library of Congress, ein Bibliographic Framework for the Digital Age zu entwickeln. Dazu schreibt er:

Für viel Aufsehen hat die Ankündigung der Library of Congress gesorgt, ein ‘bibliographic framework’ für das digitale Zeitalter zu entwickeln, das auf RDF Linked-Data-Standards setzt. Nun wird es also für all jene Zeit, die Linked Data bisher als vorübergehenden Hype verstanden haben, sich mit den Ideen dahinter auseinanderzusetzen. Die Ankündigung wirft zunächst eine Menge Fragen auf, wie z.B.: Welche Vokabulare/Ontologien werden für die RDF-Repräsentation bibliographischer Information empfohlen? Wie wird RDA hierfür weiterentwickelt? Auf der Mailingliste Bibframe werden diese und andere Fragen eifrig diskutiert.

Da in der Bibliothek der FH Hannover gerade Überlegungen laufen, eine Hochschulbibliographie auf LOD-Basis aufzubauen, wird sich das Thema hier in Zukunft sicherlich regelmäßig finden. Die oben erwähnte “RDF-Repräsentation bibliographischer Information” ist dabei natürlich besonders interessant. Wer sich mal ansehen möchte, wie das aussehen könnte, dem sei BIBO empfohlen, die Bibliographic Ontology. Die Beschreibung eines Artikels sieht dort beispielsweise so aus.

Die im Beispiel verwendete RDF-Schreibweise nennt sich Turtle (Terse RDF Triple Language). Wer sich für RDF interessiert, dem möchte ich dringend nahelegen: Macht einen weiten Bogen um die XML-Schreibweisen und seht Euch direkt alles in Turtle an. Das ist menschenlesbar und schon mit sehr wenig Übung tatsächlich auch schreibbar. Ein ganz nettes Tutorial zu Turtle gibt es im Haystack Blog. Links zu anderen, vielleicht besseren Tutorials im LOD-Kontext nehme ich gerne entgegen!