World Wide Web Access for Blind People ====================================== Louis Perrochon, Andrea Kennel Institut fuer Informationssysteme, ETH Zurich, Switzerland. {perrocho|kennel}@inf.ethz.ch http://www.inf.ethz.ch/personal/{perrocho|kennel} Abstract: 'W3-Access for Blind People' is intended to make web-surfing easier for blind people. Structure information in HTML documents is transformed on the fly into a form, that can be read easier by visually handicapped. We assume that the blind computer user is already familiar with a screen reader and already working with a W3-browser. Our approach works with every W3-browser and every screen reader. No additional software has to be installed at the user's computer. Keywords: Proxy Server, Blind or Visually Impaired People, User Interface Transformation. 1. Introduction Blind users cannot use a state-of-the art mouse because a mouse normally requires visual feedback from the screen to the user. As a consequence, when working with hypertexts, blind users cannot simply click on a magic blue word in the middle of the screen. Normally they have to search for it word by word using a screen reader. Another general problem is that blind users cannot get an overview of the structure of a text with one quick glance at the screen. Thus blind users can be "lost in hyperspace" very quick. Of course the correct solution is building better screen readers. However this is not that easy. We present a simple solution that solves some of the problems of W3-access. Section 2 gives a short overview over the architecture. Section 3 presents the users view of our system. section 4 gives some technical details for those who want to provide this new service to blind users. 2. Architecture Figure 1 Architecture of 'W3-Access for Blind People'. Description of Figure 1: This figure has the user with his W3-browser on the left and a W3-server on the right. In the middle, there is our prototype. The prototype has two parts. The upper half is a standard proxy-server, the lower half the HTML-transformer. Both parts of the prototype are connected with two arrows (up and down). The user's W3-browser is connected with the proxy-server using a two-way-arrow, and the proxy-server is connected with the W3-server with the same kind of arrow. There are numbers (1) to (6) in the Figure, as described in the next paragraph. End of description of Figure 1. We insert a transformer between the W3-browser and the W3-server. The transformer modifies each document to reflect its structure clearer. Fortunately, we did not have to build everything from scratch. A proxy server was the ideal environment for our project. Thus the CERN-httpd has been modified to provide this additional functionality. The resulting architecture is described in Figure 1 The process of fetching a document has has 6 steps: (1) The user activates a link and the browser sends the request to the proxy. (2) The proxy forwards the request to the appropriate server. (3) The server sends the original document. (4) The original document is passed on to our transformer and transformed. (5) The modified document is passed back to the proxy. (6) The proxy sends the modified document to the user. In our implementation, the transformer is not a separate piece of software but integrated into the proxy server code. 3. The user's view This section presents the user's view. It defines a model of how a blind user navigates through a hypertext. The user knows nothing about proxies and what they do. He only sees the modified documents. 3.1 General Structure of Documents When the user loads a hypertext document (only HTML is supported so far) via our proxy server, he will get a modified version of the requested document. The modified document has three parts: (1) the requested document, with some modifications, (2) a list of all the links in the document and (3) a nested list of all the titles. The two lists give an overview over the document and allow the user to navigate easily through it. Additional list of titles and links are useful not only for blind users. Throughout the modified document, new links are introduced. In this paper, these new links are called references. Only the links that were in the original documents are called links. References are always local links and are only used to navigate inside one document. 3.2 The List of Links Figure 2 The list of links in a document with two links. Description of Figure 2. Sorry. This figure is very complex. It gives a simple example of a list of link as described in the next paragraph. End of description of Figure 2. Immediately after loading a document, the user should be able to jump to the list of links to have an idea of the links available in this document. Interesting links can then be activated immediately. To achieve this, the very first reference at the top of each modified document is a reference to the list of links at the end of the modified document. This reference is named 'Ref to Linklist'. After activation of this reference, the beginning of the list of links will appear at the top of the browser window. The first entry of the list of links indicates the number of links in the list. The following entries in the list are copies of all the links in the original document. The very last entry in the list is named 'Ref to Top' and points back to the top of the modified document. The list is terminated by the words 'End of Linklist'. 3.3 The List of Titles Figure 3 The list of titles in a document with two levels of titles. (Not all the references are shown.) Description of Figure 3. Sorry. This figure is very complex. It gives a simple example of a list of titles as described in the next paragraph. End of description of Figure 3. Most hypertexts have a hierarchical title structure: titles of level one (

) contain several titles of level two (

) which contain subtitles of level three (

) and so on. In a hypertext, the blind user can get a quick overview just by browsing through the titles of level one (

). This is why a nested list of all the titles is added to the original document. Additionally, the entries in the list of titles are references to the titles in the text. Thus interesting titles in the text can immediately be found. Another possibility is to go down the title hierarchy and find all subtitles of this title. The list of titles is terminated by the words 'End of titlelist'. 3.3.1 Jumping from the Text to the Titlelist A reference named 'Ref to title level1' at the top of the modified document (just after 'Ref to Linklist') points to the list of level 1 titles. At the beginning of each list of titles, the number of titles in this list is inserted. After each title in the text, there is a reference to the corresponding list of all subtitles. 3.3.2 Navigating inside the List of Titles After each entry in the list of titles there is a reference to the 'Lower level'. This reference points to the list of subtitles belonging to the title. If there are no more subtitles this reference will not appear in the list. At the end of the lists of level 2-7, there will also be a reference to the 'Upper level'. 3.3.3 Jumping From the List of Titles Back to the Text: Each entry in the list is a reference to the corresponding title. At the end of each titlelist there are references named 'Back to Text' and 'Top of Document'. 'Top of Document' points to the top of the document, 'Back to Text' to the title to which the current list belongs. 3.4 More Features 3.4.1 Forms The original document is not only enriched with additional links. It is also modified. The corresponding keyword 'Image', 'Radiobutton', 'Checkbox', 'Editfield', 'Button' and 'Combobox' is inserted before each of those HTML elements in the document. Thus the user is informed that non-textual elements appear, even if the screen reader does not identify them. 3.4.2 Searching In the text of a document the keyword 'link' is inserted before each link. Some Screen readers support "find"-commands, which can now be used to jump from link to link. Similarly the keywords 'title level' can be used to jump from one title to the next. There are some other possible targets for searches that are self-explanatory: 'Image', 'Radiobutton', 'Checkbox', 'Editfield', 'Button' and 'Combobox'. 4. The provider's view The user doesn't have to install any software. Anybody can use the proxy server running at ETH Zurich (). However, it might be wise to set up more proxies. They will reduce network traffic, as everybody can access the nearest proxy. The proxy-server is a modified CERN-httpd-daemon. The provider has to add one line to the proxy code and change one line in the makefile. Of course some files of ours have to be added to the files of the distribution, too. After compilation, the httpd is started in proxy-only mode. Our proxy-server is configurable. There are two files, that control the transformation process. One is used to define all the keywords, that are inserted into the HTML documents in front of special HTML elements, the other defines the transformation of each HTML element. See the documentation for more details on how to configure the proxy. (Our code will be freely available by End of August) 5. Future Work We have to get more experience and user feedback, to do better and additional transformation. The idea of making structure information in hypertexts better visible might prove useful for all users of hypertext. A feature, that automatically builds tables of contents and lists of links is useful for all kinds of hypertext systems. Such lists might soon be a useful feature in every browser. Browsers should use standard elements for forms (buttons, etc.), so the screen readers have a chance to recognise them. Under MS Windows Netscape and Mosaic do not use the standard system elements. WinWeb uses standard elements and outSPOKEN for Windows recognises all of them. Correct and "good" HTML is very important! If our proxy server gets a HTML document with - tags instead of

-tags, it will not recognise the titles. 6. Summary When a user loads a document via our proxy-server, a list of links and a nested list of titles are added to the requested document. These lists give a quick overview over the document. They can also be used to navigate quickly through the document and to follow interesting links. The list of titles has a hierarchical structure (like a tree). The user can browse through this structure using the links 'Lower level' and 'Upper level'. To return to the text the references to the titles or the references 'Top' or 'Back' are used. 7. Acknowledgements Thanks to Markus Ullius, Markus Marti, Albert Bosshard and Willi Roman who did the implementation as a student-project. And thanks to Alireza Darvishi for testing the new user interface and providing useful input on the problems of blind users. 8. References [Ulius et al. 95] Ullius, M. Marti, M. Willy, R. Bosshard, A. W3-Access for blinds. Institut fuer Informationssysteme, ETH Zurich. You can try it: Set your W3-browser to the proxy at , flush your cache and start browsing.