Definition: SPARQL

Als SPARQL Protocol And RDF Query Language (kurz SPARQL) bezeichnen wir eine Query-Sprache zur Abfrage und Manipulation von RDF-Graphen.

SPARQL definiert, wie Graphmuster (Graph-Patterns) auf ein RDF-Dataset angewendet werden, um gezielt auf Elemente eines RDF-Graphen zuzugreifen oder neue Graphen zu erzeugen.

Dabei fragt SPARQL also nicht nach explizit nach Dokumenten, sondern nach Graph-Patterns in den Graphen.

Definition: SPARQL-Graph-Pattern

Als SPARQL-Graph-Pattern (kurz GP) bezeichnen wir eine Menge von Triple-Patterns, die zur Beschreibung eines Suchmusters in einem RDF-Graphen verwendet werden.

Ein einfaches Graph-Pattern ist eine Teilmenge

wobei die Menge der Triple-Pattern formal definiert ist als:

wobei

  • die Menge aller RDF-Terme,
  • die Menge aller IRIs und
  • die zu den disjunkte Menge aller Query-Variablen sei. (Platzhalter, die innerhalb von Graph-Patterns verwendet werden, um Werte aus einem RDF-Graphen zu binden.)

Definition: SPARQL-Query-Formen

Bei SPARQL-Queries unterscheiden wir vier Query-Formen (kurz QF):

  • SELECT
    • Liefert alle Werte, die durch die Auswertung der Query an Variablen gebunden werden.
  • CONSTRUCT
    • Erzeugt einen RDF-(Teil-)Graphen auf Basis der gefundenen Bindungen.
  • ASK
    • Liefert einen booleschen Wert, der angibt, ob ein spezifiziertes Muster im Graphen enthalten ist.
  • DESCRIBE
    • Erzeugt einen RDF-Graphen, der die gefundenen Ressourcen beschreibt.