- From: Joseph Scheuhammer <clown@alum.mit.edu>
- Date: Sun, 6 Mar 2016 19:20:57 -0500
- To: Fred Esch <fesch@us.ibm.com>
- Cc: Amelia Bellamy-Royds <amelia.bellamy.royds@gmail.com>, ARIA Working Group <public-aria@w3.org>, Richard Schwerdtfeger <richschwer@gmail.com>
- Message-ID: <56DCC969.3010503@alum.mit.edu>
Hi Fred, On 2016-03-04 12:43 PM, Fred Esch wrote: > For SVG it is imperative that an author be able to mark an element > with the role none or presentation and know that the element will not > appear in the accessibility tree. SVG is too messy to force authors > and authoring tools to work through anything but the simplest rule. Given the current specification of how the presentation/none role works, the way the author ensures that the element will not be exposed is by making sure that the element is not focusable, will not incur an accessibility event, and/or does not have any global aria-* attributes. If the developer configures the element as such, and adds role="none" to it, then the element will not appear in the accessibility tree. In short, it's the author's responsibility to use the correct kind of element, not add @tabindex to it, nor any other aria-* attribute if they want it excluded. Regarding your two use cases, by "group element" do you mean the <g> element? Based on the svg-aam, that element is generally not mapped, meaning it doesn't even need role="presentation" to exclude it from the tree [1] (my emphasis): " group role mapping if the element meets the criteria for Including Elements in the Accessibility Tree; otherwise, *no accessible object created*" For Case 1, is the group element focusable, TAB navigable, clickable, or otherwise interactive? Does it have any aria-* attributes? Is the <g> element given a role other than presentation/none? If the answer is "no" to all these questions, then the group element won't be exposed (there won't be an accessible object in the a11y tree). For Case 2, you imply there is interactivity with the <g> element in the form of navigation. It may also have some aria-* attribute(s) or a role other than none/presentation, although I can't tell without more information. Assuming some or all of these holds, then it will be included in the accessibility tree. I don't see any issue or inconsistency between the current specification of presentation/none and your two use cases. It looks to me like you have everything you want -- where is the problem? > The SVG accessibility task force decided that using a role of none or > presentation was the golden hammer that developers and authoring tools > need to exclude elements from the accessibility tree. Amelia is add > the changes in. If we need to change the ARIA spec lets change it. To use your terminology, there is no golden hammer. One of the principles of ARIA is that it does not change the browser's user interface. For example, if an element is focusable, TAB-navigable, or clickable, then putting role="presentation" on it will not change its interactive nature. Users can still TAB to it, or activate it by mouse or keyboard regardless of an additional presentation role. As such, it must have some representation in the accessibility tree. If the author truly intends for that element to have no semantic impact, then it's their responsibility to construct the element such that it is, in fact meaningless. That entails that they do not add any aria-* attributes to it, since, by doing so, they would be adding semantic information. If authors properly configure a semantic-free element, then adding role="none" will do what you want, if it is needed at all. [1] http://w3c.github.io/aria/svg-aam/svg-aam.html#mapping_role_table#role-map-g -- ;;;;joseph. 'Die Wahrheit ist Irgendwo da Draußen. Wieder.' - C. Carter -
Received on Monday, 7 March 2016 00:21:34 UTC