From 79088ffca736386a004372178b09c42fc93ffe10 Mon Sep 17 00:00:00 2001 From: Daniel Date: Mon, 23 Mar 2026 10:48:44 +0100 Subject: [PATCH] First pass at updating the implementation report --- results/implementation-results.html | 437 ++++++++++++++++++++-------- 1 file changed, 311 insertions(+), 126 deletions(-) diff --git a/results/implementation-results.html b/results/implementation-results.html index f123b53c..0f7b123f 100644 --- a/results/implementation-results.html +++ b/results/implementation-results.html @@ -32,7 +32,7 @@

Implementation Report

-

Last updated 19 August 2021

+

Last updated 22 March 2026

Status of checks against the ARIA in HTML rules in the following implementations:

@@ -54,7 +54,7 @@

Conformance Checker Rule Implementations

The following is a list of rules which are presently in process of being implemented, but at this time are marked as 'at risk' due to a lack of two implementations.

--> -

As of 06-26-2021 all features have been verified to have at least two implementations. There are no features at risk.

+

As of 22 March 2026, the features listed in this report have been verified against the current state of the specification. There are no features at risk due to lack of implementations.

Note: IBM presently does not return errors/warnings when explicit roles are specified on elements which natively expose that role implicitly.

@@ -140,14 +140,15 @@

Conformance Checker Rule Implementations

a without href - No corresponding role + role=generic

- Any role + Any role, though generic should not be used.

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

@@ -168,7 +169,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -182,11 +184,11 @@

Conformance Checker Rule Implementations

address - No corresponding role + role=group

- Any role + Any role, though group is NOT RECOMMENDED.

Global aria-* attributes and @@ -219,6 +221,29 @@

Conformance Checker Rule Implementations

yes
- note: same expectations for area with or without href yes
- note: same expectations for area with or without href + + + area without href + + + role="generic" + + +

+ Roles: + button or link. (generic is also allowed, but SHOULD NOT be used.) +

+

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

+ + area + yes + yes + yes + article @@ -263,12 +288,14 @@

Conformance Checker Rule Implementations

presentation, region or search. + (complementary is also allowed, but is NOT RECOMMENDED.)

DPub Roles: doc-dedication, doc-example, doc-footnote, + doc-glossary, doc-pullquote, doc-tip

@@ -310,16 +337,17 @@

Conformance Checker Rule Implementations

Role exposed from author defined ElementInternals. - Otherwise no corresponding role. + Otherwise role=generic.

If role defined by ElementInternals, no role.

- Otherwise, any role + Otherwise, any role, though generic should not be used.

- Global aria-* attributes and + Naming Prohibited if exposed as generic, or as another role which prohibits naming. + Otherwise, global aria-* attributes and any aria-* attributes applicable to the allowed roles.

@@ -341,7 +369,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -377,7 +406,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -398,7 +428,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -433,16 +464,16 @@

Conformance Checker Rule Implementations

body - No corresponding role + role=generic

- No role + No role other than generic, which SHOULD NOT be used.

- Global aria-* attributes - and any aria-* attributes applicable to the - document role. + Naming Prohibited. + Otherwise, global aria-* attributes for the generic role, + with the exception that authors MUST NOT specify aria-hidden=true on the body element.

body @@ -464,8 +495,8 @@

Conformance Checker Rule Implementations

or none.

- Global aria-* attributes and - any aria-* attributes applicable to the allowed roles. + aria-hidden, + no other allowed aria-* attributes.

br @@ -484,14 +515,19 @@

Conformance Checker Rule Implementations

Roles: checkbox, + combobox, + gridcell, link, menuitem, menuitemcheckbox, menuitemradio, option, radio, + separator, + slider, switch - or tab. + tab., + or treeitem.

Global aria-* attributes and @@ -536,7 +572,8 @@

Conformance Checker Rule Implementations

No role

- Global aria-* attributes + Naming Prohibited. + Otherwise, global aria-* attributes.

