Re: ISSUE-636 ACTION-1398 Provide spec. text for aria-roledescription

On Apr 3, 2014, at 11:59 AM, Dominic Mazzoni <dmazzoni@google.com> wrote:

> On Wed, Apr 2, 2014 at 12:25 AM, James Craig <jcraig@apple.com> wrote:
> For what it's worth, I think we should *eventually* add roles for all of these that we've mentioned. Absolutely we should.
> 
> Would it be a valid use case for aria-roledescription to be used for an application-specific role that's more useful to the user than a generic role - but specifically one that we're never likely to standardize?

Yes. The "never likely to standardize" bit is subjective though.

> For example, a webmail client might define an "attachment" object,

I think it'd be fine to use:
<div role="button" tabindex="0" aria-roledescription="attachment button">family_reunion.jpg</div>

Potentially even on native elements where there is a one-to-one role mapping from the host language element to the desired ARIA role:
<button aria-roledescription="attachment button">family_reunion.jpg</button>

But not in the cases like Joanie mentioned, where there is no directly applicable mapping, because the custom role-description could potentially mask some useful platform-specific 
<video> <!-- Don't use a role or role description here, b/c there is no "video" role in ARIA yet. -->
<div role="group" aria-roledescription="video player"> <!-- Fine to use custom role description on generic div. -->

It'd obviously be incorrect to mask some native functionality with a custom role description as well. Hopefully most people won't d this, but calling a "slider" a "button" would be problematic for a variety of reasons. I'm not terribly worried about this, but we can't prevent everyone from doing stupid things, like declaring this slider is a checkbox that should be called a button:
<input type="range" role="checkbox" aria-role-description="button"> <!-- No. -->


> or a presentation editor might define a "slide" object, and so on - in the case where this object doesn't really behave quite like any standard role. Of course it'd still need a valid ARIA role as a fallback, one that's close enough that it will put AT into the right mode - but the role description will tell the user a lot more about what it is.

Yep. 

ARIA 1.0:
<div role="group" aria-labelledby="slide1title">

ARIA 1.1 (hopefully):
<div role="group" aria-roledescription="slide" aria-labelledby="slide1title"> 

Future release, once the "chart" role is in but before all recent browsers support it:
<div role="slide group" aria-roledescription="slide" aria-labelledby="slide1title"> 

And finally, once the new role is in common use and supported in all recent browsers, there should be no more need for the fallback role or custom role description:
<div role="slide" aria-labelledby="slide1title"> 

Received on Thursday, 3 April 2014 20:49:51 UTC