Standards are (nearly) irrelevant.

In a discussion over at “”:, “Fergus Wilde asks”: which standards to use:
bq. … I’m keen to ‘do the right thing’ – but what *is* the right thing? What’s the most useful, correct, forward looking standard I can employ that won’t leave our largely non-tech user base stranded? Even most of the open source tools still make it a deal easier to use html 4.x than xhtml 1.1, into which I’m looking.
I have a very simple, straightforward answer to this:

It does not matter which standard you conform to. Do whatever suits your needs best. It doesn’t really matter whether you use HTML 4.01 Strict or transitional, XHTML 1.0 or 1.1. Just do _the right thing with the standards you have chosen to conform to._
So, what _is_ doing the right thing then?
* Understand that HTML and XHTML defines both _syntax_ and _sematics_.
* Understand that syntax and semantics are equally important. Having a syntactically correct document doesn’t help if you litter your documents with @Important!@ @


@ everywhere. Neither does it help if your documents are semantical masterpieces if you put @

Very important

heading@ in your document.
* Where you can choose between implicit and explicit syntax: Choose explicit syntax:
** Don’t omit optional start tags.
** Don’t omit optional end tags.
* Don’t use the latest and greatest standard, just because it is the latest and greatest standard. There is _absolutely no need_ to use XHTML 1.1 unless you need “Ruby annotation”: – likewise:
** Unless you parse your own output using an XML parser, or plan on inlining XML data, such as MathML or SVG, you _don’t need XHTML *at all.*_
This site uses XHTML 1.0, something I, in hindsight, regard as a huge mistake. I don’t _need_ XHTML. I don’t produce MathML, I don’t use SVG. I don’t parse any of the HTML output with an XML parser. I should really, really have chosen HTML 4.01 Strict.

Leave a comment


  1. What is wrong with omitting tags? I love it.

  2. Omitting tags is just cruel. I can’t see any good reason why anyone in their right minds would choose to omit tags. Explicit is always better than implicit. Always.

  3. Arve, that is not only omitting tags. That is using some shorthand features of SGML which are not supported by popular browsers.
    Asbjørn, omitting tags makes authoring easy. That is a reason for me to do it sometimes.

  4. Anne, I should probably have been more explicit: Omitting tags impairs readability of markup. It creates obfuscated documents. The more you obfuscate, the more likely it’s for a UA to get it wrong.
    (Of course, I don’t know in which scenarios you are omitting end tags, but if that scenario is manually created markup most sane text editors should let you insert both start and end tags easily. For instance, myself, I type #div to get @^!@ (where ^! is cursor position.))

  5. Arve, what html editor do you use?

  6. The one doing what I’m suggesting here is EditPlus, but mostly I’m on Emacs.