Module:Wikidata/Documentation
Module permettant d'utiliser de récupérer et de mettre en forme des données issues de Wikidata. Ce module ne gère que les fonctions de relativement "bas-niveau", et ne peut être appelé que depuis un autre module. Pour les fonctions de plus "haut-niveau", ou pour utiliser le module depuis du Wikitexte, passez par Module:Interface Wikidata
Dans la mesure du possible, ce module devrait être neutre sur le plan linguistique. Pour les textes spécifiquement français, voir Module:Wikidata/I18n.
Pour les divers arguments à utiliser pour les fonctions comme formatStatements
, voir Projet:Wikidata/Atelier/Manuel
Fonctions exportables
Nom | Arguments | Descriptions |
---|---|---|
isSpecial | snak |
retourne true si un snak est une valeur spéciale (novalue ou somevalue)
|
getId | snak |
retourne l'identifiant Qdd de l'élément utilisé comme valeur d'un snak |
getNumericId | snak |
retourne l'identifiant numérique de l'élément utilisé comme valeur d'un snak |
getMainId | claim |
retourne l'identifiant Qdd de l'élément utilisé comme valeur du "mainsnak" d'une déclaration |
getEntity | str |
retourne la table de données correpondant à un identifiant (inverse de getEntityId) |
getEntityId | str |
retourne l'identifiant d'une entité Wikidata passée sous la forme d'une table de données (inverse de getEntity) |
getValue | snak |
retourne la valeur d'un snak |
isHere | searchset, val |
retourne true si la chaîne val se trouve dans la table searchset
|
addnewvalues | old, new |
ajoute les de nouvelles valeurs à une table, seulement si elles ne s'y trouvent pas déjà |
siteLink | entity, lang, project |
retourne un lien vers la page projet demandé ('wikipedia', 'wikivoyage', 'commons') etc. lié à l'entité Wikidata indiquée, dans la langue demandée (si le projet n'est pas indiqué, on considère qu'il s'agit de Wikipédia) |
isHere | searchset, val |
retourne true si la chaîne val se trouve dans la table searchset
|
hasqualifiers | claim, acceptedqualifs, acceptedvals, excludequalifiervalues |
retourne true si l'affirmation comporte des qualificatifs utilisant les propriétés acceptedqualifs avec les valeurs acceptedvals, et sans les valeurs excludequalifiervalues. Si acceptedqualifs n'est pas renseignée, toutes les propriétés sont acceptées. Si acceptedvals n'est pas renseigné, toutes les valeurs sont acceptées.
|
sortclaims | claims |
Met en ordre une série de valeurs. L'ordre choisit peut être 'chronological' ou 'inverted' (chronologique inversé). Dans ce cas là, ce les dates utilisées sont celles données comme valeur du mainsnak ou dans les qualificatifs. L'ordre peut aussi être une fonction (voir l'aide Lua pour le classement des tables). Cette fonction est appelée par l'argument sorttype de wd.formatGetClaims et donc aussi de wd.formatStatements
|
filterClaims | claims, args |
Prend une table d'affirmations, et exclut celles qui ne correspondent pas aux critères donnés dans la table args . Pour la liste de ces arguments, voir l'aide ci dessous
|
getClaims | args |
Récupère les valeurs indiquées dans l'entité indiquée par la clé entity |
getLabel | entity, lang, labelformat |
|
formatEntity | entity, params |
Prend l'identifiant (ou la table de données) donnée en paramètre entité et la transforme, et la retourne sur la forme d'un texte contenant un libellé et éventuellement un lien interne. |
addtrackingcat | property, cat |
catégorise dans [[Catégorie:Page utilisant $property]] |
getDate | statement |
|
getFormattedDate | statement, params, useallqualifiers |
|
sortDateClaims |
|
|
wikidataDate |
|
|
getReferences | statement |
|
getDatavalue |
|
|
stringTable |
|
Retourne les mêmes affirmations que getClaims, sauf éventuellement celles supprimées par le paramètre removedupes. Chacune est rendue sous forme d'une chaîne en Wikitexte directement utilisable. Les paramètres de mise en forme sont également contenus dans la table args. |
getQualifiers |
|
|
getQualifiers |
|
|
getFormattedQualifiers |
|
|
showQualifiers |
|
|
sourceStr |
|
|
formatStatement |
|
Transforme une déclaration individuelle en chaîne wikitexte, selon les mêmes paramètres que stringTable. |
formatSnak |
|
Même logique que formatStatement, mais concerne seulement un snak. |
addLinkback |
|
|
addRefAnchor |
|
|
formatStatements |
|
Retourne les mêmes valeurs que stringTable, mais concaténées sous forme de chaîne unique. La méthode de concaténation est définie par le paramètre conjtype qui utilise Module:Linguistique. Si les paramètres linkback et addcat sont activés, un rétrolien et une catégorie de maintenance peuvent également être ajoutés.
|
getDescription |
|
|
keydate | ||
maindate | ||
isSubclass | ||
isinstance | ||
showQualifier | statement, args |
Même logique que formatStatement , mais affiche un qualificatif au lieu d'une déclaration entière.
|
formatAndCat |
|
|
getTheDate |
|
|
Dump |
|
|
groupedStatements |
|
|
fun | (frame) | appelle une des fonctions précédentes depuis le frame. Le nom de la fonction est donné en argument 1 |
Arguments
Liste des clés pouvant être utilisé dans la table "args" mentionnée ci dessous.
Choix des déclarations
Paramètres utilisés par la fonction filterclaims
et donc indirectement par les fonctions y faisant appel, tels que getClaims
et formatStatements
.
Nom | Mode d'utilisation | Description |
---|---|---|
claims | Lua | Liste de déclarations à utiliser. Lorsque ce paramètre est activé, les paramètres property et entity ne sont pas utilisés pour la récupération des données.
|
entity | Lua et wikicode | L'identifiant de l'entité Wikidata à utiliser. Par défaut, celle liée à la page. En Lua, on peut passer une entité déjà chargée plutôt que son identifiant. |
property | Lua et wikicode | Le nom de la propriété à utiliser, sous la forme property = PXX . En Lua, on peut utiliser plusieurs propriétés sous forme de tables
|
excludespecial | Lua et wikicode | Retire les déclarations dont la valeur principale (mainsnak) n'est pas de type "valeur", c'est-à-dire les déclarations "valeur inconnue" ou "aucune valeur".
En wikicode : activée par la |
targetvalue | Lua et wikicode | Ne retient que la ou les déclarations dont la valeur du snak principal correspond à la (ou une des) valeurs indiquées |
excludevalues | Lua et wikicode | Exclut les déclarations dont la valeur du snak principal correspond à la (ou une des) valeurs indiquées |
qualifier | Lua et wikicode | Seules les déclarations contenant ce qualificatif son retournées. Pour activer l'affichage du qualificatif, voir showqualifiers
|
qualifiervalue | Lua et wikicode | Le qualificatif utilisé par l'argument qualifier doit avoir cette valeur (ou une de ces valeurs, s'il s'agit d'une table ou d'une liste de propriétés séparées par des virgules
|
excludequalifier | Lua et wikicode | Les déclarations contenant ce qualificatif sont exclues |
excludequalifiervalue | Lua et wikicode | Si ce paramètre est renseigné, excludequalifier n'est activé que lorsque la valeur du qualificatif se trouve dans celles qu'il indique.
|
withsource | Lua et wikicode | Ne retourne que les valeurs contenant une source, utilisant la source indiquée dans la propriété P248 (« affirmé dans »), ou une autre propriété définie par le paramètre sourceproperty . Pour accepter n'importe quelle source du moment qu'elle utilise la propriété demandée, mettre la valeur any . Pour désactiver ce paramètre, mettre la valeur - .
|
sourceproperty | Lua et wikicode | Propriété à utiliser pour le paramètre withsource
|
rank | Lua et wikicocde | Rangs acceptés :
Valeur par défaut : |
numval | Lua et wikicode | Nombre maximal de valeurs à retourner (les n premières valeurs de la liste établie par les autres paramètres) |
withlink | Lua et wikicode | Ne retourne que les valeurs contenant un lien vers le site spécifié. Si la valeur du paramètre est simplement true , le site utilisé sera Wikipédia en français.
|
withdate | Lua et wikicode | Ne retourne que les valeurs possédant un qualificatif de date : P585 (« date »), P580 (« date de début »), P582 (« date de fin ») |
atdate | Lua et wikicode | Exclut les valeurs dont les qualificatifs P580 (« date de début ») ou P582 (« date de fin ») indiquent qu'elle n'était pas valable à la période indiquée. atdate peut-être une date au format wikibase ou au format ISO. Les valeurs sans date ne sont pas exclues (elle peuvent l'être en ayant recours à la fonction withdate ). Pour demander la valeur à la date d'aujourd'hui utiliser : |atdate = today .
|
condition | Lua | Pour définir une fonction libre. Si la fonction retourne true , la déclaration sera gardée
|
sorttype | Lua et wikicode | Manière de classer les déclarations. Valeurs possibles :
|
Activation / désactivation de Wikidata
Nom | Mode d'utilisation | Description |
---|---|---|
value | Lua et wikicode | Lorsque le paramètre value est non vide, le module ne cherche pas les données de Wikidata, mais utilise celles fournies localement par ce paramètre. Les fonction formatAndCat en revanche lui applique linkback et addcat )
|
expl | Lua et wikicode | Lorsque le paramètre expl est présent, la fonction formatStatements ne fait rien si le paramètre value n'a pas la valeur résultat de {{WD}} (utile pour des données mises à jour mais dont l'utilité dans chaque article est difficile à décider automatiquement). |
Mise en forme des données
Nom | Niveau d'application | Mode d'utilisation | Description |
---|---|---|---|
conjtype | liste des déclarations | Lua et wikicode | La manière de coordonner les déclarations, en utilisant la fonction conj de Module:Linguistique. Valeurs possibles :
Toute autre valeur donnée au paramètre sera insérée entre chaque valeur ( |
linkback | liste des déclarations | Lua et wikicode | Ajoute un rétrolien vers Wikidata sous forme d'un crayon « ![]() |
addcat | liste des déclarations | Lua et wikicode | Met la page dans une catégorie de suivi (voir Catégorie:Page utilisant des données de Wikidata). Le nom de la catégorie correspond à la valeur du paramètre. Si cette valeur est simplement true , la catégorie est fonction du paramètre property.
Attention, ce paramètre peut être source de bugs. Par exemple, si la propriété est utilisée dans une url ou un lien. |
removedupes | choix des déclarations (à la fin, dans une fonction différente) |
Lua et wikicode | Lorsque, après toutes les mises en forme, deux déclarations sont rendues de la même manière, une seule est conservée. |
lang | choix et mise en forme des données | Lua et Wikicode | Langue dans lequel le texte doit être retourné. Lorsqu'une propriété de type "monolingualtext" stockée en qualificatif doit être affichée (par exemple P2096 (« légende de média ») pour les images), seules celles dans la langue concernée seront affichées. |
snak (entité) | Lua et wikicode | Code Wikimédia de la langue utilisée pour afficher les libellés (par défaut : français) | |
ucfirst | liste des déclarations | Lua et Wikicode | ucfirst=- permet de désactiver cela |
statementformat | déclaration | Lua | doit être une fonction fonction(statement) return XX retournant une chaîne. Elle sera appliquée à sur chaque déclaration (permet de simplifier certaines infobox Lua)
|
showdate | déclaration | Lua et wikicode | Pour afficher la date entre parenthèses en petit pour chaque déclaration en utilisant les mêmes qualificatifs que (withdate). Lorsqu'aucune date n'est trouvée, la valeur est affichée sans aucune date. |
displayformat | snak | Lua et wikicode | Pour changer le format par défaut entre chaque valeur.
En lua, la valeur du paramètre peut aussi être une fonction. |
qualifdisplayformat | snak | Lua et wikicode | Format d'affichage des qualificatifs. Même fonctionnement que le paramètre displayformat . Lorsque ce paramètre est laissé vide, les qualificatifs utilisent le paramètre displayformat comme la valeur principale.
|
showsource | déclaration | Lua et wikicode | Identifiant d'une source que l'on souhaiterait voir affichée en référence si elle est présente. true affichera toutes les sources utilisant la propriété P248 (« affirmé dans »).
|
linktopic | snak (temporel) | Lua et wikicode | Type de lien à ajouter aux dates (voir Module:Date). Pour ne mettre aucun lien : linktopic = -
|
precision | snak (temporel) | Lua et wikicode | Précision avec laquelle les dates doivent être affichées. Valeurs possibles :
Valeur par défaut : |
textformat | snak (temporel) | Lua et wikicode | Format d'affichage des intervalles de temps, tels que définis par Module:Date complexe
|
speciallabels | snak (entité) | Lua | Tables de valeurs spéciales à utiliser à la place du libellé Wikidata pour la valeur de certains éléments, par exemple Module:Dictionnaire Wikidata/Métiers.female |
labelformat | snak (entité) | Lua | Fonction de mise en forme des libellés |
showlang | déclaration | Lua et wikicode | Lorsque la valeur principale est de type "texte monolingue", son code langue est affiché (utilisé par Module:Site officiel) |
showqualifiers | déclaration | Lua et wikicode | Qualificatif à retourner entre parenthèses derrière la valeur de la propriété principale demandée. En wikicode sous le format |showqualifiers = P460 , en Lua sous le format showqualifiers = "P460" ou showqualifiers = {"P460", "P461"}
|
showonlyqualifier | déclaration | Lua et wikicode | Qualificatif de même, mais à retourner seul sans la valeur de la propriété principale demandée |
link | snak (entité) | Lua et wikicode | Site vers lequel doivent lier les données de type élément. Par défaut : Wikidata en français. Si égal à "-", aucun lien ne sera créé. |
defaultlink | snak (entité) | Lua et wikicode | Lorsque le site demandé par le paramètre link ne retourne pas de lien, affiche un lien entre parenthèses vers le site demandé. Par défaut : Wikipédia en anglais ou, si absent, Wikidata. La valeur "-" désactive le paramètre. |
defaultlinkquery | snak (entité) | Lua | defaultlinkquery = {property = 'P279'} le lien créé correspondra à celui fourni par l'élément utilisé dans la propriété P279 (« sous-classe de »). |
targetunit | snak (quantité) | Lua et Wikicode | Unité dans laquelle doivent être converties les données de type quantité. Les valeurs possibles sont visibles dans Module:Conversion/Données, par exemple km ou km2. |
showunit | snak (quantité) | Lua et Wikicode |
Manière d'afficher l'unité demandée. Valeurs possibles :
défaut : 'short' |
rounding | snak (quantité) nombre de chiffres | Lua et Wikicode | Nombre de chiffres significatifs à afficher dans les données de type quantité, après conversion éventuelle (défaut : dépend de la précision indiquée sur Wikidata) |
urlpattern | snak (string) | Lua et wikicode | La valeur du paramètre est un chaîne représentant une URL, l'expression "$1" sera remplacée par la valeur Wikidata Avec la propriété P214 (« identifiant VIAF ») et la valeur de paramètre http://viaf.org/viaf/$1, la valeur de l'identifiant VIAF stockée sur Wikidata sera utilisée pour créer un lien externe.. |
text | snak (string) | Lua et wikicode | Texte à afficher lorsque la valeur crée un lien externe, c'est-à-dire pour les données de type chaîne avec displayformat = "weblink" ou avec le paramètre urlpattern renseigné. Par défaut : la valeur initiale de la déclaration. Utilisé sur Module:Site officiel Module:Bases archi.
|
novaluelabel | snak (novalue) | Lua et wikicode | Libellé à retourner lorsque la valeur est de type "novalue". Par défaut : "-". En Lua, la valeur peut-être une fonction. |
Exemples
Définition des liens
Code | Rendu | Remarques |
---|---|---|
{{#invoke:Wikidata|fun|formatStatements|entity = Q79 | property = P36}} | Erreur de script : la fonction « fun » n’existe pas. | Capitale de l'Égypte, format standard |
{{#invoke:Wikidata|fun|formatStatements|entity = Q79 | property = P36|link=-}} | Erreur de script : la fonction « fun » n’existe pas. | Capitale de l'Égypte, sans lien |
{{#invoke:Wikidata|fun|formatStatements|entity = Q79 | property = P36|link=wikidata}} | Erreur de script : la fonction « fun » n’existe pas. | Capitale de l'Égypte, avec lien vers Wikidata |
{{#invoke:Wikidata|fun|formatStatements|entity = Q937 | property = P569}} | Erreur de script : la fonction « fun » n’existe pas. | Date de naissance d'Albert Einstein, en utilisant le format standard de Wikipédia en français |
{{#invoke:Wikidata|fun|formatStatements|entity = Q937 | property = P569|linktopic = football }} | Erreur de script : la fonction « fun » n’existe pas. | Date de naissance d'Einstein, avec liens spécialisés dans le football |
{{#invoke:Wikidata|fun|formatStatements|entity = Q937 | property = P569|linktopic = -}} | Erreur de script : la fonction « fun » n’existe pas. | Date de naissance d'Einstein, sans lien |
Rang
Il existe trois types de rang sur Wikidata : "normal", "preferred" et "deprecated". Le rang deprecated est réservé aux données que l'on sait fausse mais que l'on garde pour mémoire, par exemple pour documenter une croyance ancienne qui a été infirmée par des études plus récentes.
Par défaut, seul le rang "preferred" est récupéré, mais le paramètre "rank" permet de changer cela.
Code | Rendu | Remarques |
---|---|---|
{{#invoke:Wikidata|fun|formatStatements|entity =Q12418 | property = P186}} | Erreur de script : la fonction « fun » n’existe pas. | Matériau de la Joconde, affichage par défaut (donc seulement celles avec le rang "preferred" s'il y en a) |
{{#invoke:Wikidata|fun|formatStatements|entity =Q12418 | property = P186|rank=valid}} | Erreur de script : la fonction « fun » n’existe pas. | rank = "valid" accepte les valeur de rang "normal" et "preferred" (par exemple, le matériau d'un chassis qui a été ajouté ultérieurement à la Joconde) |
{{#invoke:Wikidata|fun|formatStatements|entity =Q12418 | property = P186|rank=normal}} | Erreur de script : la fonction « fun » n’existe pas. | rank = "normal" ne récupère que les données avec un rang "normal", et ignore celles avec un rang "preferred" |
Qualificatifs
Les qualificatifs sont des données supplémentaires intégrées à une affirmation Wikidata qu'elle permet de préciser.
Code | Rendu | Remarques |
---|---|---|
{{#invoke:Wikidata|fun|formatStatements|entity =Q12418 | property = P186|showqualifiers = P518}} | Erreur de script : la fonction « fun » n’existe pas. | ne retient que les valeurs ayant un qualificatif P518 (« s'applique à ») |
{{#invoke:Wikidata|fun|formatStatements|entity =Q12418 | property = P186|showqualifiers = P518|qualifiervalue=Q1737943}} | Erreur de script : la fonction « fun » n’existe pas. | qualifiervalue définit la valeur que possède le qualificatif. Ici, Q1737943 (« châssis ») précise que l'on demande la matériau du chassis. Notez qu'aucune valeur de rang "preferred" n'étant trouvé, un valeur de rang "normal" est retournée. |
{{#invoke:Wikidata|fun|formatStatements|entity =Q12418 | property = P186|showqualifiers = P518|rank=valid}} | Erreur de script : la fonction « fun » n’existe pas. | showqualifiers affiche la valeur des qualificatifs demandé entre parenthèse, après la valeur principale |
{{#invoke:Wikidata|fun|formatStatements|entity =Q12418 | property = P186|showdate = true|rank=valid}} | Erreur de script : la fonction « fun » n’existe pas. | si des qualificatifs indiquant la date sont fournis, ils sont affichées |
Affichage des sources
{{#invoke:Wikidata|fun|formatStatements|entity =Q12418 | property = P276|sourceproperty = P854}} | Erreur de script : la fonction « fun » n’existe pas. | |
{{#invoke:Wikidata|fun|formatStatements|entity =Q11879536 | property = P460|withsource=Q1645493}} | Erreur de script : la fonction « fun » n’existe pas. | |
{{#invoke:Wikidata|fun|formatStatements|entity =Q11879536 | property = P460|withsource=Q1645493|showsource=true}} | Erreur de script : la fonction « fun » n’existe pas. | Montre seulement les valeurs données par la source |
{{#invoke:Wikidata|fun|formatStatements|entity =Q153 | property = P231|showsource=true}} | Erreur de script : la fonction « fun » n’existe pas. |
Autres options
Code | Rendu | Remarques |
---|---|---|
{{#invoke:Wikidata|fun|formatStatements|entity = Q937 | property = P106|conjtype = new line|showdate= true}} | Erreur de script : la fonction « fun » n’existe pas. | conjtype permet de définir le séparateur entre les valeurs (voir Module:Linguistique). Ici "new line" indique qu'il faut revenir à la ligne après chaque valeur. |
{{#invoke:Wikidata|fun|formatStatements|entity =Q205309 | property = P793|showdate=true|sorttype=chronological|conjtype =new line}} | Erreur de script : la fonction « fun » n’existe pas. | sorttype = chronological tente de classer les valeurs par ordre chronologique (en se basant sur les qualificatifs). Ici : les événements principaux (d:P:P793) dans l'histoire de l'ancien Stade d'Arsenal. |
{{#invoke:Wikidata|fun|formatStatements|entity =Q205309 | property = P793|showdate=true|sorttype=inverted|conjtype = new line}} | Erreur de script : la fonction « fun » n’existe pas. | sorttype = inverted pour inverser l'ordre chronologique |
{{#invoke:Wikidata|fun|formatStatements|entity =Q12418 | property = P186|displayformat=raw}} | Erreur de script : la fonction « fun » n’existe pas. | affiche les identifiants des valeurs (essentiellement utile pour la programmation) |
{{#invoke:Wikidata|fun|formatStatements|entity =Q12418 | property = P186|numval=1}} | Erreur de script : la fonction « fun » n’existe pas. | retourne les numval première valeurs répondant au reste de la requête (utile notamment pour récupérer une image) |
{{#invoke:Wikidata|fun|formatStatements|entity=Q535922 | property=P172 |expl= |value={{WD}} }} | Erreur de script : la fonction « fun » n’existe pas. | avec expl=, pour que la valeur soir retournée il faut value={{WD}} |