- From: Dimitri Glazkov <dglazkov@chromium.org>
- Date: Thu, 22 Sep 2011 11:30:24 -0700
- To: public-webapps <public-webapps@w3.org>
- Cc: Anne van Kesteren <annevk@opera.com>
I just read Anne's update (http://blog.whatwg.org/weekly-xbl-intents) and realized that while Dominic shared the notes (http://lists.w3.org/Archives/Public/public-webapps/2011JulSep/1513.html), there wasn't a nice short summary of the discussion published alongside. I should totally correct that. But first things first: XBL2 is dead. To paraphrase http://www.imdb.com/title/tt0093936/quotes?qt=qt0311047, there was a funeral and we buried it. There are chunks of it that are still viable and immensely useful. However, there are large chunks that will have to be cut, some running deep into the viable chunks. At the meeting, there was some discussion on whether to keep the remaining living organs under the auspice (hospice?) of XBL2, but it is fairly clear to anyone attempting this exercise that the surgery will not produce a spec that can stand on its own. Further, instead of packaging Web Components into one omnibus offering, we will likely end up with several free-standing specs or spec addendums: 1) Shadow DOM, the largest bag of with XBL2's donated organs -- probably its own spec; 2) Constructible and extensible DOM objects which should probably just be part of DOM Core and HTML; 3) Declarative syntax for gluing the first 2 parts together -- HTML spec seems like a good fit; and 4) Confinement primitives, which is platformization of the lessons learned from Caja (http://code.google.com/p/google-caja/), integrated with element registration. Why split it like this? Several reasons: a) they are independently moving parts. For example, just shadow DOM, all by itself, is already a useful tool in the hands of Web developers. It's our job as spec developers to ensure that these bits comprise a coherent whole, but from implementation perspective, they don't need to block one another. b) each belongs in the right place. For example, making DOM objects extensible is a concern inside of the DOM Core spec. Declarative syntax really needs to live in HTML. Also... c) some parts are too small to be their own spec. Constructible/extensible DOM objects bit does not even have an API surface. d) And finally, every bit has potential of solving problems that are more general than just about components. We shouldn't require making a component if all developer wants is some shadow DOM. Similarly, lack of needing a component shouldn't preclude the use of confinement primitives. Just to recap: XBL2 is dead, exploding into a pretty rainbow. I am a pop tart cat in front of the rainbow. :DG<
Received on Thursday, 22 September 2011 18:31:21 UTC