aria-required-children
Los roles contenedores deben incluir al menos un hijo con uno de los roles requeridos
Comprueba que los roles contenedores con una entrada documentada de "required owned elements" (list, listbox, menu, radiogroup, table, grid, tablist, tree, row, ...) contengan al menos un descendiente o elemento referenciado mediante aria-owns con uno de los roles aceptables para ese contenedor.
Ámbito de aplicación. Se aplica a elementos con un rol explícito, válido y no abstracto que además sea uno de los roles contenedores con una entrada documentada de "required owned elements" (list, listbox, menu, menubar, radiogroup, rowgroup, table, grid, treegrid, tablist, tree, row).
Resultado esperado. Al menos un descendiente, o un elemento referenciado mediante aria-owns, tiene uno de los roles aceptables para ese rol contenedor. Devuelve `cantTell`, nunca `fail`: esta regla solo pregunta si el contenido requerido está PRESENTE, y un contenedor que no incluye nada no transmite nada falso: un role="list" vacío se anuncia como una lista sin elementos, que es lo que es. Si el contenido que un contenedor sí incluye es VÁLIDO es decisión de aria-prohibited-children, y esa regla sigue fallando, de modo que una estructura mal descrita (un role="button" entre elementos de lista, un tablist de simples buttons) se detecta con la misma fuerza que antes. Los equivalentes HTML nativos ya funcionan así: nada en este conjunto de reglas hace fallar un <ul> vacío, y list-children-valid solo evalúa los hijos que existen.
Ejemplos
<ul role="list"><li>Item</li></ul>
El rol list incluye al menos un hijo con rol `listitem`.
<div role="list"></div>
Un `role="list"` vacío no incluye ningún rol hijo requerido; se anuncia como una lista sin elementos, que es lo que es, pero merece un vistazo.