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

Définition, traduction, prononciation, anagramme et synonyme sur le dictionnaire libre Wiktionnaire.



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 le wikicode]

Domaine d’applicabilité[modifier le wikicode]

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 le wikicode]

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 le wikicode]

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 le wikicode]

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 le wikicode]

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 le wikicode]

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 wikicode]
  • 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 le wikicode]

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 le wikicode]

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 le wikicode]

Règles de tri[modifier le wikicode]

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 le wikicode]

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

Niveau 2 : accents, diacritiques[modifier le wikicode]

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

Niveau 3 : casse, variantes[modifier le wikicode]

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

Niveau 4 : ponctuation[modifier le wikicode]

  • 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 le wikicode]

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 le wikicode]

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.