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

encode-for-uri

XPath

 

La función fn:encode-for-uri codifica determinados caracteres de una cadena que no pueden formar parte de un URI o están reservados para otros fines. Entre ellos figuran caracteres de control, espacios en blanco, caracteres que no formen parte del código ASCII, entre otros.

Estos caracteres se convertirán a código hexadecimal según la tabla UTF-8 y se les antepondrá el signo %. Por ejemplo, el espacio en blanco será sustituido por %20.

Entre los caracteres que no están permitidos en un URI figuran además: ';' ',' '/' '?' ':' '@' '&' '=' '+' '$' '[' ']' '%'. Si alguno de estos caracteres, u otro que no esté permitido, formase parte de una cadena representando un URI, éste será transformado en su código correspondiente.

 

Argumentos

Cadena a covertir en un URI válido.

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

Tipo: xs:string

 

Valor de salida

URI válido

Tipo: xs:string

 

 

Ejemplo

encode-for-uri('')

Resultado:

 

 

Ejemplo

encode-for-uri(' ')

Resultado: %20

 

 

Ejemplo

encode-for-uri('%')

Resultado: %25

 

 

Ejemplo

encode-for-uri('λ'')

Resultado: %CE%BB

 

 

Ejemplo

encode-for-uri('proyecto No1')

Resultado: proyecto%20No1

 

 

Ejemplo

encode-for-uri('http://data2type.de/')

Resultado: http%3A%2F%2Fdata2type.de%2F

Una codificación semejante no tiene mucho sentido, ya que también se transforman los caracteres de control necesarios en una URI. Para codificar sólo los caracteres prohibidos que puedan aparecer, puede emplearse la función fn:escape-html-uri.

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