As expressões XPath são usadas em orquestrações e definições de esquema de arquivo simples quando você precisa identificar um ou mais nós em uma mensagem ou variável para acessar dados ou determinar se uma condição foi atendida.
XPath é um padrão XML que define uma gramática para identificar nós ou conjuntos de nós (chamados de conjuntos de nós) em documentos XML.
É possível editar as expressões XPath padrão, geradas nas seguintes áreas de janela:
O XPath 2.0 é suportado.
O XPath descreve o local de elementos e atributos XML como um caminho similar para URLs ou diretórios em seu sistema de arquivos local. Cada elemento ou atributo é um nó em uma árvore que inicia com o nó-raiz. O nó-raiz contém a árvore inteira, portanto, qualquer nó na árvore pode ser localizado seguindo um caminho para baixo nas ramificações.
A sintaxe básica é:
/root-node/child-node/.../final-element-node/root-node/child-node/.../final-element-node/@attribute-node
Você determina esse caminho a partir do Esquema XML que descreve as mensagens.
O XPath usa o símbolo @ como uma abreviatura para identificar os atributos. Os caminhos sem @, ou o prefixo attribute::, identificam os elementos por padrão. Por exemplo:
/PackingSlip/PONumber/Itemidentifica o elemento Item localizado dentro de PONumber no nó-raiz PackingSlip.
Os nomes de nós também podem aparecer com namespaces, tal como tns:OrderNumber ou *:Item. A parte do nome até os dois pontos é um prefixo que identifica um namespace e os dois pontos são o delimitador entre o namespace e o nome local do nó.
Os espaços de nomes são um padrão XML usado para identificar exclusivamente elementos ou atributos quando os documentos compartilham conteúdo de vários esquemas. O Cast Iron Studio designa e gerencia automaticamente namespaces para os Esquemas XML usados nos documentos de configuração.
Ocasionalmente, você pode desejar selecionar um nó apenas se alguma condição for atendida. Essas condições de seleção são conhecidas como predicados.
Você define os predicados entre colchetes, tais como:
/PV1/PatientDepartment[text()='Nursery']Esta expressão seleciona o nó PatientDepartment apenas se os dados no nó forem Nursery.
/Order/OrderDetail/Item[5]Esta expressão seleciona o quinto nó de Item em OrderDetail.
As expressões XPath também podem ser condições booleanas que são avaliadas como true ou false. Essas expressões podem ser usadas para selecionar nós específicos ou simplesmente para identificar uma condição que deve ser atendida. É possível usar o Construtor de Expressões para ajudar a definir condições. Os operadores XPath que podem aparecer nas expressões incluem:
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 uma lista completa de funções XPath, consulte a Especificação XPath ( http://www.w3.org/TR/xpath).
É possível testar suas Expressões XPath com relação a dados de teste XML usando o Avaliador de XPath.