Wikidata:service d'aide SPARQL/assistant de requête

From Wikidata
Jump to navigation Jump to search
This page is a translated version of the page Wikidata:SPARQL query service/Query Helper and the translation is 100% complete.
Not to be confused with Wikidata:Query Builder.
WDQS – cliquez sur l'icône pour activer l'assistant de requête

.

L'assistant de requête (Query Helper) vous permet de créer ou de modifier une requête existante sans connaître le langage SPARQL.

En travaillant avec l'outil, il modifiera la requête SPARQL en fonction de l'entrée que vous fournirez dans l'interface visuelle et inversement.

S'il n'est pas déjà affiché à gauche de l'éditeur de requêtes (dernière utilisation), ouvrez l'assistant de requêtes en cliquant sur l'icône correspondante de la barre d'outils latérale.

Quelles sont les limites ?

Cet outil est expérimental et il peut casser votre requête SPARQL.

  • la sérialisation Json ne doit pas contenir de retour à la ligne.
  • les modèles peuvent être placés n'importe où : par exemple au début ou à la fin.
  • le contenu du modèle sera ajouté à l'URL dela requête. Ce qui peut engendrer des problèmes.

Comment créer une requête ?

Créer une requête de zoo où il y a des ours polaires et des lions

Cette section va montrer comment vous pouvez créer une requête en partant de rien avec l'assistant de requête.

Dans cet exemple, nous allons interroger toutes les instances de zoo qui hébergent un ours polaire et un lion.

Vous pouvez utiliser les identifiants Pxxx ou Qxxx directement dans les champs d'entrée de l'interface pour accéder correctement aux éléments.

Ajouter les filtres 'instance de zoo', 'espèces conservées ours polaire' et 'espèces conservées lion'

  1. cliquer sur 'Filtrer'
  2. cliquer sur la liste déroulante et entrer 'zoo'
  3. choisir l'élément 'zoo (Q43501)' dans cette liste
  4. cliquer sur 'Filtrer' et sélectionner 'polar bear (Q33609)'
  5. cliquer sur 'Filtrer' et sélectionner 'lion (Q140)'

Ajouter les colonnes 'site officiel', 'image', 'coordonnées géographiques', 'création' et 'espèces conservées'

  1. Cliquer sur 'Afficher' et sélectionner 'official website (P856)'
  2. Cliquer sur 'Afficher' et sélectionner 'image (P18)'
  3. Cliquer sur 'Afficher' et sélectionner 'coordinate location (P625)'
  4. Cliquer sur 'Afficher' et sélectionner 'inception (P571)'
  5. Cliquer sur 'Afficher' et sélectionner 'species kept (P1990)'

Comment modifier une requête ?

Assistant de requête - Modification 'Exemple des chats'

Cette section vous indiquera comment modifier une requête avec l'assistant de requête

Changer 'cat' en 'zoo'

  1. Sélectioner parmi les exemples la Requête concernant les chats
  2. Cliquer sur 'cat' pour modifier la valeur
  3. Cliquer sur la liste déroulante et entrer 'zoo'
  4. Sélectioner l'élément 'zoo (Q43501)' dans la boîte.

La requête va maintenant chercher les éléments qui sont des 'instances de zoo' au lieu d'être des 'instance de chat'

Ajouter un filtre sur 'pays Allemagne'

  1. Cliquer sur le bouton 'Filtrer'
  2. Entrer 'Germany'
  3. Selectionner 'Germany (Q183)'
  4. Cliquer sur 'instance of' de 'instance of Germany' pour modifier la valeur
  5. Cliquer sur la liste déroulane et choisir 'Country'
  6. Sélectionner le pays (P17)

La requête ne ramènera dorénavant que les éléments qui sont des zoo allemands ('instance of zoo' et 'country Germany')

Ajouter les colonnes 'inception' et 'image'

  1. Cliquer sur le bouton 'Show' pour afficher
  2. Entrer 'inception'
  3. Selectionner l'élément 'inception (P571)'
  4. Cliquer sur le bouton 'Show'
  5. Entrer 'image'
  6. Selectionner 'image (P18)'

Le résultat de la requête présente maintenant deux colonnes supplémentaires 'image' et 'inception' et peut être affiché en tant que chronologie ou grille d'images.

Ajouter un titre

Dans l'affichage du code (côté droit), ajoutez #title: Votre titre au début de la requête avec le titre que vous souhaitez.

Modèles de requête

Utiliser un modèle de requête

Query Helper - Modèle de requête Les plus grandes villes dont le maire est une femme

Les requêtes pour lesquelles un modèle Query a été défini vont afficher dans le Query Helper la représentation textuelle de leur définition.Query Helper vous permet de créer et de modifier des requêtes existantes sans connaître SPARQL.

Si vous utilisez l'outil, il adaptera le code de la requête SPARQL en fonction des valeurs fournies dans l'interface visuelle et réciproquement.

Elle est affichée dans la partie gauche de l'éditeur de requêtes.

Les éléments bleus de cette représentation textuelle peuvent être modifiés en cliquant dessus.

Des suggestions définies s'affichent ou un texte peut être saisi pour rechercher un substitut.

La sélection de l'un des éléments de la liste remplacera l'élément dans la représentation textuelle et la requête SPARQL.

Vous pourrez voir dans la liste d'exemples les requêtes qui ont un modèle Query défini, en recherchant la chaîne #TEMPLATE sur la page.

Créer un modèle de requête

Vous pouvez créer des modèles de Query; il suffit de les définir. Voici un exemple de requête avec la définition du modèle.

La définition est donnée en JSON et insérée en tant que commentaire SPARQL dans la requête, de la manière suivante :

#TEMPLATE=[JSON_DEFINITION]

Exemple de définition JSON :

{
  "template": "Largest ?c with ?sex head of government",
  "variables": {
    "?sex": {},
    "?c": {
      "query": "SELECT DISTINCT ?id WHERE {  ?c wdt:P31 ?id.  ?c p:P6 ?mayor. }"
    }
  }
}
Clé Valeur Exemple Description Requête SPARQL
modèle Ce texte sera affiché à l'utilisateur en tant que description de la requête.

Dans le texte, vous pouvez définir des variables qui seront remplacées par des valeurs réelles.

Le chef de gouvernement le plus grand ?c avec son ?sexe Ce qui définira deux variables dans le texte :

?c et ?sex

Les valeurs de ces variables doivent être définies

dans la requête SPARQL.

BIND(wd:Q6581072 AS ?sex)

BIND(wd:Q515 AS ?c)
variables Dans cette section, vous devez définir les variables du modèle. Vous pouvez définir optionnellement une requête SPARQL qui est utilisée pour suggérer des valeurs pour cette variable.
"?sex": {},
"?c": {
  "query": "[SPARQL]"
}
Cela va définir deux variables :

?c et ?sex

Pour la variable ?c, il existe une requête SPARQL qui suggère les éléments.

SELECT DISTINCT ?id WHERE
{ ?c wdt:P31 ?id.?c p:P6 ?mayor. }
La requête SPARQL du modèle de requête sera intégrée à cette requête pour afficher le résultat avec l'étiquette et la description. Si ?count est fourni, le résultat sera trié par desc(?count) :
SELECT ?id ?label ?description WITH {				 

[QUERY]		

} AS %inner			
WHERE {	
INCLUDE %inner				
?id rdfs:label ?label.				
?id schema:description ?description.				
FILTER((LANG(?label)) = "en")				
FILTER((LANG(?description)) = "en")			} 
ORDER BY DESC(?count)			
LIMIT 20