I am wondering how I will deal with HTML 5 not being XML anymore.
HTML5, unlike its predecessors, is defined as an abstract document, with three different concrete representations (note, however, that it is not guaranteed that every representation can express every possible abstract document):
- DOM5, an in-memory object format with a defined API
- HTML5, a textual serialization, inspired by how browsers actually parsed HTML4 (as opposed to the specification, according to which HTML4 was defined as an application of SGML, which no browser except Avaya and Emacs/w3 ever correctly was able to parse)
- XHTML5, an application of XML intended as the continuation of XHTML 1.1 (not XHTML2)
The latter one is of course the one that is relevant to you.
Note that there is a common subset that makes a document both valid HTML5 and XHTML5, minus the difference in headers. In particular, the HTML5 serialization explicitly allows (and ignores) an
xmlns attribute and certain others, precisely for this purpose.