Topic on User talk:TomT0m

Jump to navigation Jump to search
PAC2 (talkcontribs)

Bonjour

Je vois que tu es assez actif dans le développement des modules et des modèles. Je me permets donc de te poser une question en direct. Sur le modèle {{Item documentation}}, on déploie actuellement certains sous modèles en fonction de la nature P31 de l'élément. Par exemple, on affiche {{TP organization}} pour les éléments qui sont des organisations. Évidemment, le nombre de sous classes d'organisations est très élevé et impossible à gérer avec un switch. Est ce que tu penses qu'on pourrait trouver une solution facile à ce problème avec un peu de Lua pour afficher {{TP organization}} pour tout les éléments qui sont des instances d'organisation ou d'une sous classe d'organisation ? PAC2 (talk) 21:12, 2 April 2021 (UTC)

TomT0m (talkcontribs)

Oui c’est jouable, je viens de créer le modèle {{IsInstance}} (et quelques autres) pour tester si un élément est une instance d’une certaine classe. Je peux créer un modèle un peu plus élaboré genre {{SwitchClass}} ou même un simple #switch en médiawiki, par exemple appliqué à l’univers donne

<nowiki>{{#switch:1
|{{isInstance|Q1|Q5}}| c’est un humain 
|{{isInstance|Q1|Q386724}} | c’est une oeuvre
|{{isInstance|Q1|[[Q16686022|objet physique naturel]]}} | c’est un objet physique naturel
}}
</nowiki>

donne

c’est un objet physique naturel

TomT0m (talkcontribs)

Voilà {{SwitchClass}} est créé et à l’air de fonctionner.

PAC2 (talkcontribs)

Merci beaucoup et bravo. Ça a l'air top. Je suis impressionné !

TomT0m (talkcontribs)

Si il y a des problèmes de performances au bout d’un moment en rajoutant des cas, il y a sûrement moyen d’optimiser : au lieux de faire n recherches des classes et donc parcours des éléments classes dans Wikidata, rechercher toutes les classes candidates dans un seul parcours. N’hésite pas à revenir au besoin donc.

Reply to "Demande d'aide"