Wikibase/API/fr
Cette page fait partie de la documentation de l'API MediaWiki Action. |
Version de MediaWiki : | ≥ 1.9 |
Qu'est-ce que l'API Wikibase ?
Wikibase fournit un mécanisme général pour sauvegarder des déclarations en tant que données structurées. Les déclarations concernant les éléments se trouvent sur le serveur wikidata.org. Voir wikidata:Glossary pour plus d'explications sur Wikibase et d'autres concepts.
The Wikibase API allows querying, adding, removing and editing information on Wikidata or any other Wikibase instance.
Il est fourni via un ensemble d'extensions aux modules API MediaWiki.
Donc, pour utiliser l'API Wikibase, vous devez avoir les connaissances de base concernant l'API MediaWiki Action : actions, requêtes, etc., ainsi que les paramètres génériques tels que curtimestamp
et requestid
.
Comment utiliser l'API Wikibase
Send requests to the API through HTTP, the same as with the MediaWiki Action API. See API:Tutorial#How to use it for information about how to use the MediaWiki Action API.
Format de la requête
Le point d'accès de l'API est https://wikidata.org/w/api.php.
In the query string, add the action parameter, which tells the API which action to perform. For example, action=wbgetentities
tells the API to get the data for Wikibase entities. For meta and property submodules, use action=query&meta=yourmodule
and action=query&prop=modulename
respectively.
Certains paramètres sont presque toujours disponibles. Les formes plurielles sont utilisées dans les cas où un paramètre peut prendre plusieurs valeurs. Les paramètres sont :
id/ids
: Identifie une entité ou des entités spécifiques, le plus typique un élément . La forme plurielle est utilisée dans wbgetentities . Les listes d'identifiants doivent être séparées par le caractère $pipe.site ∩ title/sites ∩ titles
: identifie un seul élément ou plusieurs éléments. La forme plurielle est utilisée dans wb getentities . Un seul des sites et titres peut avoir plusieurs valeurs en même temps.language/languages
: La langue est utilisée comme mécanisme de filtrage pour filtrer les étiquettes et les descriptions dans les actions get ou pour identifier une langue spécifique pour les actions définies.format
: Le format doit toujours être de type "json" (ou "jsonfm" en mode débogage) ou de type "xml" (ou "xmlfm" en mode débogage), pas d'autres format sont admis.summary
: Un résumé spécifique peut être ajouté en plus de celui généré par le système.token
: Une chaîne chiffrée que le solliciteur doit fournir pour valider la demande de l'API.baserevid
: Un identifiant de la dernière révision doit être fourni pour que le serveur puisse détecter les conflits d'édition.
Une requête simple
Requête GET
Get the item for page "Berlin" on English Wikipedia.
Explanation of each part of the URL:
http://www.wikidata.org/w/api.php
est le point d'accès principal.action=wbgetentities
tells the API to get the data for Wikibase entities.sites=enwiki
means get the data from English Wikipedia.titles=Berlin
indicates the title of the page to get data from.props=descriptions
indicates properties to get from the entities, in this case the property is the descriptions of the entities.languages=en
means filter the results down to the English language.format=json
indicates JSON output, which is the recommended output format.
Réponse
{
"entities": {
"Q64": {
"type": "item",
"id": "Q64",
"descriptions": {
"en": {
"language": "en",
"value": "capital and largest city of Germany"
}
}
}
},
"success": 1
}
La réponse à la requête contient généralement :
- Une clé
success
avec une conversion booléenne sous forme d'entier si la demande aboutit. Si l'entier est zéro, toute valeur supplémentaire peut être erronée. - Une clé
error
avec un objet de deux, éventuellement trois clés,code
,info
et*
, si la demande échoue. - Informations sur l'action. Les informations sont soit transmises au niveau supérieur, soit sous « élément » s'il s'agit d'un seul élément ou « éléments » s'il en est plusieurs. S'il s'agit de plusieurs éléments, chacun se trouve sous une clé avec son propre identifiant d'élément.
Les objets vides sont retournés en tant que tableaux JSON et non en tant qu'objets, tandis que les paramètres vides « suppriment » l'entrée réelle de l'élément.
Documentation de l'API et modules de Wikibase
Sous-modules de Meta
- wikibase: Obtenir des informations sur le client Wikibase et le référentiel Wikibase associé.
- wbcontentlanguages: Retourne des informations sur les langues de contenu acceptées par Wikibase dans les différents contextes.
Sous-modules des propriétés
- pageterms: Obtenir les termes de Wikidata (typiquement, les libellés, les descriptions et les alias) associés à une page via un lien de site.
- wbentityusage: Renvoie tous les IDs d’entité utilisés dans les pages indiquées.
Modules de l'API
- wbgetentities: Obtiens les données de multiples entités de Wikibase.
- wbavailablebadges: Recherche les éléments de badge disponibles.
- wbcreateclaim: Crée les déclarations Wikibase.
- wbcreateredirect: Crée les redirections d’entité.
- wbeditentity: Crée une nouvelle entité Wikibase unique et la modifie avec l’information sérialisée.
- wbformatvalue: Met en forme DataValues.
- wbgetclaims: Obtenir les affirmations de Wikibase.
- wblinktitles: Associe deux pages sur deux wiki différents à un élément Wikibase.
- wbmergeitems: Fusionne plusieurs éléments
- wbparsevalue: Analyse les valeurs en utilisant un
ValueParser
. - wbremoveclaims: Supprime les déclarations de Wikibase.
- wbremovequalifiers: Supprime un qualificatif d’une déclaration.
- wbremovereferences: Supprime une ou plusieurs références du même énoncé.
- wbsearchentities: Recherche des entités en utilisant les libellés et les alias.
- wbsetaliases: Fixe l’alias d’une entité Wikibase.
- wbsetclaim: Crée ou met à jour une Mention ou une Déclaration complète.
- wbsetclaimvalue: Définit la valeur d'une demande Wikibase.
- wbsetdescription: Attribue une description pour une entité Wikibase unique.
- wbsetlabel: Définit un label pour une seule entité Wikibase.
- wbsetqualifier: Crée un qualificatif ou définit la valeur d'un qualificatif existant.
- wbsetreference: Crée une référence ou initialise la valeur d'une référence existante.
- wbsetsitelink: Associe une page sur un wiki à un élément Wikibase, ou supprime une telle association si elle existe déjà.
- wbsgetsuggestions: Module de l’API pour obtenir des suggestions de propriétés supplémentaires à ajouter à une entité de Wikibase. Le module de l’API est tout d’abord conçu pour une utilisation par le widget de suggestion quand les utilisateurs modifient les entités de Wikibase.
- wbcheckconstraints: Réalise des vérifications de contraintes sur toute entité que vous désirez et renvoie le résultat.
- wbcheckconstraintparameters: Vérifie les paramètres des déclarations de contrainte.
Erreurs possibles
Des erreurs possibles pour n'importe quel module peuvent être trouvées en utilisant action=paraminfo&modules=modulename
.
The error format corresponds to that of the MediaWiki Action API. See API:Errors and warnings#Legacy format.
Tous les messages d'erreur des modules Wikibase doivent être internationalisés (i18n) et localisés (l10n). La langue de l'utilisateur connecté sera la langue par défaut pour les messages d'erreur, mais vous pouvez la remplacer en ajoutant uselang=languageCode
à la chaîne de requête URL.
Error type | Code | Info |
---|---|---|
An internationalized error message that isn't localized. | no-such-item | <wikibase-api-no-such-item> |
A correctly localized error message. | no-such-item | There are no such item to be found |
A localized variant.(Norwegian) | no-such-item | Det finnes ingen slik item |
Notes supplémentaires
- De nombreux wikis Wikimedia exécutent Wikibase Client extension. Cela permet aux clients API sur eux d'interroger le sous-module de méta
wikibase
pour déterminer les URL pour le dépôt Wikibase complet, et le sous-module de propriétépageterms
pour obtenir des informations Wikidata sur les pages du wiki local.
- The calender models that can be used with Wikibase are the Gregorian calendar(d:Q1985727) and the Julian calendar(d:Q1985786).
- The API uses revision ids for edit collision detection. If there is an edit collision, the requester must acquire a newer revision id to be able to continue. This typically involves requesting
wbgetentities
for the item in question, and then storing (and using) the revision from the entry.
- Toute installation MediaWiki peut exécuter Wikibase. Sur le cluster Wikimedia, la plupart des wikis n'utilisent pas l'ensemble complet d'extensions Wikibase. Wikimedia Commons possède sa propre Wikibase pour les propriétés des fichiers sur Commons.
- Do not test the
info
value for a particular error, instead use thecode
value as this will remain independent of localization.
Voir aussi
- API:Page principale - Le guide de démarrage rapide pour l'API Action de MediaWiki.
- API:FAQ - Questions fréquentes à propos de l'API Action MediaWiki.
- API:Tutoriel - Un tutoriel sur comment utiliser l'API Action de MediaWiki.
- Download Wikidata database dumps in JSON (recommended), XML and RDF formats.