- From: Fred Esch <fesch@us.ibm.com>
- Date: Mon, 11 Jan 2016 08:24:28 -0500
- To: w3c/aria <reply+00aa64a78963ae07e81ad079ebfa20bd88fb22776716a33392cf0000000112a7dcb192a16>
- Cc: w3c/aria <aria@noreply.github.com>, <public-svg-a11y@w3.org>
- Message-Id: <201601111400.u0BE08HW023668@d03av02.boulder.ibm.com>
Joanie, We intend that any element with a role none or role presentation be omitted from the accessibility tree. This should overrule everything else - even aria-label, aria-labeledby and aria-description. For elements with role none we are not automatically excluding the children of the element from the accessibility tree. In SVG, there are lots of times when a group is used for adding style information but the group does not have semantic meaning and we need the role none and role presentation to prevent the group from being added to the accessibility tree. It is imperative that an author know role none is the magic hammer which absolutely keeps an element, but not necessarily their children out of the accessibility tree. Even if they perviously showed the element or use the element in a name or description calculation of another element - with the magic hammer - role none / role presentation, that object will not appear in the accessibility tree. We have a wiki page with testable statements - which we will use to generate the test files (via a perl script). I wrote the testable statements, but they haven't been vetted yet. If you find a statement you disagree with please let us know. Section 1.4 and 1.5 are about role none and role presentation respectively. Regards, Fred Esch Watson, IBM, W3C Accessibility IBM Watson Watson Release Management and Quality From: Joanmarie <notifications@github.com> To: w3c/aria <aria@noreply.github.com> Date: 01/08/2016 03:23 PM Subject: [aria] SVG-AAM: Consider explicit language regarding objects with presentational role and aria-label (#136) In the SVG-AAM's 5.1.1 Excluding Elements from the Accessibility Tree there is the following note text: The other factors for excluding elements, as described in the Core Accessibility API Mappings, are as follows: If the first mappable role provided by the author is none or presentation, the element must not be exposed. [...] Consult the original document [CORE-AAM] for the normative text. One should, of course, consult the CORE-AAM as the good note states. But a reader of the above text couldn't be blamed all that severely if they read the above note text and concluded that given <rect role="none" aria-label="Am I Here?" x="1" y="1" width="10"' height="10"/> there should be no accessible object. If one consults the CORE-AAM for the normative text, 5.1.1 Excluding Elements from the Accessibility Tree, they would find something quite similar: The following elements are not exposed via the accessibility API and user agents MUST NOT include them in the accessibility tree: Elements with none or presentation as the first mappable role in the role attribute string, according to the rules for the none and the presentation role defined in Accessible Rich Internet Applications (WAI-ARIA) 1.0 [WAI-ARIA]. So unless the ARIA spec defines a rule for none/presentation that says otherwise, it would seem that the rect element in the example above does indeed need to be excluded. There's a lot of text in the ARIA spec regarding the presentation role, but for the question at hand this statement seems to be the most relevant: For any element with an explicit or inherited role of presentation, user agents MUST ignore any non-global, role-specific WAI-ARIA states and properties. However, the user agent MUST always expose global WAI-ARIA states and properties to accessibility APIs, even if an element has an explicit or inherited role of presentation. (emphasis added) The aria-label attribute is global. So then the rect element in the example above would need to be exposed after all (right?). I mention all of this for a couple of reasons: 1. By adding explicit language in the SVG-AAM regarding objects with presentational role and a valid value for aria-label, implementors would not have to do all of the work above I just did. ;) Plus it would be clear and eliminate lingering doubts (e.g. an implementor might think, "A shape element whose role has been explicitly set to none is surely decorative and useless with respect to accessibility.") 2. The work-in-progress tests in the wiki include shapes with role="none" and an aria-label, along with expected results of NOAC. If the those tests expectations are indeed correct, they seem to be in potential conflict with the text I quote above. — Reply to this email directly or view it on GitHub.
Received on Monday, 11 January 2016 14:00:50 UTC