WebGen System - Visually Impaired Users Create Web Pages Ludˇek B´artek and Jarom´ır Plh´ak Faculty of Informatics, Masaryk University Botanick´a 68a, 602 00 Brno Czech Republic {bartek,xplhak}@fi.muni.cz
Abstract. The aim of the WebGen system is to allow visually impaired users to create web presentations in a simple and natural way by means of dialogue. This paper describes the basic methods and principles used in the system Web-Gen, especially the system structure and the dialogue interface. An illustrative example of a dialogue is included as well as the resulting web page. Keywords: web creation, dialogue, accessibility.
1 Introduction Due to the ever-increasing availability of the Internet the number of Internet users is growing rapidly. To give the new users an opportunity to create their own web presentations, many authoring tools like WYSIWYG editors (Seamonkey Composer [1] for example), Content Managements Systems (OpenCMS [2], etc.) have been developed. Wizards are another category of web authoring tools. They allow the creation of web pages step-by-step using forms for data acquisition, sets of predefined web page templates used to set up the web page layout and other useful features allowing novices to create their own web pages (see e.g. [3]). Though the process of web page creation may be supported by various assistive technologies like screen readers, special web browsers, etc. (see e.g. [4,5]), visually oriented tools are not suitable for visually impaired users. Inserting and editing pictures and other non-textual data in WYSIWYG editors requires a pointing device, which is not suitable for the blind. Also CMSs that enable creating web pages including graphics, video, audio or diagrams, are difficult to manage. Even though wizards are more suitable for creating multimedia pages, they offer only a small set of page types. Many of these applications (WYSIWYG editors, CMSs, wizards) do not assure, contrary to the WebGen system, the accessibility of the resulting web pages, allowing the users to set up the page layout using tables, not requiring the alternative descriptions for non-textual data, etc. Moreover, some of these applications generate HTML code which is not valid. The WebGen system is designed to enable the creation of web pages and web presentations by means of dialogue utilizing the methods used in the wizards. It enables creating the web site step-by-step, using forms for data acquisition and web page K. Miesenberger et al. (Eds.): ICCHP 2008, LNCS 5105, pp. 466–473, 2008. c Springer-Verlag Berlin Heidelberg 2008
WebGen System - Visually Impaired Users Create Web Pages
467
templates. WebGen offers number of various page types and guarantees accessibility of the generated web presentation (WCAG, [7]).
2 WebGen Structure and Principles The WebGen system allows the creation of web presentations by defining content and by specifying a layout of web pages to be included. Since the specification of the content of a general web page is a non-trivial task due to a web page’s diversity, we have decided to apply some of the principles used in the wizard based tools. The WebGen system consists of a presentation generation subsystem, the data acquisition subsystem, the presentations’ descriptors and the presentations’ layouts (see Fig. 1). The presentation generation subsystem has a dialogue interface as well as the data acquisition subsystem. The database of descriptors contains the information needed to generate the requested presentations. The user is allowed to select the layout of a particular presentation from the presentations’ layouts database. The required layout can be selected either during the dialogue performed by the data acquisition subsystem or during the process of the presentation’s generation. The process of generation is performed thus: 1. Acquisition of the data included in the presentation – the data are stored in an XML (eXtensible Markup Language, [8]) file which is transformed to the presentation in the final step. The requested information depends on the selected presentation User Presentation generation request System prompts
Presentation generation
Data acquisition
subsystem
subsystem
Presentation description
Presentation Layout
Web Server
User presentation descritpion
Presentations’ Layouts Database
Presentations’ Descriptor Database
Fig. 1. WebGen structure
Presentation description
468
L. B´artek and J. Plh´ak
type. For example when the user would like to create a personal web page, the information like full name, e-mail, address, phone numbers, etc. are required. 2. Selection of predefined presentation layout – the layouts are specified by the XSL (eXtensible Stylesheet Language, [9]) and CSS (Cascading Style Sheet, [10]). These layouts are used to generate the XHTML (Extensible HyperText Markup Language, [11]) pages from the corresponding presentation descriptor. To satisfy the WCAG requirements every XSLT (XSL Transformation, [9]): – avoids the use of tables for positioning, – the generated document is semantically structured using the div elements and the content positioning is done by the corresponding CSS, – the positions of parts of the page are specified relatively to the rest of the page, – the document may use relative sizes of fonts only, – ... 3. Presentation generation – the presentation is generated using the the XSLT. The user has to choose the corresponding XSL, if it is not already selected. 2.1 Dialogue Interface The process of generating web pages is executed, from the user’s point of view, through the dialogue communication. Therefore the dialogue interface is considered to be one of the crucial parts of the WebGen system. Dialogue interfaces are formed using standards from Voice Browser Activity specifications [12], especially using VoiceXML, SISR (Semantic Interpretation for Speech Recognition, [13]) and SRGS (Speech Recognition Grammar Specification, [14]) standards. VoiceXML technology is focused on creating telephony applications and therefore gives us adequate support for creating well-structured and effective dialogues. Since some parts of VoiceXML can be implemented in different ways on different VoiceXML platforms, the Optimtalk [15] platform has been selected because it is free in its basic edition. The Optimtalk platform also contains an input module simulating speech recognition using the keyboard. It enables us to use the GARBAGE rule from SRGS in a non-standard way accepting input without specifying its syntax by a grammar. When speech recognition is used, input is not recognized and cannot be processed. Such a rule is suitable for development and testing purposes, but it will be replaced by rules for spelling or by a DTMF (Dual-Tone Multi-Frequency) simulation of Multi-tap (the basic method used for writing SMS in mobile phones) to enable the speech input. Optimtalk is considered to be changed by the open source platforms Asterisk+ VoiceGlue (see e.g. [16,17]), JVoiceXML [18] or publicVoiceXML [19]. The dialogue interface can be implemented using the submission to the W3 Consortium (W3C) with the specification of the markup language XHTML+Voice Profile 1.0 (X+V, [20]) as well. It enables to insert a VoiceXML code directly into the web applications. Several web browsers implement the X+V specification, for example Mozilla Firefox with TadPole X+V Extension [21]. Nevertheless, no progress has been made in the X+V specification at the W3C since 2001. Therefore it has been decided to use the VoiceXML dialogue interface based on generally accepted standards.
WebGen System - Visually Impaired Users Create Web Pages
469
The WebGen system will be able to create some of the most frequent presentation types placed on Internet like personal presentation, product presentation, blogs, photo galleries, etc. Each type is related to a unique dialogue strategy which obtains specific information for the given presentation type. The basic idea is to develop methods for automatic generating the information retrieval dialogues from the page content description. The WebGen system utilizes the following types of dialogues: 1. The dialogue for retrieving: – the type of the page, – the content of the page – text information or pictures. 2. The dialogue for a page formatting. 3. The sub-dialogues: – the repair dialogue, – the confirmation dialogue. When the user selects a page type, all the data are collected through the information gathering dialogues. The selected layout specifies the user’s web page structure. Users can employ either the predefined layout or create their own [22]. The user is able to change basic style properties like background colour, position of elements (images, parts of text), etc. during the layout specification. Mixed-initiative dialogue strategy is used in most dialogues. It makes the communication more efficient and more comfortable for the users. The system-initiative dialogue strategy is used especially for confirming the recognized inputs and for repair dialogues. 2.2 Pictures in the Presentation An interesting problem is how to select a picture that has to be included in the presentation. The WebGen offers two possibilities. The first one is to enter the URI of the image to be included. Using an annotated database of images is the second possibility. The annotated database contains pictures and their structured semantic description. The Resource Description Framework (RDF, [23]) has been selected as the language of the semantic description. The description contains the concept of a displayed object (see e.g. [24,27,26]). The user can select the image by describing its content and the corresponding image is obtained from the database and inserted into the page. The database allows us to combine images as well. For example, when the user requires an image of a man with a woman by his side, the database takes the images of a man and the image of a woman and merges them as requested. When the user decides to use a URI of the particular images, the dialogue for the URI acquisition is performed using one of the following three methods: 1. Get URI directly – user has to convey the entire URI. This is suitable for experienced users (the only currently implemented method). 2. Select URI indirectly from the database of URIs – the database represents bookmarks for commonly used sites with images. The user conveys the short name of the site (for example the Google images search, [25]) and description of the picture.
470
L. B´artek and J. Plh´ak
The user must select one of the pictures returned by the query which will be used in the presentation. Some tools that allow users to manage the bookmark database are under development. 3. Get URI step by step – the user selects the name of the server and the path to the image. To keep the resulting page accessible, the user must enter the alternative description of the image. If the second way of selecting URI is used, the user’s request may be assigned as the alternative description of the image or non-textual data. 2.3 Example of a Dialogue In the following example, a dialogue for retrieving information is provided. This fragment of a real dialogue contains repair and confirmation sub-dialogues. The resulting web page is presented in the Fig. 2. System: Welcome. What page would you like to create? User: Personal page. System: There are three types of Personal pages: 1. Personal information page 2. Work information page 3. Curriculum vitae User: 1 System: Your choice is Personal information page. What’s your full name? User: John Smith. ... System: Please, enter your contact information. User: My email address is smith at gmail dot com, my personal cell phone number is +420123456789 my fax number is +420111222334. System: Email address is
[email protected], cell phone number is +420123456789, fax number is +420111222334. Do you agree? User: No. System: What is wrong? User: Fax number. System: What is your fax number? User: +420111222333. System: Would you like to include some additional information about you? User: Yes, my ICQ number is 555000555, Skype login is JohnSmith11. System: Skype is JohnSmith11, ICQ is 555000555. Do you agree? User: Yes. System: What else do you want to enter into the presentation? User: My hobbies and personal photo. ... System: What is the URI of the photograph. User: www dot flickr dot com slash smith slash myphoto dot jpg
WebGen System - Visually Impaired Users Create Web Pages
471
Fig. 2. The web page generated by WebGen system
System: URI is www.flickr.com/smith/myphoto.jpg. Is it correct? User: Yes. System: You can enter some detailed information about you or about your page. User: Welcome to my personal web page. I created it . . . System: All data has been collected. Would you like to start the dialogue for generating your presentation now? User: Yes. ...
3 Conclusions and Future Work Methods and principles used in the WebGen system as well as its dialogue interface have been discussed. At present, the system allows several types of standalone web pages (a private web page, an academic web page, an employee web page, etc.) to be generated using a dialogue. The generated web pages fulfil the WCAG recommendations. Future work is aimed at interconnecting generated web pages into the presentation and enlargement of generated presentations types like blogs, biographies, photogalleries, pages dedicated to the particular person, product information pages. Testing of the system and enhancing the dialogue strategies is another important task.
Acknowledgement The authors are grateful to James Thomas for proofreading a draft of the paper and the students and staff of the Support Center for Students with Special Needs of Masaryk
472
L. B´artek and J. Plh´ak
University for their advice, support and collaboration. This work is supported by the Grant Agency of Czech Republic under the Grant 201/07/0881.
References 1. The SeaMonkey Project, http://www.seamonkey-project.org 2. OpenCMS, the Open Source Content Management System/CMS http://www.opencms.org/ 3. WebsiteWizard, http://www.websitewizard.com/ 4. Webbie and the Accessible Programs, http://www.webbie.uk 5. Walshe, E., McMullin, B.: Browsing Web Based Documents Through an Alternative Tree Interface: The WebTree Browser. In: Proceedings of 10th International Conference on Computers Helping People with Special Needs, Linz, Austria, July 2006, pp. 106–113 (2006) 6. Kopeˇcek, I., B´artek, L.: Web Pages for Blind People – Generating Web-Based Presentations by means of Dialogue. In: Miesenberger, K., Klaus, J., Zagler, W., Karshmer, A.I. (eds.) ICCHP 2006. LNCS, vol. 4061, pp. 114–119. Springer, Heidelberg (2006) 7. HTML Techniques for Web Content Accessibility Guidelines 1.0, http://www.w3.org/TR/WCAG10-HTML-TECHS/ 8. Extensible Markup Language http://www.w3.org/XML 9. The Extensible Stylesheet Language Family (XSL), http://www.w3.org/Style/XSL/ 10. Cascading Style Sheets, http://www.w3.org/Style/CSS/ 11. The Extensible HyperText Markup Language, http://www.w3.org/TR/xhtml1/ 12. Voice Extensible Markup Language (VoiceXML) Version 2.0, http://www.w3.org/TR/voicexml20 13. Van Tichelen, L., Burke, D.: Semantic Interpretation for Speech Recognition (SISR) Version 1.0, http://www.w3.org/TR/semantic-interpretation/ 14. Speech Recognition Grammar Specification Version 1.0, http://www.w3.org/TR/speech-grammar/#S2.2.3 15. Optimsys, http://www.optimtalk.cz/ 16. Asterisk: The Open Source Telephony Platform, http://www.asterisk.org 17. VoiceGlue Documentation, http://www.voiceglue.org/documentation 18. JVoiceXML – The Open Source VoiceXML Interpreter, http://jvoicexml.sf.net 19. Official Home of publicVoiceXML, http://publicvoicexml.sourceforge.net/ 20. XHTML+Voice Profile 1.0, http://www.w3.org/TR/xhtml+voice/ 21. AlphaWorks: VoiceXML Interpreter for Firefox Tadpole Extension, http://www.alphaworks.ibm.com/tech/tadpole 22. B´artek, L., Kopeˇcek, I., Oˇslejˇsek, R.: Setting Layout in Dialogue Generating Web Pages. In: Text, Speech and Dialogue. 10th International Conference, Pilsen, Proceedings, pp. 613–620. Springer, Berlin (2007) 23. Resource Description Framework (RDF), http://www.w3.org/RDF 24. Oˇslejˇsek, R.: Ontologies for Painting via Dialogue. In: Proceedings of the 2007 International Conference on Internet Computing ICOMP 2007, pp. 385–391. CSREA Press, Las Vegas (2007)
WebGen System - Visually Impaired Users Create Web Pages
473
25. Google Image Search, http://images.google.com/ 26. Kopeˇcek, I., Rajman, M.: Project Internet for All – Creating Web Presentations and Graphics by means of a Dialogue System. In: Proceedings of the 2007 International Conference on Internet Computing ICOMP 2007, pp. 381–384. CSREA Press, Las Vegas (2007) 27. Kopeˇcek, I., Oˇslejˇsek, R.: Creating Pictures by Dialogue. In: Computers Helping People with Special Needs: 10th International Conference ICCHP 2006, pp. 61–68. Springer, Berlin (2006)