← All reviews

Web Browser Accessibility Using Open Source Software

Željko Obrenović, Jacco van Ossenbruggen · 2007 · Proceedings of the 2007 International Cross-Disciplinary Conference on Web Accessibility (W4A) · doi:10.1145/1243441.1243451

Summary

This paper presents AMICO:WEB, a middleware infrastructure designed to integrate open source and free software components into mainstream web browsers to improve accessibility. The authors from CWI Amsterdam identify a core problem: while the open source community has produced numerous components useful for accessibility — computer vision libraries, speech recognition engines, text-to-speech systems, gesture recognizers, translation services — these components were developed in diverse implementation environments using protocols and conventions incompatible with web technologies. Reusing them within browsers requires bridging significant syntactic and semantic gaps between high-level web XML-based APIs and low-level device-oriented APIs. AMICO:WEB addresses this through a publish-subscribe brokering architecture where components communicate via a shared data repository of named slots. The infrastructure supports multiple integration interfaces (XML-RPC, HTTP, TCP, UDP, SOAP, OpenSound Control) and uses XSLT transformations to bridge semantic differences between components operating at different abstraction levels and temporal constraints. The system integrates with browsers through Firefox/Mozilla extensions, AJAX scripting libraries, and Java applets. Two scenarios illustrate the approach: Michelle, a user with spinal cord injury who browses using camera-based face detection, motion tracking, and speech recognition instead of keyboard and mouse; and Simon, a French student in the Netherlands who uses browser-integrated translation with text-to-speech to navigate Dutch websites for daily tasks like banking and social activities.

Key findings

The AMICO:WEB infrastructure successfully demonstrated that existing open source components could be combined within a standard browser environment to create novel accessibility solutions without requiring changes to browser source code or specialized markup in web pages. The implementation integrated OpenCV-based face and motion detectors, the HandVu gesture recognizer, Sphinx-4 speech recognition, three TTS engines (FreeTTS, NEXTENS, Mary), Yahoo BabelFish translation, Google spelling services, ConceptNet, WordNet, and Sesame RDF databases — all communicating through the middleware despite using vastly different protocols and data formats. The publish-subscribe architecture proved effective for loose coupling, enabling dynamic loading and unloading of components during browsing sessions and fault-tolerant operation when individual components failed. Key challenges included hiding infrastructure complexity from end users (some components took 10+ seconds to initialize), solving Java applet security restrictions for accessing local input devices like cameras and microphones, and the practical difficulty of embedding applets in third-party web pages. The Greasemonkey-based approach using a ScriptingApplet proved the most flexible integration mechanism, supporting per-user customization across different websites.

Relevance

This paper addresses a persistent challenge in accessibility: how to extend mainstream software with assistive capabilities rather than building separate, specialized tools that tend to be less functional and stigmatizing. The middleware approach of bridging incompatible software ecosystems remains relevant as modern web accessibility increasingly involves integrating AI services, computer vision, natural language processing, and novel input modalities into browsers. While the specific technologies have evolved — modern Web APIs, WebRTC, Web Speech API, and browser extension frameworks have replaced many of the integration mechanisms described — the fundamental architectural insight holds: a flexible middleware layer that normalizes diverse component interfaces enables rapid prototyping of accessibility solutions. The paper also highlights the important but often overlooked overlap between disability accessibility and situational accessibility, showing that the same infrastructure benefits both a user with a spinal cord injury and a non-disabled user facing language barriers. This inclusive framing anticipated the broader shift toward recognizing accessibility as benefiting all users in varying contexts.

Tags: open source · middleware · multimodal interaction · browser extensions · assistive technology · software integration

Standards referenced: WCAG 1.0 · W3C Multimodal Interaction Framework · W3C Speech Interface Framework · CC/PP · XSLT