-
Notifications
You must be signed in to change notification settings - Fork 27
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
[html-aam] Computing a role for a “aside” or “section” element creates an infinite loop #570
Comments
|
would this make more sense if the spec indicated the default roles to be complementary / region - and THEN have a condition to change those roles based on ancestral checks (for aside) or if the elements are named (for both elements) - rather than separating these out so the elements each had two tables? |
I think you should resolve the loop in the algorithms somehow. E.g., give "computing an accessible name" a boolean that indicates it's invoked for role computing purposes in which case it uses fallback roles for certain elements might do the trick? |
w3c/aria#2404 describes a similar problem I found in another part of the ARIA spec. To resolve it, I ended up needing to do as AnneVK suggested in #570 (comment) — that is, I needed to add a boolean parameter to my implementation of the “computing an accessible name” algorithm, so that callers can specify they don’t want role computation (re)performed. |
Consider these two things:
A. Computing a role for an
aside
orsection
element. The conditions at https://w3c.github.io/html-aam/#el-aside and https://w3c.github.io/html-aam/#el-section for computing a role for anaside
element orsection
element in turn require computing an accessible name for theaside
element orsection
element.B. Computing an accessible name for an element. Multiple steps in the algorithm at https://w3c.github.io/accname/#computation-steps for computing an accessible name for an element in turn require computing a role for that element.
That is: In order to implement A. Computing a role for an
aside
orsection
element in my code, I need to have that code call my implementation of B. Computing an accessible name for an element. But in order to implement B. Computing an accessible name for an element in my code, I need to have that code call my implementation of A. Computing a role for anaside
orsection
element.In other words, my code gets into an infinite loop if I implement the requirements as specified.
See also Siteimprove/alfa#298
Link to documentation: https://w3c.github.io/html-aam/#el-aside
Does the issue exists in the editors draft is the most recent draft of the specification? Yes
The text was updated successfully, but these errors were encountered: