Comment by kllrnohj

5 hours ago

> xhtml was just a bad idea creating tons of problems and solving none.

Well an XHTML parser (and serializer) is a lot simpler, which is a pretty meaningful problem to solve.

What problems does xhtml create?

> Well an XHTML parser (and serializer) is a lot simpler

Perhaps, but a combined html and xhtml parser is more complex than just a html parser. Since html already is entrenched, xhtml would be in addition to html, not instead of.

  • XML/XHTML is a fairly strict language syntax wise compared to HTML, tags are either explicitly self-closing i.e. <img/> or terminated with a matching closing-tag, no exceptions.

    HTML has special rules depending on the tag's type, ie a bunch of them are just written (<img>) and the parser doesn't even really want to see a matching closing tag, or tags like <script> that has a special mode that stops being a HTML parser up until </script> is found. (1)

    A HTML parser can become a XML parser by disabling a bunch of special-features and supporting self-closing tags (depending on XML level).

    A XML parser needs a ton of "hacks" to become a HTML parser.

    Also browsers needs an XML parser anyhow to support svg that's an xml-based format, also the DOM spec is written to support namespaces's like XML.

    XSLT did complicate things, and most importantly it seems many relied on that one old implementation written in the 90s that was a swiss-cheese when it came to security concerns that nobody wanted to spend money on maintaining.

    (1): https://html.spec.whatwg.org/multipage/parsing.html#script-d...

The main one is that even a slightly broken XHTML document will fail to render. HTML is much more forgiving.

  • With the benefit of hindsight, if the web had been that way from the beginning, I think we would have been better off. The moment you tested your content in any browser, you'd immediately see if it was broken.

    But it wasn't something that could get introduced later, after all the broken content that already existed.

    • With all respect - the opposite is true. The web succeeded because HTML and HTTP are easy standards easily writable by humans with text editors. HTML was writable by non-programmers.

      7 replies →

    • Yeah, I think SGML HTML as the first pass was a mistake. All my early websites were XHTML until people called them "bad"...