Ultimele tutoriale de dezvoltare web
 

Exemplele XPath


Să încercăm să învețe unele sintaxa XPath de bază prin căutarea la câteva exemple.


Exemplu Documentul XML

Vom folosi următorul document XML în exemplele de mai jos.

"Books.xml":

<?xml version="1.0" encoding="UTF-8"?>

<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>

Vezi "books.xml" fișierul în browser .


Se încarcă documentul XML

Utilizarea XMLHttpRequest pentru a încărca documente XML este acceptată în toate browserele moderne.

Cod pentru cele mai moderne browsere:

var xmlhttp=new XMLHttpRequest()

Cod pentru browserele Microsoft vechi (IE 5 and 6) :

var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")

selectarea Nodurile

Din păcate, există diferite moduri de a face cu XPath în Internet Explorer și alte browsere.

În exemplele noastre am inclus cod care ar trebui să funcționeze cu cele mai multe browsere majore.

Internet Explorer utilizează selectNodes() metoda pentru a selecta nodurile din documentul XML:

xmlDoc.selectNodes( Firefox, Chrome, Opera și Safari utilizează evaluate() metoda pentru a selecta nodurile din documentul XML:

xmlDoc.evaluate( Selectează toate titlurile

Exemplul următor selectează toate nodurile din titlu:

Exemplu

/bookstore/book/title
Încearcă - l singur »

Selectați titlul primei cărți

Exemplul următor selectează titlul primului nod carte sub elementul librărie:

Exemplu

/bookstore/book[1]/title
Încearcă - l singur »

Selectează toate prețurile

Exemplul următor selectează textul din toate nodurile de preț:

Exemplu

/bookstore/book/price[text()]
Încearcă - l singur »

Selectați nodurile de preț cu preț> 35

Exemplul următor selectează toate nodurile de preț, cu un preț mai mare de 35:

Exemplu

/bookstore/book[price>35]/price
Încearcă - l singur »

Selectați nodurile cu titlu de preț> 35

Exemplul următor selectează toate nodurile din titlu, cu un preț mai mare de 35:

Exemplu

/bookstore/book[price>35]/title
Încearcă - l singur »