[Accessibility] Sec 2b Draft -- For today's call

Janina Sajka janina at rednote.net
Wed Sep 3 10:39:21 PDT 2003

Year One

	1.)	AT-SPI The AT-SPI was developed in GNOME2 and is in process of adoption by KDE. It provides two-way communication between applications
and assistive technologies. It facilitates access for individuals who cannot use the standard graphical interface. It provides a consistant, toolkit
approach for applications to expose data that assistive technologies require, so that applications written using an accessibility enabled toolkit (such
as GTK2) can be made accessible. This enables developers to build applications that they can also make accessible, or another party can make accessible.
It enables developers and distributions to meet accessibility requirements of individual and corporate customers.

AT-SPI is a finished product that we propose to adopt.

	2.)	AT device Shared I/O

I should be possible for devices commonly used by persons with disabilities to operate smoothly with several client applications that interface with
these devices. We need to adopt or 
develop libraries that allow client applications to share these I/O devices. Shared access to accessibility related devices such as Braille displays,
   reduces the cost of ownership and improves the user experience. In some circumstances it will be necessary to support simoultaneous access for
different client applications, e.g. to allow software-based speech synthesizer to speak while a multi-media stream is playing rather than queing its
messages to play after the stream concludes. In other circumstances messages should que until a particular Window (or Console) has focus.

	3.)	Keyboard Accessibility

We propose to identify and adopt an subset of the XKB specifications in order to provide standard keyboard behaviors required by persons with mobility
impairments. These are features with names such as sticky keys, which permits users who cannot press combinations of keys, e.g. Ctrl-Alt-TAB,
simoultaneously to achieve the same result by pressing them sequentially.
People with mobility impairments will benefit by having these features builtin and available through standard activation strategies, such as tapping
Shift five times to turn sticky keys on. The routines provided by the API will also benefit assistive technologies such as on screen keyboard and screen
reader applications.

The XKB is an accepted standard.

Year Two

	4.)	Text-only accessible booting

It should be possible for any user who is a person with a disability to access any user supported interface during the boot process, including the
selection of the kernel to boot, rescue modes, interactive device loading, etc.  We will develop the best practices and coordinate with kernel and boot
loader development teams to facilitate the interfacing of assistive technologies at any point during the boot process where user access is supported.

This will particularly benefit those users with disabilities who are technology professionals and need, or desire, to participate in development and
testing of system products and features.

	5.)	Guidelines for Sys Admins
It should be possible for System Administrators who are themselves persons with disabilities to continue in their profession even as new tools
supporting system administration are developed. In addition it should be possible for system administrators to assist users of their systems who are
persons with disabilities to define user interface configurations, including alternate configurations, appropriate to their needs. Scripted wizards and
best practices documentation need to be developed to facilitate the process of providing appropriate end user configurations on individual workstations.

Too often the user is left to their own knowledge to configure their interface because technical support may not be sufficiently knowledgable about
available configuration options. Yet most of what users need can be documented and exposed in a systematic manner. And users whose needs may vary day to
day should have the ability to easily select an alternate configuration as their needs change during system use.

	6.)	Service API Support for Magnification
"this will remove device driver dependency", in Linux applications have little interaction with drivers. AT can't
   access video driver since X isolates you from it. Purpose is to Allow AT to interact with display hardware in more sophisticated and higher
   performance level to provide screen magnification. Allow moving small areas of screen, enlarge and display it in another part of the screen. Allow
   magnified display while application is writing to the screen. Will need a lot of cooperation. Because of transparent networked nature of X system, it
   is not possible for AT to just replace device drivers or talk directly to video hardware. This standard will facilitate providing interfaces such as
   screen magnification. Some vendors have projects in process that will contribute as an implementation.

It should be possible to provide sophisticated magnification of one or more portions of the video display screen to users who require large (or
different) fonts and/or alternate foreground/background colors. It should be possible to achieve this feature support without requiring higher-end video
hardware with multiple frame buffering as is the case today. Also, it should be possible to maintain magnification while applications are writing to

Because of the historic networked nature of the X technology, 
   is not possible (nor desirable) for AT to just replace device drivers or write directly to video hardware. creating this standard will require
significant cooperation with X, GNOME, and KDE developers. There are already projects under development among some vendors which can provide reference

	7.)	Text To Speech (TTS)

It should be possible for any language community to develop text to speech voice for itself, just as communities can develop fonts. We propose to
develop a TTS voice creation API to simplify and systemetize the process of creating a new voice.  This project will also adopt or develop standardized
mark up for spoken dialog, and provide an API for text-to-speech services (such as JSAPI). 

This will benefit persons with disabilities who do not understand the more common languages that assistive technologies are likely to support.
It will facilitate the inclusion of vast populations around the globe who might otherwise not participate in a technology based economy.

A proposal to converge JSAPI and GNOME-Speech is already under consideration.

Year Three

	8.)	V2

Adopt portions of the forthcoming InterNational Committee for Information Technology Standards (INCITS) ISO standards for accessibility interfaces. A
particular benefit of this technology is the XML standard whereby two devices can negotiate, in a transport independent manner, the interface that is
appropriate to a particular user. This standard is not so much for individual workstations as for systems in public access locations where the system
needs to provide different interfaces to different individuals based on user need. It will also be useful for providing a defined mechanism whereby a
user's PDA (or similar device) can serve as an alternate interface.

Users with disabilities are often unable to use public kiosks such as ATMs, airline boarding pass systems, etc., because they cannot use the default
user interfaces provided by such systems. The INCITS V2 specs are designed to provide these interfaces directly or to negotiate, over a secure wireless
channel, with the user's personal device to provide service.

The V2Committee expects to have a candidate 1.0 specification available for ANSI certification early in 2004.

	9.)	Sys Admin

	See #5 above.

	10.)	Installation 

It should be possible for persons with disabilities to install and configure a full system or individual application packages. The same considerations
that make the operational user interface accessible can be applied to the installation process.

We will develop the best practices guidance and scriptlets to support accessible installation.

		11.)	Braille

Year Five

	12.)	Structured Navigation

It should be possible for users to navigate the user desktop, applications, and individual documents in a straight-forward and consistant manner,
especially where a hierarchical organization is available. This project will develop an API to expose structures to user agents.

Persons who have various learning disabilities will particularly benefit from this API because developers will be able to create taylored, even
individualized interfaces that present information, available applications, documents, and media presentations that can be started, stopped, and used in
a consistant manner appropriate to the individual user.

	13.)	Voice I/O

				Janina Sajka, Director
				Technology Research and Development
				Governmental Relations Group
				American Foundation for the Blind (AFB)

Email: janina at afb.net		Phone: (202) 408-8175

More information about the Accessibility mailing list