XPath Örnekleri
- Kişisel olarak deneyin XPath Operatörleri
- Önceki Sayfa Sonraki Sayfa
Bu bölümden, temel XPath gramerlerini örneklerle öğrenelim.
XML Örnek Belgesi
Aşağıdaki örnekte bu XML belgesini kullanacağız:
"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>
XML belgesi yükleme
Tüm modern tarayıcılar, XML belgelerini yüklemek için XMLHttpRequest kullanımını destekler.
Çoğu modern tarayıcı için kod:
var xmlhttp=new XMLHttpRequest()
Eski Microsoft tarayıcılar (IE 5 ve 6) için kod:
var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
Düğüm seçin
Maalesef, Internet Explorer ve diğer XPath işleme yöntemleri farklıdır.
Örnek kodumuz, çoğu popüler tarayıcıya uygundur.
Internet Explorer, selectNodes() yöntemini kullanarak XML belgesinden düğümleri seçer:
xmlDoc.selectNodes(xpath);
Firefox, Chrome, Opera ve Safari, evaluate() yöntemini kullanarak XML belgesinden düğümleri seçer:
xmlDoc.evaluate(xpath, xmlDoc, null, XPathResult.ANY_TYPE,null);
Tüm title seçin
Aşağıdaki örnek, tüm title düğümlerini seçer:
/bookstore/book/title
选取第一个 book 的 title
IE5+'te [0] ve [1] sorunlarını çözmek için XPath'e dil seçimi (SelectionLanguage) ayarlanabilir.
İlk book'un title'ını seçin
/bookstore/book[price>35]/title
/bookstore/book[1]/title
Burada bir sorun var. Yukarıdaki örnek IE ve diğer tarayıcılar arasında farklı sonuçlar verir.
IE5 ve daha yüksek sürümler [0]'yi ilk düğüm olarak görürken, W3C standartlarına göre [1] olmalıdır.
IE5+'te [0] ve [1] sorunlarını çözmek için XPath'e dil seçimi (SelectionLanguage) ayarlanabilir.
Aşağıdaki örnek, bookstore elementi altındaki ilk book düğümünün title'ını seçer: xml.setProperty("SelectionLanguage","XPath");
xml.selectNodes("/bookstore/book[1]/title");
Tüm fiyatları seçin
price düğümlerindeki tüm metni seçen örnekler aşağıda verilmiştir:
/bookstore/book/price/text()
35'den yüksek fiyatlı price düğümlerini seçin
35'den yüksek fiyatlı tüm price düğümlerini seçen örnekler aşağıda verilmiştir:
/bookstore/book[price>35]/price
35'den yüksek fiyatlı title düğümlerini seçin
35'den yüksek fiyatlı tüm title düğümlerini seçen örnekler aşağıda verilmiştir:
- Kişisel olarak deneyin XPath Operatörleri
- Önceki Sayfa Sonraki Sayfa