From 047f5692e3e1548bac50e5d7b0666643186a8187 Mon Sep 17 00:00:00 2001 From: Scott O'Hara Date: Fri, 11 Feb 2022 10:03:18 -0500 Subject: [PATCH 01/13] Prohibit naming of elements Adds new naming requirements section. Additional work and review needed. Need to indicate all elements with implicit roles which prohibit naming closes #147 --- index.html | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/index.html b/index.html index 0154a542..f6cd4e69 100644 --- a/index.html +++ b/index.html @@ -3052,6 +3052,43 @@

</figure> +
+

+ Requirements for use of ARIA attributes to name elements +

+ +

+ Authors MAY use `aria-label` and `aria-labelledby` attributes to specify accessible names for elements which have an implicit or explicit ARIA role which allows naming from authors. [[[wai-aria-1.2]]] defines roles which cannot be named. +

+

+ Authors MUST NOT specify `aria-label` or `aria-labelledby` on elements that expose an ARIA role which cannot be named. Elements whose implicit ARIA roles prohibit naming from authors are identified in [[[#docconformance]]]. +

+

+ The following markup example demonstrates a selection of HTML elements with implicit ARIA roles that prohibit naming from authors. +

+
+            <!-- Avoid doing the following! -->
+            <p aria-label="...">...</p>
+
+            <span aria-label="...">...<span>
+
+            <code aria-label="...">...<code>
+
+            <div aria-labelledby="...">...</div>
+          
+

+ The following markup example demonstrates elements which have explicit ARIA roles which allow naming from authors, and thus `aria-label` and `aria-labelledby` attributes are allow. +

+
+            <p role="link" tabindex="0" aria-label="...">...</p>
+
+            <span role="button" tabindex="0" aria-label="...">...<span>
+
+            <div role="article" aria-labelledby="...">...</div>
+          
+ +

Requirements for use of ARIA attributes in place of equivalent HTML attributes From c5a9bb4df81642232714e13c06330d179637095d Mon Sep 17 00:00:00 2001 From: Steve Faulkner Date: Fri, 11 Feb 2022 16:08:51 +0000 Subject: [PATCH 02/13] Update index.html hardened the code comment --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index f6cd4e69..1a960085 100644 --- a/index.html +++ b/index.html @@ -3068,7 +3068,7 @@

Elements with implicit ARIA roles which prohibit naming

--> The following markup example demonstrates a selection of HTML elements with implicit ARIA roles that prohibit naming from authors.

-            <!-- Avoid doing the following! -->
+            <!-- DO NOT do the following! -->
             <p aria-label="...">...</p>
 
             <span aria-label="...">...<span>

From 28ff042b68f473f018ec6570825f137f890c4a8f Mon Sep 17 00:00:00 2001
From: Scott O'Hara 
Date: Sat, 12 Feb 2022 19:10:49 -0500
Subject: [PATCH 03/13] naming prohibited updates

* define elements which are prohibited from being named so long as they expose their implicit semantics
* introduce the concepts of prohibited attributes and provide a def for 'naming prohibited' in the spec
---
 index.html | 140 +++++++++++++++++++++++++++++++++++++----------------
 1 file changed, 97 insertions(+), 43 deletions(-)

diff --git a/index.html b/index.html
index 1a960085..9258049b 100644
--- a/index.html
+++ b/index.html
@@ -217,7 +217,7 @@ 

unnecessary and can result in cross-platform issues. For instance, preventing the element from correctly exposing its state, and forcing the role of `button`, when it might otherwise be exposed with a - different role. + platform or browser specific role.

           <details>
@@ -254,7 +254,21 @@ 

MUST NOT overwrite the implicit ARIA semantics, or native semantics of the HTML element.

- +
+

+ [[wai-aria-1.2|WAI-ARIA]] identifies roles which have + prohibited states and properties. + These roles do not allow certain `aria-*` attributes to be specified by authors. + HTML elements which expose these implicit ARIA roles also do not allow authors to + specify these prohibited states and properties. +

+

+ Elements which are identified as Naming prohibited + are elements which authors MUST NOT specify an `aria-label` or `aria-labelledby` + attribute, unless the implicit role has been overwritten by an ARIA role + which allows for naming from authors. +

+

While setting an ARIA `role` and/or `aria-*` attribute that matches the implicit ARIA semantics is NOT RECOMMENDED, in some @@ -339,8 +353,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -356,8 +371,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes and + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -373,8 +389,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -409,8 +426,9 @@

`button` or `link`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -506,8 +524,9 @@

Otherwise, any `role`

+

Naming Prohibited if no role has been specified which allows naming.

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -525,8 +544,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -555,8 +575,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -572,8 +593,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -606,8 +628,9 @@

No `role`

+

Naming Prohibited

- Global `aria-*` attributes. + Otherwise, Global `aria-*` attributes.

@@ -684,8 +707,9 @@

No `role`

+

Naming Prohibited

- Global `aria-*` attributes. + Otherwise, Global `aria-*` attributes.

@@ -700,8 +724,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -717,8 +742,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -760,8 +786,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -812,8 +839,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -881,8 +909,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -937,8 +966,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -999,8 +1029,9 @@

`presentation` or `none`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1055,8 +1086,9 @@

DPub Role: `doc-footnote`

+

Naming Prohibited if exposed as `generic`.

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1082,8 +1114,9 @@

`none` or `presentation`

+

Naming Prohibited if exposed as `generic`.

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1121,8 +1154,9 @@

`switch` or `textbox`

+

Naming Prohibited if no role has been specified which allows naming.

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1187,8 +1221,9 @@

`none` or `presentation`

+

Naming Prohibited if exposed as `generic`.

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1204,8 +1239,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1257,8 +1293,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1811,8 +1848,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1828,8 +1866,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1845,8 +1884,9 @@

No `role`

+

Naming Prohibited

- Global `aria-*` attributes. + Otherwise, Global `aria-*` attributes.

@@ -1954,8 +1994,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2199,8 +2240,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2232,7 +2274,7 @@

Authors MAY specify the `aria-hidden` attribute on the `picture` element. - Otherwise, no other allowed `aria-*` attributes. + Otherwise, no allowed `aria-*` attributes.

@@ -2248,8 +2290,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2287,8 +2330,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2355,8 +2399,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2372,8 +2417,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2534,8 +2580,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2564,8 +2611,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2581,8 +2629,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2611,8 +2660,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2645,8 +2695,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2778,8 +2829,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2904,8 +2956,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2952,8 +3005,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

From 1a44814619d4f3efbf2ea223461eabc304b09e0d Mon Sep 17 00:00:00 2001 From: Scott O'Hara Date: Sat, 12 Feb 2022 19:19:16 -0500 Subject: [PATCH 04/13] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 9258049b..4d01950d 100644 --- a/index.html +++ b/index.html @@ -426,7 +426,7 @@

`button` or `link`

-

Naming Prohibited

+

Naming Prohibited

Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles. From 62b68c053736f174c14e9fbe5be33956e1e210d3 Mon Sep 17 00:00:00 2001 From: Scott O'Hara Date: Sat, 12 Mar 2022 13:15:44 -0500 Subject: [PATCH 05/13] update to aria 1.2 links to resolve some conflicts --- index.html | 232 ++++++++++++++++++++++++++--------------------------- 1 file changed, 116 insertions(+), 116 deletions(-) diff --git a/index.html b/index.html index 1eef61fc..3e4c3181 100644 --- a/index.html +++ b/index.html @@ -329,7 +329,7 @@

or `doc-noteref`

- Global `aria-*` attributes and + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -355,7 +355,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -373,7 +373,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes and + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -391,7 +391,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -408,7 +408,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `link` role.

@@ -428,7 +428,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -453,7 +453,7 @@

or `region`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -484,7 +484,7 @@

or `doc-tip`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -502,7 +502,7 @@

`application`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `application` role.

@@ -526,7 +526,7 @@

Naming Prohibited if no role has been specified which allows naming.

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -546,7 +546,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -577,7 +577,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -595,7 +595,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -612,7 +612,7 @@

Any `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -630,7 +630,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes. + Otherwise, Global `aria-*` attributes.

@@ -675,7 +675,7 @@

or `tab`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -692,7 +692,7 @@

Any `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -710,7 +710,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes. + Otherwise, Global `aria-*` attributes.

@@ -727,7 +727,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -745,7 +745,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -789,7 +789,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -806,7 +806,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `listbox` role.

@@ -824,7 +824,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `definition` role.

@@ -842,7 +842,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -859,7 +859,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `group` role.

@@ -876,7 +876,7 @@

Any `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -894,7 +894,7 @@

`alertdialog`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `dialog` role.

@@ -913,7 +913,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -934,7 +934,7 @@

or `presentation`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -952,7 +952,7 @@

`listitem`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -970,7 +970,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -992,7 +992,7 @@

or `presentation`.

- Global `aria-*` attributes and + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1012,7 +1012,7 @@

or `radiogroup`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1033,7 +1033,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1057,7 +1057,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1090,7 +1090,7 @@

Naming Prohibited if exposed as `generic`.

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1118,7 +1118,7 @@

Naming Prohibited if exposed as `generic`.

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1158,7 +1158,7 @@

Naming Prohibited if no role has been specified which allows naming.

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1183,7 +1183,7 @@

`doc-subtitle`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1225,7 +1225,7 @@

Naming Prohibited if exposed as `generic`.

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1243,7 +1243,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1266,7 +1266,7 @@

`doc-pagebreak`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `separator` role.

@@ -1297,7 +1297,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1319,7 +1319,7 @@

or `presentation`.

- Global `aria-*` attributes and + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1357,7 +1357,7 @@

`doc-cover`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1418,7 +1418,7 @@

or `tab`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1442,7 +1442,7 @@

Authors SHOULD NOT use the `aria-checked` attribute on `input type=checkbox` elements.

- Otherwise, any global `aria-*` attributes and + Otherwise, any global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1464,7 +1464,7 @@

No `role`

- Global `aria-*` attributes. + Global `aria-*` attributes.

@@ -1480,7 +1480,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `textbox` role.

@@ -1497,7 +1497,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `textbox` role.

@@ -1515,7 +1515,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `textbox` role.

@@ -1532,7 +1532,7 @@

No `role`

- Global `aria-*` attributes. + Global `aria-*` attributes.

@@ -1567,7 +1567,7 @@

or `switch`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1584,7 +1584,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `textbox` role.

@@ -1601,7 +1601,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `spinbutton` role.

@@ -1618,7 +1618,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `textbox` role.

@@ -1640,7 +1640,7 @@

`aria-checked` attribute on `input type=radio` elements.

- Otherwise, any global `aria-*` attributes and any `aria-*` attributes + Otherwise, any global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1667,7 +1667,7 @@

Otherwise, any - global `aria-*` attributes + global `aria-*` attributes and any other `aria-*` attributes applicable to the `slider` role.

@@ -1684,7 +1684,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `button` role.

@@ -1702,7 +1702,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `searchbox` role.

@@ -1719,7 +1719,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `button` role.

@@ -1737,7 +1737,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `textbox` role.

@@ -1758,7 +1758,7 @@

or `spinbutton`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1784,7 +1784,7 @@

Otherwise, any - global `aria-*` attributes + global `aria-*` attributes and any other `aria-*` attributes applicable to the `combobox` role.

@@ -1801,7 +1801,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `textbox` role.

@@ -1819,7 +1819,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `textbox` role.

@@ -1836,7 +1836,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `textbox` role.

@@ -1854,7 +1854,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1872,7 +1872,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1890,7 +1890,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes. + Otherwise, Global `aria-*` attributes.

@@ -1906,7 +1906,7 @@

No `role`

- Global `aria-*` attributes. + Global `aria-*` attributes.

@@ -1933,7 +1933,7 @@

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -1969,7 +1969,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `main` role.

@@ -2000,7 +2000,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2017,7 +2017,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `math` role.

@@ -2044,7 +2044,7 @@

or `tree`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2083,7 +2083,7 @@

Otherwise, any - global `aria-*` attributes. + global `aria-*` attributes.

@@ -2108,7 +2108,7 @@

`doc-toc`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2141,7 +2141,7 @@

or `img`.

- Global `aria-*` attributes and + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2168,7 +2168,7 @@

or `tree`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2189,7 +2189,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `group` role.

@@ -2211,7 +2211,7 @@

Authors SHOULD NOT use the `aria-selected` attribute on the `option` element.

- Global `aria-*` attributes and + Global `aria-*` attributes and any other `aria-*` attributes applicable to the `option` role.

@@ -2228,7 +2228,7 @@

Any `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2246,7 +2246,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2296,7 +2296,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2318,7 +2318,7 @@

Otherwise, - any global `aria-*` attributes + any global `aria-*` attributes and any other `aria-*` attributes applicable to the `progressbar` role.

@@ -2336,7 +2336,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2353,7 +2353,7 @@

Any `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2370,7 +2370,7 @@

Any `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2387,7 +2387,7 @@

Any `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2405,7 +2405,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2423,7 +2423,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2511,7 +2511,7 @@

`doc-toc`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2533,7 +2533,7 @@

Otherwise, - any global `aria-*` attributes + any global `aria-*` attributes and any other `aria-*` attributes applicable to the `combobox` or `menu` role.

@@ -2555,7 +2555,7 @@

Otherwise, - any global `aria-*` attributes + any global `aria-*` attributes and any other `aria-*` attributes applicable to the `listbox` role.

@@ -2586,7 +2586,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2617,7 +2617,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2635,7 +2635,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2666,7 +2666,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2683,7 +2683,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `button` role.

@@ -2701,7 +2701,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2719,7 +2719,7 @@

Any `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2736,7 +2736,7 @@

Any `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2753,7 +2753,7 @@

Any `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2783,7 +2783,7 @@

No `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `textbox` role.

@@ -2800,7 +2800,7 @@

Any `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2817,7 +2817,7 @@

Any `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2835,7 +2835,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2878,7 +2878,7 @@

any `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2912,7 +2912,7 @@

any `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2931,7 +2931,7 @@

any `role`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2962,7 +2962,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2989,7 +2989,7 @@

or `tree`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -3011,7 +3011,7 @@

Naming Prohibited

- Otherwise, Global `aria-*` attributes + Otherwise, Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -3028,7 +3028,7 @@

Role: `application`

- Global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the `application` role.

@@ -3244,7 +3244,7 @@

- Authors MAY use the `aria-hidden` attribute on any HTML element that allows global `aria-*` attributes, with the following exception: + Authors MAY use the `aria-hidden` attribute on any HTML element that allows global `aria-*` attributes, with the following exception:

Authors SHOULD NOT use the `aria-hidden="true"` attribute on any element which also has a `hidden` attribute. From 125bd7fb45ecc811ded992437d48b196873f72d9 Mon Sep 17 00:00:00 2001 From: Scott O'Hara Date: Sat, 12 Mar 2022 14:09:29 -0500 Subject: [PATCH 06/13] reference new section --- index.html | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/index.html b/index.html index 5f7f0747..d6212095 100644 --- a/index.html +++ b/index.html @@ -288,22 +288,15 @@

[[wai-aria-1.2|WAI-ARIA]] identifies roles which have prohibited states and properties. These roles do not allow certain WAI-ARIA attributes to be specified by authors. - HTML elements which expose these implicit ARIA roles also prohibit authors from + HTML elements which expose these implicit WAI-ARIA roles also prohibit authors from specifying these WAI-ARIA attributes.

Elements which are identified as Naming prohibited are elements authors MUST NOT specify an `aria-label` or `aria-labelledby` - attribute, unless the implicit role has been overwritten by an ARIA role - which allows for naming from authors. + attribute, unless the element allows for its implicit role to be overwritten by an explicit + WAI-ARIA role which allows naming from authors. For more information see [[[#docconformance-naming]]].

-
-          <!-- Authors cannot name a div -->
-          <div aria-label="My name">...</div>
-
-          <!-- But authors CAN name a div with a role which allows for naming -->
-          <div role="group" aria-label="My name">...</div>
-        

While setting an ARIA `role` and/or `aria-*` attribute that matches the @@ -461,7 +454,7 @@

`button` or `link`

-

Naming Prohibited

+

Naming Prohibited

Otherwise, global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles. @@ -1151,6 +1144,9 @@

Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

+

+ A `form` is not exposed as a landmark region unless it has been provided an accessible name. +

@@ -3152,7 +3148,7 @@

Elements with implicit ARIA roles which prohibit naming

--> Authors MAY use `aria-label` and `aria-labelledby` attributes to specify accessible names for elements which have an implicit or explicit ARIA role which allows naming from authors. [[[wai-aria-1.2]]] defines roles which cannot be named.

- Authors MUST NOT specify `aria-label` or `aria-labelledby` on elements that expose an ARIA role which cannot be named. Elements whose implicit ARIA roles prohibit naming from authors are identified in [[[#docconformance]]]. + Authors MUST NOT specify `aria-label` or `aria-labelledby` on elements with implicit WAI-ARIA roles which cannot be named. Elements whose implicit WAI-ARIA roles prohibit naming from authors are identified in [[[#docconformance]]].

The following markup example demonstrates a selection of HTML elements with implicit ARIA roles that prohibit naming from authors. From f24d04eec23c2d34d695d3d8ee6687c13b1bf232 Mon Sep 17 00:00:00 2001 From: Scott O'Hara Date: Sat, 12 Mar 2022 14:14:14 -0500 Subject: [PATCH 07/13] fixing a typo by revising a sentence --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index d6212095..70e0378c 100644 --- a/index.html +++ b/index.html @@ -3164,7 +3164,7 @@

Elements with implicit ARIA roles which prohibit naming

--> <div aria-labelledby="...">...</div>

- The following markup example demonstrates elements which have explicit ARIA roles which allow naming from authors, and thus `aria-label` and `aria-labelledby` attributes are allow. + The following markup example demonstrates elements which have explicit WAI-ARIA roles which allow naming from authors. Due to the explicit roles specified on these elements, `aria-label` and `aria-labelledby` attributes are allowed.

             <p role="link" tabindex="0" aria-label="...">...</p>

From 1b93a4245550433e4b8cf8eff089ef43b3432e70 Mon Sep 17 00:00:00 2001
From: Scott O'Hara 
Date: Sat, 12 Mar 2022 15:37:51 -0500
Subject: [PATCH 08/13] prohibit naming of legend

same rules as caption and label
---
 index.html | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/index.html b/index.html
index 70e0378c..1beb2445 100644
--- a/index.html
+++ b/index.html
@@ -1931,8 +1931,9 @@ 

No `role`

+

Naming Prohibited

- Global `aria-*` attributes. + Otherwise, global `aria-*` attributes.

From a7f5e36120c8fe2bc35ed078b771d3149ba5cd28 Mon Sep 17 00:00:00 2001 From: Scott O'Hara Date: Sat, 12 Mar 2022 15:45:13 -0500 Subject: [PATCH 09/13] prohibit naming of rp and rt these either represent their children, per other text-level semantics, or are important in the structure of a `ruby` element. These shouldn't be named... more testing needed to determine the impact aria can have on these in general. --- index.html | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 1beb2445..75118701 100644 --- a/index.html +++ b/index.html @@ -2381,8 +2381,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

@@ -2398,8 +2399,9 @@

Any `role`

+

Naming Prohibited

- Global `aria-*` attributes + Otherwise, global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

From 638ae508e323d6d0a03f114fe29b86274aa15f3f Mon Sep 17 00:00:00 2001 From: Scott O'Hara Date: Sat, 12 Mar 2022 16:18:18 -0500 Subject: [PATCH 10/13] create prohibit naming test --- tests/prohibit-naming.html | 301 +++++++++++++++++++++++++++++++++++++ 1 file changed, 301 insertions(+) create mode 100644 tests/prohibit-naming.html diff --git a/tests/prohibit-naming.html b/tests/prohibit-naming.html new file mode 100644 index 00000000..abd3b37a --- /dev/null +++ b/tests/prohibit-naming.html @@ -0,0 +1,301 @@ + + + + ARIA in HTML - Test Cases + + + + + +
+

ARIA in HTML - test cases for elements which prohibit naming

+

last updated 12 March 2022

+
+
+

Tests:

+

+ Each of the following test cases is an instance of an HTML element which either has an aria-labelledby or a aria-label attribute, which are not allowed for these elements with their implicit ARIA roles which prohibit naming. +

+

Note: the body element of this page has an aria-label and aria-labelledby specified for checking purposes, as that element too is not allowed to be named by authors.

+ + + +
+

a

+ fail + fail +
+ +
+

abbr

+ fail + fail +
+ +
+

address

+
fail
+
fail
+
+ +
+

area

+ fail + fail +
+ +
+

autonomous custom element

+ fail + fail +
+ +
+

b

+ fail + fail +
+ +
+

bdi

+ fail + fail +
+ +
+

bdo

+ fail + fail +
+ +
+

caption

+ + + +
fail
...
+ + + +
fail
...
+
+ +
+

cite

+ fail + fail +
+ +
+

code

+ fail + fail +
+ +
+

data

+ fail + fail +
+ +
+

del

+ fail + fail +
+ +
+

div

+
fail
+
fail
+
+ +
+

em

+ fail + fail +
+ +
+

figcaption

+
+
test
+
fail
+
+
+
test
+
fail
+
+ +
+ +
+

footer not scoped to body

+
+
fail
+
fail
+
+
+ +
+

header not scoped to body

+
+
fail
+
fail
+
+
+ +
+

hgroup

+

fail

+

fail

+
+ +
+

i

+ fail + fail +
+ +
+

ins

+ fail + fail +
+ +
+

kbd

+ fail + fail +
+ +
+

label

+ + +
+ +
+

legend

+
+ fail +
+
+ fail +
+
+ +
+

mark

+ fail + fail +
+ +
+

p

+

fail

+

fail

+
+ +
+

pre

+
fail
+
fail
+
+ +
+

q

+ fail + fail +
+ +
+

rp and rt

+ + ( + fail + ) + + + ( + fail + ) + +
+ +
+

s

+ fail + fail +
+ +
+

samp

+ fail + fail +
+ +
+

small

+ fail + fail +
+ +
+

span

+ fail + fail +
+ +
+

strong

+ fail + fail +
+ +
+

sub

+ fail + fail +
+ +
+

sup

+ fail + fail +
+ +
+

time

+ + +
+ +
+

u

+ fail + fail +
+ +
+

var

+ fail + fail +
+ +
+ + From 3d6c956db4850423ec97b88f63e0eb0ae506f00f Mon Sep 17 00:00:00 2001 From: Scott O'Hara Date: Sat, 12 Mar 2022 16:21:32 -0500 Subject: [PATCH 11/13] shouldn't have pushed this here should push the test to the main branch instead. --- tests/prohibit-naming.html | 301 ------------------------------------- 1 file changed, 301 deletions(-) delete mode 100644 tests/prohibit-naming.html diff --git a/tests/prohibit-naming.html b/tests/prohibit-naming.html deleted file mode 100644 index abd3b37a..00000000 --- a/tests/prohibit-naming.html +++ /dev/null @@ -1,301 +0,0 @@ - - - - ARIA in HTML - Test Cases - - - - - -
-

ARIA in HTML - test cases for elements which prohibit naming

-

last updated 12 March 2022

-
-
-

Tests:

-

- Each of the following test cases is an instance of an HTML element which either has an aria-labelledby or a aria-label attribute, which are not allowed for these elements with their implicit ARIA roles which prohibit naming. -

-

Note: the body element of this page has an aria-label and aria-labelledby specified for checking purposes, as that element too is not allowed to be named by authors.

- - - -
-

a

- fail - fail -
- -
-

abbr

- fail - fail -
- -
-

address

-
fail
-
fail
-
- -
-

area

- fail - fail -
- -
-

autonomous custom element

- fail - fail -
- -
-

b

- fail - fail -
- -
-

bdi

- fail - fail -
- -
-

bdo

- fail - fail -
- -
-

caption

- - - -
fail
...
- - - -
fail
...
-
- -
-

cite

- fail - fail -
- -
-

code

- fail - fail -
- -
-

data

- fail - fail -
- -
-

del

- fail - fail -
- -
-

div

-
fail
-
fail
-
- -
-

em

- fail - fail -
- -
-

figcaption

-
-
test
-
fail
-
-
-
test
-
fail
-
- -
- -
-

footer not scoped to body

-
-
fail
-
fail
-
-
- -
-

header not scoped to body

-
-
fail
-
fail
-
-
- -
-

hgroup

-

fail

-

fail

-
- -
-

i

- fail - fail -
- -
-

ins

- fail - fail -
- -
-

kbd

- fail - fail -
- -
-

label

- - -
- -
-

legend

-
- fail -
-
- fail -
-
- -
-

mark

- fail - fail -
- -
-

p

-

fail

-

fail

-
- -
-

pre

-
fail
-
fail
-
- -
-

q

- fail - fail -
- -
-

rp and rt

- - ( - fail - ) - - - ( - fail - ) - -
- -
-

s

- fail - fail -
- -
-

samp

- fail - fail -
- -
-

small

- fail - fail -
- -
-

span

- fail - fail -
- -
-

strong

- fail - fail -
- -
-

sub

- fail - fail -
- -
-

sup

- fail - fail -
- -
-

time

- - -
- -
-

u

- fail - fail -
- -
-

var

- fail - fail -
- -
- - From 233777399a7d1b3f6ab90859f103126c8fd96381 Mon Sep 17 00:00:00 2001 From: Scott O'Hara Date: Tue, 15 Mar 2022 22:20:33 -0400 Subject: [PATCH 12/13] remove rp element from this PR this will instead be covered in resolving #407 --- index.html | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/index.html b/index.html index 75118701..ffe0867e 100644 --- a/index.html +++ b/index.html @@ -2381,9 +2381,8 @@

Any `role`

-

Naming Prohibited

- Otherwise, global `aria-*` attributes + Global `aria-*` attributes and any `aria-*` attributes applicable to the allowed roles.

From ad38f262ed13b94c380da510fb4ac6ec8247c52f Mon Sep 17 00:00:00 2001 From: Scott O'Hara Date: Sat, 26 Mar 2022 12:46:46 -0400 Subject: [PATCH 13/13] Update index.html --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index ffe0867e..14cbadb2 100644 --- a/index.html +++ b/index.html @@ -3147,10 +3147,10 @@

- Authors MAY use `aria-label` and `aria-labelledby` attributes to specify accessible names for elements which have an implicit or explicit ARIA role which allows naming from authors. [[[wai-aria-1.2]]] defines roles which cannot be named. + Authors MAY use `aria-label` and `aria-labelledby` attributes to specify accessible names for elements which have an implicit or explicit ARIA role which allows naming from authors. [[[wai-aria-1.2]]] defines roles which allow naming from authors as well as roles where author naming is prohibited.

- Authors MUST NOT specify `aria-label` or `aria-labelledby` on elements with implicit WAI-ARIA roles which cannot be named. Elements whose implicit WAI-ARIA roles prohibit naming from authors are identified in [[[#docconformance]]]. + Authors MUST NOT specify `aria-label` or `aria-labelledby` on elements with implicit WAI-ARIA roles which cannot be named. HTML elements whose implicit WAI-ARIA roles prohibit naming from authors are identified in [[[#docconformance]]].

The following markup example demonstrates a selection of HTML elements with implicit ARIA roles that prohibit naming from authors.