On 24/03/2015 1:50 AM, 'Dominic Mazzoni' via Browser Accessibility
Development wrote:
> I propose that we add a new attribute aria-roledescription.
> The value of this attribute would be a localized string containing
> specific text that could be communicated to the user as a more specific
> description of the actual ARIA role of the element.
I'm about to further my reputation of being
pedantic/resistant/difficult. :) Regardless, I've always been somewhat
dubious at best (downright opposed at worst) to this idea. IMO, this is
usually used as a hack to avoid defining new roles where new roles
really should be created.
> The use case this solves is when an application has a UI widget that
> doesn't fit any of the existing ARIA roles, and just calling it one of
> the existing ARIA roles without any additional explanation would be
> confusing.
If there is a need to change the text like this, that almost always
suggests there in fact *are* new semantics. Otherwise, there wouldn't be
a need to change the text in the first place.
> A role description does not affect the semantics in any way. AT must not
> interpret the string, they should just present it in place of the usual
> text used to describe that role.
* What if the AT would usually not speak role text at all? For example,
NVDA doesn't speak list item, table cell, menu item, etc.
* What if the role is communicated in some other way; e.g. a sound?
* What if there is an abbreviated version of the role for braille?
Braille users prefer abbreviated roles for efficiency reasons.
> * A drawer handle
What role would this be? Why is that role text confusing?
> * A listbox that wraps around
Would something like "wrap around list box" really make much sense to
most users? Is there a reasn that this actually needs to be communicated
anyway?
> * A 4-way toggle button
> * A backwards slider
I'd argue these all have additional semantics, particularly the last
one. That really needs to be communicated using some sort of orientation
property.
Other issues:
1. Unnecessary usage: While everything can be abused and this isn't in
itself a reason to block it, I think this one is particularly
problematic in this respect. I've seen usage examples like "buddy list
item", "buddy", etc. That just creates annoying verbosity for the user
and makes them think it is different in some way when it really isn't.
If this is adopted, these cases need to somehow be recommended against.
2. Expected behaviour: Aside from predefined semantics and widespread
usage, common roles also have the advantage that the user knows what to
expect when they're encountered. In contrast, when the role text is
changed, the user doesn't know what to expect. They can't assume
anything. Like everything else, they'll eventually learn, but because
this opens up the field to a literally infinite number of possibilities,
the problem is thus infinitely magnified.
3. Inconsistency: Similar to (2). Because the text is entirely author
defined, different authors might define different text for what is
essentially the same widget. This could confuse users even further.
Jamie
--
James Teh
Executive Director, NV Access Limited
Ph
+61 7 3149 3306
www.nvaccess.org
Facebook:
http://www.facebook.com/NVAccess
Twitter: @NVAccess
SIP:
ja...@nvaccess.org