Adobe “sabotaging” HTML5

Daringfireball linked an intriguing statement in Ian Hickson’s blog about Adobe apparently doing something “behind the scenes” to scuttle the canvas component of the HTML5 spec.

Net result: the latest publication of HTML5 is now blocked by Adobe, via an objection that has still not been made public (despite yesterday’s promise to make it so).

Gruber then linked to a rebuttal by Larry Masinter. (I’m not sure whether his framing of the rebuttal was sarcastic; mine would have been.)

I’ve been working on web standards since the beginning of the web in the early 90s, and standards for even longer; long before I joined Adobe. (Note 1) …

I’ve never seen anything as bad as this one, with people abusing their official positions to grandstand and promote proprietary advantage. I’ve blogged some about this, but I’d rather fix things along. (Note 2) …

The organization of work in W3C is determined by the “charters” of working group and the “scope” of he charters, so saying work is “out of scope” even if you are marking a snapshot of the (already published) documents as “Working Draft”, means you might rewrite the “Status of This Document” section to say that it might move. That’s what I was asking for, in the somewhat stilted language of “objection”. (Note 3)

Note 1: translation “I know that the trick with standards bodies is understanding how to manipulate procedural crap versus actually discussing stuff on its merit”

Note 2: “fix things along” — by arguing that the canvas API is out of scope for HTML5 unless the working group’s charter is redrafted.

Note 3: thanks for making that so clear.

The Ajaxian has a fascinating article on the subject (which obviously had its name changed, if you compare the URL to the current heading):

Sam Ruby: … while Paul requested that Larry post the substance of his objection on public-html yesterday, and Larry indicated that he would do so, to the best of my knowledge this has not been done

If nothing else, there are issues with consistency. Either it was public since whenever, or Larry Masinter is going to make it public shortly — but not both.

But heck, just go visit the email archives directly.

It basically seems to come down to something like this: the working group’s charter does not include 2D graphics, which means it shouldn’t be producing documents about 2D graphics. But they are supposed to be speccing out HTML5, which includes a canvas element, so that’s in scope. No problem. But explaining what the canvas element does (which is, without describing its JavaScript API, precisely nothing) is, based on 2D graphics not being in scope, not in the charter. But, two years earlier, when this was pointed out, the chair decided that it was in scope because, say, speccing out an element without speccing out WTF it does is kind of pointless.

Masinter points out that at some point in the past, 2D graphics were in the charter (edit: correct link) and were explicitly removed. (Why? What was the context? Maybe the point was that singling out 2D graphics was pointless given the scope of the document. In other words, if we claim our goal is to take over “The World and Belgium”, does removing “and Belgium” from the list mean we’re no longer trying to take over Belgium? Does he object to the <audio> tag’s API being documented?)

Here’s what’s in the WHAT-WG HTML WG charter under Deliverables:

  • A language evolved from HTML4 for describing the semantics of documents and applications on the World Wide Web. This will be a complete specification, not a delta specification.
  • An extensible, serialized form of such a language, using XML.
  • A serialized form of such a language using a defined, non-XML syntax compatible with the ‘classic HTML’ parsers of existing Web browsers.
  • Document Object Model (DOM) interfaces providing APIs for such a language.
  • Forms and common UI widgets such as progress bars, datagrids, menus, and other controls.
  • APIs for the manipulation of linked media. (Edit: hilited this as well.)
  • Editing APIs and user-driven WYSIWYG editing features. (And this.)

(Edit: the WHAT-WG charter doesn’t appear to have a scope, so arguments about what’s in it are somewhat moot. Its deliverables include “Web Applications 1.0: Features for Application Development in HTML.” It’s hard to think of something more pertinent to this than API documentation for HTML5 tags.)

So, apparently (and the emphasis is mine) documenting the DOM API for every tag is explicitly in scope, but canvas is a special case because “2D graphics” aren’t explicitly in scope? Note that “video” or, heck, “text” aren’t explicitly in scope either. So are they “out of scope too”? (Edit: and in fact if you’re building a WYSIWYG editor in HTML5, why would canvas be irrelevant? Or must WYSIWYG editors only handle text?)

This is procedural bullshit, plain and simple.