An XPath expression is compiled using the XPath parser.
See: Description
Interface Summary | |
---|---|
Parameters | A class for representing function parameters. |
XPathExpression | Interface representing an XPath expression. |
Class Summary | |
---|---|
BooleanResult | Represents a boolean result. |
FunctionState | A class for holding onto state information for extension function calls, such as the funciton parameters. |
NodeSet | Represents a node-set. |
NumberResult | Represents a number result. |
StringResult | Represents a string result. |
VariableSet | An abstract class which allows the use of variables when evaluating XPath expressions. |
VariableSetImpl | An implementation of VariableSet which is used to provide variable bindings that can be used when evaluating an XPath expression. |
XPathContext | Base implementation of an XPath context. |
XPathException | Indicates an error occured while evaluating an XPath expression. |
XPathFunction | Abstract class representing an XPath function. |
XPathNode | Abstract class representing a node in a document tree, on which XPath expressions can be evaluated. |
XPathParser | The XPath parser. |
XPathResult | Abstract class representing the result of an XPath expression. |
An XPath expression is compiled using the XPath parser. To obtain a new parser instance use the static method {@link com.intalio.n3.xpath.XPathParser#newInstance newInstance}. Once obtained, the parser can be used to create XPath expressions using the {@link com.intalio.n3.xpath.XPathParser#createExpression createExpression} method. Expressions are compiled and can be reused multiple times. The parser is thread-safe and can be used to create multiple expressions concurrently.
{@link com.intalio.n3.xpath.XPathExpression} is an abstract class representing an XPath expression. The primary method is {@link com.intalio.n3.xpath.XPathExpression#evaluate evaluate} that is used to evaluates the expression and returns the XPath result.
An XPath result is represented by the abstract class {@link com.intalio.n3.xpath.XPathResult}. An XPath result can be one of the following four types:
In order to evaluate an XPath expression, an XPath context is required. An XPath context provides a way to manage a stock of node-sets, resolve variable and function names, and return the size and position of the context. {@link com.intalio.n3.xpath.XPathContext} provides a base implementation of an XPath context. This implementation is not thread-safe, care must be taken not to use the same context when evaluating expressions concurrently.
Impelementations may wish to extend this class and provide additional facilities for locating the document order of a node, or providing a function library. {@link com.intalio.n3.xpath.Variables} provides variable bindings that can be used when evaluating an XPath expression, and {@link com.intalio.n3.xpath.XPathFunction} can be used to implement extension functions.
{@link com.intalio.n3.xpath.XPathNode} is an abstract class representing a node in a document tree, on which XPath expressions can be evaluated. This abstract class provides all the services required by XPath, and enables multiple implementations to exist. It does not make use of iterators or traversals, but assumes double-linked lists are used to maintain node lists.