- From: Sailesh Panchang <sailesh.panchang@deque.com>
- Date: Fri, 14 Feb 2014 18:11:32 -0500
- To: Joseph Scheuhammer <clown@alum.mit.edu>
- Cc: James Teh <jamie@nvaccess.org>, Bryan Garaventa <bryan.garaventa@whatsock.com>, James Craig <jcraig@apple.com>, mick@nvaccess.org, "Schnabel, Stefan" <stefan.schnabel@sap.com>, WAI XTech <wai-xtech@w3.org>
Joseph,
Yes, by identity I do mean name.
And the assistive technology is interpreting the markup as exposed by
the API/ the browser / DOM in order to render accessible content to
the user.
Yes I am aware ARIA attributes are not exposed visually. And there's a
disconnect between what is exposed by the API to browser/At and to a
sighted user.
Else what is the point of ARIA11 aria-label for landmark example#3) or ARIA14 ?
See
http://www.w3.org/WAI/GL/2014/WD-WCAG20-TECHS-20140107/aria.html
And James Teh seemed to agree with my thought "I think it is necessary
to draw a distinction between elements like an
anchor, any form control vis a vis a div when it is a container for
other elements / content.".
My interpretation of what I expect as a user for the 'I am a
listitem' SPAN tag is based on the above distinction of aria-label on
a container and on a UI control.
>>Here's a use case: a screen-reader/magnifier user. The magnifier presents an enhanced version of what the browser has rendered on screen, namely "What is my nom de >>plume?". If, at the same time the screen reader speaks something different, say, "What is my name?", that is going to confuse the user.
Does this not apply to your example too!
i.e.
<span role="listitem">What is my <a href="#" aria-label="name">nom de
plume</a>?</span>
That's precisely the point of aria-label: the value of that attribute
helps no one expect the PWD user whose AT can access it. So one uses
aria-label in situations where overriding the visible anchor content
will make sense
e.g. <a href="#" aria-label="31 Dec 2014">31</a>
If one wants the anchor text and accessible description to be
rendered, then one is better off using a title on the anchor as per my
earlier email.
Thanks,
Sailesh
On 2/14/14, Joseph Scheuhammer <clown@alum.mit.edu> wrote:
> Hi Sailesh,
>
>> But how should the following be interpreted:
>> <span role="listitem" aria-label="I am a listitem">What is my <a
>> href="#" aria-label="name">nom de plume</a>?</span>
>
> I am unsure what you are asking when you say "how should the following
> be interpreted". That depends on who is doing the interpreting :-) .
>
> I'll start with a given. The aria spec mandates that the browser
> exposes the following accessibles and their names through the a11y API
> for your markup. Accessibles are given in upper case. The tree is
> based on FF 27 as viewed using an a11y inspector (apologies if the tree
> structure is not apparent):
>
> LIST_ITEM {
> name: "I am a listitem"
> TEXT {
> name: "What is my"
> }
> LINK {
> name: "name"
> TEXT {
> name: "nom de plume"
> }
> }
> TEXT {
> name: "?"
> }
> }
>
>> And my take is:
>> The identity of the SPAN is: "I am a listitem"
>
> If, by "identity", you mean the a11y name, I agree. Otherwise, what do
> you mean by "identity"?
>
>> So this should be exposed to the browser and ATs should render it as
>> one navigates to the SPAN i.e. list item.
>
> I think you mean "exposed *by* the browser? If so, yes.
>
>> And the content of the SPAN too should be exposed as you suggested
>> earlier:
>> "What is my name?"
>
> This raises an interesting point. In my example, the a11y *name* of the
> LIST ITEM was "What is my name?". I was showing that a
> name-from-contents calculation could switch to name-from-author for a
> single descendant element, and then switch back. I said nothing
> specifically about the *contents* of the LIST ITEM.
>
> Based on the above a11y tree, the contents of the LIST ITEM is exposed
> as "What is my nom de plume?". But, that's based on the assumption that
> the contents are built out of the TEXT accessibles. Note that matches
> the content that the browser renders on screen.
>
> So: I disagree that the content of the LIST ITEM is "What is my name?".
>
>> And browsers and ATs should render this.
>
> Well, as I said, the browser renders "What is my nom de plume?" as the
> content of the list item, not "What is my name?" I think ATs should
> render the same content, here. I don't see a reason for ATs to render
> different content. However, a position in this thread is that ATs
> reserve the right to do what they want. Perhaps there is a
> justification for rendering the content differently as "What is my
> name?", but, if there is such justification in this case, it escapes me.
>
> Here's a use case: a screen-reader/magnifier user. The magnifier
> presents an enhanced version of what the browser has rendered on screen,
> namely "What is my nom de plume?". If, at the same time the screen
> reader speaks something different, say, "What is my name?", that is
> going to confuse the user.
>
> By the way, if it's not obvious, the browser does not explicitly render
> the a11y names on screen. The names exist only in the a11y API.
>
> --
> ;;;;joseph.
>
>
> 'A: After all, it isn't rocket science.'
> 'K: Right. It's merely computer science.'
> - J. D. Klaun -
>
>
Received on Friday, 14 February 2014 23:11:59 UTC