One of the most common uses of XPath is to create location paths. A location path describes the location of something in an XML document. In our examples in the previous chapter, we used location paths on the
select attributes of various XSLT elements. Those location paths described the parts of the XML document we wanted to work with. Most of the XPath expressions you’ll use are location paths, and most of them are pretty simple. Before we dive in to the wonders of XPath, we need to discuss the context.
One of the most important concepts in XPath is the context. Everything we do in XPath is interpreted with respect to the context. You can think of an XML document as a hierarchy of directories in a filesystem. In our sonnet example, we could imagine that
sonnet is a directory at the root level of the filesystem. The
sonnet directory would, in turn, contain directories named
lines. In this example, the context would be the current directory. If I go to a command line and execute a particular command (such as
dir *.js), the results I get vary depending on the current directory. Similarly, the results of evaluating an XPath expression will probably vary based on the context.
Most of the time, we can think of the context as the node in the tree from which any expression is evaluated. To be completely accurate, the context consists of five things:
The context node (the “current directory”). The XPath expression is evaluated ...