Compartir a través de


Pruebas de tipo de nodo

Para seleccionar tipos de nodos distintos a los nodos de elementos, o además de éstos, utilice una prueba de tipo de nodo.Al utilizar una prueba de tipo de nodo se invalida el tipo de nodo principal para un eje determinado.Por ejemplo, descendant::text() sitúa todos los nodos de texto que descienden del nodo de contexto, aunque el tipo de nodo principal para el eje descendiente sea un elemento.

Existen cuatro pruebas de tipos de nodos, tal y como muestra la siguiente tabla.

Tipo de nodo

Valores devueltos

Ejemplo

comment()

Verdadero para un nodo de comentario.

following::comment() selecciona todos los nodos de comentario que aparecen después del nodo de contexto.

node()

Verdadero para un nodo de cualquier tipo.

preceding::node() selecciona todos los nodos que aparecen antes del nodo de contexto.

processing-instruction()

Verdadero para un nodo de instrucción de procesamiento.

self::processing instruction() selecciona todos los nodos de instrucción de procesamiento que se incluyen en el nodo de contexto.

text()

Verdadero para un nodo de texto.

child::text() selecciona los nodos de texto que son secundarios del nodo de contexto.

Nota

La prueba de processing-instruction() puede tener un argumento que sea literal; en este caso, es verdadero para cualquier instrucción de procesamiento que tenga un nombre igual al del valor del literal.Para obtener más información, vea Pruebas de instrucciones de procesamiento de destino.

Los paréntesis, (), al final de la prueba de tipo de nodo son fundamentales.Su presencia elimina cualquier problema que pueda surgir si el documento de origen tiene nodos cuyos nombres son comentarios, textos, instrucciones de procesamiento o nodos.Cuando una aplicación XPath encuentra el paréntesis doble, reconoce que se trata de una prueba de tipo de nodo, y no una prueba de nombre para nodos con esos nombres.Del mismo modo, las pruebas de tipo de nodo no son funciones de XPath. Recuerde que las referencias a estas funciones también incluyen paréntesis, están vacías, etc.

Vea también

Referencia

Pruebas de nodos

Comprobaciones de nombres

Pruebas de instrucción de procesamiento de destino