Skip to content

Commit 6ae0d6b

Browse files
committed
[html-aam] Add focusgroup attribute mapping
Adds an entry for the focusgroup content attribute documenting that it has no direct accessibility API mapping, but that user agents infer ARIA composite-widget roles for the focus group owner (and, for button items, the corresponding item roles) when a behavior token is used and the element would otherwise have a generic role with no explicit role or non-generic native semantics. Companion to whatwg/html#11723.
1 parent fb322c9 commit 6ae0d6b

1 file changed

Lines changed: 111 additions & 0 deletions

File tree

html-aam/index.html

Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11103,6 +11103,117 @@ <h4 id="att-formtarget">`formtarget`</h4>
1110311103
</tr>
1110411104
</tbody>
1110511105
</table>
11106+
<h4 id="att-focusgroup">`focusgroup`</h4>
11107+
<table class="data" aria-labelledby="att-focusgroup">
11108+
<tbody>
11109+
<tr>
11110+
<th>HTML Specification</th>
11111+
<td>`focusgroup`</td>
11112+
</tr>
11113+
<tr>
11114+
<th>Element(s)</th>
11115+
<td>
11116+
<a data-cite="html/interaction.html#attr-focusgroup">HTML elements</a>
11117+
</td>
11118+
</tr>
11119+
<tr>
11120+
<th>[[WAI-ARIA-1.2]]</th>
11121+
<td>
11122+
<div class="general">Not mapped</div>
11123+
</td>
11124+
</tr>
11125+
<tr>
11126+
<th>
11127+
<a href="https://msdn.microsoft.com/en-us/library/dd373608%28v=VS.85%29.aspx">MSAA</a> + <a href="http://accessibility.linuxfoundation.org/a11yspecs/ia2/docs/html/">IAccessible2</a>
11128+
</th>
11129+
<td>
11130+
<div class="general">Not mapped</div>
11131+
</td>
11132+
</tr>
11133+
<tr>
11134+
<th><a href="https://msdn.microsoft.com/en-us/library/ms726297%28v=VS.85%29.aspx">UIA</a></th>
11135+
<td>
11136+
<div class="general">Not mapped</div>
11137+
</td>
11138+
</tr>
11139+
<tr>
11140+
<th><span class="informative">[[ATK]]</span></th>
11141+
<td>
11142+
<div class="general">Not mapped</div>
11143+
</td>
11144+
</tr>
11145+
<tr>
11146+
<th><a href="https://developer.apple.com/reference/appkit/nsaccessibility">AX</a></th>
11147+
<td>
11148+
<div class="general">Not mapped</div>
11149+
</td>
11150+
</tr>
11151+
<tr>
11152+
<th id="att-focusgroup-comments">Comments</th>
11153+
<td>
11154+
<p>
11155+
The `focusgroup` attribute enables <a data-cite="html/interaction.html#directional-navigation">directional navigation</a> among its focusable descendants and has no direct
11156+
accessibility API mapping of its own. However, per <a data-cite="html/interaction.html#focusgroup-aria-role-inference">[HTML] §ARIA Role Inference</a>, when a behavior token is
11157+
specified the user agent infers an ARIA role for the <a data-cite="html/interaction.html#focus-group-owner">focus group owner</a>, and for `button`
11158+
<a data-cite="html/interaction.html#focus-group-item">focus group items</a>, as summarized below. Owner role inference applies only when the element would otherwise have an implicit
11159+
role of <a class="core-mapping" href="#role-map-generic">`generic`</a>, has no explicit <a data-cite="wai-aria-1.2/#host_general_role">`role`</a> attribute, and has no non-generic
11160+
native semantics (such as `nav`, `ul`, or `table`). Item role inference is restricted to `button` elements without an explicit `role`; other native interactive elements (links, form
11161+
controls, etc.) retain their native semantics.
11162+
</p>
11163+
<table class="simple">
11164+
<thead>
11165+
<tr>
11166+
<th>`focusgroup` behavior token</th>
11167+
<th>Inferred owner role</th>
11168+
<th>Inferred item role (on `button` items)</th>
11169+
</tr>
11170+
</thead>
11171+
<tbody>
11172+
<tr>
11173+
<td>`toolbar`</td>
11174+
<td><a class="core-mapping" href="#role-map-toolbar">`toolbar`</a></td>
11175+
<td>(none — items keep their native role)</td>
11176+
</tr>
11177+
<tr>
11178+
<td>`tablist`</td>
11179+
<td><a class="core-mapping" href="#role-map-tablist">`tablist`</a></td>
11180+
<td><a class="core-mapping" href="#role-map-tab">`tab`</a></td>
11181+
</tr>
11182+
<tr>
11183+
<td>`radiogroup`</td>
11184+
<td><a class="core-mapping" href="#role-map-radiogroup">`radiogroup`</a></td>
11185+
<td><a class="core-mapping" href="#role-map-radio">`radio`</a></td>
11186+
</tr>
11187+
<tr>
11188+
<td>`listbox`</td>
11189+
<td><a class="core-mapping" href="#role-map-listbox">`listbox`</a></td>
11190+
<td><a class="core-mapping" href="#role-map-option">`option`</a></td>
11191+
</tr>
11192+
<tr>
11193+
<td>`menu`</td>
11194+
<td><a class="core-mapping" href="#role-map-menu">`menu`</a></td>
11195+
<td><a class="core-mapping" href="#role-map-menuitem">`menuitem`</a></td>
11196+
</tr>
11197+
<tr>
11198+
<td>`menubar`</td>
11199+
<td><a class="core-mapping" href="#role-map-menubar">`menubar`</a></td>
11200+
<td><a class="core-mapping" href="#role-map-menuitem">`menuitem`</a></td>
11201+
</tr>
11202+
</tbody>
11203+
</table>
11204+
<p class="note">
11205+
Role inference never overrides an explicit author-defined `role` attribute or non-generic native-element semantics, and does not infer variant roles such as
11206+
<a class="core-mapping" href="#role-map-menuitemcheckbox">`menuitemcheckbox`</a> or <a class="core-mapping" href="#role-map-menuitemradio">`menuitemradio`</a>.
11207+
</p>
11208+
<p class="note">
11209+
The `inline` and `block` axis modifiers do not cause user agents to infer or expose
11210+
<a data-cite="wai-aria-1.2/#aria-orientation">`aria-orientation`</a>; they only restrict the axis along which
11211+
<a data-cite="html/interaction.html#directional-navigation">directional navigation</a> may move focus.
11212+
</p>
11213+
</td>
11214+
</tr>
11215+
</tbody>
11216+
</table>
1110611217
<h4 id="att-headers">`headers`</h4>
1110711218
<table class="data" aria-labelledby="att-headers">
1110811219
<tbody>

0 commit comments

Comments
 (0)