Contents Author's Note on VoiceXML 2.0 vii Preface ix Chapter 1: The Role of Voice on the Web 3 Using Sight and Sound Together Chapter 2: The Convergence of Speech and the Web 7 What Is VoiceXML? 7 Meet the Technical Parents 7 Why Merge Speech and the Web? 13 Making Voice User Interfaces Easy to Build and Use 14 Summary 14 Chapter 3: The Evolution of Web Application Architectures 15 The Good Old Days: Browsers, Servers, and Content 15 Sessions and Dynamic Content 17 GUIs, WUIs, and VUIs 18 Summary 21 Chapter 4: Simplified Personal Information Manager Example 2o Use Case Analysis 26 Object Model 30 Summary 31 Chapter 5: VoiceXML Concepts 33 VoiceXML History 33 Voice Web Browsing 35 Elements of VoiceXML 38 Summary 40 Chapter 6: Outfitting Your VoiceXML Expedition Standalone versus Hosted Development 41 Development Environment 43 VoiceXML 1.0 versus VoiceXML 2.01 44 Some Available Software Options 45 Speech Developer Accessories 46 Summary 47 Chapter 7: VoiceXML Language Tutorial 49 "Hello, World!" 49 SPIM Menu Navigation 50 SPIM Main Menu 51 Application with Multiple Dialogs 52 Visiting Documents 54 Form Handling 57 Handling Events 66 Queries and Sets 74 Telephony Features 84 Summary 85 Chapter 8: VUI Design Principles and Techniques 87 Core Principles 87 Speech Design 90 Interface Design 94 Summary 102 Chapter 9: VoiceXML Programming Guide 105 Struclure of a VoiceXML Program 105 Input and output 107 Navigation 108 Forms and Fields 109 Dialog, Document, and Application 110 Speech Recognition Grammars 111 Speech Synthesis Markup 112 Events and Handlers 114 Form Items and the Form Interpretation Algorithm 117 Mixed-Initiative Dialogs 119 Executable Content 120 Telephony 121 Platform and Performance Features 121 Summary 121 Chapter 10: Advanced VoiceXML Topics 123 Resource Fetching 123 Audit Trail 125 Accessing the Voice Gateway 126 Advanced Event Handling 129 Summary 139 Chapter 11: Overview of Related Web Technologies 143 XML 143 XSL 145 Serviet 148 JavaServer Pages 149 XML Publishing 152 Summary 155 Chapter 12: Adding VoiceXML to Web Applications 157 One Application, Multiple User Interfaces 157 Web Application Architectures 162 Summary 175 Chapter 13: The Web Application Prototype 177 Prototype Setup and Installation 178 Anatomy of the Prototype 188 Trying It Out 201 Tips for Dissecting the Prototype 203 Summary 207 Chapter 14: What's Next? 209 Changes from VoiceXML 1.0 to VoiceXML 2.0 209 Grammar and Speech Synthesis Specification 210 Reusable Dialog Components 211 Multimodal Interfaces 213 Architectural Issues 214 Summary 216 Appendix A 219 A Quick Reference to VoiceXML 1.0 Syntax 219 Index 241