Information technology — Interoperability with assistive technology (AT) — Part 3: IAccessible2 accessibility application programming interface (API)

ISO/IEC TR 13066:2012 provides an overview to the structure and terminology of the IAccessible2 accessibility API. It provides: a description of the overall architecture and terminology of the API; further introductory explanations regarding the content and use of the API beyond those found in Annex A of ISO/IEC 13066-1; an overview of the main properties, including: of user interface elements, of how to get and set focus, of communication mechanisms in the API; a discussion of design considerations for the API (e.g. pointers to external sources of information on accessibility guidance related to using the API); information on extending the API (and where this is appropriate); an introduction to the programming interface of the API (including pointers to external sources of information). It provides this information as an introduction to the IAccessible2 API to assist: IT system level developers who create custom controls and/or interface to them; AT developers involved in programming "hardware to software" and "software to software" interactions.

Technologies de l'information — Interopérabilité avec les technologies d'assistance — Partie 3: Interface de programmation d'applications (API) d'accessibilité IAccessible2

General Information

Status
Published
Publication Date
06-Sep-2012
Current Stage
9093 - International Standard confirmed
Start Date
28-Jul-2017
Completion Date
19-Apr-2025
Ref Project
Technical report
ISO/IEC TR 13066-3:2012 - Information technology -- Interoperability with assistive technology (AT)
English language
22 pages
sale 15% off
Preview
sale 15% off
Preview

Standards Content (Sample)


TECHNICAL ISO/IEC
REPORT TR
13066-3
First edition
2012-09-15
Information technology — Interoperability
with Assistive Technology (AT) —
Part 3:
IAccessible2 accessibility application
programming interface (API)
Technologies de l'information — Interopérabilité avec les technologies
d'assistance —
Partie 3: Interface de programmation d'applications (API) d'accessibilité
IAccessible2
Reference number
©
ISO/IEC 2012
©  ISO/IEC 2012
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form or by any means,
electronic or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or
ISO's member body in the country of the requester.
ISO copyright office
Case postale 56  CH-1211 Geneva 20
Tel. + 41 22 749 01 11
Fax + 41 22 749 09 47
E-mail copyright@iso.org
Web www.iso.org
Published in Switzerland
ii © ISO/IEC 2012 – All rights reserved

Contents Page
Foreword . v
Introduction . vi
1  Scope . 1
2  Terms and definitions . 1
3  General Description . 5
3.1  General Description . 5
3.2  Architecture . 5
4  Using the API . 7
4.1  Overview . 7
4.2  User Interface elements . 7
4.3  Getting and setting focus . 8
4.4  Communication Mechanisms . 8
4.5  Introduction to Programming interface . 8
4.5.1  COM Interface . 8
5  Exposing User Interface Element Information . 8
5.1  Role, state(s), boundary, name, and description of the user interface element . 9
5.2  Current value and any minimum or maximum values, if the user interface element
represents one of a range of values . 9
5.3  Text contents, text attributes, and the boundary of text rendered to the screen . 10
5.4  The relationship of the user interface element to other user interface elements . 10
5.4.1  In a single data value, whether this user interface element is a label for another user
interface element or is labelled by another user interface element . 10
5.4.2  In a table, the row and column that it is in, including headers of the row and column if
present . 10
5.4.3  In a hierarchical relationship, any parent containing the user interface element, and any
children contained by the user interface element . 10
6  Exposing User Interface Element Actions . 11
7  Keyboard Focus . 11
8  Events . 11
8.1  changes in the user interface element value . 12
8.2  changes in the name of the user interface element . 12
8.3  changes in the description of the user interface element . 12
8.4  changes in the boundary of the user interface element . 12
8.5  changes in the hierarchy of the user interface element . 12
9  Programmatic Modifications of States, Properties, Values, and Text . 12
10  Design Considerations . 13
10.1  Using IA2 . 13
10.1.1  The IAccessible2Proxy.dll . 13
10.1.2  Using IAccessibleApplication to get Application’s name and version . 13
10.1.3  Discovering Interfaces and Services . 13
10.1.4  Component – building block of widgets . 14
10.1.5  Discovering actions on accessible objects . 15
10.1.6  Working with images . 16
10.1.7  Working with number values . 16
10.1.8  Working with tables . 17
10.1.9  Working with text . 18
10.1.10 Object relations . 20
© ISO/IEC 2012 – All rights reserved iii

10.1.11 Cross reference with Atk interfaces .21
11  Further Information.22
11.1.1  IAccessible2 Extensibility .22

iv © ISO/IEC 2012 – All rights reserved

