-
Notifications
You must be signed in to change notification settings - Fork 70
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Examples in ARIA Authoring Practices fail ARIA required owned elements rule #1985
Comments
Seems to be related to #1426 🤔 |
The caption role is allowed in table/grid/treegrid but is not a required owned element:
https://www.w3.org/TR/wai-aria-1.2/#caption And this is accessible:
but fails the rule as soon as you add a role to the fieldset because the
|
ARIA 1.3 w3c/aria#1454 treats Also added a comment about the optional child roles: However the issue with |
The rule also fails an ARIA example on MDN because the There's also an issue with naming role=radiogroup: if only role=radio elements are allowed as owned elements, how do you add a visible label for the group inside the radiogroup? ARIA 1.3 solves this by allowing role=caption in radiogroup, but this isn't allowed in ARIA 1.2. For example:
Even the ARIA 1.3 allowance for caption is too limiting - a real-life version of the example above needs a link to the terms and conditions somewhere inside the radiogroup. |
Some examples in ARIA Authoring Practices 1.2 fail the ARIA required owned elements rule
Which one is wrong? The ARIA Authoring Practices examples or the rule?
The tab examples - they have an h3 with implicit role=heading inside the tab, which isn't in the required owned elements list of tab:The radiogroup example also contains an h3:
https://w3c.github.io/aria-practices/examples/radio/radio.html
The table example has a div#students_table_desc inside the tab which has implicit role=generic:
https://w3c.github.io/aria-practices/#table
The menubar example has an explicit role=separator in the middle of the menu which isn't in the required owned elements list. This definitely looks like a problem with the rule - not representing the menu separator in the a11y tree is probably a failure of 1.3.1.
https://w3c.github.io/aria-practices/examples/menubar/menubar-navigation.html
And what about these - the caption element maps to role=caption but that isn't a required owned element of table or treegrid:
The problematic part of the rule is the expectation that only required owned roles appear - which means the rule fails optional owned elements like table captions, or menu separators (all menus have menu items, but not all menus have menu separators)
For example, the spec for menuitemcheckbox says:
https://www.w3.org/TR/wai-aria-1.2/#menuitemcheckbox
Edit: the problems with headings and separator occur with the ARIA 1.1 examples as well:
https://www.w3.org/WAI/ARIA/apg/example-index/tabs/tabs-automatic.html#sc1_label
https://www.w3.org/WAI/ARIA/apg/example-index/radio/radio.html#sc1_label
https://www.w3.org/WAI/ARIA/apg/patterns/menu/#h-note-17
But other problems are new in ARIA 1.2 because of new roles like generic, caption and paragraph.
The text was updated successfully, but these errors were encountered: