[Kde-accessibility] Proklam and KMouth

Bill Haneman bill.haneman@sun.com
24 Sep 2002 12:47:52 +0100


Hi:

Maybe I can shed some light on these acronyms...

> Can somebody helping what's being done and what's done and by who, Gnome 
> accesibility page is not really clear.
> I try to define this things, please correct me:
> 
> AT Accessibility API: This is the api used by non-gnome/gtk applications to 
> obtain accesibility features.

I don't know quite what you mean here, since there is no "AT
Accessibility API".

> GNOME Accessibility API: This is the api used by gnome/gtk applications to 
> obtain accesibility features.
> Java Accessibility API: The API used by java apps to get accesibility 
> features.
> 
> Am I wrong to think that there might be, in te future a KDE Accessibility API 
> for KDE apps ?

The APIs and acronyms are more like this:

ATK : "Accessibility Tool Kit", an in-process accessibility API that is
suitable for applications to specify accessibility features internally,
by getting/setting properties, advertising certain interfaces, etc.

*	ATK is not usable directly by assistive technologies (ATs) since it
has no IPC capabilities; it must be "bridged" to AT-SPI via some
dynamically loaded adapter code.

*	ATK is the binary interface for accessibility which is exported by
GTK+, GNOME apps, and Mozilla-Linux and Mozilla-Solaris.

*	ATK depends on glib but no other GNOME libraries, and is not
gtk+-specific.

AT-SPI: The "Assistive Technology Service Provider Interface"; this is
the "API" which is seen by assistive technologies.  

*	AT-SPI is defined by IDL

*	the current AT-SPI implementation uses CORBA though an alternative IPC
mechanism which used the same IDL could interoperate with it.

*	AT-SPI is what is used by accessibility "clients" to get accessibility
information, and is the same for all application types, whether they are
GNOME, GTK+, Java, OpenOffice, or hopefully someday KDE.

*	The current GNOME modules called "AT-SPI" also include a central
accessibility registry service with which applications register, and
which handles event dispatching to assistive technology clients.
 
> ATK API: The set of modifications to be done to the Gtk+ widgets ?

Not quite, the Gtk+ widget-specific code is an external module called
"libgail", which implements the toolkit-neutral ATK API for Gtk+
widgets.  But ATK is a very suitable in-process API for accessibility
and is much easier to implement that the generic AT-SPI.

> AT-SPI: A genera library to provide accesibility features (with AT 
> Accessibility API?).

more or less, yes.  It's a fully-generic API for accessibility
information and for interacting with accessible applications.

> GAP: Gnome Accessibility Project ?

Originally that is correct; nowadays we would like to call it 
"GNU Accessibility Project" since it's really not GNOME-specific, but we 
haven't formalized this with the FSF yet and probably 
should do so before we "officially" call it "GNU", even though "GNOME"
contains GNU in its own name...

best regards,

-Bill