最新的Web開發教程
 

XML和XPath


的XPath (the XML Path language)是用於在XML文檔中查找信息的語言。


什麼是XPath?

XPath的
  • XPath是XML文檔的定義部分語法
  • XPath使用路徑表達式在XML文檔中導航
  • 包含XPath的標準函數庫
  • XPath是在XSLT的主要因素
  • XPath的也是在XQuery中,XPointer的XLink的和使用
  • XPath是W3C推薦

XPath的路徑表達式

XPath使用路徑表達式在XML文檔中選擇節點或節點集。 這些路徑表達式看起來非常像你看到的,當你有一個傳統的計算機文件系統的工作表現。

今天,XPath表達式也可以使用JavaScript,Java和XML模式,PHP,Python和C和C ++,和許多其他語言的使用。


XPath是在使用XSLT

XPath是在XSLT標準的主要元素。 如果沒有XPath的知識,你將無法創建XSLT文檔。


XPath的實例

我們將使用下面的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>

在下面的表中,我們列出了一些XPath表達式和表達式的結果:

XPath表達式 結果
/bookstore/book[1] 選擇第一個book元素是書店元素的子
/bookstore/book[last()] 選擇最後一個book元素是書店元素的子
/bookstore/book[last()-1] 選擇倒數第二個book元素是書店元素的子
/bookstore/book[position()<3] 選擇前兩個book元素是書店元素的子
//title[@lang] 將選擇有一個名為郎屬性的所有title元素
//title[@lang='en'] 選擇具有的所有title元素的"lang" ,值為屬性"en"
/bookstore/book[price>35.00] 選擇具有price元素的值bookstore元素的所有book元素大於35.00
/bookstore/book[price>35.00]/title 選擇具有price元素的值bookstore元素的book元素的所有title元素大於35.00

如果您想了解更多的XPath,請閱讀我們的XPath教程