Note
In particular, each call to this method will create a new XPathContext, a new DTMManager... and thus a new DTM. That's very safe, since it guarantees that you're always processing against a fully up-to-date view of your document. But it's also portentially very expensive, since you're rebuilding the DTM every time. You should consider using an instance of CachedXPathAPI rather than these static methods.
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public static XObject | |
| public static XObject | Returns: An XObject, which can be used to obtain a string, number, nodelist, etc, should never be null.The node to start searching from. contextNode, String A valid XPath string. str, Node The node from which prefixes in the XPath will be resolved to namespaces. namespaceNode)Evaluate XPath string to an XObject. |
| public static XObject | Returns: An XObject, which can be used to obtain a string, number, nodelist, etc, should never be null.The node to start searching from. contextNode, String A valid XPath string. str, PrefixResolver Will be called if the parser encounters namespace
prefixes, to resolve the prefixes to URLs. prefixResolver)Evaluate XPath string to an XObject. |
| public static NodeIterator | Returns: A NodeIterator, should never be null.The node to start searching from. contextNode, String A valid XPath string. str)Use an XPath string to select a nodelist. |
| public static NodeIterator | Returns: A NodeIterator, should never be null.The node to start searching from. contextNode, String A valid XPath string. str, Node The node from which prefixes in the XPath will be resolved to namespaces. namespaceNode)Use an XPath string to select a nodelist. |
| public static NodeList | Returns: A NodeIterator, should never be null.The node to start searching from. contextNode, String A valid XPath string. str)Use an XPath string to select a nodelist. |
| public static NodeList | Returns: A NodeIterator, should never be null.The node to start searching from. contextNode, String A valid XPath string. str, Node The node from which prefixes in the XPath will be resolved to namespaces. namespaceNode)Use an XPath string to select a nodelist. |
| public static Node | Returns: The first node found that matches the XPath, or null.The node to start searching from. contextNode, String A valid XPath string. str)Use an XPath string to select a single node. |
| public static Node | Returns: The first node found that matches the XPath, or null.The node to start searching from. contextNode, String A valid XPath string. str, Node The node from which prefixes in the XPath will be resolved to namespaces. namespaceNode)Use an XPath string to select a single node. |
| XPathAPI | back to summary |
|---|---|
| public XPathAPI() | |
| eval | back to summary |
|---|---|
| public static XObject eval(Node contextNode, String str) throws TransformerException Evaluate XPath string to an XObject. Using this method, XPath namespace prefixes will be resolved from the namespaceNode.
| |
| eval | back to summary |
|---|---|
| public static XObject eval(Node contextNode, String str, Node namespaceNode) throws TransformerException Evaluate XPath string to an XObject. XPath namespace prefixes are resolved from the namespaceNode. The implementation of this is a little slow, since it creates a number of objects each time it is called. This could be optimized to keep the same objects around, but then thread-safety issues would arise.
| |
| eval | back to summary |
|---|---|
| public static XObject eval(Node contextNode, String str, PrefixResolver prefixResolver) throws TransformerException Evaluate XPath string to an XObject. XPath namespace prefixes are resolved from the namespaceNode. The implementation of this is a little slow, since it creates a number of objects each time it is called. This could be optimized to keep the same objects around, but then thread-safety issues would arise.
| |
| selectNodeIterator | back to summary |
|---|---|
| public static NodeIterator selectNodeIterator(Node contextNode, String str) throws TransformerException Use an XPath string to select a nodelist. XPath namespace prefixes are resolved from the contextNode.
| |
| selectNodeIterator | back to summary |
|---|---|
| public static NodeIterator selectNodeIterator(Node contextNode, String str, Node namespaceNode) throws TransformerException Use an XPath string to select a nodelist. XPath namespace prefixes are resolved from the namespaceNode.
| |
| selectNodeList | back to summary |
|---|---|
| public static NodeList selectNodeList(Node contextNode, String str) throws TransformerException Use an XPath string to select a nodelist. XPath namespace prefixes are resolved from the contextNode. | |
| selectNodeList | back to summary |
|---|---|
| public static NodeList selectNodeList(Node contextNode, String str, Node namespaceNode) throws TransformerException Use an XPath string to select a nodelist. XPath namespace prefixes are resolved from the namespaceNode. | |
| selectSingleNode | back to summary |
|---|---|
| public static Node selectSingleNode(Node contextNode, String str) throws TransformerException Use an XPath string to select a single node. XPath namespace prefixes are resolved from the context node, which may not be what you want (see the next method). | |
| selectSingleNode | back to summary |
|---|---|
| public static Node selectSingleNode(Node contextNode, String str, Node namespaceNode) throws TransformerException Use an XPath string to select a single node. XPath namespace prefixes are resolved from the namespaceNode. | |