Funciones XSLT y XPath

A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z

normalize-unicode

XPath

 

La función fn:normalize-unicode normaliza la cadena de entrada introducida en el primer argumento según una de las cuatro formas de normalización Unicode introducida en el segundo argumento.

Esto es recomendable cuando se realiza una comparación entre dos cadenas (por ejemplo, con fn:codepoint-equal), debido a que los caracteres que no pertenecen al código ASCII pueden estar codificados de diferente manera. La variación en la codificación puede ocasionar problemas. La función fn:normalize-unicode se encarga de normalizar estas diferencias.

Para establecer la forma de normalización es posible introducir una de los siguientes valores: NFC, NFD, NFKC o NFKD. Una secuencia vacía desactiva la normalización. Si no se define el segundo argumento se empleará la forma de codificación por defecto (NFC).

 

Argumentos

Cadena, cuyo código Unicode se debe normalizar

Es obligatorio, pero puede ser una secuencia vacía.

Tipo: xs:string

 

Unicode-Normalisierungsvorschrift, anhand der Eingabestring normalisiert werden soll.

Opcional

Tipo: xs:string

 

Valor de salida

Cadena de entrada normalizada

Tipo: xs:string

 

 

Ejemplo

normalize-unicode(())

Resultado:

 

 

Ejemplo

normalize-unicode('Àngelo Êgleria', 'NFD')

Resultado: Àngelo Êgleria

 

 

Ejemplo

normalize-unicode('Ångstrøn Çàrraçôï', 'NFKD')

Resultado: Ångstrøn Çàrraçôï

 

 

Ejemplo

codepoint-equal(codepoints-to-string((97, 776)), codepoints-to-string(228))

Resultado: false

Los códigos se corresponden con la letra "ñ". El carácter 'ñ' puede representarse en Unicode de varias formas distintas. Sin embargo, la comparación a través de fn:codepoint-equal dará aquí un resultado negativo. (Véase también fn:codepoint-to-string)

 

 

Ejemplo

codepoint-equal(normalize-unicode(codepoints-to-string((97, 776))), codepoints-to-string(228))

Resultado: true

Mediante la función fn:normalize-unicode se reconocerán las dos codificaciones como el mismo carácter.

  > Volver a la referencia alfabética de XSLT y XPATH