Changes

Jump to navigation Jump to search
109 bytes added ,  16:21, 27 February 2020
no edit summary
This [[Module Library|XQuery Module]] provides simple functions to fetch the content of resources identified by URIs. Resources can be stored locally or remotely and e.g. use the {{Code|file://}} or {{Code|http://}} scheme. If more control over HTTP requests is required, the [[HTTP Client Module]] can be used. With the [[HTML Module]], retrieved HTML documents can be converted to XML.
=Conventions=
|
* Retrieve an XML representation of the English Wikipedia main HTML page, chop all whitespace nodes:
<pre classsyntaxhighlight lang="brush:xquery">
fetch:xml("http://en.wikipedia.org", map { 'chop': true() })
</presyntaxhighlight>
* Return a document located in the current base directory:
<pre classsyntaxhighlight lang="brush:xquery">
fetch:xml(file:base-dir() || "example.xml")
</presyntaxhighlight>
* Return a web page as XML, preserve namespaces:
<pre classsyntaxhighlight lang="brush:xquery">
fetch:xml(
'http://basex.org/',
}
)
</presyntaxhighlight>
|}
|
* Retrieves file input as binary data and parses it as XML:
<pre classsyntaxhighlight lang="brush:xquery">
fetch:xml-binary(file:read-binary('doc.xml'))
</presyntaxhighlight>
* Encodes a string as CP1252 and parses it as XML. The input and the string {{Code|touché}} will be correctly decoded because of the XML declaration:
<pre classsyntaxhighlight lang="brush:xquery">
fetch:xml-binary(convert:string-to-base64(
"<?xml version='1.0' encoding='CP1252'?><xml>touché</xml>",
"CP1252"
))
</presyntaxhighlight>
* Encodes a string as UTF16 and parses it as XML. The document will be correctly decoded, as the first bytes of the data indicate that the input must be UTF16:
<pre classsyntaxhighlight lang="brush:xquery">
fetch:xml-binary(convert:string-to-base64("<xml/>", "UTF16"))
</presyntaxhighlight>
|}
Bureaucrats, editor, reviewer, Administrators
13,550

edits

Navigation menu