Utilisateur:Bécarre/Bac à sable/Wiktionnaire:Tri alphabétique



Cette page est une ébauche et devra être discutée et modifiée en conséquence (voir avertissement). En attendant, elle ne représente pas le tri en usage aujourd’hui sur le Wiktionnaire.

Cette page décrit le tri alphabétique en usage sur le Wiktionnaire francophone.

Ci-dessous se trouve un guide synthétique (cliquer sur Dérouler) à destination des contributeurs qui cherchent à trier une liste de mots mettant en jeu des caractères suffisamment communs, notamment une liste de mots français. La méthode de tri complète est décrite dans le reste du document.

Présentation modifier

Domaine d’applicabilité modifier

Le tri alphabétique décrit dans les règles de tri est recommandé à chaque fois qu’une liste d’articles du Wiktionnaire (sous forme de liste à puces ou d’énumération) est présentée dans un article, et qu’aucun autre ordonnancement particulier ne prévaut. Les cas recensés sont :

  • les listes à puces dans les sous-sections, comme les synonymes, dérivés… (tri manuel) ;
  • les listes à puces dans les catégories, basées sur la clé de tri de chaque article (tri en cours d’automatisation) ;
  • les énumérations dans les sous-pages de {{voir}} (tri actuellement manuel, pouvant être automatisé par robot).

Objectif modifier

L’application des règles de tri alphabétique vise à faciliter la recherche d’un mot au sein d’une liste à un utilisateur du Wiktionnaire francophone.

En conséquence :

  1. Le tri des mots du lexique français doit être comparable à celui effectué par les dictionnaires francophones usuels.
  2. Le tri d’une liste regroupant des mots de plusieurs langues sera effectué selon le tri français.
  3. Doit-on trier les mots d’une langue étrangère suivant le tri français ou suivant le tri en usage chez les locuteurs de la langue concernée ?

Introduction au tri alphabétique modifier

Une approche naïve du tri alphabétique consisterait à penser qu’il suffit d’attribuer à chaque caractère Unicode un poids simple (un entier naturel, différent pour chaque caractère), et de comparer les mots à trier caractère par caractère sur la base de ces poids, pour trouver lequel vient avant l’autre. Cette approche permet en effet d’établir une relation d’ordre complète sur l’ensemble des mots (c’est-à-dire qu’on saura à coup sûr classer deux mots différents), mais son résultat ne peut, quels que soient les poids choisis, refléter l’ordre alphabétique usuel qui nous permet de trouver un mot dans un dictionnaire. La table ci-dessous illustre cela dans le cas où l’on donne à la lettre é un poids supérieur à la lettre e.

Tri naïf Tri du dictionnaire
beau < béat béat < beau

Le tri naïf, considérant la lettre é comme lettre à part entière, présenterait tous les mots commençant par be- avant tous les mots commençant par bé-, ce qui n’est pas ce que nous observons dans les dictionnaires. Sur cet exemple, nous voyons donc que l’ordre alphabétique des dictionnaires usuels, qui s’est imposé par l’usage, est plus subtil et considère un caractère non comme un tout, mais comme un composite, une sorte d’édifice à plusieurs étages :

Étage lettre e lettre é
2 ´
1 e e

L’étage 1 est l’étage de base (la lettre nue), l’étage 2 coiffe la lettre de ses accents, etc. Les mots sont d’abord comparés suivant l’étage 1 (la comparaison entre béat et beau suivant l’étage 1 compare beat avec beau, ce qui donne directement le résultat), et s’ils sont égaux au premier étage, on monte au deuxième étage pour effectuer une deuxième comparaison.

Étage mot bêche mot bêché
2  ^     ^  ´
1 beche beche

Ici, on obtient la différence lors de la comparaison du 2e étage, sur le dernier caractère : l’accent aigu a un poids supérieur à aucun accent, donc bêche < bêché.

Formalisation de la méthode de tri par des normes internationales modifier

Deux organisations internationales, l’ISO/C.E.I. et Unicode, ont défini chacune une norme qui formalise la méthode de tri alphabétique. Ces normes sont équivalentes, si ce n’est que la norme Unicode offre un choix plus large de traitement du niveau 4. Les deux organisations travaillent conjointement et maintiennent notamment leur fichier de poids standard synchronisés. Le formalisme est cependant différent. Voici les liens vers ces deux normes :

D’autre part, les règles de tri édictées par Unicode sont incorporées à leur librairie de localisation C.L.D.R..

Synthèse des principes de tri modifier

Il est à noter que si chacune des deux normes diffère par sa formalisation, notamment en matière de génération des clés, leurs principes sont identiques, et tout algorithme implémentant la norme peut utiliser le format de clé qu’il désire, pourvu que le résultat du tri soit conforme.

Note (car ça ne va pas forcément de soi) : si A un poids plus faible que B, cela signifie que A sera rangé avant B.

Niveaux de tri modifier

