MarkLogic 9 Product Documentation
xdmp.unquotexdmp.unquote(
arg as String,
[default-namespace as String?],
[options as String[]]
) as Sequence
Summary
Parses a string as XML, returning one or more document nodes.
Parameters |
arg |
Input to be unquoted.
|
default-namespace |
Default namespace for nodes in the first parameter.
|
options |
The options for getting this document.
The default value is ().
Options include:
- "repair-full"
- Specifies that malformed XML content be repaired.
XML content with multiple top-level elements will be
parsed as multiple documents.
This option has no effect on binary or text documents.
- "repair-none"
- Specifies that malformed XML content be rejected.
XML content will be parsed as a single document, so
a maximum of one document node will be returned.
This option has no effect on binary or text documents.
- "format-text"
- Specifies to get the document as a text document,
regardless of the URI specified.
- "format-binary"
- Specifies to get the document as a binary document,
regardless of the URI specified.
- "format-xml"
- Specifies to get the document as an XML document,
regardless of the URI specified.
- "format-json"
- Specifies to get the document as a JSON document,
regardless of the URI specified.
- "default-language=xx"
- If the root element node specified in the first parameter does not
already have an
xml:lang attribute, the language to
specify in an xml:lang attribute on the root element node.
If default-language is not specified, then nothing is
added to the root element node. Some examples are
default-language=en and default-language=fr .
|
Usage Notes
If no format is specified in $options, it is inferred from the input.
If the first non-whitespace character is either '{' or '[' it is JSON.
Otherwise it is XML.
If neither "repair-full" nor "repair-none" is present,
the default is specified by the XQuery version of the caller.
In XQuery version 1.0
and 1.0-ml
the default is
"repair-none". In XQuery version 0.9-ml
the default is
"repair-full".
If $arg is the empty string, xdmp:unquote
returns an empty
document node.
Example
fn.head(xdmp.unquote('<foo/>'));
=> <foo/>
It returns this as a document node.
Example
fn.head(
xdmp.unquote('<foo>hello</foo>', null,
['repair-none', 'default-language=en'])
);
=> <foo xml:lang="en">hello</foo>
It returns this as a document node and does
not perform tag repair on the node.
Example
fn.head(
xdmp.unquote('<foo>hello</foo>', 'bar',
['repair-none', 'default-language=en'])
);
=> <foo xml:lang="en" xmlns="bar">hello</foo>
It returns this as a document node and does
not perform tag repair on the node. Note that
the node is in the "bar" namespace.
Copyright © 2024 MarkLogic Corporation. MARKLOGIC is a
registered trademark of MarkLogic Corporation.