caption @@ -556,7 +593,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -577,7 +615,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -628,7 +667,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -646,12 +686,10 @@

Conformance Checker Rule Implementations

- No role + No role other than listbox, which is NOT RECOMMENDED.

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

datalist @@ -692,7 +730,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -772,10 +811,12 @@

Conformance Checker Rule Implementations

- Any role + If a direct child of `dl`, only presentation or none. + Otherwise, any role

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

@@ -844,7 +885,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -866,6 +908,7 @@

Conformance Checker Rule Implementations

application, document, img, + image, presentation or none.

@@ -918,7 +961,8 @@

Conformance Checker Rule Implementations

or none.

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

@@ -936,18 +980,18 @@

Conformance Checker Rule Implementations

- If the figure has no figcaption descendant: + If the figure has a valid figcaption descendant:
- Any role + No role other than figure, which is not recommended.

- If the figure has a figcaption descendant: + If no figcaption descendant:
- No role. -

-

Global aria-* attributes and - any aria-* attributes applicable to the allowed roles. + any aria-* attributes applicable to the allowed roles, although figure is not recommended. +

+

DPUB Roles: + doc-example.

@@ -982,7 +1026,8 @@

Conformance Checker Rule Implementations

doc-footnote.

- Global aria-* attributes and + Naming Prohibited if exposed as generic. + Otherwise, global aria-* attributes and any aria-* attributes applicable to the allowed roles.

@@ -1045,7 +1090,8 @@

Conformance Checker Rule Implementations

or textbox.

- Global aria-* attributes and + Naming Prohibited if exposed as generic. + Otherwise, global aria-* attributes and any aria-* attributes applicable to the allowed roles.

@@ -1125,7 +1171,8 @@

Conformance Checker Rule Implementations

or presentation.

- Global aria-* attributes and + Naming Prohibited if exposed as generic. + Otherwise, global aria-* attributes and any aria-* attributes applicable to the allowed roles.

@@ -1138,9 +1185,9 @@

Conformance Checker Rule Implementations

hgroup - No corresponding role + role=group -

Any role.

+

Any role, though group is NOT RECOMMENDED.

Global aria-* attributes and any aria-* attributes applicable to the allowed roles. @@ -1183,10 +1230,10 @@

Conformance Checker Rule Implementations

html - role=document + role=generic - No role or aria-* attributes + No role other than document or generic, which are not recommended. html yes @@ -1205,7 +1252,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -1227,6 +1275,7 @@

Conformance Checker Rule Implementations

application, document, img, + image, none or presentation.

@@ -1245,7 +1294,10 @@

Conformance Checker Rule Implementations

img with alt="some text" - role=img +

+ If the img has non-empty alt (alt="some text") or an accessible name is provided by another img naming method, or the img has no alt and has not been provided a name:
+ role=img or image +

@@ -1253,17 +1305,21 @@

Conformance Checker Rule Implementations

button, checkbox, link, + math, menuitem, menuitemcheckbox, menuitemradio, + meter, option, progressbar, + radio, scrollbar, separator, slider, switch, tab or treeitem + (img or image is also allowed, but NOT RECOMMENDED.)

DPub Role: @@ -1292,7 +1348,10 @@

Conformance Checker Rule Implementations

alt="" - role=presentation +

+ If the img has an empty alt (alt="") and lacks any other img naming methods:
+ role=none, role=presentation +

No role or aria-* attributes @@ -1321,7 +1380,10 @@

Conformance Checker Rule Implementations

img without alt attribute - role=img +

+ If the img lacks an alt attribute and lacks any other img naming methods:
+ role=img or image +

@@ -1351,14 +1413,20 @@

Conformance Checker Rule Implementations

Roles: + checkbox, + combobox, + gridcell, link, menuitem, menuitemcheckbox, menuitemradio, option, radio, + separator, + slider, switch - or tab. + tab, + or treeitem.

Global aria-* attributes and @@ -1388,7 +1456,7 @@

Conformance Checker Rule Implementations

button if used with aria-pressed.

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

Otherwise, any global aria-* attributes and @@ -1538,13 +1606,21 @@

Conformance Checker Rule Implementations

- Roles: + Roles (allowed but not recommended): + button, + checkbox, + gridcell, link, menuitem, menuitemcheckbox, menuitemradio, + option, radio - or switch. + separator, + slider, + switch, + tab, + or treeitem.

Global aria-* attributes and @@ -1630,7 +1706,7 @@

Conformance Checker Rule Implementations

menuitemradio

- Authors SHOULD NOT use the aria-checked attribute on input type=radio elements. + Authors MUST NOT use the aria-checked attribute on input type=radio elements.

Otherwise, any global aria-* attributes and @@ -1681,11 +1757,25 @@

Conformance Checker Rule Implementations

- No role + Roles (allowed but not recommended): + button, + checkbox, + gridcell, + link, + menuitem, + menuitemcheckbox, + menuitemradio, + option, + radio, + separator, + slider, + switch, + tab, + or treeitem.

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

type=reset @@ -1724,11 +1814,25 @@

Conformance Checker Rule Implementations

- No role + Roles (allowed but not recommended): + button, + checkbox, + gridcell, + link, + menuitem, + menuitemcheckbox, + menuitemradio, + option, + radio, + separator, + slider, + switch, + tab, + or treeitem.

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

type=submit @@ -1896,7 +2000,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -1917,7 +2022,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -1935,16 +2041,22 @@

Conformance Checker Rule Implementations

- No role + If a label element is implicitly or explicitly associated with a labelable element, + no role

- global aria-* attributes + Otherwise, if the label is not associated with an element, + any role, though generic SHOULD NOT be used. +

+

+ Naming Prohibited if exposed as generic, or as another role which prohibits naming. + Otherwise, global aria-* attributes.

- label - yes - yes - yes + label element + yes
- issue 1856 + yes
- issue 84 + not yet implemented
- issue 2335 @@ -1958,7 +2070,8 @@

Conformance Checker Rule Implementations

No role

- global aria-* attributes + Naming Prohibited. + Otherwise, global aria-* attributes.

legend @@ -1971,31 +2084,38 @@

Conformance Checker Rule Implementations

li - role=listitem +

+ If the `li` is a child of a list element + (`ul`, `ol`, + `menu`) + role=listitem. +

+

+ Otherwise, if the `li` is not a child of a list element it is exposed as + a role=generic. +

- Roles: - menuitem, - menuitemcheckbox, - menuitemradio, - option, - none, - presentation, - radio, - separator, - tab - or treeitem + No role other than listitem, which is NOT RECOMMENDED, + if the parent list element has an implicit or explicit list role.

- DPub Roles: - doc-biblioentry, - doc-endnote. + Otherwise, any role if the parent list element does not expose an implicit or explicit list role. +

+

+ See `ul`, `ol`, or + `menu` for allowed roles for list elements.

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

+

+ Authors SHOULD NOT use the following deprecated DPub Roles: + doc-biblioentry, + doc-endnote. +

li yes @@ -2086,7 +2206,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -2105,7 +2226,6 @@

Conformance Checker Rule Implementations

Roles: - directory, group, listbox, menu, @@ -2176,7 +2296,9 @@

Conformance Checker Rule Implementations

Roles: menu, - menubar + menubar, + none, + presentation, or tablist.

@@ -2246,7 +2368,6 @@

Conformance Checker Rule Implementations

Roles: - directory, group, listbox, menu, @@ -2355,7 +2476,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -2387,9 +2509,11 @@

Conformance Checker Rule Implementations

No corresponding role - No role or aria-* attributes +

No role

+

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

- picture + aria-hidden on picture yes yes yes @@ -2406,7 +2530,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -2451,7 +2576,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -2472,7 +2598,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -2493,7 +2620,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -2528,14 +2656,15 @@

