Why splitting HTML5 into several specs has failed to work (Was: Request for clarification on HTML 5 publication status)

On Thu, 29 Nov 2007, Sam Ruby wrote:
> 
> Why is "the" (as in one and only) specification the only document in 
> which this information can make it onto a W3C site?  I've seen several 
> specifications which are spread across volumes.  Can't different volume 
> in a series be in different states at any given time?

There are a few reasons, but primarily the parts are too interconnected. 
(For example, the offline stuff has to integrate with the navigation stuff 
and the parsing stuff, which has to integrate with the scripting stuff, 
and soon enough you've brought in most of the current spec.)

There's also the lack of resources. There is such a high overhead to 
editing a spec that the cost of editing two specs of size x is actually 
higher than the cost of editing one spec of size 2x. This wouldn't be 
necessarily a big problem if we had editors, but we don't -- we are 
already desperately short on editors to work on CSS3, setTimeout, Web DOM 
Core, CSSOM, DOM3 Events, Keyboard Events, a 3D Canvas API, etc. If we 
suddenly magically had ten fulltime experienced Web specification editors 
volunteer tomorrow, we _still_ would be short on editing resources.

So far we've tried taking four things out of HTML5. We have one success 
story, XMLHttpRequest. The Window interface was taken out, put into its 
own spec, and neglected to the point where it was blocking work on HTML5 
and I had to reinclude it (a lot of work), setTimeout was taken out and 
had nowhere to go so it's been rotting in a section at the end of HTML5, 
and the alternative style sheet selection API was taken out of HTML5 and 
moved to CSSOM where it is currently dying of neglect as well. (setTimeout 
and the alternative stylesheet stuff may have to be brought back into 
HTML5 so that we can at least get interop on these features, even if this 
isn't the ideal place for them.)

I agree whole heartedly that it would be great if we could just have a 
bunch of tiny specs that are self-contained and well maintained. In 
practice, though, this hasn't worked. I truly wish it would.

-- 
Ian Hickson               U+1047E                )\._.,--....,'``.    fL
http://ln.hixie.ch/       U+263A                /,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'

Received on Friday, 30 November 2007 05:16:37 UTC