Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
xmerl_xpath(3)		   Erlang Module Definition		xmerl_xpath(3)

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 expres-
       sions 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.19			xmerl_xpath(3)

NAME | DESCRIPTION | DATA TYPES | EXPORTS | AUTHORS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=xmerl_xpath&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help