XPath Axes
The XPath specification defines 13 different axes; each axis contains various nodes. The nodes that are in a given axis depend on the context node. All 13 axes, excerpted from our more involved discussion in The XPath Data Model” in Chapter 3, are listed here.
childaxisContains the children of the context node. As we’ve already mentioned, the XPath expressions
child::lines/child::lineandlines/lineare equivalent. If an XPath expression (such assonnet) doesn’t have an axis specifier, thechildaxis is used by default.parentaxisContains the parent of the context node, if there is one. (If the context node is the root node, the
parentaxis returns an empty node-set.) As a step in an XPath expression, theparentaxis can be abbreviated with the double period (..); this moves up to the current node’s parent. If the<first-name>and<last-name>elements are both children of the<author>element, and the context node is the<first-name>element, the expressions../last-name,parent::author/last-nameandparent::*/last-nameare equivalent. If the context node does not have a parent, this axis returns an empty node-set.selfaxisContains the context node itself. As a step in an XPath expression, the
selfaxis can be abbreviated with a single period (.). The expressions.,self::node(), andself::*are equivalent in XSLT 1.0.[2.0] In XSLT 2.0, the
selfaxis selects the context item, which might not be a node. If the context item is an atomic value, the expressionsself::node() ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access