Axes (Ejes) XPath
- Página anterior Sintaxis XPath
- Página siguiente Operadores XPath
Documento de ejemplo de XML
Vamos a usar este documento XML en los siguientes ejemplos:
<?xml version="1.0" encoding="ISO-8859-1"?> <bookstore><title lang="eng">Harry Potter</title> <price>29.99</price> </book> <title lang="eng">Learning XML</title> <price>39.95</price> </book> </bookstore>
eje de XPath
el eje puede definir un conjunto de nodos en relación con el nodo actual. | resultado |
---|---|
nombre de eje | ancestor |
seleccionar todos los antepasados (padre, abuelo, etc.) del nodo actual. | ancestor-or-self |
seleccionar todos los antepasados (padre, abuelo, etc.) del nodo actual y el nodo actual en sí mismo. | seleccionar todas las propiedades del nodo actual. |
attribute | seleccionar todos los elementos hijos del nodo actual. |
child | descendant |
seleccionar todos los elementos descendientes del nodo actual (hijos, nietos, etc.). | descendant-or-self |
seleccionar todos los elementos descendientes del nodo actual (hijos, nietos, etc.) y el nodo actual en sí mismo. | following |
seleccionar todos los nodos después de la etiqueta de finalización del nodo actual en el documento. | namespace |
seleccionar todos los nodos de espacio de nombres del nodo actual. | parent |
seleccionar el nodo padre del nodo actual. | preceding |
seleccionar todos los nodos antes de la etiqueta de inicio del nodo actual en el documento. | preceding-sibling |
seleccionar todos los nodos同级antes del nodo actual. | self |
seleccionar el nodo actual.
expresión de la ruta de posición
la expresión de la ruta de posición puede ser absoluta o relativa.
la ruta de posición puede ser absoluta o relativa. La ruta de posición absoluta comienza con una barra invertida (/), mientras que la relativa no. En ambos casos, la ruta de posición incluye uno o más pasos, cada uno separado por una barra:
/step/step/...
ruta de posición relativa:
step/step/...
cada paso se calcula basándose en los nodos dentro del conjunto de nodos actual.
paso (step) incluye:
- eje (axis)
- definir la relación de árbol entre el nodo seleccionado y el nodo actual
- prueba de nodo (node-test)
- identificar los nodos dentro de un eje específico
- cero o más predicados (predicate)
- refinar más profundamente el conjunto de nodos seleccionados
sintaxis del paso:
nombre de eje::nodo prueba[predicado]
instancia
ejemplo | resultado |
---|---|
child::book | seleccionar todos los nodos book que pertenecen a los elementos hijos del nodo actual. |
attribute::lang | seleccionar la propiedad lang del nodo actual. |
child::* | seleccionar todos los elementos hijos del nodo actual. |
attribute::* | seleccionar todas las propiedades del nodo actual. |
child::text() | seleccionar todos los nodos de texto hijos del nodo actual. |
child::node() | seleccionar todos los nodos hijos del nodo actual. |
descendant::book | Seleccionar todos los descendientes book del nodo actual |
ancestor::book | Seleccionar todos los antepasados book del nodo actual |
ancestor-or-self::book | Seleccionar todos los antepasados book del nodo actual y el nodo actual (si este nodo es un nodo book) |
child::*/child::price | Seleccionar todos los nodos hijos price del nodo actual. |
- Página anterior Sintaxis XPath
- Página siguiente Operadores XPath