- 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