-
Notifications
You must be signed in to change notification settings - Fork 125
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
Clarify the intent of "required owned elements" #1162
Conversation
Change is motivated by issue w3c#1033
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here is my suggested edit:
The role required for all owned children of an element with a container role. For example, an element with the role list will own at least one child element with the role listitem. Authors MUST ensure at least one of the required roles is either a child element or referenced by aria-owns from the container element.
I think the new definition for "required owned elements" does not work, because it now requires that all descendants of the element must have one of the specified roles, which is not correct. Example:
My suggestion would be that no reference is made to "owned elements", but only to the child elements (or to the first descendant element with explicit or implicit role, because child elements with role=presentation should be allowed as descendants). Alternatively, for "required owned elements" actually all should be specified, i.e. for table
The second problem is that not all descendants must have these roles, but that there must be at least one child element with the role. In table, for example, the role caption is also allowed, but not required. Apart from that, the element with the role cell can contain any element with any role, so that role=table can also contain any descendant element as long as it is guaranteed to be within e.g. row and cell - but this is excluded by the current definition. |
@JAWS-test Good point. The clause about "or any DOM descendant of the owned child" in the definition of "owned element" creates problems. I will try to come up with another definition of "required owned elements". Thanks for pointing this out. |
I think @jongund's suggested words (which build on @WilcoFiers's words) work:
It just needs the markup put back in. I will create a github suggestion using those words. |
@@ -470,7 +470,7 @@ <h3>Prohibited States and Properties</h3> | |||
</section> | |||
<section id="mustContain"> | |||
<h3>Required Owned Elements</h3> | |||
<p>Any <a>element</a> that will be <a>owned</a> by the element with this <a>role</a>. For example, an element with the role <rref>list</rref> will own at least one element with the role <rref>listitem</rref>.</p> | |||
<p>The <a>role</a> required for all <a>owned</a> children. For example, an element with the role <rref>list</rref> will own at least one element with the role <rref>listitem</rref>. Authors MUST ensure all <a>owned</a> child nodes, and all elements referenced by <pref>aria-owns</pref> from the active element, have at least one of the roles specified in the <em>required owned element</em> for the role of the active element.</p> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Using @jongund's words, with added markup:
<p>The <a>role</a> required for all <a>owned</a> children. For example, an element with the role <rref>list</rref> will own at least one element with the role <rref>listitem</rref>. Authors MUST ensure all <a>owned</a> child nodes, and all elements referenced by <pref>aria-owns</pref> from the active element, have at least one of the roles specified in the <em>required owned element</em> for the role of the active element.</p> | |
<p>The <a>role</a> required for all <a>owned</a> children of an element with a container role. For example, an element with role <rref>list</rref> will own at least one element with role <rref>listitem</rref>. Authors MUST ensure at least one of the required roles is either a child element or referenced by <pref>aria-owns</pref> from the container element.</p> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need to define "container role"? Do we need this term?
This update includes both "container role" and then ends with "container element".
i'm counting 5 instances of "container role" in the spec now, where those instances could be revised to "container element with role..." or even dropping the word "container".
My question would be whether it is possible to be a little more precise at this point:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like the direction that Jon and Carolyn have taken this, but for my comment.
this is now overcome by #1454 |
Change is motivated by issue #1033
💥 Error: 500 Internal Server Error 💥
PR Preview failed to build. (Last tried on Jan 20, 2021, 10:59 PM UTC).
More
PR Preview relies on a number of web services to run. There seems to be an issue with the following one:
🚨 Spec Generator - Spec Generator is the web service used to build specs that rely on ReSpec.
🔗 Related URL
If you don't have enough information above to solve the error by yourself (or to understand to which web service the error is related to, if any), please file an issue.