xmerl_xpath
module handles the entire XPath 1.0 spec
XPath expressions typically occurs in XML attributes and are used to addres
parts of an XML document.
The grammar is defined in xmerl_xpath_parse.yrl
.
The core functions are defined in xmerl_xpath_pred.erl
.
c(xmerl_xpath_scan). yecc:yecc("xmerl_xpath_parse.yrl", "xmerl_xpath_parse", true, []). c(xmerl_xpath_parse). xmerl_xpath_parse:parse(xmerl_xpath_scan:tokens("position() > -1")). xmerl_xpath_parse:parse(xmerl_xpath_scan:tokens("5 * 6 div 2")). xmerl_xpath_parse:parse(xmerl_xpath_scan:tokens("5 + 6 mod 2")). xmerl_xpath_parse:parse(xmerl_xpath_scan:tokens("5 * 6")). xmerl_xpath_parse:parse(xmerl_xpath_scan:tokens("-----6")). xmerl_xpath_parse:parse(xmerl_xpath_scan:tokens("parent::node()")). xmerl_xpath_parse:parse(xmerl_xpath_scan:tokens("descendant-or-self::node()")). xmerl_xpath_parse:parse(xmerl_xpath_scan:tokens("parent::processing-instruction('foo')")).
Exported Functions | |
---|---|
string/2 | See string/3 . |
string/3 | See string/5 . |
string/5 | Extracts the nodes from the parsed XML tree according to XPath. |
Options allows to customize the behaviour of the XPath scanner.
Possible options are:{namespace, #xmlNamespace}
{namespace, Nodes}
string(Str, Doc) -> docEntity()
Equivalent to string(Str, Doc, [])
.
string(Str, Doc, Options) -> docEntity()
Equivalent to string(Str, Doc, [], Doc, Options)
.
string(Str, Node, Parents, Doc, Options) -> docEntity()
Extracts the nodes from the parsed XML tree according to XPath.