Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utilisation du HTTP protocole Graph Store SPARQL 1.1 (GSP) dans Amazon Neptune
Dans la recommandation SPARQL1.1 du HTTP protocole Graph Store
Le protocole graph-store (GSP) fournit un moyen pratique de manipuler l'ensemble de votre graphe sans avoir à écrire de requêtes complexesSPARQL.
À partir de la Sortie : 1.0.5.0 (27/07/2021), Neptune prend pleinement en charge ce protocole.
Le point de terminaison du protocole Graph-Store (GSP) est :
https://
your-neptune-cluster
:port
/sparql/gsp/
Pour accéder au graphique par défaut avecGSP, utilisez :
https://
your-neptune-cluster
:port
/sparql/gsp/?default
Pour accéder à un graphe nommé avecGSP, utilisez :
https://
your-neptune-cluster
:port
/sparql/gsp/?graph=named-graph-URI
Détails particuliers de la mise en œuvre de Neptune GSP
Neptune met pleinement en œuvre la recommandation du W3C qui définit
L'un d'entre eux est le cas où une POST
demande PUT
ou spécifie un ou plusieurs graphes nommés dans le corps de la demande qui diffèrent du graphe spécifié par la demandeURL. Cela ne peut se produire que lorsque le RDF format du corps de la demande prend en charge les graphes nommés, par exemple en utilisant Content-Type: application/n-quads
ouContent-Type:
application/trig
.
Dans ce cas, Neptune ajoute ou met à jour tous les graphes nommés présents dans le corps, ainsi que le graphe nommé spécifié dans le. URL
Supposons, par exemple, qu'en partant d'une base de données vide, vous envoyiez une demande PUT
pour effectuer l'upsert de votes dans trois graphes. L'un, nomméurn:votes
, contient tous les votes pour toutes les années électorales. Les deux autres, nommés urn:votes:2005
eturn:votes:2019
, contiennent les votes relatifs à des années électorales spécifiques. La demande et sa charge utile sont comme suit :
PUT "http://
your-Neptune-cluster
:port
/sparql/gsp/?graph=urn:votes" Host: example.com Content-Type: application/n-quads PAYLOAD: <urn:JohnDoe> <urn:votedFor> <urn:Labour> <urn:votes:2005> <urn:JohnDoe> <urn:votedFor> <urn:Conservative> <urn:votes:2019> <urn:JaneSmith> <urn:votedFor> <urn:LiberalDemocrats> <urn:votes:2005> <urn:JaneSmith> <urn:votedFor> <urn:Conservative> <urn:votes:2019>
Une fois la demande exécutée, les données de la base de données se présentent comme suit :
<urn:JohnDoe> <urn:votedFor> <urn:Labour> <urn:votes:2005> <urn:JohnDoe> <urn:votedFor> <urn:Conservative> <urn:votes:2019> <urn:JaneSmith> <urn:votedFor> <urn:LiberalDemocrats> <urn:votes:2005> <urn:JaneSmith> <urn:votedFor> <urn:Conservative> <urn:votes:2019> <urn:JohnDoe> <urn:votedFor> <urn:Labour> <urn:votes> <urn:JohnDoe> <urn:votedFor> <urn:Conservative> <urn:votes> <urn:JaneSmith> <urn:votedFor> <urn:LiberalDemocrats> <urn:votes> <urn:JaneSmith> <urn:votedFor> <urn:Conservative> <urn:votes>
Une autre situation ambiguë est celle où plusieurs graphes sont spécifiés dans la requête URL elle-même, en utilisant l'un des PUT
GET
ouDELETE
. POST
Par exemple :
POST "http://
your-Neptune-cluster
:port
/sparql/gsp/?graph=urn:votes:2005&graph=urn:votes:2019"
Ou:
GET "http://
your-Neptune-cluster
:port
/sparql/gsp/?default&graph=urn:votes:2019"
Dans ce cas, Neptune renvoie un HTTP 400 avec un message indiquant qu'un seul graphe peut être spécifié dans la demande. URL