[whatwg] Using the HTML5 DOCTYPE as a new quirksmode switch
WHATWG
whatwg at robertdot.org
Sat Mar 10 14:51:30 PST 2007
On Mar 10, 2007, at 8:38 AM, Mihai Sucan wrote:
> There's no way to advertise the document as HTML 5, and it's
> certainly not the purpose of the specification to do so.
This is a problem. It is especially a problem now that the W3C is
working on their version of HTML 5. When I asked Ian Hickson how
WHATWG would handle divergence in the W3C spec [1], he said he
"intended to make every effort to keep the two in sync." [2] While I
appreciate his effort and I fully believe that he will do his best,
we are dealing with a body (i.e. the W3C) who have a history of
stubbornness and unwillingness to work with important members of the
community. [3] The future is still undecided, but I don't think it
is a good idea to operate under the assumption that the W3C will copy
and paste the entire WHATWG HTML 5 spec.
Even if DTDs are non-normative and antiquated in the HTML 5 spec, it
at least provides some method for authors to indicate their
intentions. If my intention was to write a document conforming to
HTML 3.2, I can use the HTML 3.2 DTD to tell anyone in the future
that I was using a certain set of elements. If browsers pay no
attention to DTDs, as WHATWG has said time and again, browsers must
be rendering "the latest and greatest" markup. If in 50 years, the
"i" element has been out of use for 40 years, and browsers stop
rendering that element and validators throw errors on that element,
the document still conforms to the DTD. It's not the author's fault
that the document doesn't perform the way it intended. Ideally, the
browser should care about DTDs.
The WHATWG HTML 5 spec provides no way to specify what version / fork
of HTML the author intended to use. Even if browsers don't pay
attention, I think it is a shame that there is no way to specify (if
for nothing else, to future-proof documents). I blogged about this
in more detail. [4]
It seems the WHATWG is staunchly against DTDs, even if it has an
appropriate use (e.g. emails in this thread talking about XML
entities). I've mulled over this awhile. Since DTDs aren't
normative in browsers, perhaps a "link" element with a
"rel=specification" and an "href=http://www.whatwg.org/specs/web-apps/
current-work/" (for example) would be a new way to say, "this is the
specification I used to create this document." It is easier to
remember than the DOCTYPE DTDs on pervious versions of HTML, and it
is much more human-readable than DTDs. It addresses my concerns, and
doesn't use DTDs.
Now, I don't know if it can be used as a quirksmode switch. The
DOCTYPE seems like an ideal place to run the switch. The problem
will be if the W3C (or some other as yet unformed working group that
decides to fork HTML) doesn't implement a DTD-less DOCTYPE. If the
switch is the WHATWG HTML5 DOCTYPE, documents authored under W3C HTML
5 spec will not render in super-standard mode. Browsers will have to
have multiple super-standards modes switches depending on what
version of HTML5 the author uses.
IE asking a working group to provide some new way to specify
standards mode doesn't make sense. That is an implementation problem
that they need to figure out. It isn't our job to write their
software. WHATWG doesn't need to bloat the spec for them. The IE
team needs to be creative and find a solution to their problem.
We're already using headers to swap between HTML and XHTML (since we
still call both .html files). Headers are for telling user agents
how to deal with content. It seems like sending a header "X-
STANDARDS-MODE: HTML5;" (or "WHATWG-HTML5" if W3C's HTML 5 is
significantly different) or setting an http-equiv meta tag to tell IE
to use their super-standards mode is cleaner and more desirable as it
doesn't bloat the spec, and should be more than enough for them. If
their standards mode for HTML5 has flaws and they need a NEW switch,
it can be changed to "X-STANDARDS-MODE: HTML6;" or whatever the
latest version of HTML is. This can be set across an entire server
in a few seconds via config files if needed, or set on a single
folder via .htaccess files. If headers are used, that also doesn't
bloat the file if is is saved on someone's HDD.
[1] http://blog.whatwg.org/w3c-restarts-html-effort#comment-2020
[2] http://blog.whatwg.org/w3c-restarts-html-effort#comment-2022
[3] http://meyerweb.com/eric/thoughts/2006/08/14/angry-indeed/
[4] http://robertdot.org/2007/03/08/html-5-whatwg-versus-w3c.html
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.whatwg.org/pipermail/whatwg-whatwg.org/attachments/20070310/781b2a4b/attachment-0001.htm>
More information about the whatwg
mailing list