Contoh XPath
- 上一页 Operator XPath
- 下一页 Pengenalan XSLT
Dalam bagian ini, kita akan belajar beberapa sintaksis dasar XPath melalui contoh.
Dokumen XML Contoh
Kami akan menggunakan dokumen XML berikut untuk contoh:
"books.xml" :
<?xml version="1.0" encoding="ISO-8859-1"?> <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>
Muat dokumen XML
Semua browser modern mendukung metode XMLHttpRequest untuk memuat dokumen XML.
Kode untuk sebagian besar browser modern:
var xmlhttp=new XMLHttpRequest()
Kode untuk browser Microsoft kuno (IE 5 dan 6):
var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
Pilih noden
Sayangnya, Internet Explorer dan cara lain yang mengolah XPath berbeda.
Dalam contoh kami, termasuk kode yang berlaku untuk sebagian besar browser populer.
Internet Explorer menggunakan metode selectNodes() untuk memilih noden dalam dokumen XML:
xmlDoc.selectNodes(xpath);
Firefox, Chrome, Opera serta Safari menggunakan metode evaluate() untuk memilih noden dalam dokumen XML:
xmlDoc.evaluate(xpath, xmlDoc, null, XPathResult.ANY_TYPE,null);
Pilih title pertama book
Contoh di bawah ini memilih title noden pertama di bawah elemen bookstore:
/bookstore/book[1]/title
Ada masalah di sini. Contoh di atas mengeluarkan hasil yang berbeda di IE dan browser lain.
IE5 serta versi yang lebih tinggi menganggap [0] sebagai noden pertama, sementara menurut standar W3C, seharusnya [1].
Untuk memecahkan masalah [0] dan [1] di IE5+, boleh tetapkan pilihan bahasa untuk XPath (SelectionLanguage).
Contoh di bawah ini memilih title noden pertama di bawah elemen bookstore:
xml.setProperty("SelectionLanguage","XPath"); xml.selectNodes("/bookstore/book[1]/title");
Pilih semua harga
Contoh di bawah ini memilih semua teks dalam noden price:
/bookstore/book/price/text()
Pilih noden price yang harga lebih tinggi daripada 35
下面的例子选取价格高于 35 的所有 price 节点:
/bookstore/book[price>35]/price
- 上一页 Operator XPath
- 下一页 Pengenalan XSLT