Changes

Jump to navigation Jump to search
576 bytes added ,  18:50, 18 November 2020
=Conventions=
 
{{Mark|Updated with Version 9.0}}:
All functions and errors in this module are assigned to the <code><nowiki>http://basex.org/modules/html</nowiki></code> namespace, which is statically bound to the {{Code|html}} prefix.<br/>
==html:parse==
 
{| width='100%'
|-
| width='120' | '''Signatures'''
|{{Func|html:parse|$input as xs:anyAtomicType|document-node()}}<br />{{Func|html:parse|$input as xs:anyAtomicType, $options as map(xs:string, item()*)?|document-node()}}<br />
|-
| '''Summary'''
|Converts the HTML document specified by {{Code|$input}} to XML, and returns a document node:<br/>
* The input may either be a string or a binary item (xs:hexBinary, xs:base64Binary).
* If the input is passed on in its binary representation, the HTML parser will try to automatically choose the correct encoding.
The {{Code|$options}} argument can be used to set [[Parsers#Options|TagSoup Options]].
|-
| '''Errors'''
|{{Error|parse|#Errors}} the input cannot be converted to XML.
|}
 
==html:doc==
 
{| width='100%'
|-
| width='120' | '''Signatures'''
|{{Func|html:doc|$uri as xs:string?|document-node()?}}<br />{{Func|html:doc|$uri as xs:string?, $options as map(*)?|document-node()?}}<br />
|-
| '''Summary'''
|Fetches the HTML document referred to by the given {{Code|$uri}}, converts it to XML and returns a document node. The {{Code|$options}} argument can be used to set [[Parsers#Options|TagSoup Options]].
|-
| '''Errors'''
;Query:
<pre classsyntaxhighlight lang="brush:xquery">
html:parse("<html>")
</presyntaxhighlight>
;Result:
<pre classsyntaxhighlight lang="brush:xml">
<html xmlns="http://www.w3.org/1999/xhtml"/>
</presyntaxhighlight>
===Specifying Options===
;Query:
<pre classsyntaxhighlight lang="brush:xquery">
html:parse("<a href='ok.html'/>", map { 'nons': false() })
</presyntaxhighlight>
;Result:
<pre classsyntaxhighlight lang="brush:xml">
<html xmlns="http://www.w3.org/1999/xhtml">
<body>
</body>
</html>
</presyntaxhighlight>
===Parsing Binary Input===
;Query:
<pre classsyntaxhighlight lang="brush:xquery">html:parse(fetch:binary("httphttps://en.wikipedia.org"))</presyntaxhighlight>
;Result:
<pre classsyntaxhighlight lang="brush:xml">
<html xmlns="http://www.w3.org/1999/xhtml" class="client-nojs" dir="ltr" lang="en">
<head>
<meta charset="UTF-8"/>
...
</presyntaxhighlight>
=Errors=
 
{{Mark|Updated with Version 9.0}}:
{| class="wikitable" width="100%"
=Changelog=
 
;Version 9.4
 
* Added: [[#html:doc|html:doc]]
;Version 9.0
* Updated: error codes updatesupdated; errors now use the module namespace
The module was introduced with Version 7.6.
Bureaucrats, editor, reviewer, Administrators
13,550

edits

Navigation menu