1、BSI Standards PublicationPD ISO/IEC TR 13066-6:2014Information technology Interoperability with assistivetechnology (AT)Part 6: Java accessibility applicationprogramming interface (API)PD ISO/IEC TR 13066-6:2014 PUBLISHED DOCUMENTNational forewordThis Published Document is the UK implementation of I
2、SO/IEC TR13066-6:2014.The UK participation in its preparation was entrusted to TechnicalCommittee ICT/-/6, ICT Accessibility Co-ordination.A list of organizations represented on this committee can beobtained on request to its secretary.This publication does not purport to include all the necessarypr
3、ovisions of a contract. Users are responsible for its correctapplication. The British Standards Institution 2014. Published by BSI StandardsLimited 2014ISBN 978 0 580 76641 1ICS 11.180.99; 35.180Compliance with a British Standard cannot confer immunity fromlegal obligations.This Published Document w
4、as published under the authority of theStandards Policy and Strategy Committee on 31 July 2014.Amendments issued since publicationDate Text affectedPD ISO/IEC TR 13066-6:2014Reference numberISO/IEC TR 13066-6:2014(E)ISO/IEC 2014TECHNICAL REPORT ISO/IECTR13066-6First edition2014-07-15Information tech
5、nology Interoperability with assistive technology (AT) Part 6: Java accessibility application programming interface (API) Technologies de linformation Interoprabilit avec les technologies dassistance Partie 6: Interface de programmation dapplications (API) daccessibilit Java PD ISO/IEC TR 13066-6:20
6、14ISO/IEC TR 13066-6:2014(E) COPYRIGHT PROTECTED DOCUMENT ISO/IEC 2014 All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting on the internet or an
7、intranet, without prior written permission. Permission can be requested from either ISO at the address below or ISOs 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 copyrightiso.org Web www.iso.or
8、g Published in Switzerland ii ISO/IEC 2014 All rights reservedPD ISO/IEC TR 13066-6:2014ISO/IEC TR 13066-6:2014(E) ISO/IEC 2014 All rights reserved iii 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
9、. 5 4 Using the API . 6 4.1 Overview . 6 4.2 Package javax.accessibility* 7 4.2.1 The AccessibleContext class . 7 4.2.2 The AccessibleAction interface . 8 4.2.3 The AccessibleComponent and AccessibleExtendedComponent interfaces 8 4.2.4 The AccessibleIcon interface . 10 4.2.5 The AccessibleSelection
10、interface 10 4.2.6 The AccessibleStreamable interface . 10 4.2.7 The AccessibleTable and AccessibleExtendedTable interfaces 11 4.2.8 The AccessibleText, AccessibleEditableText, AccessibleExtendedText, and AccessibleHypertextText interfaces 12 4.2.9 The AccessibleValue interface . 13 4.3 Implementing
11、 the Java accessibility API 13 4.3.1 Using existing accessible user interface components . 14 4.3.2 Subclassing existing accessible user interface components 16 4.3.3 Creating accessible user interface components “from scratch” . 17 5 Exposing User Interface Element Information . 18 5.1 Role, state(
12、s), boundary, name, and description of the user interface element . 18 5.1.1 Role information 19 5.1.2 State(s) information . 19 5.1.3 Boundary information . 20 5.1.4 Name information 21 5.1.5 Description information 21 5.2 Current value and any minimum or maximum values, if the user interface eleme
13、nt represents one of a range of values 22 5.2.1 Additional value information: setting values 23 5.3 Text contents, text attributes, and the boundary of text rendered to the screen . 23 5.4 The relationship of the user interface element to other user interface elements. 24 5.4.1 in a single data valu
14、e, whether this user interface element is a label for another user interface element or is labelled by another user interface element . 24 5.4.2 in a table, the row and column that it is in, including headers of the row and column if present. . 25 5.4.3 in a hierarchical relationship, any parent con
15、taining the user interface element, and any children contained by the user interface element . 26 6 Exposing User Interface Element Actions 27 7 Keyboard Focus 28 7.1 Tracking (and modifying) focus . 28 7.2 Tracking (and modifying) text insertion point 29 7.2.1 Tracking (and modifying) selection att
16、ributes . 30 PD ISO/IEC TR 13066-6:2014ISO/IEC TR 13066-6:2014(E) iv ISO/IEC 2014 All rights reserved 8 Events 31 8.1 changes in the user interface element value . 31 8.2 changes in the name of the user interface element 31 8.3 changes in the description of the user interface element 31 8.4 changes
17、in the boundary of the user interface element . 31 8.5 changes in the hierarchy of the user interface element . 32 8.6 changes in other accessibility aspects of user interface components 32 9 Programmatic Modifications of States, Properties, Values, and Text . 33 9.1 Programmatic Modifications of St
18、ates . 33 9.2 Programmatic Modifications of Properties 34 9.3 Programmatic Modifications of Values 34 9.4 Programmatic Modifications of Text. 34 10 Design Considerations . 35 10.1 Java Access Bridge for Windows . 35 10.2 Java Access Bridge for Linux / UNIX graphical environments 36 11 Further Inform
19、ation. 38 11.1 Role extensibility 38 11.2 State extensibility . 39 11.3 Relation extensibility 39 11.4 Interface extensibility . 39 Bibliography . 40 PD ISO/IEC TR 13066-6:2014ISO/IEC TR 13066-6:2014(E) ISO/IEC 2014 All rights reserved v Foreword ISO (the International Organization for Standardizati
20、on) 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 d
21、eal 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
22、IEC have established a joint technical committee, ISO/IEC JTC 1. The procedures used to develop this document and those intended for its further maintenance are described in the ISO/IEC Directives, Part 1. In particular the different approval criteria needed for the different types of document shoul
23、d be noted. This document was drafted in accordance with the editorial rules of the ISO/IEC Directives, Part 2 (see www.iso.org/directives). Attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. ISO and IEC shall not be held responsible
24、 for identifying any or all such patent rights. Details of any patent rights identified during the development of the document will be in the Introduction and/or on the ISO list of patent declarations received (see www.iso.org/patents). Any trade name used in this document is information given for t
25、he convenience of users and does not constitute an endorsement. For an explanation on the meaning of ISO specific terms and expressions related to conformity assessment, as well as information about ISOs adherence to the WTO principles in the Technical Barriers to Trade (TBT) see the following URL:
26、Foreword - Supplementary information The committee responsible for this document is 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
27、): Part 1: Requirements and recommendations for interoperability Part 2: Windows accessibility application programming interface (API) Part 3: IAccessible2 accessibility application programming interface (API) Part 4: Linux/UNIX graphical environments accessibility application programming interface
28、(API) Part 6: Java accessibility application programming interface (API) PD ISO/IEC TR 13066-6:2014ISO/IEC TR 13066-6:2014(E) vi ISO/IEC 2014 All rights reserved Introduction Assistive technology (AT) is specialized information technology (IT) hardware or software that is added to or incorporated wi
29、thin 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 Assistive Technology (AT) to existing c
30、omponents of Information Technology (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 Java accessibility API that can be used as a framework to support software to softwa
31、re IT-AT interoperability on the multiple computing platforms. It also describes the Java Access Bridge for Windows for enabling AT on Windows to interoperate with accessible Java applications on the Microsoft Windows platform and the Java Access Bridge for GNOME for enabling AT on UNIX and GNU/Linu
32、x platforms running the GNOME graphical desktop to interoperate with accessible Java applications on UNIX and GNU/Linux environments. NOTE 1 GNOME is both a common and accessible graphical desktop for Linux / UNIX graphical environments, as well as an open source project delivering a collection of s
33、oftware libraries and applications. It was formerly an acronym meaning “GNU Network Object Model Environment”. NOTE 2 The code examples contained in this document are illustrative in nature. With rare exception, they do not include error checking or exception handling, and should be treated more lik
34、e pseudo-code than as cookbook templates that can use directly in applications or assistive technologies. PD ISO/IEC TR 13066-6:2014TECHNICAL REPORT ISO/IEC TR 13066-6:2014(E) ISO/IEC 2014 All rights reserved 1 Information technology Interoperability with a ssistive technology (AT) Part 6: Java acce
35、ssibility application programming interface (API) 1 Scope This part of ISO/IEC 13066 provides an overview to the structure and terminology of the Java accessibility API It will provide: A description of the overall architecture and terminology of the API; Further introductory explanations regarding
36、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; 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 s
37、ources 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). an introduction to the Java Access Bridge for
38、Windows and the Java Access Bridge for GNOME It will provide this information as an introduction to the Java 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“ interact
39、ions 2 Terms and Definitions For the purposes of this document, the following terms and definitions apply. 2.1 accessible object a part of the user interface that is accessible by and exposes the Java accessibility API Note 1 to entry An accessible object is represented by an object of the “Accessib
40、leContext” Java class PD ISO/IEC TR 13066-6:2014ISO/IEC TR 13066-6:2014(E) 2 ISO/IEC 2014 All rights reserved 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 SOURCE: I
41、SO/IEC 18012-1 Information technology Home electronic system Guidelines for product interoperability Introduction, definition 3.1.1 2.3 application software software that is specific to the solution of an application problem SOURCE: ISO/IEC 2381-1, definition 10.04.01 EXAMPLE A spreadsheet program i
42、s application software. 2.4 Assistive Technology (AT) hardware or software that is added to or incorporated within a system that increases accessibility for an individual EXAMPLE Braille displays, screen readers, screen magnification software and eye tracking devices are assistive technologies. SOUR
43、CE: ISO 9241-171, definition 3.5 Note 1 to entry Within this document, 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 Ass
44、istive 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 class a term from object oriented programming, also used in the Java programming language, denoting the definition/description of an object containing code (methods) an
45、d data (fields) EXAMPLE All objects in object oriented programming belong to a class (e.g. a specific window object is an instance of the window class). Note 1 to entry Much of the Java accessibility API consists of these class definitions, and implementations of the Java accessibility API are insta
46、nces of these classes. Note 2 to entry In objected oriented programming and specifically in the Java programming language classes can be “subclassed” (e.g. a dialog box class is a subclass of the more generic window class), and portions of the Java accessibility API are implemented as subclasses (e.
47、g. AccessibleRole, AccessibleState, and AccessibleRelation are all subclasses of the more generic AccessibleBundle class). 2.6 compatibility the capability of a functional unit to meet the requirements of a specified interface without appreciable modification SOURCE: ISO/IEC 2381-1, definition 10.06
48、.11 PD ISO/IEC TR 13066-6:2014ISO/IEC TR 13066-6:2014(E) ISO/IEC 2014 All rights reserved 3 2.7 information/communication technology (ICT) technology for gathering, storing, retrieving, processing, analysing and transmitting information SOURCE: ISO 9241-20, definition 3.4 EXAMPLE A computer system i
49、s a type of ICT.2.13 2.8 interface a shared boundary between two functional units, defined by various characteristics pertaining to the functions, physical interconnections, signal exchanges, and other characteristics, as appropriate SOURCE: ISO/IEC 2381-1, definition 10.01.38 2.9 interface in object oriented programming generally and the Java language in particular an interface is a set of public methods (and potentially public fields) that all objects implementin