domingo, 24 de junio de 2012

Expresión Xpath y contexto

Una expresión Xpath siempre será evaluada por el analizador con respecto a un contexto, de ahí la importancia del concepto.
El contexto nos indica dónde está posicionado el analizador en un momento dado dentro del documento XML.
El contexto contiene los siguientes elementos:

  • Un nodo, que se llama nodo contextual.
  • Un par de enteros positivos no nulos que señalan la posición contextual y el tamaño contextual. 
  1. La posición contextual señala la posición del nodo contextual dentro del documento XML.
  2. El tamaño contextual es el número de nodos que contiene el nodo contextual, a dicha cantidad hay que sumarle una unidad para tener en cuenta el propio nodo.
  • Un conjunto de asignaciones para variables destinadas al tratamiento de valores de variables que provengan el exterior del nodo y que tengan consecuencias en el interior nodo contextual.
  • Una biblioteca de funciones que pudieran actuar en el nodo
  • El conjunto de declaraciones de espacios de nombres que pudieran ser aplicados a la expresión

El nodo de contexto se debe proporcionar al analizador de manera previa a la expresión Xpath, aunque se le puede dar de manera implícita en el momento de proporcionarle la expresión.

Proporcionamos al analizador un nodo de contexto cuando le proporcionamos una localización absoluta dentro del documento. La localización absoluta siempre empieza en el nodo raíz del documento.

Por ejemplo, dado el documento XML catalogo.xml. La expresión de Xquery:

doc(catalogo.xml)/catalogo/producto/nombre
, proporciona al analizador un nodo de contexto que es el nodo "nombre"

Para quienes empiezan en XML es muy difícil de comprender la noción de contexto y nodo de contexto, pero es crucial lograrlo porque, de otra manera, es imposible avanzar sin tropiezos y pérdida de tiempo por el mundo del Xquery y el Xslt.


No hay comentarios:

Publicar un comentario