W3C home > Mailing lists > Public > public-html-xml@w3.org > December 2010

Re: What problem is this task force trying to solve and why?

From: John Cowan <cowan@mercury.ccil.org>
Date: Tue, 21 Dec 2010 20:36:21 -0500
To: James Clark <jjc@jclark.com>
Cc: Henri Sivonen <hsivonen@iki.fi>, public-html-xml@w3.org
Message-ID: <20101222013621.GJ25830@mercury.ccil.org>
James Clark scripsit:

> Let's take perhaps the most egregious example, that HTML5 requires
> that <br> be treated like </br>.

Vice versa, rather.  But that's trivial; all that's required is for
convergent XML serializers to always use an empty-tag for empty elements
named "br".

The stickier problem, however, is the rest of the HTML vocabulary.
It can be divided into three categories:

Class V: Void elements in the HTML namespace, excluding "br".

Class NV: All other elements in the HTML namespace

Class F: Elements in the foreign namespaces.

A convergent XML serializer MAY serialize empty elements in classes V and
F using empty-tags or by using a start-tag followed by an end-tag.  Empty
elements in class NV, however, MUST NOT be serialized using an empty-tag.
Unfortunately, the class NV is extensible as HTML evolves, meaning
that convergent XML serializers must either be HTML-version-specific,
or else never output empty-tags at all.  Neither idea is very palatable.

This is a fine specimen of why version numbers matter.  Likewise, XSLT
will need several HMTL-style output modes that treat various lists of
void elements specially, one mode (and list) per HTML version.

There is a similar problem within HTML itself.  Since there is a standard
way of handling unknown tags to which all HTML5 browsers must conform,
then either:

1) All future HTML tags must be processed in the same way as unknown
tags, or

2) Some HTML.next documents will have different DOMs in HTML5 and
HTML.next browsers (thus discarding backward compatibility), or

3) There will be no future HTML tags, ever.

It's not clear to me which arm of this trichotomy the WG will accept.
Most specifications accept it by making it either an error or undefined
to use unknown elements, but HTML5 does neither.

Kill Gorgun!  Kill orc-folk!            John Cowan
No other words please Wild Men.         cowan@ccil.org
Drive away bad air and darkness         http://www.ccil.org/~cowan
with bright iron!   --Ghan-buri-Ghan    http://www.ccil.org/~cowan
Received on Wednesday, 22 December 2010 01:36:51 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 19:58:27 UTC