Resumen
- RFC 3987 añadió identificadores Unicode sin convertir la normalización más agresiva en una definición universal de igualdad.
- Cada comparación necesitaba declarar su propósito y conservar la cadena original junto a cualquier clave derivada.
La operación parece sencilla hasta que se pregunta para qué sirve. Un caché intenta encontrar una respuesta ya almacenada. Un navegador decide si un enlace fue visitado. Un analizador XML compara nombres. Un rastreador reduce solicitudes repetidas. RFC 3987, su estado, sus erratas y su historial explican que todos comparan IRI, pero cada propósito soporta un coste y un riesgo distintos.
La norma de enero de 2005 creó el Internationalized Resource Identifier como secuencia de caracteres Unicode y como complemento de la URI. También definió un mapeo determinista a URI para convivir con software anterior. Esa conversión fue una vía de interoperabilidad, no una declaración de que la entrada legible, los bytes, la URI resultante y el recurso fueran una sola evidencia.
RFC 3986, con estado, erratas e historial, ya había organizado la comparación de URI como una escalera. El peldaño barato conserva más falsos negativos; otros peldaños aplican reglas sintácticas o del esquema para reconocer más alias. RFC 3987 lleva esa lógica a Unicode y fija una prioridad: reducir falsos negativos puede ser útil, pero crear un falso positivo de identidad es peor.
Por eso la comparación simple no es literalmente una comparación de bytes. La misma secuencia de caracteres codificada en UTF-8 y UTF-16 produce octetos diferentes. Los sistemas deben convertir a una forma de codificación común y comparar punto de código por punto de código. En ese peldaño está prohibido mapear primero el IRI a URI, porque la conversión puede inventar equivalencias adicionales.
La distinción cambia el diseño de un índice. El campo recibido debe conservarse. La clave normalizada debe identificarse como derivada. La versión de Unicode, el algoritmo y el objetivo de comparación deben quedar registrados. Si sólo queda la clave, una futura auditoría no sabrá si el usuario escribió una forma, el contenedor la escapó, una biblioteca la normalizó o un proxy sustituyó caracteres.
NFC reduce variantes, pero tampoco es una goma universal. RFC 3987 recomienda crear IRI normalizados y aplica NFC al convertir desde papel o desde una codificación no Unicode conocida. No normaliza durante ese paso cuando la entrada ya está en una codificación Unicode. Además, rechaza que terceros normalicen arbitrariamente una secuencia existente cuyo tratamiento desconocen.
RFC 5198, su estado, sus erratas y su historial describen NFC para texto de red y la estabilidad prevista de las cadenas asignadas. Eso explica por qué la preparación coherente es valiosa. No demuestra que un intermediario tenga autoridad para reescribir un identificador ya emitido.
La normalización de percent-encoding ofrece otro peldaño. Para una comparación local pueden alinearse el caso hexadecimal y ciertas representaciones de caracteres no reservados. RFC 3987 exige conservar la forma original si el valor seguirá circulando. La clave que elimina un duplicado de caché no debe reemplazar el registro de procedencia.
Incluso una comparación correcta tiene alcance limitado. Puede establecer que dos cadenas son equivalentes bajo una regla declarada. No puede demostrar que dos cadenas distintas lleven a recursos distintos: un propietario puede publicar lo mismo bajo dos nombres. Tampoco prueba registro, autorización ni respuesta de la aplicación.
Cuando el host es internacionalizado, aparece la capa IDNA. RFC 5890, su estado, sus erratas y su historial distinguen U-label, A-label, registro y consulta. RFC 5891, con estado, erratas e historial, define validación y simetría. Una etiqueta visible no es todavía una entrada DNS válida.
RFC 5895, su estado, sus erratas y su historial, separa el mapeo de interfaz del protocolo. La cultura, el idioma, el teclado, la voz y el pegado cambian la preparación razonable. La propia RFC niega que exista un algoritmo universal para todos esos usuarios.
La lección de RFC 3987 no es que la comparación resulte imposible. Es que una comparación adquiere legitimidad al declarar propósito, reglas y límites. El caché puede usar una clave más amplia; un espacio de nombres puede exigir identidad exacta; un registro puede aplicar reglas propias. Todos deben poder volver a la cadena recibida. La dirección internacionalizada se hizo legible; la disciplina consistió en no confundir legibilidad con una licencia para borrar su historia.
Fuentes
Informe para miembros
Contexto ampliado del perfil
Inicia sesión con el nivel de membresía adecuado para desbloquear el informe completo y las notas de las fuentes.
Solo para Strategic Circle
Strategic Circle
Abierto a todos los lectores. Desbloquea informes de perfil después de unirte e iniciar sesión.
Únete a Strategic CircleSolo para Leadership Alliance
Leadership Alliance
Para propietarios y directivos cualificados de activos de propiedad intelectual; inicia sesión para desbloquear los informes de la alianza.
Unirse a Leadership Alliance
