V žádném případě jsem nechtěl nějak snižovat význam DOCTYPE deklarací a entit, ale tohle všechno jsou vlastnosti SGML, takže stejné pro HTML i XML...Parsování řetězců je zase velmi jednoduchá operace (zapamatuji si, jaká uvozovka byla na začátku a hledám druhou stejnou, přičemž escape sekvence přeskakuji)...CDATA se neparsují dokonce vůbec...(Dobře, máme ještě PCDATA, ale to není o moc víc práce)...
Každopádně na HTML je nutno vždy mít speciální parser, kdežto na XHTML stačí jeden univerzální XML...Speciální parser pro HTML je třeba např. kvůli tomu, že některé elementy mohou být jak jednodílné, tak i dvoudílné (např. element IMG)...V případě XML je věc jasná, ale u HTML z otevíracího tagu parser nemá šanci poznat, jestli následující data jsou obsah elementu IMG, nebo elementu rodičovského...
Zmiňovaný web navštěvují převážně studenti středních škol, o nichž nepředpokládám, že by byli nějak významně "osvícení"...

