A Quick recap
This is the continuation of part1(what’s probably going to come in ARIA1.2-part1) blog post and we pretty much covered the new roles(such as blockquote, caption, code, deletion, insertion, and so on..) that are probably going to come in the ARIA1.2 as part of the previous blog post. Let us look into the changes that are probably going to take place on the existing attributes and roles usage in this part2 blog post.
Changes that are probably going to take place on the existing roles and attributes usage
Combobox(role)
There are significant changes that are going to take place for combobox role(role=”combobox”) in ARIA 1.2. ARIA 1.1 combobox role implementation pattern is going to be no longer valid once ARIA 1.2 becomes W3C recommendation as the support of ARIA 1.1 combobox role implementation pattern is not very great. ARIA 1.2 combobox implementation pattern talks more or less ARIA 1.0 combobox implementation with aria-controls instead of aria-owns.
Aria-disabled(state)
Aria-disabled attribute is not going to be global attribute any more and it is allowed only in the certain roles
Aria-invalid(state)
Aria-invalid attribute is not going to be global attribute anymore and it is allowed only in the certain roles. The value of aria-invalid is also going to be enumerated type and it means that aria-invalid accepts certain list of token values
Aria-errormessage(property)
Aria-errormesage attribute is not going to be global attribute anymore and it is allowed only in the certain roles.
Aria-haspopup(property)
Aria-haspopup attribute is not going to be global attribute anymore and it is allowed only in the certain roles.
Aria-expanded(state)
There are significant changes to aria-expanded attribute in terms of which role should allow and which role should not. Aria-expanded attribute is going to be allowed in the menuitem role, checkbox role and application role. In addition, aria-expanded attribute is not going to be allowed on many roles(such as alert, alert dialog, article, main, banner, contentinfo, and so on.)
Listbox(role)
Group role has been added as child of listbox role
The role(s) that is probably going to be deprecated
Directory
Directory role is going to be deprecated
Minor changes that are probably going to take place on the existing roles and attributes
- The below roles are not going to have any default value(aria-checked)
- Checkbox
- Menuitemcheckbox
- Menuitemradio
- Switch
- Checkbox role is going to support aria-required property
- List role is not going to allow group role as it’s children
- Row role in the context of treegrid is going to allow aria-positionset and aria-setsize attributes
- Math role is going to allow children
- Grid role is not going to allow aria-level as it’s supported attribute
- Aria-valuemin and aria-valuemax are going to supported attributes for the below roles instead of required attributes
- Separator
- Slider
- Scrollbar
- Aria-orientation is going to be supported attribute for the scrollbar role instead of required attribute
- The default value of aria-valuenow attribute for the spinbutton role is going to be 0
- Spin button role is going to support aria-valuetext attribute
- Default value of the aria-valuemin and aria-valuemax for spinbutton role is not going to be present
- Certain roles(such as log, timer, and so on.) are not going to require accessible name
Editorial changes that are probably going to take place on the below roles and attributes
- Alertdialog role
- Alert role
- Rowheader
Do you have a feedback on these proposed changes?
ARIA WG opened ARIA 1.2 for the public review around couple of months ago and feedback can be submitted in the W3C ARIA GitHub repository or can be emailed to public-aria@w3.org. ARIA 1.2 is probably going to be come candidate recommendation(CR) in a month or so. Later this year, hoping that it is going to be become W3C recommendation too
References
Wow. Great consolidation of upcoming ARIA changes. Thank you
hi Anu, it is great question. usually HTML> caption or role=”caption” holds certain content. when we set on aria-label or aria-labelledby on the container that holds HTML caption or role=”caption” then screen reader overrides the actual content that is inside. Hence, these attributes(aria-label/aria-labelledby) are prohibited. On other hand, the content that is inside of caption role can be referred by aria-labelledby to table/figure/grid role to give the context what this table/figure/grid is all about.
Very interesting info. Thanks for putting this across.