|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.anakia.XPathTool
This class adds an entrypoint into XPath functionality, for Anakia.
All methods take a string XPath specification, along with a context, and produces a resulting java.util.List.
The W3C XPath Specification (http://www.w3.org/TR/xpath) refers to NodeSets repeatedly, but this implementation simply uses java.util.List to hold all Nodes. A 'Node' is any object in a JDOM object tree, such as an org.jdom.Element, org.jdom.Document, or org.jdom.Attribute.
To use it in Velocity, do this:
#set $authors = $xpath.applyTo("document/author", $root)
#foreach ($author in $authors)
$author.getValue()
#end
#set $chapterTitles = $xpath.applyTo("document/chapter/@title", $root)
#foreach ($title in $chapterTitles)
$title.getValue()
#end
In newer Anakia builds, this class is obsoleted in favor of calling
selectNodes() on the element directly:
#set $authors = $root.selectNodes("document/author")
#foreach ($author in $authors)
$author.getValue()
#end
#set $chapterTitles = $root.selectNodes("document/chapter/@title")
#foreach ($title in $chapterTitles)
$title.getValue()
#end
| Constructor Summary | |
XPathTool()
Constructor does nothing, as this is mostly just objectified static methods |
|
| Method Summary | |
NodeList |
applyTo(String xpathSpec,
Document doc)
Apply an XPath to a JDOM Document |
NodeList |
applyTo(String xpathSpec,
Element elem)
Apply an XPath to a JDOM Element |
NodeList |
applyTo(String xpathSpec,
List nodeSet)
Apply an XPath to a nodeset |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public XPathTool()
| Method Detail |
public NodeList applyTo(String xpathSpec,
Document doc)
xpathSpec - The XPath to applydoc - The Document context
public NodeList applyTo(String xpathSpec,
Element elem)
xpathSpec - The XPath to applyelem - The Element context
public NodeList applyTo(String xpathSpec,
List nodeSet)
xpathSpec - The XPath to applynodeSet - The nodeset context
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||