Nodos XPath
Terminología XPath
Nodos
En XPath, hay siete tipos de nodos: elemento, atributo, texto, espacio de nombres, instrucción de procesamiento, comentario y documento.
Los documentos XML se tratan como árboles de nodos. El elemento superior del árbol se llama elemento raíz.
Mira el siguiente documento XML:
<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book>
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>
Ejemplo de nodos en el documento XML anterior:
<bookstore> (root element node)
<author>J K. Rowling</author> (element node)
lang="en" (attribute node)
Valores atómicos
Los valores atómicos son nodos sin hijos ni padres.
Ejemplo de valores atómicos:
J K. Rowling
"en"
Elementos
Los elementos son valores atómicos o nodos.
Relación de nodos
Padre
Cada elemento y atributo tiene un padre.
En el siguiente ejemplo; el elemento libro es el padre del título, autor, año y precio:
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
Niños
Los nodos de elemento pueden tener cero, uno o más hijos.
En el siguiente ejemplo; los elementos título, autor, año y precio son todos elementos secundarios del elemento libro:
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
Hermanos
Nodos que tienen el mismo padre.
En el siguiente ejemplo; los elementos título, autor, año y precio son todos hermanos:
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
antepasados
El padre de un nodo, el padre del padre, etc.
En el siguiente ejemplo; los ancestros del elemento del título son el elemento del libro y el elemento de la librería:
<bookstore>
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>
Descendientes
Los hijos de un nodo, los hijos de los hijos, etc.
En el siguiente ejemplo; los descendientes del elemento librería son los elementos libro, título, autor, año y precio:
<bookstore>
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>