Outils pour utilisateurs

Outils du site


besson_sylvain:documentation_sparql

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
besson_sylvain:documentation_sparql [2021/05/11 18:07]
Sylvain Besson [GraphDB]
besson_sylvain:documentation_sparql [2021/07/19 19:15]
Sylvain Besson [Outils]
Ligne 87: Ligne 87:
         ​         ​
         FILTER regex(?​abstract,​ "​lawyer"​) # la clause regex permet d'​aller chercher dans les résumés ceux qui ont comme motif "​lawyer" ​         FILTER regex(?​abstract,​ "​lawyer"​) # la clause regex permet d'​aller chercher dans les résumés ceux qui ont comme motif "​lawyer" ​
-        FILTER (xsd:date (?​Birth_Date) > "1800-01-01"​^^xsd:​date) # permet de ne garder que ceux qui sont nés après ​1800.+        FILTER (xsd:date (?​Birth_Date) > "1770-01-01"​^^xsd:​date) # permet de ne garder que ceux qui sont nés après ​1770.
         }         }
 ORDER BY (?year) #Cela ordonne les données par année de façon croissante ORDER BY (?year) #Cela ordonne les données par année de façon croissante
Ligne 93: Ligne 93:
 </​code>​ </​code>​
  
-Ici, le but est d'​afficher les juristes qui sont nés après ​1800 avec leur nom.+Ici, le but est d'​afficher les juristes qui sont nés après ​1770 avec leur nom.
 Il est possible de l’exécuter sur un [[https://​dbpedia.org/​sparql|point d'​accès SPARQL]]. Il est possible de l’exécuter sur un [[https://​dbpedia.org/​sparql|point d'​accès SPARQL]].
  
Ligne 104: Ligne 104:
 Bien qu'il n'est pas possible d'​associer différents jeux de données (provenant de sites différents) sur un même point SPARQL (pour des raisons de sécurité),​ il est possible de les fédérer via un système tiers ([[https://​www.w3.org/​TR/​sparql11-federated-query/​|documentation W3C]]) sur le sujet. Nous avons fait le choix d'​utiliser la version gratuite de GraphDB ([[https://​graphdb.ontotext.com/​documentation/​free/​|documentation]] et [[https://​www.ontotext.com/​products/​graphdb/​graphdb-free/​|lien de téléchargement]]),​ qui a une interface graphique permettant d'​avoir un serveur local. GraphDB permet notamment de faire des requêtes SPARQL fédérées. Pour les réaliser, il faut indiquer dans la requête les points d'​accès que l'on veut utiliser en se servant de la clause SERVICE (voir le lien sur les requêtes fédérées pour l'​utiliser correctement). ​ Bien qu'il n'est pas possible d'​associer différents jeux de données (provenant de sites différents) sur un même point SPARQL (pour des raisons de sécurité),​ il est possible de les fédérer via un système tiers ([[https://​www.w3.org/​TR/​sparql11-federated-query/​|documentation W3C]]) sur le sujet. Nous avons fait le choix d'​utiliser la version gratuite de GraphDB ([[https://​graphdb.ontotext.com/​documentation/​free/​|documentation]] et [[https://​www.ontotext.com/​products/​graphdb/​graphdb-free/​|lien de téléchargement]]),​ qui a une interface graphique permettant d'​avoir un serveur local. GraphDB permet notamment de faire des requêtes SPARQL fédérées. Pour les réaliser, il faut indiquer dans la requête les points d'​accès que l'on veut utiliser en se servant de la clause SERVICE (voir le lien sur les requêtes fédérées pour l'​utiliser correctement). ​
  
-GraphDB est aussi très utile pour mettre les individus sur un serveur local, afin de fusionner les données présentes sur plusieurs bases de données ainsi que de ne plus à aller chercher sur les différentes bases de données. Nous montrons comment nous faisons pour le réaliser à cette **[[projets_individuels:​etapes_fusion|page]]**. Il est possible par la suite d'​aligner les données avec un vocabulaire propre au serveur local.+GraphDB est aussi très utile pour mettre les individus sur un serveur local, afin de fusionner les données présentes sur plusieurs bases de données ainsi que de ne plus à aller chercher sur les différentes bases de données. Nous montrons comment nous faisons pour le réaliser à cette **[[etapes_fusion|page]]**. Il est possible par la suite d'​aligner les données avec un vocabulaire propre au serveur local.
  
 Il est aussi possible de faire les requêtes directement dans un carnet python. Pour cela, il faut utiliser l'API de GraphDB ([[https://​graphdb.ontotext.com/​documentation/​enterprise/​devhub/​workbench-rest-api/​index.html|documentation]]),​ plus précisément dans le serveur local, cela se situe dans REST API -lui-même dans //help//- puis il faut choisir SPARQL puis //expend operations//​- soit en choissant //GET// pour interroger les données ou bien //POST// pour les modifier. Il suffit ensuite de reporter le chemin -localhost:​7200/​webapi/​repositories/​{repositoryID} par exemple- dans le //wrapper// sur [[python:​accueil|python]]). ​ Il est aussi possible de faire les requêtes directement dans un carnet python. Pour cela, il faut utiliser l'API de GraphDB ([[https://​graphdb.ontotext.com/​documentation/​enterprise/​devhub/​workbench-rest-api/​index.html|documentation]]),​ plus précisément dans le serveur local, cela se situe dans REST API -lui-même dans //help//- puis il faut choisir SPARQL puis //expend operations//​- soit en choissant //GET// pour interroger les données ou bien //POST// pour les modifier. Il suffit ensuite de reporter le chemin -localhost:​7200/​webapi/​repositories/​{repositoryID} par exemple- dans le //wrapper// sur [[python:​accueil|python]]). ​
Ligne 115: Ligne 115:
  
 :!: Ils vérifient uniquement si la requête est bien formulée, mais cela ne permet pas de juger de la pertinence de la requête ou de sa réussite. :!: Ils vérifient uniquement si la requête est bien formulée, mais cela ne permet pas de juger de la pertinence de la requête ou de sa réussite.
 +
 +====Point d'​accès SPARQL public====
 +Un [[https://​hub-fne.idref.fr/​sparql|point d'​accès SPARQL Virtuoso]] a été crée et il est hébergé par l'ABES (Agence Bibliographique de l'​Enseignement Supérieur). Il est possible d'​effectuer des requêtes pour interroger les données. Les requêtes se font de la même façon que dans d'​autres point SPARQL, néanmoins, il est obligatoire de préciser dans quel graphe la requête est faite, sinon cela ne fonctionne pas. Pour cela il suffit d'​ajouter la clause GRAPH et de mettre entre chevrons le graphe: <​http://​dataforhumanities.org/​graph/​economists_jurists> ​
besson_sylvain/documentation_sparql.txt · Dernière modification: 2021/08/03 18:11 par Sylvain Besson