Equivalencia Unicode


La equivalencia Unicode es la especificación del estándar de codificación de caracteres Unicode de que algunas secuencias de puntos de código representan esencialmente el mismo carácter. Esta función se introdujo en el estándar para permitir la compatibilidad con conjuntos de caracteres estándar preexistentes , que a menudo incluían caracteres similares o idénticos.

Unicode proporciona dos de estas nociones, equivalencia canónica y compatibilidad. Se supone que las secuencias de puntos de código que se definen como canónicamente equivalentes tienen la misma apariencia y significado cuando se imprimen o muestran. Por ejemplo, Unicode define el punto de código U+006E (la "n" en minúscula latina ) seguido de U+0303 (la tilde combinada "◌̃") como equivalente canónico al punto de código único U+00F1 (la letra en minúscula letra " ñ " del alfabeto español ). Por lo tanto, esas secuencias deben mostrarse de la misma manera, deben ser tratadas de la misma manera por aplicaciones como alfabetizar nombres obúsqueda , y pueden sustituirse entre sí. De manera similar, cada bloque de sílaba Hangul que se codifica como un solo carácter puede codificarse de manera equivalente como una combinación de un jamo conjunto inicial, un jamo conjunto de vocales y, si corresponde, un jamo conjunto final.

Se supone que las secuencias que se definen como compatibles tienen apariencias posiblemente distintas, pero el mismo significado en algunos contextos. Así, por ejemplo, el punto de código U+FB00 (la ligadura tipográfica "f") se define como compatible, pero no canónicamente equivalente, a la secuencia U+0066 U+0066 (dos letras latinas "f"). Las secuencias compatibles pueden tratarse de la misma manera en algunas aplicaciones (como clasificación e indexación ), pero no en otras; y pueden sustituirse entre sí en algunas situaciones, pero no en otras. Las secuencias que son canónicamente equivalentes también son compatibles, pero lo contrario no es necesariamente cierto.

El estándar también define un procedimiento de normalización de texto , llamado normalización Unicode , que reemplaza secuencias equivalentes de caracteres de modo que dos textos equivalentes se reduzcan a la misma secuencia de puntos de código, denominado forma de normalización o forma normal del texto original. Para cada una de las dos nociones de equivalencia, Unicode define dos formas normales, una completamente compuesta (donde los puntos de código múltiples se reemplazan por puntos únicos siempre que sea posible) y otra completamente descompuesta (donde los puntos únicos se dividen en varios).

Por compatibilidad u otras razones, Unicode a veces asigna dos puntos de código diferentes a entidades que son esencialmente el mismo carácter. Por ejemplo, el carácter "Å" se puede codificar como U+00C5 (nombre estándar "LETRA A MAYÚSCULA LATINA CON ANILLO ARRIBA", una letra del alfabeto en sueco y varios otros idiomas ) o como U+212B ("SIGNO ANGSTROM" ). Sin embargo, el símbolo de angstrom se define como esa letra sueca, y la mayoría de los otros símbolos que son letras (como "V" de voltio ) no tienen un punto de código separado para cada uso. En general, los puntos de código de caracteres verdaderamente idénticos (que se pueden representar de la misma manera en fuentes Unicode) se definen como canónicamente equivalentes.

Para mantener la coherencia con algunos estándares anteriores, Unicode proporciona puntos de código únicos para muchos caracteres que podrían verse como formas modificadas de otros caracteres (como U+00F1 para "ñ" o U+00C5 para "Å") o como combinaciones de dos o más caracteres (como U+FB00 para la ligadura "f" o U+0132 para la letra holandesa " IJ ")