La documentation courante est contradictoire quant aux règles de tri alphabétique. Elle se réfère à la norme ISO 14651 (lien donné dans le point : « Ses paramètres devraient être triés selon les règles du tri français »), or les règles énoncées ne correspondent absolument pas.
Cas pratique : si l’on prend la sous-page {{voir/bo}}
, qui est celle donnée en exemple dans la documentation, on peut voir que deux tris ont existé : le premier à la création de la page, et le deuxième, lors du changement d’Urhixidur (d · c), conforme aux règles données dans la documentation ; aucun ne correspond à la norme ISO 14651. Voici ces deux tris et celui issu de l’application de la norme — adaptée en reprenant la convention sur l’ordre interne des diacritiques (accents) telle qu’indiquée dans la documentation — (pour simplifier, je n’ai retenu dans la liste, parmi les diacritiques n’étant pas les accents utilisés en français, qu’un diacritique simple et un double, car les problèmes ne sont pas là) :
tri initial | bo < Bo < BO < bo- < bó < bò < bô < bộ < bǒ < boʼ
|
tri documentation | BO < Bo < bo < bó < bò < bô < bǒ < bộ < boʼ < bo-
|
tri iso | bo < bo- < bo’ < Bo < BO < bó < bò < bô < bǒ < bộ
|
Afin d’expliciter la méthode de tri ISO décrite dans le document cité plus haut, voici la reproduction d’un tableau trouvé dans l’ouvrage Unicode 5.0 en pratique de Patrick Andries, résumant synthétiquement les 4 niveaux de comparaison décrits par la norme. Ces niveaux sont à comprendre au sens où on commence par exécuter la comparaison de niveau 1 ; si celle-ci ne permet pas de départager, alors on exécute la comparaison de niveau 2, etc.
Niveau | Description | Exemples | |
---|---|---|---|
1 | Caractère de base | e < i | jeune < jeunes < jeunisme |
2 | Accents | u < û | jeune < jeûne < jeunes |
3 | Casse | j < J | jeune < Jeune < jeûne |
4 | Ponctuation | coop < co-op | jeunisme < jeun-isme < Jeunisme |
Application (pour chaque niveau, à côté du mot et entre parenthèses figurent les éléments sur lesquels porte la comparaison) :
Niveau | Description | Classement |
---|---|---|
1 | Caractère de base | BO (bo) = Bo (bo) = bo (bo) = bó (bo) = bò (bo) = bô (bo) = bǒ (bo) = bộ (bo) = boʼ (bo) = bo- (bo)
|
2 | Accents | BO () = Bo () = bo () = boʼ () = bo- () < bó ( ́) < bò ( ̀) < bô ( ̂) < bǒ ( ̌) < bộ ( ̣̂)
|
3 | Casse | bo (mm) = boʼ (mm) = bo- (mm) < Bo (Mm) < BO (MM) < bó < bò < bô < bǒ < bộ
|
4 | Ponctuation | bo () < bo- ( -) < boʼ ( ’) < Bo < BO < bó < bò < bô < bǒ < bộ
|
On notera au passage que tous les mots présents dans une sous-page donnée de {{voir}}
doivent être par définition égaux relativement au niveau de comparaison no 1, ce que nous voyons ici.
Ma question est donc : l’erreur réside-t-elle dans l’interprétation de la norme ISO ou a-t-on choisi une autre norme sans le mentionner ? Chris06 ✍ 28 juin 2014 à 14:18 (UTC)
La norme ISO/C.E.I. 14651 est publique et disponible gratuitement sur le site de l’ISO :
D’autre part, le modèle {{clé de tri}}
nous informe qu’il existe la norme U.C.A. (Unicode Collation Algorithm), qui redéfinit à sa sauce le même algorithme (à la différence principale qu’il donne un choix supplémentaire sur la façon de traiter le quatrième niveau) :
La norme U.C.A. me semble plus aboutie en termes de formalisation et de documentation, et j’aurais tendance à la préférer comme base de travail. Je propose de créer une page dédiée (Wiktionnaire:Tri alphabétique par exemple, avec sa page de discussion afin de discuter chaque adaptation de la norme), afin de d’échafauder les règles précises du tri alphabétique du Wiktionnaire, applicables notamment au tri des puces dans les sous-sections et au présent modèle (note : concernant le tri dans les catégories via {{clé de tri}}
, il est pour l’instant impossible d’appliquer un tri correct au-delà du premier niveau puisque la clé de tri est générée manuellement et donc très simplement ; si, par contre, dans l’avenir la clé de tri peut être générée automatiquement par un robot, il sera alors envisageable d’appliquer le tri complet). Chris06 ✍ 13 juillet 2014 à 12:32 (UTC)
{{clé de tri}}
, il a vocation à être remplacé effectivement par une clé automatique générée via Lua, cf. justement module:clé de tri2 et sa page de discussion où nous avons déjà entamé la question. Le choix jusqu’ici est celui conforme au document de LaBonté (pour le français du moins…), mais s’il y a mieux tant mieux. — Automatik (discussion) 14 juillet 2014 à 01:27 (UTC)