XPath es un lenguaje para la búsqueda de información en un documento XML, usado para navegar por sus elementos y atributos. Con más de 100 funciones de comparación y manipulación de cadenas de carácteres ( strings ), números… constituye uno de los pilares de XSLT.
Selección de elementos
Imaginemos que queremos acceder a determinada información del siguiente ejemplo de XML:
| Pantalla Completa Colorear | |
000 |
|
XPath nos ofrece las expresiones:
nombreNodo Selecciona todos los nodos de nombre nombreNodo.
/ Selecciona el nodo raiz o nodos hijo del nodo actual.
// Selecciona todos nodos hijo, nieto… del nodo actual.
. Selecciona el nodo actual.
.. Selecciona el nodo padre del nodo actual.
@ Selecciona atributos del nodo actual
[ ] Selecciona nodos que cumplen una propiedad
* Selecciona cualquier nodo o atributo
| Selecciona múltiples expresiones de forma simultánea
Operadores
Para comparar y modificar valores, disponemos de los operadores normales de cualquier lenguaje:
+ Suma
- Resta
* Multiplicación
div División
= Igual
!= Diferente
< Menor
<= Menor o igual
> Mayor
>= Mayor o igual
or O
and Y
mod Módulo, resto de la división
Ejemplos
Veamos algunos ejemplos a partir del XML anterior:
/contactos/persona
Selecciona todos los nodos de nombre persona que son hijos del nodo / nodos contactos/contactos/persona/phone@pais
Selecciona todos los atributos pais de elementos phone hijos de persona y nietos de contactos/contactos/persona[name = 'Eloi']
Selecciona todos los nodos persona hijos de contactos cuyo hijo name tenga valor Eloi/contactos/persona/phone[@pais = 'uk'] | /contactos/persona/phone[@pais = 'es']
Selecciona todos los nodos phone hijos de persona y nietos de contactos cuyo atributo pais tenga valor uk y lo mismo con uk
Archivado bajo: Noticias