Skip to content
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

New issues with vnu-jar 21.10.12 #2082

Closed
nschonni opened this issue Oct 31, 2021 · 9 comments
Closed

New issues with vnu-jar 21.10.12 #2082

nschonni opened this issue Oct 31, 2021 · 9 comments
Assignees
Labels
Out of APG Scope Outside scope of APG, e.g., external dependency

Comments

@nschonni
Copy link
Contributor

Just tried updating locally to see if it was a simple upgrade, and got the following new issues

"file:/mnt/z/aria-practices/examples/combobox/combobox-datepicker.html":165.65-166.80: error: The “role” attribute must not be used on a “td” element which has a 
“table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/dialog-modal/datepicker-dialog.html":147.65-148.94: error: The “role” attribute must not be used on a “td” element which has 
a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/menubar/menubar-navigation.html":67.9-67.30: info warning: The “banner” role is unnecessary for element “header”.
"file:/mnt/z/aria-practices/examples/menubar/menubar-navigation.html":236.13-236.54: info warning: Consider using the “h1” element as a top-level heading only (all “h1” elements are treated as top-level headings by many screen readers and other tools).
"file:/mnt/z/aria-practices/examples/menubar/menubar-navigation.html":245.9-245.35: info warning: The “contentinfo” role is unnecessary for element “footer”.     
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":126.16-127.96: error: The “role” attribute must not be used on a “tr” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":127.97-128.32: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":128.59-129.32: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":129.68-130.32: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":131.16-132.75: error: The “role” attribute must not be used on a “tr” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":132.76-133.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":133.64-134.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":134.77-135.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":136.16-137.97: error: The “role” attribute must not be used on a “tr” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":137.98-138.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":138.64-139.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":139.92-140.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":141.16-142.90: error: The “role” attribute must not be used on a “tr” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":142.91-143.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":143.64-144.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":144.92-145.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":146.16-147.97: error: The “role” attribute must not be used on a “tr” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":147.98-148.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":148.64-149.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":149.104-150.33: error: The “role” attribute must not be used on a “td” element which has a “table” 
ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":151.16-152.112: error: The “role” attribute must not be used on a “tr” element which has a “table” 
ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":152.113-153.33: error: The “role” attribute must not be used on a “td” element which has a “table” 
ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":153.64-154.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":154.101-155.33: error: The “role” attribute must not be used on a “td” element which has a “table” 
ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":156.16-157.90: error: The “role” attribute must not be used on a “tr” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":157.91-158.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":158.64-159.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":159.103-160.33: error: The “role” attribute must not be used on a “td” element which has a “table” 
ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":161.16-162.90: error: The “role” attribute must not be used on a “tr” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":162.91-163.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":163.64-164.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treegrid/treegrid-1.html":164.83-165.33: error: The “role” attribute must not be used on a “td” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
"file:/mnt/z/aria-practices/examples/treeview/treeview-navigation.html":66.13-66.34: info warning: The “banner” role is unnecessary for element “header”.
"file:/mnt/z/aria-practices/examples/treeview/treeview-navigation.html":323.17-323.58: info warning: Consider using the “h1” element as a top-level heading only (all “h1” elements are treated as top-level headings by many screen readers and other tools).
"file:/mnt/z/aria-practices/examples/treeview/treeview-navigation.html":332.13-332.39: info warning: The “contentinfo” role is unnecessary for element “footer”. 
@nschonni
Copy link
Contributor Author

Here are the unique rules:

  • error: The “role” attribute must not be used on a “tr” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.
  • info warning: Consider using the “h1” element as a top-level heading only (all “h1” elements are treated as top-level headings by many screen readers and other tools).
  • info warning: Consider using the “h1” element as a top-level heading only (all “h1” elements are treated as top-level headings by many screen readers and other tools).
  • info warning: The “contentinfo” role is unnecessary for element “footer”.

@nschonni
Copy link
Contributor Author

@sideshowbarker I think the treegrid parsing might be an upstream issue. It looks like the parent table does have the correct role, but it might be tripping up on the intermidiate <tbody>

@sideshowbarker
Copy link

@sideshowbarker I think the treegrid parsing might be an upstream issue.

Upstream where?

@nschonni
Copy link
Contributor Author

Sorry, I mean in the Validator project. I was pinging here before opening an issue there, if you think the error is correct rather an a parsing issue

@sideshowbarker
Copy link

Sorry, I mean in the Validator project.

Aha — sorry, my fault for not having seen where this issue was raised 😄 I thought it was in the validator repo…

I was pinging here before opening an issue there, if you think the error is correct rather an a parsing issue

I’m not sure yet — haven’t made time yet to investigate

@a11ydoer a11ydoer added the agenda Include in upcoming Authoring Practices Task Force meeting label Feb 22, 2022
@ZoeBijl
Copy link
Contributor

ZoeBijl commented Mar 2, 2022

It seems as though the error is correct? The treegrid example has <table role="treegrid"> and <tr role="row">. According to ARIA in HTML the <tr> shouldn’t have that role? The validator is merely showing that?

Am I misunderstanding the issue?

Digging a bit further:

<table role="treegrid"><tr role="row"><td>test</td></tr></table> results in:

error: The “role” attribute must not be used on a “tr” element which has a “table” ancestor with no “role” attribute, or with a “role” attribute whose value is “table”, “grid”, or “treegrid”.

If you remove the role from the <tr>, like so:

<table role="treegrid">
  <tr aria-level="1" aria-posinset="1" aria-setsize="1" aria-expanded="true">
    <td>Test</td>
  </tr>
</table>

the validator throws this error:

Element tr is missing one or more of the following attributes: role.

Looking at the ARIA in HTML I think this last example should pass?


Additionally, in the datepicker example nu validator detects a missing aria-checked attribute. The design pattern calls for an aria-selected (which is present)—it was added to the example in this commit.

"file:/home/runner/work/aria-practices/aria-practices/examples/dialog-modal/datepicker-dialog.html":147.65-148.78: error: Element “td” is missing one or more of the following attributes: “aria-checked”, “role”.

I’m not sure how nu validator works or how the checks are performed/updated. But it seems like there are some clashes?

@a11ydoer a11ydoer removed the agenda Include in upcoming Authoring Practices Task Force meeting label Apr 12, 2022
@a11ydoer
Copy link
Contributor

a11ydoer commented Apr 12, 2022

@jongund will file the bug to validator.

ARIA Principle is "Therefore, authors MUST NOT apply aria-expanded, aria-posinset, aria-setsize, and aria-level to a row that descends from a table or grid, and user agents SHOULD NOT expose any of these four properties to assistive technologies unless the row descends from a treegrid."

In other words, aria-expanded, aria-posinset, aria-setsize, and aria-level to a row is allowed at Treegrid.

@jnurthen
Copy link
Member

From the Spec:
While the row role can be used in a table, grid, or treegrid, the semantics of aria-expanded, aria-posinset, aria-setsize, and aria-level are only applicable to the hierarchical structure of an interactive tree grid. Therefore, authors MUST NOT apply aria-expanded, aria-posinset, aria-setsize, and aria-level to a row that descends from a table or grid, and user agents SHOULD NOT expose any of these four properties to assistive technologies unless the row descends from a treegrid.

@jongund
Copy link
Contributor

jongund commented Apr 12, 2022

Submitted an issue to the VNU validator:
validator/validator#1364

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Out of APG Scope Outside scope of APG, e.g., external dependency
Projects
None yet
Development

No branches or pull requests

6 participants