org.dom4j
public interface XPath extends NodeFilter
XPath
represents an XPath expression after it has been parsed
from a String.
Version: $Revision: 1.20 $
Method Summary | |
---|---|
boolean | booleanValueOf(Object context)
Retrieve a boolean-value interpretation of this XPath expression when
evaluated against a given context.
|
Object | evaluate(Object context)
|
FunctionContext | getFunctionContext()
DOCUMENT ME!
|
NamespaceContext | getNamespaceContext()
DOCUMENT ME!
|
String | getText()
|
VariableContext | getVariableContext()
DOCUMENT ME!
|
boolean | matches(Node node)
|
Number | numberValueOf(Object context)
|
List | selectNodes(Object context)
|
List | selectNodes(Object context, XPath sortXPath)
|
List | selectNodes(Object context, XPath sortXPath, boolean distinct)
|
Object | selectObject(Object context)
|
Node | selectSingleNode(Object context)
|
void | setFunctionContext(FunctionContext functionContext)
Sets the function context to be used when evaluating XPath expressions
|
void | setNamespaceContext(NamespaceContext namespaceContext)
Sets the namespace context to be used when evaluating XPath expressions
|
void | setNamespaceURIs(Map map) Sets the current NamespaceContext from a Map where the keys are the String namespace prefixes and the values are the namespace URIs. |
void | setVariableContext(VariableContext variableContext)
Sets the variable context to be used when evaluating XPath expressions
|
void | sort(List list)
|
void | sort(List list, boolean distinct)
|
String | valueOf(Object context)
|
The boolean-value of the expression is determined per the
boolean(..)
core function as defined in the XPath
specification. This means that an expression that selects zero nodes will
return false
, while an expression that selects
one-or-more nodes will return true
.
Parameters: context The node, nodeset or Context object for evaluation. This value can be null
Returns: The boolean-value interpretation of this expression.
Since: 1.5
evaluate
evaluates an XPath expression and returns the
result as an {@link Object}. The object returned can either be a {@link
List} of {@link Node}instances, a {@link Node}instance, a {@link
String} or a {@link Number}instance depending on the XPath expression.
Parameters: context is either a node or a list of nodes on which to evalute the XPath
Returns: the value of the XPath expression as a {@link List}of {@link Node} instances, a {@link Node}instance, a {@link String}or a {@link Number}instance depending on the XPath expression.
Returns: the current function context
Returns: the current namespace context
getText
will return the textual version of the XPath
expression.
Returns: the textual format of the XPath expression.
Returns: the current variable context
matches
returns true if the given node matches the XPath
expression. To be more precise when evaluating this XPath expression on
the given node the result set must include the node.
Parameters: node DOCUMENT ME!
Returns: true if the given node matches this XPath expression
numberValueOf
evaluates an XPath expression and returns
the numeric value of the XPath expression if the XPath expression results
is a number, or null if the result is not a number.
Parameters: context is either a node or a list of nodes on which to evalute the XPath
Returns: the numeric result of the XPath expression or null if the result is not a number.
selectNodes
performs this XPath expression on the given
{@link Node}or {@link List}of {@link Node}s instances appending all
the results together into a single list.
Parameters: context is either a node or a list of nodes on which to evalute the XPath
Returns: the results of all the XPath evaluations as a single list
selectNodes
evaluates the XPath expression on the given
{@link Node}or {@link List}of {@link Node}s and returns the result as
a List
of Node
s sorted by the sort XPath
expression.
Parameters: context is either a node or a list of nodes on which to evalute the XPath sortXPath is the XPath expression to sort by
Returns: a list of Node
instances
selectNodes
evaluates the XPath expression on the given
{@link Node}or {@link List}of {@link Node}s and returns the result as
a List
of Node
s sorted by the sort XPath
expression.
Parameters: context is either a node or a list of nodes on which to evalute the XPath sortXPath is the XPath expression to sort by distinct specifies whether or not duplicate values of the sort expression are allowed. If this parameter is true then only distinct sort expressions values are included in the result
Returns: a list of Node
instances
Deprecated: please use evaluate(Object) instead. WILL BE REMOVED IN dom4j-1.6 !!
selectObject
evaluates an XPath expression and returns the
result as an {@link Object}. The object returned can either be a {@link
List} of {@link Node}instances, a {@link Node}instance, a {@link
String} or a {@link Number}instance depending on the XPath expression.
Parameters: context is either a node or a list of nodes on which to evalute the XPath
Returns: the value of the XPath expression as a {@link List}of {@link Node} instances, a {@link Node}instance, a {@link String}or a {@link Number}instance depending on the XPath expression.
selectSingleNode
evaluates this XPath expression on the
given {@link Node}or {@link List}of {@link Node}s and returns the
result as a single Node
instance.
Parameters: context is either a node or a list of nodes on which to evalute the XPath
Returns: a single matching Node
instance
Parameters: functionContext DOCUMENT ME!
Parameters: namespaceContext DOCUMENT ME!
Sets the current NamespaceContext from a Map where the keys are the String namespace prefixes and the values are the namespace URIs.
For example:
Map uris = new HashMap(); uris.put("SOAP-ENV", "http://schemas.xmlsoap.org/soap/envelope/"); uris.put("m", "urn:xmethodsBabelFish"); XPath xpath = document .createXPath("SOAP-ENV:Envelope/SOAP-ENV:Body/m:BabelFish"); xpath.setNamespaceURIs(uris); Node babelfish = xpath.selectSingleNode(document);
Parameters: map the map containing the namespace mappings
Parameters: variableContext DOCUMENT ME!
sort
sorts the given List of Nodes using this XPath
expression as a {@link java.util.Comparator}.
Parameters: list is the list of Nodes to sort
sort
sorts the given List of Nodes using this XPath
expression as a {@link java.util.Comparator}and optionally removing
duplicates.
Parameters: list is the list of Nodes to sort distinct if true then duplicate values (using the sortXPath for comparisions) will be removed from the List
valueOf
evaluates this XPath expression and returns the
textual representation of the results using the XPath string() function.
Parameters: context is either a node or a list of nodes on which to evalute the XPath
Returns: the string representation of the results of the XPath expression