Unicode es un estndar de codificacin de caracteres diseado para facilitar el
tratamiento informtico, transmisin y visualizacin de textos de mltiples lenguajes y disciplinas tcnicas, adems de textos clsicos de lenguas muertas. El trmino Unicode proviene de los tres objetivos perseguidos: universalidad, uniformidad y unicidad. Unicode especifica un nombre e identificador numrico nico para cada carcter o smbolo, el code point (punto de cdigo), adems de otras informaciones necesarias para su uso correcto: direccionalidad, maysculas y otros atributos. Unicode trata los caracteres alfabticos, ideogrficos y smbolos de forma equivalente, lo que significa que se pueden mezclar en un mismo texto sin la introduccin de marcas o caracteres de control.2 Este estndar es mantenido por el Unicode Technical Committee (UTC), integrado en el Consorcio Unicode, del que forman parte con distinto grado de implicacin empresas como: Microsoft, Apple, Adobe, IBM, Oracle, SAP, Google o Yahoo, instituciones como la Universidad de Berkeley, y profesionales y acadmicos a ttulo individual.3 El Unicode Consortium mantiene estrecha relacin con ISO/IEC, con la que mantiene desde 1991 el acuerdo de sincronizar sus estndares que contienen los mismos caracteres y puntos de cdigo.4 El establecimiento de Unicode ha sido un ambicioso proyecto para reemplazar los esquemas de codificacin de caracteres existentes, muchos de los cuales estn muy limitados en tamao y son incompatibles con entornos plurilinges. Unicode se ha vuelto el ms extenso y completo esquema de codificacin de caracteres, siendo el dominante en la internacionalizacin y adaptacin local del software informtico. El estndar ha sido implementado en un nmero considerable de tecnologas recientes, que incluyen XML, Java y sistemas operativos modernos. La descripcin completa del estndar y las tablas de caracteres estn disponibles en la pgina web oficial de Unicode. La referencia completa se publica, adems, en forma de libro impreso cada vez que se libera una nueva versin principal. La versin digital de este libro est disponible de forma gratuita. Las revisiones y adiciones se publican de forma independiente. Repertorio de caracteres: El elemento bsico del estndar Unicode es el carcter. Se considera un carcter al elemento ms pequeo de un sistema de escritura con significado. El estndar Unicode codifica los caracteres esenciales grafemas definindolos de forma abstracta y deja la representacin visual (tamao, dimensin, fuente o estilo) al software que lo trate, como procesadores de texto o navegadores web. Se incluyen letras, signos diacrticos, caracteres de puntuacin, ideogramas, caracteres silbicos, caracteres de control y otros smbolos. Los caracteres se agrupan en alfabetos o sistemas de escritura. Se considera que son diferentes los caracteres de alfabetos distintos, aunque compartan forma y significacin. Los caracteres se identifican mediante un nmero o punto de cdigo y su nombre o descripcin. Cuando se ha asignado un cdigo a un carcter, se dice que dicho carcter est codificado. El espacio para cdigos tiene 1 114 112 posiciones posibles (0x10FFFF). Los puntos de cdigo se representan utilizando notacin hexadecimal agregando el prefijo U+. El valor hexadecimal se completa con ceros hasta 4 dgitos hexadecimales cuando es necesario; si es de longitud mayor que 4 dgitos no se agregan ceros. Tipos de caracteres: Los bloques del espacio de cdigos contienen puntos con la siguiente informacin: Caracteres grficos: letras, signos diacrticos, cifras, caracteres de puntuacin, smbolos y espacios. Caracteres de formato: caracteres invisibles que afectan al proceso del texto prximo. Ejemplos: U+2028 salto de lnea, U+2029 salto de prrafo, U+00A0 espacio duro, etc. Cdigos de control: 65 cdigos definidos por compatibilidad con ISO/IEC 2022. Son los caracteres entre en los rangos [U+0000,U+001F], U+007F y [U+0080...U+009F]. Interpretarlos es responsabilidad de protocolos superiores. Caracteres privados: reservados para el uso fuera del estndar por fabricantes de software. Caracteres reservados: cdigos reservados para su uso por Unicode. Son posiciones no asignadas. Puntos de cdigo subrogados: Unicode reserva los puntos de cdigo de U+D800 a U+DFFF para su uso como cdigos subrogados en UTF-16, en la representacin de caracteres suplementarios. No caracteres: son cdigos reservados permanentemente para uso interno por Unicode. Los dos ltimos puntos de cada plano U+FFFE y U+FFFF. Caracteres descartados: son caracteres que se retienen por compatibilidad con versiones anteriores, pero se debe evitar su uso. Composicin de caracteres y secuencias: Unicode incluye un mecanismo para formar caracteres y as extender el repertorio de compatibilidad con los smbolos existentes. Un carcter base se complementa con marcas: signos diacrticos, de puntuacin o marcos. El tipo de cada carcter y sus atributos definen el papel que pueden jugar en una combinacin. Por este motivo, puede haber varias opciones que representen el mismo carcter. Para facilitar la compatibilidad con codificaciones anteriores, se proporcionan caracteres precompuestos; en la definicin de dichos caracteres se hace constar qu caracteres intervienen en la composicin. Un grupo de caracteres consecutivos, independientemente de su tipo, forma una secuencia. En caso de que varias secuencias representen el mismo conjunto de caracteres esenciales, el estndar no define una de ellas como 'correcta', sino que las considera equivalentes. Para poder identificar dichas equivalencias, Unicode define los mecanismos de equivalencia cannica y de equivalencia de compatibilidad basados en la obtencin de formas normalizadas de las cadenas a comparar. Elementos del estndar Unicode: Principios de diseo: El estndar fue diseado con los siguientes objetivos: Universalidad: Un repertorio suficientemente amplio que albergue a todos los caracteres probables en el intercambio de texto multlinge. Eficiencia: Las secuencias generadas deben ser fciles de tratar. No ambigedad: Un cdigo dado siempre representa el mismo carcter.
Base de datos de caracteres: El conjunto de caracteres codificados por Unicode, es la UCD (Unicode character database: base de datos de caracteres Unicode). Adems de nombre y punto de cdigo, incluye ms informacin: alfabeto al que pertenece, nombre, clasificacin, maysculas, orientacin y otras formas de uso, variantes estandarizadas, reglas de combinacin, etc. Formalmente la base de datos se divide en planos y estos a su vez en reas y bloques. Con excepciones, los caracteres codificados se agrupan en el espacio de cdigos siguiendo categoras como alfabeto o sistema de escritura, de forma que caracteres relacionados se encuentren cerca en tablas de codificacin. Planos: Por conveniencia se ha dividido el espacio de cdigos en grandes grupos denominados planos. Cada plano contiene un mximo de 65 535 caracteres. Dado un punto de cdigo expresado en hexadecimal, los 4 ltimos dgitos determinan la posicin del carcter en el plano. Plano bsico multilinge: BMP o plano 0. Contiene la mayor parte de los alfabetos modernos, incluyendo los caracteres ms comunes del sistema CJK, otros caracteres histricos o poco habituales y 64 reservadas para uso privado. Plano suplementario multilinge: SMP o plano 1. Alfabetos histricos de menor uso y sistemas de uso tcnico u otros usos. Plano suplementario ideogrfico: SIP o plano 2. Contiene los caracteres del sistema CJK que no se incluyen en el plano 0. La mayora son caracteres muy raros o de inters histrico. Plano de propsito especial: SSP o plano 14. rea para caracteres de control que no se han introducido en el plano 0. Planos de uso privado: planos 15 y 16. Reservados para uso privado por fabricantes de software. reas y bloques: Los distintos planos se dividen en reas de direccionamiento en funcin de los tipos generales que incluyen. Esta divisin es convencional, no reglada y puede variar con el tiempo. Las reas se dividen, a su vez, en bloques. Los bloques estn definidos normativamente y son rangos consecutivos del espacio de cdigos. Los bloques se utilizan para formar las tablas impresas de caracteres pero no deben tomarse como definiciones de grupos significativos de caracteres.