Re: A Concrete Example for the HTML Versioning Debate

On 4/18/07, Ian Hickson <ian@hixie.ch> wrote:
>
> On Tue, 17 Apr 2007, Jeff Schiller wrote:
> > And even if you can be reasonably confident - what is the harm in
> > introducing a "5" into the DOCTYPE somewhere?
>
> It encourages people to think of HTML as a versioned specification,

HTML is a versioned specification.

> and
> encourages and gives the appearance of condoning exactly what Microsoft is
> intending to do.

I need to understand what it is that you think Microsoft is trying to
do (and the ramifications of doing it), so I can understand whether I
condone it or not.  Can you clarify what you mean here?

> It increases the size of the boilerplate, when we should be limiting it
> to the bare minimum.

Actually it does not increase the size of the boilerplate.  The
boilerplate right now is

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">

and people here are proposing a variety of things like:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 5.0//EN" "some-url">
or
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 5.0//EN">
or
<!DOCTYPE HTML PUBLIC "HTML5">

all of which are smaller than the existing boilerplate.

> It encourages conformance checkers to check against the declarad version
> instead of checking against the most up to date version.

Shouldn't they?  If I've authored HTML4 they should check against
that.  Same with HTML5.

> In any case, arguing that we should add something because it doesn't cause
> harm is not a valid line of argument. We should add something because it
> has strong *benefits*.

I guess I should have phrased my suggestion as "follow what's been
done in the past" (a DOCTYPE specifying the HTML version), because
actually It is the WHATWG that is suggesting changing existing
practices.  Shouldn't the burden be on you for proving the benefits
are worthwhile?  The benefits seem to consist of:

1) it's shorter so it's easier to remember
I contend that it's still a line of text that people will not
understand and still cut & paste)

2) future HTML specs will never introduce incompatibilities from HTML5 onwards

Forgive me, but I just have my doubts on this one - though I do think
the WebApp 1.0 spec is excellently researched and written.  The fact
that we're evolving HTML here instead of moving to something new
(XHTML) means that HTML will likely evolve again in the future.  Maybe
you have a different opinion.

It's possible I've missed a benefit...


> > If HTML6 actually ends up being perfectly backwards compatible with
> > HTML5, then I don't see a harm in putting a "6" in the DOCTYPE when it
> > gets released - if things are truly backwards compatible, then it just
> > means that anything 5 or higher in the DOCTYPE means "the one true and
> > pure standards mode for all browsers", but it does give a hint to web
> > authors/maintainers that this content might have some features that were
> > introduced in HTML6.
>
> No it doesn't. Look at content today. The DOCTYPEs have little to no
> bearing on the syntax or contents of the pages.
>
> XHTML pages use HTML syntax, HTML pages use XHTML syntax, half the pages
> have no DOCTYPE at all, etc.
>
> Even if we did add versioning to HTML5, there would be little to no
> correlation between pages using that versioning syntax and pages that were
> attempting to actually use HTML5 features and conform to HTML5.
>
> This is one reason I don't think new modes will work -- just consider that
> even today, many *many* sites write pages in quirks mode, despite it
> having been effective obsolete for years. There are sites that actively
> (though unknowingly, probably) opt to use the ancient IE5 rendering
> strategy ("quirks mode") instead of using IE6/7 standards mode. If we add
> more versioning syntax, more rendering modes, people will just have a
> greater set of modes to randomly chose from.

>From what I've read on here, I agree with you that existing practices
suck for choosing the "HTML mode".  From what I can tell, it is
prevailing ignorance from those developers who don't see any huge
benefit to HTML 4.01 in "standards mode".

But I disagree on the idea that people will "randomly choose" modes in
the future.  HTML5 will be the first new major version of HTML in 10
years.  People interested in authoring content to conform to the new
specification will have to learn the "new" language and the first
thing they will want to know is how does it differ from the "old"
language.  A version specifier is one of the first things they will
look for.

But if we don't care about versioning, then why does HTML5 have a
DOCTYPE at all?  Answer: to trigger standards mode in most browsers.

Ok, but if we don't care about versioning, then why does it differ
from the HTML 4.01 DOCTYPE?   Answer:  because it's easier to type...

Jeff

Received on Wednesday, 18 April 2007 06:07:50 UTC