Na jiném místě říkáte, že <!DOCTYPE> určuje jazyk, což ale přímo nesouvisí se zdejším tvrzením. Na rozlišení HTML od XHTML nestačí ani <!DOCTYPE>, ani deklarace jmenného prostoru, ani XML deklarace. Bez MIME typu nevíte nic, můžete si maximálně tipnout. Každý jazyk má jinou syntaxi (ač podobnou).
„Že prohlížeč zpracuje i XHTML, kde některé koncové značky vynecháte a některé neexistující atributy použijete, znamená pouze to, že se snaží chyby v kódu co nejlépe překonat.“
V XHTML musí chybějící koncová značka zajistit smrt a naopak neexistující atribut nikdy nesmí způsobit problémy (maximálně způsobí nevaliditu). Tak to i funguje.
Při MIME typu „text/html“ skutečně všechny prohlížeče vždy užívají HTML parser. Neporozumí zápisu <div /> — pochopí jej jako začátek elementu. Nikdy nepřeloží entity uvnitř <script>u. V DOMu vrací document.doctype vždy null. Jak se tedy pozná, že prohlížeč skutečně zpracovává XHTML?