aria-owns-valid
aria-owns debe dar a cada elemento un solo propietario, y nunca un ancestro del propietario
Comprueba que ningún elemento esté nombrado por más de un aria-owns, y que ningún aria-owns nombre al propio elemento o a uno de sus ancestros.
Ámbito de aplicación. Elementos que la página muestra con un aria-owns que nombra al menos un elemento del mismo árbol.
Resultado esperado. WAI-ARIA: un elemento tiene un solo propietario, así que su id no aparece en más de un aria-owns, y un elemento no puede poseer a uno que lo contiene.
- Un elemento nombrado por dos o más
aria-owns:fail(ARIA_OWNS_DUPLICATE), informado en el elemento poseído. El navegador lo asigna a un solo propietario, por orden, así que se pierde la estructura que declaran los demás propietarios. - Un
aria-ownsque nombra al propio elemento o a uno de sus ancestros:fail(ARIA_OWNS_ANCESTOR), informado en el propietario. El navegador ignora esa relación de posesión, ya que crearía un ciclo. - En otro caso:
pass.
Qué informa un hallazgo.
ownerCount: conARIA_OWNS_DUPLICATE, cuántos elementos nombran al elemento poseído enaria-owns.ownedId: el id nombrado.
Estos campos de data.details ayudan a leer y reproducir un hallazgo. Salvo reasonCode y los pocos campos que Esquema de salida indica como estables, no son un contrato estable: un campo puede cambiar de nombre o desaparecer en una versión menor, así que no construyas sobre ellos.
Ejemplos
<ul role="list" aria-label="Steps" aria-owns="step-2"><li>Choose a size</li></ul><div role="listitem" id="step-2">Pay</div>
La lista posee un elemento que ningún otro aria-owns nombra.
<div role="list" aria-label="Today" aria-owns="task"></div><div role="list" aria-label="Tomorrow" aria-owns="task"></div><div role="listitem" id="task">Call the bank</div>
Dos listas reclaman el mismo elemento. El navegador se lo da solo a una de ellas, así que se pierde la estructura de la otra lista.