- 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