Utilisateur:Hexasoft/Test taxobox/Documentation/Taxobox
Les étapes pour créer une taxobox sont toujours les mêmes. Les actions de la fonction taxobox(frame)
sont :
- enregistrement frame et pframe dans la table donnees.defauts.{frame|pframe} (pour utilisation par d'autres fonctions)
- récupération du titre et du namespace de l'article (donnees.defauts.{article|titre})
- analyse des paramètres nommés. Contenu : "charte" et "nom vernaculaire" ; comportement : c_titre, c_sous_titre, c_categories, c_categories_err, c_erreurs, c_force_titre ; debug : raw, debug. Vérifications sur les paramètres (présence obligatoire de "charte", et qu'elle corresponde à une charte connue).
- analyse des paramètres non nommés pour créer la liste des commandes (suite des lignes de taxobox à créer : donnees.defauts.commandes) avec la commande tri_parametres(). Validation que cette phase c'est bien passée.
- initialisation de l'état courant de la taxobox (ouverte, fermée, nombre de tables ouvertes…)
- recherche des entrées "taxon" (commande tri_taxons). Cette fonction regroupe les lignes "taxon" dans une table, note le dernier "taxon" donné Note également si l'un des taxons indiqué peut correspondre au titre de l'article.
- détermination du titre de la taxobox (genere_titre_taxobox()).
- boucle de parcours des commandes de la taxobox. Parcours sur les lignes de donnees.defauts.commandes :
- analyse de la ligne (lecture_parametres()) en utilisant la syntaxe de la commande. Retourne resu contenant les paramètres de la ligne
- exécution de la fonction traitant la commande correspondante, sur les paramètres de la ligne
- gestion de la structuration (ouverture/fermeture de tables typiquement)
- ajout du code de la ligne à la taxobox en cours de création
- note : à chaque étape diverses vérifications de la présence d'erreurs
- détermination des modifications éventuelles du titre de l'article (mise en forme)
- détermination de l'ajout éventuel d'un sous-titre à l'article
- détermination des catégories éventuelles à ajouter (et selon le mode choisi et le namespace)
- détermination des catégories d'erreurs éventuelles à ajouter (et selon le mode choisi et le namespace)
- détermination des erreurs éventuelles à ajouter (et selon le mode choisi et le namespace)
- retour du résultat