XPath Nodo
Terminología de XPath
Nodo
En XPath, hay siete tipos de nodos: elementos, atributos, texto, espacios de nombres, instrucciones de procesamiento, comentarios y nodos de documento (raíz). Los documentos XML se tratan como un árbol de nodos. La raíz del árbol se llama nodo de documento o nodo raíz.
Consulte el siguiente documento XML:
<bookstore>
<book>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>
Ejemplos de nodos en el documento XML anterior:
<author>J K. Rowling</author> (nodo de elemento)
lang="en" (nodo de atributo)
Valor básico (o valor atómico, Atomic value)
Un valor básico es un nodo sin padre ni hijos.
Ejemplos de valores básicos:
"en"
Ítem (Item)
Un ítem es un valor básico o un nodo.
Relaciones entre nodos
Padre (Parent)
Cada elemento y atributo tiene un padre.
En el siguiente ejemplo, el elemento book es el padre de los elementos title, author, year y price:
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
Hijos (Children)
Los nodos de elemento pueden tener cero, uno o más hijos.
En el siguiente ejemplo, los elementos title, author, year y price son hijos del elemento book:
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
Hermanos (Sibling)
Nodos que tienen el mismo padre
En el siguiente ejemplo, los elementos title, author, year y price son hermanos:
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
Ancestro (Ancestor)
El padre de un nodo, el padre del padre, etc.
En el siguiente ejemplo, los ancestros del elemento title son el elemento book y el elemento bookstore:
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>
Descendiente (Descendant)
Los hijos de un nodo, los hijos de los hijos, etc.
En el siguiente ejemplo, los descendientes de bookstore son los elementos book, title, author, year y price:
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>