- From: Mihai Sucan <mihai.sucan@gmail.com>
- Date: Mon, 21 Aug 2006 23:21:08 +0300
- To: "Web API WG" <public-webapi@w3.org>
Hello! I have reviewed the XBL2 draft (21 august 2006 draft, directly from the CVS) and I have the following comments to make: 0. General things a) <style> in <resources> How's this supposed to work? Is the provided style applied as if the shadow content is a document by itself? Or is the style added to the entire owning document, just like adding a new <style> in header? Or... is the <style> applied as if the bound element is a document by itself? b) All in all I like XBL2, it's a very good initiative and makes web developers feel less "guilty" when they want to do extremely complicated designs and "widgets" in a site. The reason is rather simplistic: one has only to write a clean markup for the page and use an XBL binding to add all the cruft. A general concern applies, as with CSS 3-stuff, SVG and newer technologies which are not implemented in the dominant web browser (I shall not name it, for the sake of helping the world forget its name :) ). For now and, sadly, for a long time, such technologies are confined to cutting-edge web sites, or to Intranet applications with a limited target audience. Further comments will *probably* follow. 1. Introduction In the example I see <style> in <resources>. Why no type="text/css"? Bad phrasing: «The result of applying the XBL binding above to the HTML given able using the CSS given above is to equivalent to the result one would get if one simply placed the div element with class="nav" before the div element with class="main", but the effect is achieved without needing any changes to the markup.» I don't understand what's exactly meant. Please rephrase. 1.2.1. Attributes Containing Selectors «Note: This specification does not specify what level of Selectors support is required.» Why? If one UA claims support for XBL2 the author can't rely on the support of CSS 3 Selectors, practically rendering XBL2 support useless if no Selectors are supported. XBL2 specification should provide a list of required Selectors for claiming conformance. If not, we will endup with UAs doing something similar to IE 6: they added support for PNG, but they missed one of the "coolest" feature in PNG (transparencies). 2.3. The implementation element I personally don't exactly understand the syntax used in the provided example:"set memory(value)" and "get memory()". Why a space? Can somebody explain that? 2.9. The div element I don't see the real use for the state attribute. There are other ways to do the same, and there's no real imperative need for yet-another attribute. It's defined as a stylistic hook, same as class. It's a duplicate attribute. 2.13. The style element This should have a type attribute. The style-type attribute of xbl element would be only the "default type". Why not allow multiple types of styles in a single binding? 2.14. The prefetch element Suggestion: new attribute "condition". This should be an ECMAScript expression which if evaluates to true, the file is loaded. Some may want to prefetch some images based on various conditions. 2.15. The script element This should have a type attribute. The script-type attribute of xbl element would be only the "default type". Why not allow multiple types of scripts in a single binding? 4.5. Binding Attachement Model Why is the UA allowed to *act* as if it does the steps listed? What does acting mean in this context? 5. Shadow Content Recommended rephrasing from: «If a binding element that had no template element has a template element added, then a shadow tree must be generated.» ... to: «A shadow tree must be generated when a template element is added to a binding element that had no template element.» 5.4. Processing content elements The example starts with «Imagine the following simple document». I am not sure if that's appropriate, because I won't imagine anything. The provided example is result of what the author imagined. If I have to imagine something, I'd imagine something else. I'd suggest switching from "imagination examples" to just examples: "Given the following document", then "Having the X element bound to...". 5.7.4. The matching pseudo-elements Until reaching this chapter I believed I can assign any pseudo-element, for use within CSS. Quite an interesting concept, at first. Reading this chapter I reached the conclusion this is much like the state attribute for the div element. Instead of using the provided list of psuedo-elements, one can use class names (icon/value/choices...). Even the provided example emphases that, for me, at least. 6.4. ECMAScript bindings «First, if this is the first time the binding defined by that binding element is used since that binding document was loaded, then, if that element contains an implementation element, then the first such element must have its code compiled and run (see below), and the return value of that script, if any, must be forever associated with that binding element as that binding's implementation prototype object.» This very lengthy phrase is hard for one to understand. I recommend a better wording. I have no suggestion, since a correct rephrasing requires accurate understand, and I myself don't feel confident enough to say "yeah, I know what he meant". -- http://www.robodesign.ro ROBO Design - We bring you the future
Received on Monday, 21 August 2006 20:21:31 UTC