Las expresiones XPath se utilizan en orquestaciones y en definiciones de esquema de archivo sin formato cuando se necesita identificar uno o varios nodos en un mensaje o variable a fin de acceder a datos o determinar si se ha cumplido una condición.
XPath es un estándar XML que define una gramática que sirve para identificar nodos o conjuntos de nodos en documentos XML.
Puede editar las expresiones XPath predeterminadas que se generan en los siguientes paneles:
Se admite XPath 2.0.
XPath describe la ubicación de elementos XML y atributos como una vía de acceso parecida a los URL o directorios de su sistema de archivos local. Cada elemento o atributo es un nodo en un árbol que empieza por el nodo raíz. El nodo raíz contiene todo el árbol, por lo que se puede buscar cualquier nodo del árbol siguiente una vía de acceso hacia las ramificaciones.
La sintaxis básica es:
/nodo-raíz/nodo-hijo/.../nodo-elemento-final/nodo-raíz/nodo-hijo/.../nodo-elemento-final/@nodo-atributo
Determine esta vía de acceso desde el esquema XML que describe los mensajes.
XPath utiliza el símbolo @ como abreviatura para identificar atributos. Las vías de acceso sin @ o el prefijo attribute:: identifican elementos de forma predeterminada. Por ejemplo:
/PackingSlip/PONumber/Itemidentifica el elemento "Item" (elemento) que se encuentra dentro de PONumber en el nodo raíz PackingSlip.
Los nombres de nodo también puede aparecen con espacios de nombre, como tns:OrderNumber o *:Item. La parte del nombre hasta los dos puntos es un prefijo que identifica un espacio de nombres y los dos puntos constituyen un delimitador entre el espacio de nombres y el nombre local del nodo.
Los espacios de nombre son un estándar XML que sólo se utilizan para identificar elementos o atributos cuando los documentos comparten contenido de varios esquemas. Cast Iron Studio asigna y gestiona automáticamente nombres de espacio a los esquemas XML utilizados en los documentos de configuración.
Es posible que alguna vez necesite seleccionar un nodo pero únicamente si se cumple una condición. Estas condiciones de selección se conocen como predicados.
Defina predicados dentro de delimitadores, como:
/PV1/PatientDepartment[text()='Nursery']Esta expresión sólo selecciona el nodo PatientDepartment si los datos del nodo son Nursery.
/Order/OrderDetail/Item[5]Esta expresión selecciona el quinto nodo Item (elemento) dentro de OrderDetail.
Las expresiones XPath también pueden ser condiciones booleanas que se evalúen como true (verdadera) o false (falsa). Estas expresiones se pueden utilizar para seleccionar nodos específicos o simplemente para identificar una condición que debe cumplirse. Puede utilizar el Creador de expresiones para que le ayude a definir condiciones. Los operadores de XPath que pueden aparecer en las expresiones incluyen:
concat('New Order # ',/Orders/Order/OrdNumber)
count(/Orders/Order)
normalize-space(/Job/Address/Line1)
number(/PurchaseOrder/POTotal)
string(/PurchaseOrder/VendorID)
translate(/Issue/ShortDescr,
'abcdefghijklmnopqrstuvwxyz',
'ABCDEFGHIJKLMNOPQRSTUVWXYZ')
Para obtener una lista completa de las funciones de XPath, consulte la Especificación XPath (http://www.w3.org/TR/xpath).
Puede probar sus expresiones XPath frente a datos de prueba XML utilizando el evaluador de XPath.