Why isn XHTML2 backwards compatible?
It is, but in a different way to how previous versions of HTML were backwards compatible. Because earlier versions of HTML were special-purpose languages, it was necessary to ensure a level of backwards compatibility with new versions so that new documents would still be usable in older browsers. For instance, this is why the element has its content in an attribute rather than in the content of the element, since it would have shown up in older browsers. However, thanks to XML and stylesheets, such strict element-wise backwards compatibility is no longer necessary, since an XML-based browser, of which at the time of writing means more than 95% of browsers in use, can process new markup languages without having to be updated. Much of XHTML 2 works already in existing browsers, browsers that are not pre-programmed to accept XHTML2. Much works, but not all: when forms and tables were added to HTML, people had to wait for new version of browsers; similarly some parts of XHTML 2, suc