The Microsoft MSAA API cannot provide mapping for all ARIA roles as it does not have defined roles and properties for all those defined by The ARIA specification, the Microsoft UI Automation API can. UI automation provides exposure of all WAI-ARIA roles and properties via the ControlType
and AriaRole
properties.
Testing UI Automation AriaRole support
The testing of IE9 shows no change in support compared to IE8, any changes in results are due to fixes in testing methodology.
Testing of the AriaRole
properties support requires the Windows 7 operating system and the use of an updated inspect tool, currently only available as part of the Windows 7 SDK. Results from initial testing show that all possible ARIA role values are correctly exposed via the UI automation AriaRole property, but the stated mapping of the ARIA roles to UI automation ControlType
is incomplete. I have also re-tested MSAA role mapping taking into account roles that Microsft documented as unsupported via MSAA:
- 44 out of 49 – Of the 49 WAI-ARIA role (excluding abstract roles) values that can be mapped to MSAA: Internet explorer 9.0.8080.16413 maps 44 correctly.
- 35 out of 50 – Of the 50 WAI-ARIA role (excluding abstract roles) values that can be mapped to UI automation ControlType: Internet explorer 9.0.8080.16413 maps 35 correctly.
- 59 out of 59 – Of the 59 WAI-ARIA role (excluding abstract roles) values that can be mapped via UI automation AriaRole property: Internet explorer 9.0.8080.16413 maps 59 correctly.
Full Test Results: Comparison of ARIA roles exposed via MSAA and UI Automation in IE9
Comments
Have you also tests for aria-expanded on button-elements (non-standard, but works quiet well on FF) and aria-valuetext on slider/combobox?
Hi alexander,
I just tested
aria-expanded
on IE9, doesn’t work. The state is not exposed via MSAA at least. Wondered why you described it as “non-standard” when its an allowed attribute ofrole="button"
? haven’t looked ataria-valuetext
yet