Re: html5 aria mapping

and this did not make it to the list.

On 30/09/10 10:55 AM, David Bolter wrote:
> What does the text "User agents are required to implement WAI-ARIA 
> semantics on all HTML elements" mean? 

I think it means something like: where no ARIA attributes have been 
given in the markup, and there's just "raw" html5, then here are the 
default ARIA semantics for each of those elements.  For example, an <a> 
would have an implicit ARIA role of "link".

The tables that follow then describe what each html element's implicit 
role is.  They also state that if the author is going to add an aria 
role, then there are some restrictions.  For example, an aria role of 
button, checkbox, etc. (see the table[1] for the rest of the list of 
aria roles) can be applied to the <a> element.  But, an <a> can't have, 
say, an aria role of "application".  This is the issue of strong native 
semantics vs. aria semantics, and where and when aria semantics can 
override native.  As you wrote:

> ... in Firefox we generally allow ARIA to trump HTML because we 
> realize that if we can't trust web developers to use ARIA properly, 
> then their web app probably isn't going to be accessible anyways. This 
> has been the general sentiment in the UIA-TF meetings but we haven't 
> met in a long while and only two browsers have representation.

The current last call draft says, "When a WAI-ARIA role is provided, 
user agents MUST use the semantic of the WAI-ARIA role for processing, 
not the native semantic, unless the role requires WAI-ARIA states and 
properties whose attributes that are explicitly forbidden on the native 
element by the host language." [2]

The spec is pretty much in agreement with you, except possibly for the 
"unless" clause.  Is that acceptable to the UIA-TF?  If not, it may be 
appropriate to file a comment against the last call draft.



'Clown control to Mao Tse Tung.'
  - D. Bowie (misheard lyric) -

Received on Thursday, 30 September 2010 17:55:20 UTC