aria-required-parent
特定の文脈ロールを必要とするロールは、その文脈内にある必要があります
「required context role」の項目が定められたロール(listitem、option、tab、treeitem、row、cellなど)が、許容される文脈ロールを持つ祖先またはaria-ownsによる所有者を持つことを確認します。
適用範囲:明示的で有効な、抽象的でないロールが、空でない「required context role」の項目が定められたロール(listitem、option、menuitem、menuitemcheckbox、menuitemradio、tab、treeitem、row、cell、gridcell、columnheader、rowheader、rowgroup)のいずれかである要素に適用されます。要素自身には明示的なロールが必要ですが、そのコンテキストは、ネイティブのコンテキストがタグのロールを持つのと同じように、カスタム要素のElementInternals(this.attachInternals().role)からロールを得てもかまいません。
期待される結果:要素には、実効ロールがこの要素のロールで許容される文脈ロールのいずれかである祖先(DOM上の包含関係)または所有者(その祖先や所有者のaria-ownsによる)があります。
検出結果が報告する内容:
role:要素のロールです。requiredContextRoles:要素がそのいずれかの内側にあるか、いずれかに所有されている必要があるロールです。各項目はロール名です。
これらのdata.detailsのフィールドは、検出結果を読み解き、再現するのに役立ちます。reasonCodeと、出力スキーマで安定と明記された一部のフィールドを除き、安定した契約ではありません。マイナーリリースで名前が変わったり、なくなったりすることがあるため、これらに依存した実装はしないでください。
例
<div role="tablist"><div role="tab">Overview</div></div>
role="tab"にはrole="tablist"を持つ祖先(またはaria-ownsによる所有者)が必要で、それが存在します。
<nav role="tab"></nav>
role="tab"には、ページ内のどこにもtablistの祖先や所有者がありません。