XPath:Axes
出典: MDC
XPath 仕様では 13 種類の軸が定められています。軸はコンテクストノードとの関連性を表し、ツリー上でのノードのコンテクストノードからの相対的な位置を示すのに用いられます。以下は XPath で利用できる 13 種類の軸のごく簡単な説明と、Gecko における対応状況を示したものです。XPath 式の使用に関するより詳しい情報は、XSLT による XML の変換の記事の最後のより詳しい読み物の節を参照して下さい。
- ancestor
- コンテクストノードの親ノードからルートノードまでの全ての祖先を示します。
- ancestor-or-self
- コンテクストノードと、その全てのルートノードを含む祖先を示します。
- attribute
- コンテクストノードの属性を示します。属性を持つのは要素のみです。この軸はアットマーク (
@) によって省略できます。 - child
- コンテクストノードの子を示します。 XPath 式で軸が指定されていなければ、デフォルトでこの軸が指定されていると認識されます。子を持つのはルートノードか要素ノードのみなので、他のノードでこの軸を使用しても何も選択されません。
- descendant
- コンテクストノードの全ての子と、その全ての子と、そのまた全ての・・・というように示します。属性ノードと名前空間ノードは含まれません。
attributeノードのparentは要素ノードですが、attributeノードはその要素ノードの子ではないからです。 - descendant-or-self
- コンテクストノードと、その全ての子孫を示します。属性ノードと名前空間ノードは含まれません。
attributeノードのparentは要素ノードですが、attributeノードはその要素ノードの子ではないからです。 - following
- コンテクストノードの後に現れる、
descendant、attribute、namespaceノードを除く全てのノードを示します。 - following-sibling
- コンテクストノードと同じ親を持ち、ソース文書内でコンテクストノードの後に現れる全てのノードを示します。
- namespace (未対応)
- コンテクストノードのスコープ内にある全てのノードを示します。この場合、コンテクストノードは要素ノードでなければなりません。
- parent
- コンテクストノードの親である単一のノードを示します。この軸は 2 つのピリオド (
..) によって省略できます。 - preceding
- 文書内でコンテクストノードの前に現れる、
ancestor、attribute、namespaceノードを除く全てのノードを示します。 - preceding-sibling
- コンテクストノードと同じ親を持ち、ソース文書内でコンテクストノードの前に現れる全てのノードを示します。
- self
- コンテクストノード自身を示します。 この軸はピリオド (
.) によって省略できます。