Usando simples XPath para pesquisar XML
oblema:
Uma aplicação necessita pesquisar um documento XML para obter pedaços específicos de informações.
Solução:
ColdFusion nos fornece a possibilidade de usar a linguagem XML Path (XPath) para pesquisar num documento XML, usando a função XMLSearch.
Explicacao detalhada:
Um documento XML pode nos fornecer uma grande quantidade de dados, e muitas vezes, uma aplicação somente necessita partes desses dados. Usando a função XMLSearch com uma expressão XPath pode nos ajudar a recuperar os dados necessários rápida e eficientemente.
Primeramente, a aplicação precisa obter o XML. O XML pode vir de um webservice, lendo um arquivo, ou qualquer outra maneira. Neste caso, ele será uma variável hardcoded usando-se a tag <cfsavecontent>.
<cfsavecontent variable="authorXML">
<authors>
<author firstName="Kevin" lastName="Schmidt" email="kevin.schmidt@authors.com" />
<author firstName="Ed" lastName="Sullivan" email="ed.sullivan@authors.com" />
<author firstName="Jon" lastName="Schmidt" email="jon.schmidt@authors.com" />
</authors>
</cfsavecontent>
Este é um pequeno pedaço de XML e um arquivo XML real, que tenha informações de autores, pode ter grande quantidade de outras informações relacionadas com os autores, como editora, livros, etc. Se a aplicação somente necessita a informação dos autores, usando a funcao XMLSearch permitirá a aplicação obter somente o requerido.
<cfset authors = XMLSearch( authorXML, "/authors/author" ) />
<cfdump var="#authors#" />
O código acima produz o seguinte:
Talvez a aplicação necessite obter um nível mais profundo e exibir autores com o sobrenome Schmidt. Isto é feito da mesma forma acima, mas com uma expressão XPath diferente.
<cfset authors = XMLSearch( authorXML,"/authors/author[@lastName='Schmidt']" ) />
<cfdump var="#authors#" />
O codigo acima produz o seguinte:
XPath é uma forma muito poderosa de pesquisar arquivos XML e os exemplos acima ilustram algumas das maneiras básicas de pesquisar. ColdFusion fornece as aplicações uma forma simples de usar XPath aravés da função XMLSearch.
Versão em inglês: Adobe Cookbooks
0 responses to “Usando simples XPath para pesquisar XML”