[Bug 10914] Allow multiple space separated values for the ARIA role attribute

http://www.w3.org/Bugs/Public/show_bug.cgi?id=10914

--- Comment #10 from Henri Sivonen <hsivonen@iki.fi> 2010-10-04 13:39:55 UTC ---
(In reply to comment #9)
> Which reads to me as if HTML5 MUST allow role="navigation menubar" as
> conforming.

That depends on what "in and of itself" means. If you read it broadly enough,
it could be read as banning the whole concept of making violations of strong
semantics non-conforming.

I think a bug needs to be filed on ARIA to make ARIA itself clearer and to make
it permissible for host languages to make the non-conforming to override the
roles on some elements.

Furthermore, it's non-sensical to make role="navigation menubar" conforming
when the processing model is "The first name literal of a non-abstract WAI-ARIA
role in the list of tokens in the role attribute defines the role according to
which the user agent MUST
process the element."

This means that the token "navigation" MUST be used to process the element. In
that case, it makes no sense to allow the token "menubar" that according to the
processing model doesn't take an effect. If "menubar" doesn't take an effect,
what can it be but an authoring error?

What would make sense is that ARIA.next defines a role fancymenubar and then
*once ARIA.next is available* role="fancymenubar menubar" becomes conforming
for authors to use so that ARIA.next-compliant UAs expose fancymenubar and old
UAs fall back to exposing menubar.

Now, if ARIA wants to allow both a landmark role and a non-landmark role on one
element to take effect simultaneously, ARIA needs to revise its processing
model.

As I understand Gecko's behavior, Gecko honors the first role it recognized but
also exposes all role tokens via IAccessible2, so AT that uses IAccessible2 can
(and do?) subvert the processing model specified in ARIA. :-( I guess this
already makes non-landmark plus landmark "work" in violation of the ARIA
processing model if the AT violates the ARIA processing model and picks up
landmark from IAccessible2 while also honoring the non-landmark role.

Personally, I think it be the clearest to honor the first role the the UA
recognizes and not to allow landmarks and non-landmarks on one element, though
I can see why one might want to honor both the first recognized landmark and
the first recognized non-landmark.

-- 
Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

Received on Monday, 4 October 2010 13:39:58 UTC