SPARQLDESCRIBEVerhalten in Bezug auf das Standarddiagramm - Amazon Neptune

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

SPARQLDESCRIBEVerhalten in Bezug auf das Standarddiagramm

Mit dem SPARQL DESCRIBEAbfrageformular können Sie Informationen über Ressourcen abrufen, ohne die Struktur der Daten zu kennen und ohne eine Abfrage verfassen zu müssen. Wie diese Informationen zusammengestellt werden, bleibt der SPARQL Implementierung überlassen. Neptune stellt mehrere Abfragehinweise bereit, die verschiedene Modi und Algorithmen zur Verwendung durch DESCRIBE aufrufen.

In der Neptune-Implementierung werden unabhängig vom Modus DESCRIBE nur Daten verwendet, die im SPARQLStandarddiagramm vorhanden sind. Dies entspricht der Art und Weise, wie Datensätze SPARQL behandelt werden (siehe Spezifizieren von RDF Datensätzen in der Spezifikation). SPARQL

In Neptune enthält das Standarddiagramm alle eindeutigen Tripel in der Vereinigung aller benannten Diagramme in der Datenbank, es sei denn, bestimmte benannte Diagramme sind mit FROM- und/oder FROM NAMED-Klauseln angegeben. Alle RDF Daten in Neptune werden in einem benannten Diagramm gespeichert. Wenn ein Tripel außerhalb eines Kontexts mit einem benannten Diagramm eingefügt wird, speichert Neptune es in einem benannten Graphen mit der Bezeichnung http://aws.amazon.com/neptune/vocab/v01/DefaultNamedGraph.

Wenn ein oder mehrere benannte Diagramme mittels der FROM-Klausel angegeben werden, ist das Standarddiagramm die Vereinigung aller eindeutigen Tripel in diesen benannten Diagrammen. Wenn es keine FROM-Klausel gibt, jedoch eine oder mehrere FROM NAMED-Klauseln, ist das Standarddiagramm leer.

SPARQLDESCRIBEBeispiele

Betrachten Sie die folgende Daten:

PREFIX ex: <https://example.com/> GRAPH ex:g1 { ex:s ex:p1 "a" . ex:s ex:p2 "c" . } GRAPH ex:g2 { ex:s ex:p3 "b" . ex:s ex:p2 "c" . } ex:s ex:p3 "d" .

Für diese Abfrage:

PREFIX ex: <https://example.com/> DESCRIBE ?s FROM ex:g1 FROM NAMED ex:g2 WHERE { GRAPH ex:g2 { ?s ?p "b" . } }

Neptune würde Folgendes zurück:

ex:s ex:p1 "a" . ex:s ex:p2 "c" .

Hier wird zuerst das Diagrammmuster GRAPH ex:g2 { ?s ?p "b" } ausgewertet, was zu Bindungen für ?s führt. Anschließend wird der Teil DESCRIBE anhand des Standarddiagramms ausgewertet, das jetzt ex:g1 ist.

Für diese Abfrage gilt jedoch Folgendes:

PREFIX ex: <https://example.com/> DESCRIBE ?s FROM NAMED ex:g1 WHERE { GRAPH ex:g1 { ?s ?p "a" . } }

Neptune würde nichts zurückgeben, da das Standarddiagramm leer ist, wenn eine FROM NAMED-Klausel, jedoch keine FROM-Klausel vorhanden ist.

In der folgenden Abfrage wird DESCRIBE verwendet, ohne dass eine FROM- oder FROM NAMED-Klausel vorhanden ist:

PREFIX ex: <https://example.com/> DESCRIBE ?s WHERE { GRAPH ex:g1 { ?s ?p "a" . } }

In dieser Situation besteht das Standarddiagramm aus allen eindeutigen Triples in der Vereinigung aller benannten Graphen in der Datenbank (formal die RDF Zusammenführung), sodass Neptune Folgendes zurückgeben würde:

ex:s ex:p1 "a" . ex:s ex:p2 "c" . ex:s ex:p3 "b" . ex:s ex:p3 "d" .