Conformance Checker Rule Implementations

s - No corresponding role + role=deletion

- Any role + Any role, though deletion is not recommended

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

@@ -2556,7 +2685,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -2580,6 +2710,29 @@

Conformance Checker Rule Implementations

yes yes + + + search + + + role=search + + +

+ Roles: + form, + group, + none, + presentation, + or region. +

+

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

+ + search element PR (no dedicated test case yet) + yes + yes + yes + section @@ -2600,6 +2753,7 @@

Conformance Checker Rule Implementations

dialog, document, feed, + group, log, main, marquee, @@ -2720,6 +2874,32 @@

Conformance Checker Rule Implementations


test 2 - not yet implemented - issue 345 + + + selectedcontent + + + role=generic + + +

+ If used as a valid descendant of a select element: no role or aria-* attributes +

+

+ Otherwise, any role if the element is used outside of its intended context as a child of the button part of a customizable select element, + though generic is NOT RECOMMENDED. +

+

Naming Prohibited

+

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

+ + selectedcontent + yes
- issue 1854 + in progress
- issue 82 + not yet implemented
- issue 2333 + slot @@ -2743,7 +2923,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -2779,7 +2960,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -2800,7 +2982,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -2858,7 +3041,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -2872,18 +3056,18 @@

Conformance Checker Rule Implementations

summary - role=button + No corresponding role

- No role + No role if summary for its parent details element. any global aria-* attributes and any aria-* attributes applicable to the allowed roles.

- Global aria-* attributes and - any aria-* attributes applicable to the button role. + If not summary for its parent details element, globalaria-* attributes, aria-disabled, and aria-haspopup attributes.

- summary + summary (legacy test)
+ summary allowances yes yes
- issue 32 yes @@ -2900,7 +3084,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -3041,7 +3226,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -3279,7 +3465,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -3298,7 +3485,6 @@

Conformance Checker Rule Implementations

Roles: - directory, group, listbox, menu, @@ -3332,7 +3518,8 @@

Conformance Checker Rule Implementations

Any role

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

@@ -3371,15 +3558,12 @@

Conformance Checker Rule Implementations

- Any role + none or presentation.

- Global aria-* attributes and - any aria-* attributes applicable to the allowed roles. + aria-hidden, + no other allowed global aria-* attributes.

-
- NOTE: these rules will be updated in the next version of ARIA in HTML -
wbr yes @@ -3425,18 +3609,19 @@

Conformance Checker Rule Implementations

Use the checked attribute on any element that is allowed the checked attribute in HTML. + Use the indeterminate IDL attribute to indicate the "mixed" state for input type=checkbox elements.

- Authors SHOULD NOT use the aria-checked attribute on any element where the checkedness of the element can be in opposition to the current value of the aria-checked attribute. + Authors MUST NOT use the aria-checked attribute on any element where the checkedness, or the indeterminate checked value of the element can be in opposition to the current value of the aria-checked attribute.

- Authors MAY use the aria-checked attribute on any other element with a WAI-ARIA role which allows the attribute. + Authors MAY use the aria-checked attribute on any other element with a WAI-ARIA role which allows the attribute.

checked (2 tests) yes
- issue 1122 yes
- issue 28 - not yet implemented
- issue 347 + yes
- issue 347 @@ -3473,10 +3658,10 @@

Conformance Checker Rule Implementations

- Authors MAY use the aria-hidden attribute on any HTML element that allows global aria-* attributes, with the following exceptions: + Authors MAY use the aria-hidden attribute on any HTML element that allows global aria-* attributes, with the exception of focusable elements and the body element.

- Authors SHOULD NOT use the aria-hidden="true" attribute on any element which also has a hidden attribute. + It is generally NOT RECOMMENDED for authors to use aria-hidden="true" on any element which also has the hidden attribute specified. However, authors MUST NOT use aria-hidden="true" on any element which also has the hidden attribute specified in the until-found state.