Provided by: erlang-manpages_20.2.2+dfsg-1ubuntu2_all bug

NAME

       xmerl_xpath - The xmerl_xpath module handles the entire XPath 1.0 spec.

DESCRIPTION

       The  xmerl_xpath  module  handles  the  entire XPath 1.0 spec. XPath expressions typically
       occur in XML attributes and are used to address parts of an XML document. The  grammar  is
       defined in xmerl_xpath_parse.yrl. The core functions are defined in xmerl_xpath_pred.erl.

       Some useful shell commands for debugging the XPath parser

        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')")).

DATA TYPES

         docEntity() = #xmlDocument{} | [docNodes()]:

         docNodes()  =  #xmlElement{} | #xmlAttribute{} | #xmlText{} | #xmlPI{} | #xmlComment{} |
         #xmlNsNode{}:

         nodeEntity() = #xmlElement{} | #xmlAttribute{} | #xmlText{} | #xmlPI{} | #xmlComment{} |
         #xmlNsNode{} | #xmlDocument{}:

         option_list():

           Options allows to customize the behaviour of the XPath scanner.

           Possible options are:

           {namespace, #xmlNamespace}:
             Set namespace nodes, from XmlNamspace, in xmlContext

           {namespace, Nodes}:
             Set namespace nodes in xmlContext.

         parentList() = [{atom(), integer()}]:

         xPathString() = string():

EXPORTS

       string(Str, Doc) -> [docEntity()] | Scalar

              Equivalent to string(Str, Doc, []).

       string(Str, Doc, Options) -> [docEntity()] | Scalar

              Equivalent to string(Str, Doc, [], Doc, Options).

       string(Str, Node, Parents, Doc, Options) -> [docEntity()] | Scalar

              Types:

                 Str = xPathString()
                 Node = nodeEntity()
                 Parents = parentList()
                 Doc = nodeEntity()
                 Options = option_list()
                 Scalar = #xmlObj{}

              Extracts  the nodes from the parsed XML tree according to XPath. xmlObj is a record
              with fields type and value, where type is boolean | number | string

AUTHORS

       <>

                                           xmerl 1.3.16                         xmerl_xpath(3erl)