LMSGI05 - DAM - Lenguajes de marcas y sistemas de gestión de información - UT5.- Conversión y adaptación de documentos XML. Contenidos.
4.1.- Términos básicos.
Nodos
Un documento XML es tratado en XPath como un árbol de nodos. Hay 7 tipos de nodos: elemento, atributo, texto, espacio de nombres, instrucción de proceso, comentario y documento. El elemento más alto del árbol es el nodo raíz. Explicamos más sobre algunos de ellos:
- Nodo raíz, es el nodo que contiene al ejemplar del fichero XML.
- ¡Cuidado! No lo confundamos con el elemento raíz del documento, ya que éste último está por debajo de él.
- Nodos elemento, son cada uno de los elementos del documento XML.
- Tienen un elemento padre.
- El padre del elemento raíz, es decir del ejemplar, es el nodo raíz del documento.
- Pueden tener identificadores únicos, lo que permite referenciarlos de forma mucho más directa. Para ello es necesario que el atributo esté definido en un DTD o un fichero XSD asociado.
- Nodos texto, son aquellos caracteres del documento que no están marcados con ninguna etiqueta.
- No tienen hijos.
- Nodos atributo, son los atributos de un elemento.
- Se consideran etiquetas añadidas al nodo elemento.
- No se consideran hijos de ese elemento.
- Aquellos atributos que tengan un valor asignado en el esquema asociado, se tratarán como si ese valor se le hubiese dado al escribir el documento XML.
- Para las definiciones de los espacios de nombre y para aquellos atributos que se han definido con la propiedad
#IMPLIED
en su DTD no se crean nodos.
En el ejemplo de antes:
<?xml version="1.0" encoding="UTF-8"?>
<matriculas>
<alumno>
<nombre>Pedro</nombre>
<apellido1>López</apellido1>
<apellido2>Ortega</apellido2>
<DNI pais="es">López</DNI>
</alumno>
</matriculas>
<matrículas>
es el nodo elemento raíz<nombre>Pedro
</nombre
>
es un nodo elementopais
="es"
es un nodo atributo
Ítems
Los ítems pueden ser nodos o valores atómicos.
En el ejemplo, valores atómicos serían "Pedro", o "es"
Relaciones entre nodos
Según como si sitúen los nodos dentro del árbol, se habla de las relaciones entre ellos. Así se dice que hay relaciones padre-hijo, hermano, ascendentes y descendentes.
En ejemplo anterior, algunas de estas relaciones son:
<nombre>
es hijo de<alumno>
.<nombre>
y<DNI>
son hermanos.<matriculas>
es un ascendiente de<nombre>
<apellido1>
es descendiente de<matriculas>