fn:parse-xml
This function takes as input an XML document represented as a string, and returns the document node at the root of an XDM tree representing the parsed document.
parse-xml($value as (xs:string | xs:hexBinary | xs:base64Binary)?, $options as map(*)?:={}) ➔ document-node(*)?
Arguments | ||||
| $value | (xs:string | xs:hexBinary | xs:base64Binary)? | The lexical XML string to be parsed as a document | |
| $options | map(*)? | := {} | Options map |
Result | document-node(*)? | |||
Namespace
http://www.w3.org/2005/xpath-functions
Links to W3C specifications
XPath 3.1 Functions and Operators
XPath 4.0 Functions and Operators
Saxon availability
Available in XPath 3.0, XSLT 3.0, XQuery 3.0, and later versions. From Saxon 9.6, available in all editions. Available for all platforms.
Notes on the Saxon implementation
Available since Saxon 9.3, provided XPath 3.0 is enabled; replaces the extension function
saxon:parse which is retained for the time being.
Saxon parses the supplied document using the "source parser" registered with the
configuration. It sets a custom ErrorHandler to be notified of parsing
errors; this outputs nothing, but instead captures any notified exceptions. If the parsing
failure is caught using try/catch, these exceptions are available as the value of
$err:value: specifically, $err:value is a sequence of items,
each of which is a Java ExternalObject wrapping a
SAXParseException, which can be interrogated using reflexive extension
functions to obtain details such as the line number of the error.