À la découverte d'Unicode/Unicode : institutions et versions
Si l'on parle couramment d'unicode pour désigner le format UTF-8 ou le format UTF-16, Unicode est aussi tout à la fois un consortium, un répertoire de caractères et des considérations pour la mise en œuvre de ce répertoire. Ce répertoire est également semblable à l'ISO 10646.
Le site web Unicode présente tout cela de manière très technique et en langue anglaise. Ce livre se veut plus pratique dans la mesure où il s'adresse à un public francophone. Les anglophones pourront trouver des compléments d'information dans la spécification officielle disponible sur ce site.
Les institutions
modifierOrganisation internationale de normalisation (ISO)
modifierL' Organisation internationale de normalisation (International Organization for Standardization), ou ISO est un organisme de normalisation international composé de représentants d'organisations nationales de normalisation de 164 pays[1]. Cette organisation créée en 1947 a pour but de produire des normes internationales dans les domaines industriels et commerciaux appelées normes ISO. Elles sont utiles aux organisations industrielles et économiques de tout type, aux gouvernements, aux instances de réglementation, aux dirigeants de l’économie, aux professionnels de l’évaluation de la conformité, aux fournisseurs et acheteurs de produits et de services, dans les secteurs tant public que privé et, en fin de compte, elles servent les intérêts du public en général lorsque celui-ci agit en qualité de consommateur et utilisateur.
Le secrétariat central de l'ISO est situé à Genève, en Suisse. Il assure aux membres de l'ISO le soutien administratif et technique, coordonne le programme décentralisé d'élaboration des normes et procède à leur publication.
L'ISO est décrite sur wikipedia wikipedia:fr:Organisation internationale de normalisation.
Elle est à l'initiative de la norme ISO/CEI 10646, intitulée Technologies de l'information — Jeu universel de caractères codés (JUC),
Commission électrotechnique internationale (CEI)
modifierLa Commission électrotechnique internationale (CEI) ou 'International Electrotechnical Commission (IEC)' en anglais, est l'organisation internationale de normalisation chargée des domaines de l'électricité, de l'électronique et des techniques connexes. Elle est complémentaire de l'Organisation internationale de normalisation (ISO), qui est chargée des autres domaines.
La CEI est composée de représentants de différents organismes de normalisation nationaux. La CEI a été créée en 1906 et compte actuellement 69 pays participants. Les normes CEI sont reconnues dans plus de 100 pays.
Originellement située à Londres, la Commission a rejoint ses quartiers généraux actuels de Genève en 1948. La CEI dispose de trois centres régionaux à Singapour, São Paulo et Worcester (Massachusetts) [2].
La CEI a été l'instrument du développement et de la distribution de normes d'unités de mesure, notamment le gauss, le hertz, et le weber. Elle contribua également à proposer un ensemble de références, le système Giorgi, qui finalement fut intégré au système international d'unités (SI) dont l'ISO est responsable.
En savoir plus sur wikipedia: wikipedia:fr:Commission électrotechnique internationale
Elle est à l'initiative de la norme ISO/CEI 10646, intitulée Technologies de l'information — Jeu universel de caractères codés (JUC).
Le Consortium Unicode
modifierLe Consortium Unicode est une organisation privée sans but lucratif qui coordonne le développement du standard Unicode. Elle a pour objectif ambitieux de succéder à terme aux codages de caractères pré-existants.
Elle travaille aujourd’hui en coordination, via son propre « comité technique Unicode » (UTC), aux travaux de normalisation de l’Organisation internationale de normalisation (ISO) dans ce domaine pour la norme ISO/CEI 10646 avec laquelle le standard Unicode a fusionné son répertoire universel de caractères codés (après avoir pendant un temps limité développé un standard Unicode 1.0 incompatible et désormais obsolète).
À côté de son objectif initial, l’organisation coordonne divers travaux de standardisation techniques, dont le développement de données de régionalisation de logiciels, comme le projet Wikipedia:Common Locale Data Repository (CLDR), avec son « propre comité technique CLDR ».
Le consortium est aussi le bureau d’enregistrement officiel de quelques normes ISO relatives à ce domaine, telle que la norme ISO/CEI 15924.
Le consortium Unicode est décrit plus en détail sur son site web ainsi que sur le site Wikipedia.
Norme et standards
modifierUnicode est à la fois normalisé par les organismes publics de normalisaiton sous le nom d'ISO 10646, qui sont des normes payantes, et standardisé par le consortium éponyme qui diffuse un standard gratuit.
Norme ISO/CEI 10646
modifierLa norme ISO/CEI 10646, intitulée Technologies de l'information — Jeu universel de caractères codés (JUC), tente de définir un système de codage universel pour tous les systèmes d’écriture. Cette norme est le fondement du standard Unicode.
La norme internationale ISO/CEI 10646 définit le jeu universel de caractères (JUC), (en anglais Universal Character Set (UCS)) comme un jeu de caractères abstrait. Chaque caractère abstrait est identifié par un nom unique (un nom unique en anglais et un nom unique en français) et associé à un nombre entier naturel positif appelé son point de code (ou position de code).
Environ 110 000 caractères (symboles, lettres, nombres, idéogrammes, logogrammes) issus de langues, systèmes d’écriture, traditions du monde entier sont recensés dans le JUC. De nouveaux caractères provenant d’écritures plus rares ou plus anciennes, ou encore de systèmes nouveaux, sont fréquemment ajoutés ou mis à jour dans le JUC.
Depuis 1991, le Consortium Unicode collabore avec l’ISO pour développer le Standard Unicode (« Unicode ») et la norme ISO/CEI 10646. Les répertoires, noms de caractères, et points de code de la Version 2.0 d’Unicode correspondent exactement à ceux de la norme ISO/CEI 10646-1:1993[3] avec ses sept premiers amendements publiés. Chaque publication d’une nouvelle version d’Unicode donne ensuite lieu à une mise à jour de la norme, c’est-à-dire l’adjonction de nouveaux caractères et la mise à jour de ceux déjà présents. Par exemple, la publication d’Unicode 3.0 en février 2000 correspond à la norme ISO/CEI 10646-1:2000. Voir la section Relation avec Unicode pour plus de détails.
Le JUC comprend plus d’1,1 million de points de code, mais seuls les 65 536 premiers (le Plan Multilingue de Base, ou PMB) ont été vulgarisés avant 2000. Cette situation commença à changer quand la Chine populaire (RPC) légiféra en 2000 que les systèmes informatiques vendus sur son territoire devaient supporter le GB 18030, ce qui nécessitait que les systèmes informatiques mis à la vente dans la RPC utilisent des caractères au-delà du PMB.
Le système laisse délibérément beaucoup de points de code non assignés à des caractères, même dans le PMB. Cela permet de ménager des extensions futures ou de minimiser les conflits avec d’autres codages.
Standard Unicode et versions
modifierLe standard est édité en langue anglaise par le consortium Unicode. Chaque jeu d'évolutions donne lieu à une nouvelle version du standard. Ces standards sont librement et gratuitement consultables sur le site Unicode, à la page suivante: [1].
Le travail sur Unicode est parallèle et synchronisé avec celui sur la norme ISO/CEI 10646 dont les buts sont les mêmes. L’ISO/CEI 10646, une norme internationale publiée en français et en anglais, ne précise cependant ni les règles de composition de caractères, ni les propriétés sémantiques des caractères.
Unicode aborde cependant la problématique de la casse, du classement alphabétique, et de la combinaison d’accents et de caractères. Depuis la version 1.1 d’Unicode et dans toutes les versions suivantes, les caractères ont les mêmes identifiants que ceux de la norme ISO/CEI 10646 : les répertoires sont maintenus parallèlement, à l’identique lors de leur normalisation définitive, les deux normes étant mises à jour presque simultanément. Les deux normes Unicode (depuis la version 1.1) et ISO/CEI 10646 assurent une compatibilité ascendante totale : tout texte conforme à une version antérieure doit rester conforme dans les versions ultérieures.
Ainsi les caractères de la version 3.0 d’Unicode sont ceux de la norme ISO/CEI 10646:2000. La version 3.2 d’Unicode classait 95 221 caractères, symboles et directives.
La version 4.1 d’Unicode, mise à jour en novembre 2005, contient :
- 137 468 caractères à usage privé (assignés dans toutes les versions d’Unicode et suffisants pour tous les usages) ;
- plus de 97 755 lettres ou syllabes, chiffres ou nombres, symboles divers, signes diacritiques et signes de ponctuation, avec parmi eux :
- plus de 70 207 caractères idéographiques, et
- parmi eux, 11 172 syllabes hangûl précomposées ; ainsi que
- plus de 70 207 caractères idéographiques, et
- 8 258 positions de codes réservées de façon permanente, interdites pour le codage de texte (assignées dans toutes les versions d’Unicode) ; et
- plusieurs centaines de caractères de contrôle ou modificateurs spéciaux ;
soit un total de près de 245 000 positions de codes assignées dans un espace pouvant contenir 1 114 112 codes différents.
Quelques problèmes semblent cependant exister, pour le codage des caractères chinois, à cause de l’unification des jeux idéographiques utilisés dans différentes langues, avec une calligraphie légèrement différente et parfois signifiante, mais ils sont en cours de résolution par Unicode qui a défini des sélecteurs de variantes et ouvert un registre de séquences normalisées qui les utilise.
La version 5.0 a été publiée en juillet 2006, la version 5.2 en octobre 2009, la version 6.0 en février 2011 et la version 6.1 le 31 janvier 2012.
Les couches d’Unicode
modifierUnicode est défini suivant un modèle en couches (Note technique Unicode #17[4]). Les autres normes ne faisaient typiquement pas de distinction entre le jeu de caractères et la représentation physique. Les couches sont ici présentées en partant de la plus haute (la plus éloignée de la machine).
Références
modifier- ↑ Au 31 décembre 2006
- ↑ Centres régionaux de la CEI, sur iec.ch
- ↑ ISO/CEI 10646-1:1993: Technologies de l'information — Jeu universel de caractères codés à plusieurs octets — Partie 1: Architecture et table multilingue
- ↑ Unicode Technical Report #17: Unicode Character Encoding Model