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 67% complete.
Outdated translations are marked like this.
Query.Wikidata.org

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 affiché à gauche de l'éditeur de requêtes (dernière utilisation), ouvrez l'assistant de requêtes en cliquant sur l'élément correspondant 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 depuis 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.

You can use identifiers Pxxx or Qxxx directly in the interface input fields to access the items correctly.

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. Select the 'Cats Query' from the examples
  2. Click on 'cat' to modify the value
  3. Click on the combo box and enter 'zoo'
  4. Select the 'zoo (Q43501)' item from the combo box

The query will now find items that have 'instance of zoo' instead of 'instance of cat'

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. Click on 'Show' button
  2. Enter 'inception'
  3. Select 'inception (P571)' item
  4. Click on 'Show' button
  5. Enter 'image'
  6. Select 'image (P18)'

The query result now has two additional columns 'image' and 'inception' and can be displayed as a Timeline or Image Grid.

Ajouter un titre

In the code view, in the right-hand pane, add #title: Your title at the beginning of the query; changing "Your title" to whatever you would like the title to be.

Modèles de requête

Utiliser un modèle de requête

Query Helper - Query Template Largest cities with female head of government

Queries that have a Query Template defined will show the defined textual representation of this query inside of the Query Helper.Query Helper allows you to create or modify an existing query without knowing SPARQL.

When working with the tool it will modify the SPARQL query, based on the input you provide in the visual interface, and vice versa.

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.

You can find all the queries in the Query Examples List that have a defined Query Template by searching for '#TEMPLATE' in the page text.

Créer un modèle de requête

Query templates can be created by providing a template definition. Here is an example query with a template definition.

The definition is expressed in JSON and inserted as SPARQL comment to the query like this:

#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.

Largest ?c with ?sex head of government

This will define two variables within the text: ?c and ?sex

The values for this variables must be defined

dans la requête SPARQL.

BIND(wd:Q6581072 AS ?sex)

BIND(wd:Q515 AS ?c)
variables

In this section you have to define the variables from the template. You can optionally define a SPARQL query that is used for suggesting values for that variable.

"?sex": {},
"?c": {
  "query": "[SPARQL]"
}
Cela va définir deux variables :

?c et ?sex

For the variable ?c there is a SPARQL query defined that will suggest Items.

SELECT DISTINCT ?id WHERE
{ ?c wdt:P31 ?id.?c p:P6 ?mayor. }
The SPARQL query from the Query Template will be embedded into this query to display the result with label, description. If ?count is provided then it will be sorted by 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