- From: Robert J Burns <rob@robburns.com>
- Date: Fri, 16 May 2008 10:07:43 +0000
- To: "Anne van Kesteren" <annevk@opera.com>
- Cc: "www-tag@w3.org" <www-tag@w3.org>, "public-html@w3.org" <public-html@w3.org>, "public-xhtml2@w3.org" <public-xhtml2@w3.org>, "wai-xtech@w3.org" <wai-xtech@w3.org>
- Message-Id: <E4EF83B8-3590-4300-ABCE-B6C683F8E73A@robburns.com>
Dear Anne and TAG, On May 15, 2008, at 12:56 PM, Anne van Kesteren wrote: > <snip> > On Wed, 14 May 2008 18:22:26 +0200, Williams, Stuart (HP Labs, > Bristol) <skw@hp.com> wrote: >> 3) The TAG's working hypothesis is that "aria:" is both technically >> feasible and strategically preferable, ... > > aria:* creates an inconsistency between HTML and XHTML that we don't > have with aria-*: > > 1) For HTML we would need to introduce a number of "aria:*" > attributes in the null namespace and for XHTML and SVG we would need > to introduce a number of "*" attributes in the ARIA namespace. > > 2) For styling authors would need to use [aria\:*] in HTML and > @namespace x "ARIA namespace"; [x|*] in XHTML and SVG > > 3) For scripting authors would need to use getAttribute("aria:*") / > setAttribute("aria:*", ...) in HTML and getAttributeNS("ARIA > namespace", "*") / setAttributeNS("ARIA namespace", "*", ...) in > XHTML and SVG. > > The cost here is not on implementors, but authors. The design the > TAG advocates will make transitioning towards XML even more > complicated than it already is. In the HTML WG we drafted a design > principle called "DOM Consistency" which is basically guiding us in > ensuring that the above does not happen. Could you provide a link to this document? The Serialization Dependent Processing Differences document[1]. > > I think http://www.w3.org/QA/2008/05/syntax_for_aria_costbenefit_an.html > is very misleading and misrepresenting this cost to authors: > > 1) It simply says to use [aria|*] for CSS in the XML case but that > would not actually work. It also requires an @namespace at rule. > > 2) In a similar way it suggests that you can simply use aria:* in > XML but that would also not actually work. It would give you a > namespace well-formedness violation as you have not declared > xmlns:aria somewhere in scope. > > 3) It says getAttribute() will function properly in the XML case but > that would only work if the author of the page had an agreement with > the script author about what prefix will be used which is something > you should not rely upon. It does not mention setting the attribute > which is something that's very important for ARIA (the whole idea is > that dynamic changes are exposed to AT). > > 4) It has a column "XHTML (as if HTML)" which is something that only > exists in some legacy specification theory and is not actually > implemented as such by the four leading browser vendors. > > 5) It has the implicit suggestion there will be a million more > vocabularies that browsers will have to add support for in similar > fashion as they have to support HTML, SVG, MathML, and ARIA. Given > the Web's history so far it seems unwise to add so much complexity > for something that might happen. Once it does happen, we can then > look at the requirements and see how to solve it. Just like we do > with ARIA now. > > 6) It suggests that SVG would not have to be changed if used the > magic of namespaces. That seems higly unlikely because even then you > will have to define the interaction with the semantics of various > SVG elements. In addition, adding complexity to the SVG > specification and schemas is acceptable if it reduces complexity for > authors. In the HTML WG we call this "Priority of Constituencies". I think a big part of the problem is the irrational attempt to keep namespaces out of the text/html serialization. If we included namespaces in HTML5, then we could consistently add 'aria:describedby' and other aria attributes to HTML5 in their own namesapce in both serializations. CSS and DOM would then be completely consistent in both serializations. The only thing I can see gained by not codifying namespaces in the text/html serialization is it provides a continued privileged positiong to IE over other browsers. Whereas adding namespaces helps us solve many of our problems (especially inconsistencies between our two serializations). It takes care of SVG and ARIA and MathML, and so on. In the case of ARIA we could even include the aria prefix as predefined in both serializations of HTML (i.e., defining on the html element: xmlns:aria='<aria namespace uri>' ). You also mention the null namespace in this email in the context of helping authors. The proliferation of the null namespace is — in my view — a misinterpretation of the namespaces recommendation that already causes some of the same headaches you describe in your critique of TAG. In my view the null namespace should not exist in a namespaced document processed by a namespace aware application. Instead unprefixed attributes should be attached to the same namespace as their parent elements. Perhaps I'm missing something that null namespaces are supposed to solve, but I know that they create many headaches for processing applications (other than pure client consumers) and authors too who never likely expect their attributes in a namespaced document to end up in anything other than a namespace. Too much of the discussion is focussed on helping vanilla client UAs at the expense of authors and authoring and other more involved UAs (though veiled in the language of helping authors and their tools). Take care, Rob [1]: <http://esw.w3.org/topic/HTML/SerializationDependentProcessingDifferences?highlight=%28HTML%29 >
Received on Friday, 16 May 2008 10:08:41 UTC