Module:Arbre généalogique Wikidata/Documentation

Aller à la navigation Aller à la recherche

La documentation pour ce module peut être créée à Module:Arbre généalogique Wikidata/Documentation/doc

Erreur de script : Erreur Lua à la ligne 1 : unexpected symbol near '=='.

== Utilisation ==
Ce module est conçu pour une utilisation à travers le modèle [[Modèle:Arbre généalogique Wikidata]]. Il exploite les données issues de [[Wikipédia:Wikidata|Wikidata]] pour créer un [[arbre généalogique]].

Son code est basé sur celui de [[wikidata:Module:Wikidata/FamilyTree]]. Le modèle fonctionne en coordination avec la feuille de rendu css [[Modèle:Arbre généalogique Wikidata/styles.css]].

La sous–page [[Module:Arbre généalogique Wikidata/Rendu HTML]] n'est pas appelée par ce module.

=== Fonctions exportables ===
* <code>[[Module:Arbre généalogique Wikidata#L-908|drawTree( frame )]]</code> – Met en forme les arguments reçu dans frame pour un appel de <code>drawTreeImpl( args )</code> ;
* <code>[[Module:Arbre généalogique Wikidata#L-925|drawTreeImpl( args )]]</code> – Prend en argument un tableau (décrit dans la section suivante) et retourne le code html d'un arbre généalogique.

==== Liste des paramètres ====
Le tableau suivant liste les différents paramètres et leurs valeurs acceptées. Un appel valide de la fonction <code>drawTreeImpl( args )</code> est de la forme :
<syntaxhighlight lang="lua">
local gen = require("Module:Arbre généalogique Wikidata")
local arbre = gen.drawTreeImpl({entityId="Q7742", ancestors=4, descendants=0, decorate="by-generation"})
</syntaxhighlight>

{| class="wikitable"
! Nom du paramètre !! Description
|-
| <code>entityId</code> || Identifiant Wikidata pour la base de l'arbre généré. Par défaut, identifiant de la page courante.
|-
| <code>mode</code> || Mode de rendu de l'arbre généalogique. Les valeurs acceptées sont <code>"horizontal"</code> et <code>"vertical"</code>. Par défaut, "vertical" (nb. Le modèle {{m-|Arbre généalogique Wikidata}} a comme mode de rendu par défaut le mode horizontal).
|-
| <code>invert</code> || Booléen indiquant si l'arbre généalogique doit être inversé (les ancêtres en bas et les descendants en haut). Par défaut, <code>false</code>.
|-
| <code>interleave</code> || Booléen indiquant si les ancêtres doivent être entrelacés (père et mère affichés sur la même ligne). Par défaut, <code>false</code>.
|-
| <code>ancestors</code> || Le nombre de générations d'ancêtres à afficher. Par défaut, 2 pour un mode horizontal et 3 pour un mode vertical.
|-
| <code>descendants</code> || Le nombre de générations de descendants à afficher. Par défaut, 2 pour un mode horizontal et 3 pour un mode vertical.
|-
| <code>compactParents</code> || Booléen indiquant si les parents doivent être affichés de manière compacte (sur la même ligne) ou non. Vaut toujours <code>true</code> si mode horizontal et vaut <code>false</code> par défaut si mode vertical.
|-
| <code>compactChildren</code> || Booléen indiquant si les enfants doivent être affichés de manière compacte (sur la même ligne) ou non. Dans le code actuel, vaut toujours <code>true</code>.
|-
| <code>years</code> || Booléen indiquant si les années de naissance et de décès doivent être affichées. Les valeurs acceptées sont <code>true</code>, <code>"next-line"</code> et <code>"new-line"</code>. Dans les deux derniers cas, la valeur du paramètre définit la classe css utilisée pour l'affichage des années. Par défaut, vaut <code>false</code>.
|-
| <code>descriptions</code> || Booléen indiquant si les descriptions des entités doivent être affichées. Les valeurs acceptées sont <code>true</code>, <code>"next-line"</code> et <code>"new-line"</code>. Dans les deux derniers cas, la valeur du paramètre définit la classe css utilisée pour l'affichage de la description. Par défaut, vaut <code>false</code>.
|-
| <code>decorate</code> || Chaîne de caractères indiquant les décorations à appliquer à l'arbre généalogique. Les deux valeurs acceptées sont <code>"by-generation"</code> (qui applique une coloration par génération si la feuille de style est appliquée) et <code>"none"</code>. Par défaut, vaut <code>"none"</code>.
|}

=== Modules externes et autres éléments dont ce module a besoin pour fonctionner ===
==== Extension:Client Wikibase ====
* <code>[https://doc.wikimedia.org/Wikibase/master/php/docs_topics_lua.html#mw_wikibase_getEntityIdForCurrentPage mw.wikibase.getEntityIdForCurrentPage]</code> – Retourne l'id de l'élément wikidata associé à la page courante ;
* <code>[https://doc.wikimedia.org/Wikibase/master/php/docs_topics_lua.html#mw_wikibase_getLabel mw.wikibase.getLabel]</code> – Retourne le label wikidata associé à la page courante ou à celle dont l'id associé est passé en argument ;
* <code>[https://doc.wikimedia.org/Wikibase/master/php/docs_topics_lua.html#mw_wikibase_getSitelink mw.wikibase.sitelink]</code> – Retourne le nom sur wikipédia en français de la page dont l'id associé est passé en argument ;
* <code>[https://doc.wikimedia.org/Wikibase/master/php/docs_topics_lua.html#mw_wikibase_getDescription mw.wikibase.getDescription]</code> – Retourne la description wikidata associée à la page courante ou à celle dont l'id associé est passé en argument ;
* <code>[https://doc.wikimedia.org/Wikibase/master/php/docs_topics_lua.html#mw_wikibase_getBestStatements mw.wikibase.getBestStatements]</code> – Prend en argument un  id d'entité wikidata et un id de propriété et retourne une table décrivant la valeur de la propriété pour cet élément. Les éléments de rang normal ne sont pas retournés si un élément de rang préféré est présent et les éléments de rang obsolète ne sont jamais retournés.

==== Autres modules et fonctions externes ====
* <code>[[mw:Extension:Scribunto/Lua reference manual/fr#mw.title.new|mw.title.new]]</code> – Crée un nouvel [[mw:Extension:Scribunto/Lua reference manual/fr#Objet title|objet title]] ;
* <code>[[mw:Extension:Scribunto/Lua reference manual/fr#mw.ustring.match|mw.ustring.match]]</code> – Cherche la première correspondance d'un motif dans une chaine de caractères ;
* <code>[[mw:Extension:Scribunto/Lua reference manual/fr#mw.getCurrentFrame|mw.getCurrentFrame]]</code> – Retourne l'[[mw:Extension:Scribunto/Lua reference manual/fr#L'objet Frame|objet frame]] courant, généralement l'objet frame du dernier appel à <code>#invoke</code> ;
** <code>[[mw:Extension:Scribunto/Lua reference manual/fr#frame:getTitle|frame:getTitle()]]</code> – Renvoie le nom du module invoqué par le <code><nowiki>{{#invoke:}}</nowiki></code> ;
** <code>[[mw:Extension:Scribunto/Lua reference manual/fr#frame:getParent|frame:getParent()]]</code> – Renvoie l'objet ''frame'' de la page qui a appelé le <code><nowiki>{{#invoke:}}</nowiki></code> ;
* <code>[[mw:Extension:Scribunto/Lua reference manual/fr#mw.site.namespaces|mw.site.namespaces]]</code> – Table contenant les informations sur tous les [[Aide:Espace de noms|espaces de noms]], indexés par leur numéro ;

* <code>[[Module:Romain]]</code> – Prend en argument un [[nombre décimal]] et retourne son écriture en [[numération romaine]].

=== Modules lua utilisant ce module ===
''Aucun''

=== Modèles appelant directement ce module ===
* [[Modèle:Arbre généalogique Wikidata]]

== Exemples ==
Dans [[Modèle:Arbre généalogique Wikidata]], ce module est appelé par le code suivant :
<syntaxhighlight lang="wikitext">
<templatestyles src="Modèle:Arbre généalogique Wikidata/styles.css" />
{{#invoke:Arbre généalogique Wikidata|drawTree|mode={{{mode|horizontal}}}}}
</syntaxhighlight>

{{Projet Scribunto}}

<includeonly>
[[Catégorie:Module appelé directement par un modèle]]
</includeonly>