2013-07-20 65 views
2

我正在瀏覽Understanding XPath Processor Terms的一些在線資料。這裏我發現如下的當前節點上下文節點的定義。需要幫助瞭解 - XPath/XSLT中的上下文節點和當前節點

當前節點 當前節點是與XPath處理器被看時它開始查詢的評價在節點。換句話說,當前節點是XPath處理器開始執行查詢時使用的第一個上下文節點。在評估查詢期間,當前節點不會更改。如果將文檔傳遞給XPath處理器,則根節點是當前節點。如果將節點傳遞給XPath處理器,則該節點是當前節點。

Conext節點 上下文節點是XPath處理器當前正在查看的節點。上下文節點在XPath處理器評估查詢時發生更改。如果將文檔傳遞給XPath處理器,則根節點是初始上下文節點。如果您將節點傳遞給XPath處理器,那麼您傳遞的節點就是初始上下文節點。在評估查詢期間,初始上下文節點也是當前節點。

雖然定義有點理解當前節點和上下文節點之間的區別,但實例並不能很好地理解實際上對我的差異。

可以給我一些很好的例子來明確地顯示以下兩件事嗎?

  • 期間xpath評價當前節點是固定的,但上下文節點正在不斷變化。
  • 上下文節點當前節點彼此共同切入。

回答

1

如果您處於XSLT範圍內,則當前節點僅相關;它指的是當前模板應用到的節點,可以使用current()訪問。

對於普通的XPath(無XSLT),此功能不可用,並且當前既不可訪問也不相關。

有關XSLT中當前節點的更多詳細信息,我指的是另一個問題上的an answer by Paul A Jungwirth