Skip to content

Commit

Permalink
Counter-proposal regarding aria-roledescription
Browse files Browse the repository at this point in the history
  • Loading branch information
joanmarie committed Jul 5, 2017
1 parent b6d1810 commit 0c47c14
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions aria/aria.html
Expand Up @@ -10309,8 +10309,8 @@ <h2>Definitions of States and Properties (all aria-* attributes)</h2>
<p>Some <a>assistive technologies</a>, such as screen readers, present the role of an element as part of the user experience. Such assistive technologies typically localize the name of the role, and they may customize it as well. Users of these assistive technologies depend on the presentation of the role name, such as "region," "button," or "slider," for an understanding of the purpose of the element and, if it is a widget, how to interact with it.</p>
<p>The <code>aria-roledescription</code> property gives authors the ability to override how assistive technologies localize and express the name of a role. Thus inappropriately using <code>aria-roledescription</code> may inhibit users' ability to understand or interact with an element. Authors SHOULD limit use of <code>aria-roledescription</code> to clarifying the purpose of non-interactive container roles like <rref>group</rref> or <rref>region</rref>, or to providing a <em>more specific</em> description of a <rref>widget</rref>.</p>
<p>User agents MUST NOT expose the <code>aria-roledescription</code> attribute if the value of aria-roledescription is empty or contains only whitespace characters.</p>
<p>If <code>aria-roledescription</code> is applied to a generic or semantically <em>meaningless</em> presentational element (for example, <code>div</code> or <code>span</code> in HTML), user agents SHOULD NOT expose <code>aria-roledescription</code> unless the author also defines an explicit WAI-ARIA role value.</li>
<p>If <code>aria-roledescription</code> is applied to a semantically <em>meaningful</em> host language element whose implicit role semantic is not defined by WAI-ARIA, user agents SHOULD expose <code>aria-roledescription</code>, even if the author does not provide an explicit WAI-ARIA role value.</li>
<p>User agents MUST expose the <code>aria-roledescription</code> attribute if a valid value is applied to a host language interactive control.</p>

This comment has been minimized.

Copy link
@cookiecrook

cookiecrook Jul 6, 2017

Contributor

I don't think "host language interactive control" is any better defined than "semantically meaningless presentational element." Do you?

This comment has been minimized.

Copy link
@joanmarie

joanmarie Jul 6, 2017

Author Contributor

Yes, I do.

The purpose of that statement is to ensure that elements which the host language defines as interactive will expose the aria-roledescription value.

If you ask two independent implementors if a particular element is interactive, I think the likelihood that they will agree is pretty high. I don't think the same thing can be said if you ask them if something is "semantically meaningful."

This comment has been minimized.

Copy link
@cookiecrook

cookiecrook Jul 7, 2017

Contributor

Okay.

<p>If <code>aria-roledescription</code> is applied to a host language container element, user agents MUST NOT expose <code>aria-roledescription</code> unless the author also defines an explicit WAI-ARIA role value, or the host language has explicitly identified the element as supporting <code>aria-roledescription</code>.</p>

This comment has been minimized.

Copy link
@cookiecrook

cookiecrook Jul 6, 2017

Contributor

10313 is too restrictive. It puts a lot of extra work on the host language specs. E.g. this would be supported on role="main" but not <main> until HTML made a change... This would also not be supported on most SVG elements, where is may be most useful.

This comment has been minimized.

Copy link
@joanmarie

joanmarie Jul 6, 2017

Author Contributor

The problem is that we don't have a host-language-independent definition of "semantically meaningful."

And couldn't SVG add a statement listing all elements which support aria-roledescription?

This comment has been minimized.

Copy link
@cookiecrook

cookiecrook Jul 7, 2017

Contributor

I don't think we should set the precedent of making an ARIA attribute that does not work unless the host language explicitly defines where it will work. We have some precedent to exclusions with a host language ("strong native semantic" attrs) but nothing that requires explicit inclusion.

@stevefaulkner Would you consider it an acceptable requirement for HTML (presumably in HTML-AAM) to define a section specific to aria-roledescription? SVG? Other specs later?

This comment has been minimized.

Copy link
@asurkov

asurkov Jul 12, 2017

Contributor

I'm good if HTML-AAM defined a semantically meaningful element, but I do not support the idea to make HTML-AAM to list elements where aria-roledescription is applicable.

<p><a>Assistive technologies</a> SHOULD use the value of <code>aria-roledescription</code> when presenting the role of an element, but SHOULD NOT change other functionality based on the role of an element that has a value for <code>aria-roledescription</code>. For example, an assistive technology that provides functions for navigating to the next <rref>region</rref> or <rref>button</rref> would allow those functions to navigate to regions and buttons that have an <code>aria-roledescription</code>.</p>
<p>The following two examples show the use of <code>aria-roledescription</code> to indicate that a non-interactive container is a "slide" in a web-based presentation application.</p>
<pre class="example highlight">&lt;div role="region" aria-roledescription="slide" id="slide42" aria-labelledby="slide42heading"&gt;
Expand Down

0 comments on commit 0c47c14

Please sign in to comment.