Foreword
ISO (the International Organization for Standardization) and IEC (the International Electrotechnical
Commission) form the specialized system for worldwide standardization. National bodies that are members of
ISO or IEC participate in the development of International Standards through technical committees
established by the respective organization to deal with particular fields of technical activity. ISO and IEC
technical committees collaborate in fields of mutual interest. Other international organizations, governmental
and non-governmental, in liaison with ISO and IEC, also take part in the work. In the field of information
technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1.
International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2.
The main task of the joint technical committee is to prepare International Standards. Draft International
Standards adopted by the joint technical committee are circulated to national bodies for voting. Publication as
an International Standard requires approval by at least 75 % of the national bodies casting a vote.
In exceptional circumstances, the joint technical committee may propose the publication of a Technical
Report, when the joint technical committee has collected data of a different kind from that which is normally
published as an International Standard (“state of the art”, for example).
Attention is drawn to the possibility that some of the elements of this part of ISO/IEC 13066 may be the
subject of patent rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights.
ISO/IEC TR 13066-3 was prepared by Joint Technical Committee ISO/IEC JTC 1, Information technology,
Subcommittee SC 35, User interfaces.
ISO/IEC 13066 consists of the following parts, under the general title Information technology —
Interoperability with assistive technology (AT):
 Part 1: Requirements and recommendations for interoperability
 Part 2: Windows accessibility application programming interface (API) [Technical Report]
 Part 3: IAccessible2 accessibility application programming interface (API)
© ISO/IEC 2012 – All rights reserved v

Introduction
Assistive technology (AT) is specialized information technology (IT) hardware or software that is added to or
incorporated within a system that increases accessibility for an individual. In other words, it is special purpose
IT that interoperates with another IT product enabling a person with a disability to use the IT product.
Interoperability involves the ability to add or replace AT to existing components of IT systems. Interoperability
between AT and IT is best facilitated via the use of standardized, public interfaces for all IT components.
This part of ISO/IEC 13066 describes the IAccessible2 API that can be used as a framework to support
software to software IT-AT interoperability on the Windows platform.
vi © ISO/IEC 2012 – All rights reserved

TECHNICAL REPORT ISO/IEC TR 13066-3:2012(E)

Information technology — Interoperability with Assistive
Technology (AT) —
Part 3:
IAccessible2 accessibility application programming interface
(API)
1 Scope
This part of ISO/IEC 13066 provides an overview to the structure and terminology of the IAccessible2
accessibility API.
It provides:
 a description of the overall architecture and terminology of the API;
 further introductory explanations regarding the content and use of the API beyond those found in Annex A
of ISO/IEC 13066-1;
 an overview of the main properties, including:
 of user interface elements,
 of how to get and set focus,
 of communication mechanisms in the API;
 a discussion of design considerations for the API (e.g. pointers to external sources of information on
accessibility guidance related to using the API);
 information on extending the API (and where this is appropriate);
 an introduction to the programming interface of the API (including pointers to external sources of
information).
It provides this information as an introduction to the IAccessible2 API to assist:
 IT system level developers who create custom controls and/or interface to them;
 AT developers involved in programming "hardware to software" and "software to software" interactions.
2 Terms and definitions
For the purposes of this document, the following terms and definitions apply.
© ISO/IEC 2012 – All rights reserved 1

2.1
accessible object
part of user interface object that is accessible by Microsoft Active Accessibility
NOTE An accessible object is represented by a pair of the IAccessible interface and ChildId identifier.
2.2
application programming interface
API
collection of invocation methods and associated parameters used by one piece of software to request actions
from another piece of software
[ISO/IEC 18012-1:2004, definition 3.1.1]
2.3
application software
software that is specific to the solution of an application problem
[ISO/IEC 2382-1, definition 10.04.01]
EXAMPLE A spreadsheet program is application software.
2.4
assistive technology
AT
hardware or software added to, or incorporated within, a system that increases accessibility for an individual
EXAMPLE Braille display, screen reader, screen magnification software and eye tracking device.
[ISO 9241-171, definition 3.5]
NOTE Within this part of ISO/IEC 13066, where assistive technology (and its abbreviation AT) is used, it is to be
considered as both singular and plural, without distinction. If it is to be used in the singular only, it will be preceded by the
article "an" (i.e. an assistive technology). If it is to be used in the plural only, it will be preceded by the adjective "multiple"
(i.e. multiple AT).
2.5
client
component that uses the services of another component
NOTE In this part of ISO/IEC 13066, client refers more specifically to a component that uses the services of either or
both Microsoft Active Accessibility and/or UI Automation to access, identify, or manipulate the UI elements of an
application.
2.6
Component Object Model
COM
object-oriented programming model tha
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.