Exemplos XPath
Nesta seção, vamos aprender por exemplo para alguns sintaxe básica XPath.
documentos de instância XML
Usaremos este documento XML no exemplo a seguir:
"Books.xml":
<bookstore>
<book category="COOKING">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="CHILDREN">
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="WEB">
<title lang="en">XQuery Kick Start</title>
<author>James McGovern</author>
<author>Per Bothner</author>
<author>Kurt Cagle</author>
<author>James Linn</author>
<author>Vaidyanathan Nagarajan</author>
<year>2003</year>
<price>49.99</price>
</book>
<book category="WEB">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
Ver arquivo "books.xml" no seu browser .
Coloque um documento XML
Todos os navegadores modernos suportam o uso de XMLHttpRequest para carregar documentos XML.
Para a maioria de código navegadores modernos:
Para o navegador o antigo Microsoft (IE 5 e 6) do Código:
Escolha um nó
Infelizmente, o Internet Explorer e outros maneira diferente de XPath manuseio.
No nosso exemplo, continha durante a maior parte do código navegadores major.
Internet Explorer usa selectNodes () método do documento XML para selecionar nós:
Firefox, Chrome, Opera e Safari usar o método de avaliar () para selecionar os nós do documento XML:
Selecione todos os títulos
Os exemplos a seguir selecionar todos os nós de título:
Selecione o primeiro título de um livro
Os exemplos a seguir selecione elemento livraria abaixo do primeiro título nó livro:
Existe um problema. Os exemplos acima de resultados diferentes em IE e outros navegadores.
IE5 e depois o [0] considerado como o primeiro nó, e de acordo com os padrões W3C deve ser [1].
Uma solução!
A fim de resolver o IE5 + [0] e [1] do problema, você pode definir a selecção do idioma para o XPath (SelectionLanguage).
Os exemplos a seguir selecione elemento livraria abaixo do primeiro título nó livro:
Exemplos
xml.selectNodes("/bookstore/book[1]/title");
tente »
Selecione todos os preços
Os exemplos a seguir selecionar todo o preço nó de texto:
Escolha o preço é mais elevado do que o nó de preços 35
Os exemplos a seguir selecionar todos preço mais elevado do que o preço de 35 nós:
Escolha o preço nó é superior a 35 título
Os exemplos a seguir selecione todos os preços nós de título superior a 35: