Module:Date/Data/Documentation
Ce module est une base de données de langues destinée à être chargée par mw.loadData.
Syntaxe
[modifier le code]data['<clé>'] = { qualificatif = '<qualificatif>', cat = '<catégorie>', jour = true, mois = { aucun = 9999, tous = { 9999, 9999 }, seul = { 'Mois année', ... } }, annee = { aucun = 9999, tous = { 9999, 9999 }, seul = { 9999, ... } } } data['<alias>'] = data['<clé>']
Paramètres
[modifier le code]<clé>
- texte : qualificatif ou nom de catégorie de qualificatif.<qualificatif>
- texte qui sera utilisé pour tester si des pages dédiées existent. Exemple :en sport
<catégorie>
- texte permettant de regrouper un ensemble de qualificatifs. L'élément ayant pour clé ce texte sera utilisé si aucune page n'existe pour le qualificatif. Exemple :sport
<alias>
- texte : qualificatif automatiquement redirigé vers un autre qualificatif. Les alias doivent impérativement être placés après la clé vers laquelle ils renvoient.jour = true
- booléen : indique qu'il existe des éphémérides pour ce qualificatif (pour tous les jours de l'année). S'il n'y en a pas, utiliser la valeurfalse
ou omettre ce paramètre.
mois
- table contenant les années pour lesquelles il sera testé de lier une page mensuelle à ce qualificatif, type[[mois année qualificatif|mois]]
, par exemple[[juin 2010 en sport|juin]]
.aucun
- nombre : toutes les années inférieures ou égales à ce nombre ne seront pas testées, et aucun lien ne sera fait. Exemple :aucun = 2004
tous
- table contenant deux nombres. Pour toutes les années de cet intervalle, un lien sera systématiquement fait. Exemple :{ 2008, 2011 }
- pour les années qui sont supérieures à
aucun
et qui ne sont pas dans l'intervalletous
, l'existence de la page sera testée par mw.title, l'équivalent de{{#ifexist:
et cela sera dans le compteur de fonction couteuse seul
- table contenant une liste de dates (texteMois année
) inférieures àaucun
pour lesquelles une page existe pour<qualificatif>
. exemple :{ 'Mai 1968' }
annee
- table contenant les années pour lesquelles il sera testé de lier une page à ce qualificatif, type[[année qualificatif|année ]]
, par exemple[[1998 en sport|1998]]
. Notez que le nom du paramètre n'a pas d'accent.aucun
ettous
- similaire au paramètres demois
seul
- table contenant une liste d'années (nombre) inférieures àaucun
pour lesquelles une page existe pour<qualificatif>
. exemple :{ 1836, 1875, 1882 }
Syntaxe générale
[modifier le code]- les nombres sont saisis sans séparateur de milliers
- Les textes sont entourés de guillemets anglais simple ou double (au choix) et peuvent contenir l'autre type. Exemple :
"en Côte d'Ivoire"
- Les tables sont encadrées par des accolades, chaque paramètre est séparé par une virgule. Le dernier paramètre peut être suivi par une virgule.
- les espaces et les différents sauts de ligne ne sont pas pris en compte. il ne servent qu'à la présentation.
- des commentaires peuvent être ajoutés commençant par le signe moins «
--
» et se terminant à la fin de la ligne (qui a cette fois de l'importance)
Exemples
[modifier le code]data['sport'] = { -- clé = catégorie qualificatif = 'en sport', -- qualificatif principal de la catégorie cat = 'sport', -- cette catégorie doit être reprise pour tous les qualificatifs liés au sport. jour = true, -- il y a des éphémérides « en sport » mois = { aucun = 2004, tous = {2005, 2012} }, -- il n'y a pas de pages mensuelles jusqu'en 2004 (inclu) -- mais elles existent toutes de 2005 à 2012 (incul) annee = { aucun = 1849, tous = {1850, 2018} }, -- toutes les pages annuelles existent de 1849 à 2018 } -- fin de la table de la clé « sport » data['en sport'] = data['sport'] -- alias de l'élément précédent clé = qualificatif data['en athlétisme'] = { -- clé = qualificatif qualificatif = 'en athlétisme', cat = 'sport', -- cat = sport et pas de jour → utilisera les éphéméride « en sport » -- pas de pages mensuelles, utilisera « en sport » annee = { aucun = 2000, tous = {2002, 2013} }, -- pour une date de l'année 2000, l'existance de la page [[2000 en athlétisme]] sera tesée } -- fin de la table de la clé « athlétisme »
Philosophie de cette base
[modifier le code]L'objectif de cette base est de permettre tous les liens vers les pages existantes tout en réduisant sensiblement les appels aux fonction couteuses.
- Pour ne pas priver de liens de nouvelles pages, aucun doit être positionné de a une année qui a peu de chances de voir une page se créer dans les jours et semaines à venir
- Pour réduire l'appel aux fonction couteuses, il ne faut pas mettre -500 partout. La vitalité d'un projet, l'état des pages déjà créées et leur date de création doivent guider le choix.
- Les clés de catégorie risquant d'être plus appelées que les autres, il faut être particulièrement attentif à la plage qui risque d'être testée. Il suffira de les surveiller d'un peu plus près.
seul
permet de lié quelques pages existantes sans trop étendre la plage testée s'il y a peu de chance que ces pages (créées il y a plusieurs années) aient des petites sœurs.tous
ne permet qu'une plage de date. s'il y en a plusieurs potentielles, choisir celle qui sera le plus souvent présente sur les pages visitées, en général la plage la plus récente.
Mise à jour : checkDataCat
[modifier le code]Utilisation
[modifier le code]Pour faciliter le repérage des pages qui aurait été créées, il y a la fonction checkDataCat
Cette fonction crée une (longue) liste de liens vers les pages annuelles et éventuellement mensuelles pour chaque qualificatif d'une catégorie. Il est alors facile de repérer les pages existantes (en bleu) au milieu des pages inexistantes (lien rouge)
La plage de date affichée dépend de la valeur de aucun
. L'ordre des qualificatifs est indéterminé.
Des pages utilisant ce cette fonction ont été créées dans le projet Chronologie :
- Chronologie/Suivi des articles mois,
- Chronologie/Suivi des articles sport,
- Chronologie/Suivi des articles science,
- Chronologie/Suivi des articles thématique,
- Chronologie/Suivi des articles Afrique,
- Chronologie/Suivi des articles Amérique,
- Chronologie/Suivi des articles Asie,
- Chronologie/Suivi des articles Europe,
- Chronologie/Suivi des articles Proche-Orient,
- Chronologie/Suivi des articles Océanie.
Syntaxe
[modifier le code]{{#invoke:Date/Vérification Data|checkDataCat|catégorie}}
catégorie
- nom d'une catégorie de la base. Laissé vide pour avoir les pages sans qualificatif. Utiliser la valeur «cat
» pour avoir uniquement les clés de catégorie ;- une ou deux autres catégories peuvent être ajoutées en paramètre 2 et 3.
Redirection
[modifier le code]Certaines pages sont des redirections, soit vers la page décennale du qualificatif, soit vers la page de l'année en question, sans qualificatif. Dans ce deuxième cas, les pages peuvent être ignorées puisque c'est le résultat par défaut.
Pour détecter facilement les pages qui sont des redirections, il est possible de les colorer de vert au lieu de bleu. Il suffit pour cela d'ajouter à votre commons.css le code suivant :
.mw-redirect {
color: forestGreen;
}
a.mw-redirect:visited {
color: darkGreen;
}