This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 26307 - Definition of "owned" is not strict enough; should actually be direct children, not any descendant
Summary: Definition of "owned" is not strict enough; should actually be direct childre...
Status: RESOLVED MOVED
Alias: None
Product: ARIA
Classification: Unclassified
Component: Spec (show other bugs)
Version: 1.1
Hardware: PC All
: P2 normal
Target Milestone: ---
Assignee: James Craig
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-07-11 06:19 UTC by Dominic Mazzoni
Modified: 2018-05-08 18:57 UTC (History)
1 user (show)

See Also:


Attachments

Description Dominic Mazzoni 2014-07-11 06:19:20 UTC
The definition of "owned" in the ARIA spec includes any descendant (or any descendant of a node that's aria-owned).

That means that according to the spec, it's okay to have a list with listitems that are descendants but not direct children, or a grid with rows that are descendants but not direct children, e.g.:

<div role="list">
  <div>
    <div role="listitem">One</div>
  </div>
  <div>
    <div role="listitem">Two</div>
  </div>
</div>

<div role="grid">
  <div>
    <div role="row">
      <div>
        <div role="gridcell">1, 1</div>
      </div>
      <div>
        <div role="gridcell">2, 1</div>
      </div>
    </div>
  </div>
</div>

In practice, this doesn't seem to work with *any* browser or screen reader, unless you use aria-owns or role=presentation.

It occasionally works in some circumstances when the browser skips over extra unneeded container elements - but it definitely doesn't work in general.

Either the spec needs to better match how browsers and assistive technology have implemented their support for owned relationships, or browsers need to start doing a lot of extra work to search all descendants for required owned elements.
Comment 1 James Nurthen 2018-05-08 18:57:59 UTC
https://github.com/w3c/aria/issues/748