Comme vu dans l’introduction au tri alphabétique, il existe des « étages » de tri, fondamentaux pour l’algorithmique du tri, que nous nommerons dorénavant niveaux, pour être plus fidèle au standard. Plus le niveau est élevé, moindre est son importance dans le tri.

Niveaux obligatoires 1, 2 et 3 modifier
  • Le niveau 1 représente le caractère de base. Par exemple, pour le tri français, les lettres utilisées pour former tant des mots français qu’espagnols ont, au niveau 1, 26 poids distincts (en correspondance avec les lettres a..z). Pour le tri espagnol, le niveau 1 pour ces mêmes lettres comporte 27 poids distincts, car la lettre ñ est considérée comme une lettre à part entière (et jusqu’en 1994, il y en avait 29, les digrammes ch et ll étant alors considérés eux aussi comme lettre à part entière).
  • Le niveau 2 représente les diacritiques (accents, cédilles…). Chaque diacritique a un poids unique, permettant de les ordonner. Il y a également un poids (le plus faible des poids de niveau 2) pour les caractères dénués de diacritique, afin qu’ils fassent bien partie de la comparaison de niveau 2, pour que la position des diacritiques dans le mot soit bien prise en compte aux fins du tri. Les diacritiques multiples (par exemple ᾠ) sont formellement décomposés en leur suite avec un ordre préétabli (qui correspond à la forme normalisée D d’Unicode) : le tri est alors effectué sur cette base ; voir ci-dessous Diacritiques multiples.
  • Le niveau 3 représente la casse (minuscule, majuscule, exposant, variante en fin de mot…). Chaque type de casse a un poids distinct ; par défaut, la casse minuscule a un poids moindre que la casse majuscule.
Niveau optionnel 4 : signes de ponctuation modifier

Certains mots et, par définition, toutes les locutions comportent des signes de ponctuation : espace, tiret, apostrophe, point, pour ne citer que les plus fréquents.

La tradition des dictionnaires est d’ignorer ces signes aux niveaux 1, 2 et 3, et de n’en tenir compte que si les mots sont identiques aux niveaux 1, 2 et 3 (l’autre option, décrite par l’U.C.A., est de les considérer comme caractères à part entière dès le niveau 1). Si l’on ignore la ponctuation, alors :

  1. soit on l’introduit au quatrième niveau afin de départager, par exemple : TGV et T.G.V. (U.C.A. préconise alors d’affecter un poids maximum aux autres caractères, ce qui résulte en T.G.V. < TGV) ;
  2. soit on ne l’introduit pas au quatrième niveau, ce qui résulte en un ordre indéterminé entre TGV et T.G.V.

D’autre part, il est loisible d’adapter la liste des signes que l’on considère comme caractères à part entière (présents au niveau 1) et celle des signes que l’on souhaite ignorer ou rejeter au niveau 4.

Ligatures modifier

Pour le tri français (et le tri standard), la ligature æ est considérée comme un a avec un diacritique (d’un poids supérieur à tous les autres diacritiques), suivi d’un e. Les ligatures sont donc considérées comme deux lettres séparées pour le niveau 1.

Diacritiques multiples modifier

Règles de tri modifier

Les règles de tri respectent la norme U.C.A.

Les règles suivantes sont toutes soumises à discussion sur la page de discussion.

  • Le tri est unique et adapté aux habitudes de classement françaises. On prendra cette hypothèse pour traiter des règles suivantes, qui en tout état de cause ne s’appliqueront que pour le tri français.
  • Par défaut, les poids retenus sont ceux de la DUCET (« table Unicode par défaut des éléments de collation ») de la norme U.C.A.

Niveau 1 : caractères de base modifier

  • Tous les signes de ponctuation sont ignorés (ils sont traités au niveau 4).

Niveau 2 : accents, diacritiques modifier

  • Les diacritiques sont traités normalement, en parcourant le mot de gauche à droite.

Niveau 3 : casse, variantes modifier

  • La minuscule vient avant la majuscule (conformité avec la DUCET).

Niveau 4 : ponctuation modifier

  • Le niveau 4 est traité ; la méthode retenue est shifted (préconisée par U.C.A. lorsque le niveau 4 est traité : la ponctuation a un poids moindre que les autres caractères : T.G.V. < TGV).

Poids des symboles modifier

Cette section rassemble l’ordonnancement d’un certain nombre de symboles pour chaque niveau. Pour les autres, il suffit de se référer soit à la DUCET d’Unicode, soit à la table-modèle commune de l’ISO (l’avantage de la table-modèle commune est de présenter les symboles par ordre de poids, la DUCET les présentant par ordre de point Unicode).

Les symboles sont listés, à chaque niveau, par ordre de poids croissant (lorsque le poids est identique entre certains symboles, cela est indiqué).

Exemples de tri modifier

Note : dans le cas où une lettre possède plusieurs diacritiques, ces diacritiques sont indiquées entre crochets dans l’ordre où elles doivent être prises en compte pour le tri (voir la section Diacritiques multiples) et non dans l’ordre de la dénomination Unicode de la lettre en question, ceci afin de faciliter la compréhension.