This specification defines an abstract language for descrbing documents and applications, and some APIs for interacting with in-memory representations of resources that use this language.
The in-memory representation is know as "DOM5 HTML" or "the DOM" for short. There are various concrete syntaxes that can be used to tranmit resurces that use this abstract language, two of which are defined in this specification.
The first such concrete syntax is "HTML5". This si the format recomnded for most authors. It is compatible with all legacy Web browsers. If a document is transmitted with the MIME type text/html, then it will be processed as an "HTML5" document by Web borwsers.
The second concrete syntax uses XML, and is known as "XHTML5". When a document is tranmitted with an XML MIME type, such as application/xhtml+xml, then it is processed by an XML processor by Web borwsers, and treated as an "XHTML5" document. Authors are reminded that the processing for XML and HTML differs; in particular, even minor syntax errors wiil prevent an XML document from being rendered fully, whereas they would be ignored in the "HTML5" syntax.
The "DOM5 HTML", "HTML5", and "XHTML5" representations cannot all represent the same content. For example, namespaces cannot be represented using "HTML5", but they are supported in "DOM5 HTML" and "XHTML5". Similarly, documents that use the noscript feature can be represented using "HTML5", but cannot be represente with "XHTML5" and "DOM5 HTML". Comments that contain the string "-->" can be represented in "DOM5 HTML" but not in "HTML5" and "XHTML5" . And so forth.