共用方式為


位置路徑範例

以下範例說明位置路徑的用法。

路徑

描述

child::node()

選取內容節點的所有子系,不論其節點型別為何。

attribute::name

選取內容節點的 name 屬性。

attribute::*

選取內容節點的所有屬性。

descendant::para

選取內容節點的 <para> 項目子代。

ancestor::div

選取內容節點的所有 <div> 祖系。

ancestor-or-self::div

選取內容節點的 <div> 祖系,若內容節點為 <div> 項目,則要同時選取內容節點。

descendant-or-self::para

選取內容節點的 <para> 項目子代,若內容節點為 <para> 項目,則要同時選取內容節點。

self::para

若內容節點為 <para> 項目則加以選取;否則不做任何選取。

child::chapter/descendant::para

針對內容節點的 <chapter> 項目子代,選取其 <para> 項目子代。

child::*/child::para

選取內容節點的所有 <para> 孫代。

/

選取文件根 (一律為文件項目的父代)。

/descendant::para

選取與內容節點相同的文件中所有的 <para> 項目。

/descendant::olist/child::item

選取與內容節點相同的文件中所有具有 <olist> 父代的 <item> 項目。

child::para[position()=1]

選取內容節點的第一個 <para> 子系。

child::para[position()=last()]

選取內容節點的最後一個 <para> 子系。

child::para[position()=last()-1]

選取內容節點的倒數第二個 <para> 子系。

child::para[position()&gt;1]

選取內容節點的所有 <para> 子系 (除了內容節點的第一個 <para> 子系之外)。

/descendant::figure[position()=42]

選取文件中第 42 個 <figure> 項目。

/child::doc/child::chapter[position()=5]/child::section[position()=2]

選取 <doc> 文件項目的第 5 個 <chapter> 項目所含的第 2 個 <section> 項目。

child::para[attribute::type="warning"]

選取內容節點中所有將 type 屬性設為 "warning" 值的 <para> 子系。

child::para[attribute::type="warning"][position()=5]

選取內容節點中將 type 屬性設為 "warning". 值的第 5 個 <para> 子系。

child::para[position()=5][attribute::type="warning"]

選取內容節點的第 5 個 <para> 子系,前提是該子系必須要有設為 "warning". 值的 type 屬性。

child::chapter[child::title="Introduction"]

選取內容節點中有一或多個 <title> 子系具有 "Introduction" 同等字串值的 <chapter> 子系。

child::chapter[child::title]

選取內容節點中具有一或多個 <title> 子系的 <chapter> 子系。

child::*[self::chapter or self::appendix]

選取內容節點的 <chapter> 和 <appendix> 子系。

child::*[self::chapter or self::appendix][position()=last()]

選取內容節點的最後一個 <chapter> 或 <appendix> 子系。

請參閱

參考

XPath 範例