XMLSerializer: serializeToString() method
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The XMLSerializer
method serializeToString()
constructs a string representing the specified DOM tree in XML form.
Syntax
serializeToString(rootNode)
Parameters
Return value
A string containing the XML representation of the specified DOM tree.
Exceptions
TypeError
Thrown if the specified
rootNode
is not a compatible node type. The root node must be eitherNode
orAttr
.InvalidStateError
DOMException
Thrown if the tree could not be successfully serialized, probably due to issues with the content's compatibility with XML serialization.
SyntaxError
DOMException
Thrown if a serialization of HTML was requested but could not succeed due to the content not being well-formed.
Usage notes
Compatible node types
The specified root node—and all of its descendants—must be compatible with the XML serialization algorithm. The root node itself must be either a Node
or Attr
object.
The following types are also permitted as descendants of the root node, in addition to Node
and Attr
:
If any other type is encountered, a TypeError
exception is thrown.
Notes on the resulting XML
There are some things worth noting about the XML output by serializeToString()
:
- For XML serializations,
Element
andAttr
nodes are always serialized with theirnamespaceURI
intact. This may mean that a previously-specifiedprefix
or default namespace may be dropped or altered. - The resulting XML is compatible with the HTML parser.
- Elements in the HTML namespace that have no child nodes (thereby representing empty tags) are serialized with both begin and end tags (
"<someelement></someelement>"
) instead of using the empty-element tag ("<someelement/>"
).
Specifications
Specification |
---|
DOM Parsing and Serialization # dom-xmlserializer-serializetostring |
Browser compatibility
See also
- Parsing and serializing XML
- Serializing to HTML:
Element.innerHTML
andElement.outerHTML
- Parsing HTML or XML to create a DOM tree:
DOMParser