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

id

XPath
Herkunft: XSLT 1.0

 

La función fn:id devuelve una secuencia con los nodos cuyos IDs se corresponden con los introducidos en el argumento de la función. En el segundo argumento se puede introducir el nodo de documento perteneciente al documento donde se desean buscar los IDs introducidos. Si no se incluye ningún nodo de documento se buscará en el documento actual.

Los IDs de pueden introducir como secuencia de cadenas, o bien, como una única cadena en la que los diferentes IDs aparecen separados por espacios. Si se introduce una secuencia de cadenas, ésta podrá también contener los tipos xs:IDREF o xs:IDREFS como cadenas.

Se considerará que un elemento posee un determinado ID si tiene un atributo identificado con dicho ID, o bien, si el elemento mismo está identificado con el ID que se está buscando.

La identificación de un elemento o de un atributo con un ID se realiza en un Schema. En una DTD sólo se pueden identificar atributos con un ID. La comprobación de si el ID se corresponde con el ID buscado se realiza mediante los valores Unicode, si bien no puede introducirse ningún criterio de comparación (tampoco el criterio por defecto).

El orden en que los nodos aparecen en el resultado dependerá del documento buscado, no del orden en que se han introducido los IDs en la secuencia de entrada. La secuencia de salida no se repetirá ningún nodo, incluso en el caso de que se introduzca un ID dos veces. Si no se encuentra un ID de la secuencia de entrada, éste será ignorado.

 

Argumentos

Secuencia de IDs o cadena compuesta de IDs separados por espacios

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

Tipo: xs:string

 

Nodo documento del documento donde se buscarán los IDs

Opcional

Tipo: node()

 

 

Ejemplo

doc('ejemplos/ejemplo4.xml')/id(('QName'))

Resultado: Referencia a fn:sum

 

 

Ejemplo

id(('QName max'), doc('ejemplos/ejemplo4.xml'))

Resultado: Referencia a fn:sum referencia a fn:QName

 

 

Ejemplo

doc('ejemplos/ejemplo4.xml')/id(('sum', 'resolve-QName'))

Resultado: Referencia a fn:resolve-QName referencia a fn:max

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