Saltar la navegación

4.- XPath.

Caso práctico

María dice que empieza a creer que todo es posible mediante el uso de los lenguajes de marcas. Juan le dice que en lo que a intercambio de información se refiere si es así.
Su pregunta ahora es, ¿de qué modo van a lograr separar la información de los documentos XML de las etiquetas de los mismos?
Juan les explica que para eso existe un lenguaje llamado Xpath, cuya sintaxis es muy semejante a la que se usa para desplazarse a través de un árbol de directorios en modo comando.

Fotografía de Ponencia sobre XPath
psd - www.flickr.com (CC BY)


XPath
es un estándar (diferente de XML) aprobado por el W3C, que permite navegar entre los elementos y atributos de un documento XML.

Para hacerlo, se basa en las relaciones de parentesco entre los nodos del documento.

Inicialmente se creo para utilizarlo con XLST, pero en la actualidad se utiliza también con XML Schema, Xquery, Xlink, Xpointer, Xforms, etc.

Expresiones de camino

XPath se usa definiendo expresiones de camino, para seleccionar nodos o conjuntos de nodos en un documento XML.

Esas expresiones se parecen mucho a las expresiones de camino (path) que se suelen usar en los sistemas de ficheros.

Estas expresiones se aplican a un documento XML, asumiendo que su estructura interna es la de un árbol. Al aplicar una expresión, se obtiene un conjunto de nodos (que puede ser vacío).

En el siguiente código XML de ejemplo:

<?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>
Al evaluar la expresión "/matriculas/alumno/nombre" podríamos obtener los nombres de los alumnos matriculados.

Debes conocer

En el siguiente enlace puedes encontrar el estándar de Xpath que aprobó el W3C el 16 de Noviembre de 1999 y que ha evolucionado hasta el 2017.

Recomendación del W3C sobre XPath.

Autoevaluación

Pregunta

XPath es un lenguaje XML que permite:

Respuestas

Transformar el formato de los datos de un fichero XML.

Definir un vocabulario que ha de cumplir un documento XML.

Obtener los datos del fichero XML de una base de datos.

Acceder a los datos de un fichero XML.

Retroalimentación