W3C home > Mailing lists > Public > public-html@w3.org > March 2011

Re: Using ARIA to override semantics

From: Sam Ruby <rubys@intertwingly.net>
Date: Fri, 18 Mar 2011 19:05:47 -0400
Message-ID: <4D83E54B.3030408@intertwingly.net>
To: Jonas Sicking <jonas@sicking.cc>
CC: HTML WG <public-html@w3.org>, W3C WAI Protocols & Formats <w3c-wai-pf@w3.org>
On 03/18/2011 06:21 PM, Jonas Sicking wrote:
> Hi All,
>
> This is an email I've been meaning to write for a while, and with the
> recent decision by the chairs on ISSUE-129 it's become more urgent.
>
> Now that ARIA is allowed to override the built-in semantics of various
> elements in HTML, how does this affect implementation requirements?
> One concern that I have is that it seems fairly undefined what the
> implementation requirements are for markup like
>
> <a role=button href="...">
>
> For example, should the context menu for a link or for a button be
> displayed if the brings up a context menu (for example by
> right-clicking the element). What about if the user presses "enter"
> when the<input>  element is focused in markup like:
>
> <form><input><a role=button onclick="..." href="...">submit</a></form>
>
> If a real<button>  had been used in the above markup I think firefox
> would activate that button (if we don't please file a bug). What about
> if the browser has a feature to display all links on a page. Should a
> <a role=button href="...">  be included in such a list?
>
> In short, there is a lot of non-AT related code in user agents that
> act on the semantics of the various elements in a page. In Firefox we
> generally act on the native semantics of elements by looking at their
> names. Is it expected that we rewrite all such code to instead look at
> the roles? Does this also apply to other HTML consumers other than
> browsers?
>
> Additionally, how does this affect scripting libraries? Should they
> stop looking at element names and instead look at their roles? Should
> we then deprecate APIs like getElementsByTagName and instead introduce
> something like getElementsByRole? Deprecate in this context would mean
> adding a warning to the developer console any time the API is used, as
> we've done in the past when attempting to remove API from the web
> platform.
>
> Further, what is the effect on conformance checkers? A<button>  is
> normally allowed to contain a<video>, but an<a>  is only sometimes
> so. What should the conformance rules for<a role=button>  be?
>
> If the answer is "yes, you should look at roles rather than names",
> has this been discussed with HTML implementors (browsers, conformance
> checkers and otherwise), and/or script authors? It seems like a pretty
> fundamental change to the way HTML, and markup languages in general,
> works, and so I would think buy-in from the various stake holders
> would be beneficial.

Can you point out specific points where the following is unclear:

   http://www.html5accessibility.com/tests/aria-changes.html

As a concrete example, I see nothing in that set of changes that 
proposes a getElementsByRole API, nor anything that deprecates 
getElementsByTagName.

> / Jonas

- Sam Ruby
Received on Friday, 18 March 2011 23:06:26 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Wednesday, 9 May 2012 00:17:26 GMT