W3C's Speech Interface Framework

W3C is working to expand access to the Web to allow people to interact via key pads, spoken commands, listening to prerecorded speech, synthetic speech and music. This will allow any of the world's 2 billion telephones to be used to access appropriately designed Web-based services, and will be a benefit to people with visual impairments or needing Web access while keeping their hands and eyes free for other things. It will also allow effective interaction with display-based Web content in the cases where the mouse and keyboard may be missing or inconvenient.

To fulfill this goal, the W3C Voice Browser Working Group is defining a suite of markup languages covering dialog, speech synthesis, speech recognition, call control and other aspects of interactive voice response applications. Specifications such as the Speech Synthesis Markup Language, Speech Recognition Grammar Specification, and Call Control XML are core technologies for describing speech synthesis, recognition grammars, and call control constructs respectively. VoiceXML is a dialog markup language that leverages the other specifications for creating dialogs that feature synthesized speech, digitized audio, recognition of spoken and DTMF key (touch tone) input, recording of spoken input, telephony, and mixed initiative conversations.

These specifications bring the advantages of web-based development and content delivery to interactive voice response applications. Further work is anticipated on enabling their use with other W3C markup languages such as XHTML, XForms and SMIL. This will be done in conjunction with other W3C Working Groups, including the Multimodal Interaction Activity.

Some possible applications include:

VoiceXML 2.0 is designed based upon extensive industry experience for creating audio dialogs. For an introduction, here is a tutorial. Further tutorials and other resources can be found on the VoiceXML Forum Web site. W3C and VoiceXML Forum have signed a memorandum of understanding setting out mutual goals.

Based upon a small set of widely implemented extensions to VoiceXML 2.0, we anticipate an interim version of the dialog markup language called VoiceXML 2.1. These features will help developers build even more powerful, maintainable and portable voice-activated services, with complete backwards compatibility with the VoiceXML 2.0 specification. We expect to publish VoiceXML 2.1 as a small specification that describes the extensions to 2.0. The first working draft is expected to be published in September 2003. Future work on dialog markup, component of W3C's Speech Interface Framework, is described below.

The speech recognition grammar specification (SSML) covers both speech and DTMF (touch tone) input. DTMF is valuable in noisy conditions or when the social context makes it awkward to speak. Grammars can be specified in either an XML or an equivalent augmented BNF (ABNF) syntax, which some authors may find easier to deal with. Speech recognition is an inherently uncertain process. Some speech engines may be able to ignore "um's" and "aah's", and to perform partial matches. Recognizers may report confidence values. If the utterance has several possible parses, the recognizer may be able to report the most likely alternatives (n-best results).

The Speech Synthesis specification defines a markup language for prompting users via a combination of prerecorded speech, synthetic speech and music. You can select voice characteristics (name, gender and age) and the speed, volume, pitch, and emphasis. There is also provision for overriding the synthesis engine's default pronunciation.

The Voice Browser working group is collaborating with the CSS working group to develop a CSS3 module for speech synthesis based upon SSML for use in rendering XML documents to speech. This is intended to replace the aural cascading style sheet properties in CSS2. The first working draft was published in May 2003.

The semantic interpretation specification describes annotations to grammar rules for extracting the semantic results from recognition. The annotations are expressed in a syntax based upon a subset of ECMAScript, and when evaluated, yield a result represented either as XML or as a value that can be held in an ECMAScript variable. The target for the XML output is the Extensible Multimodal Annotation Markup Language (EMMA) which is being developed in the Multimodal Interaction activity.

W3C is working on a markup language called CCXML to enable fine-grained control of speech (signal processing) resources and telephony resources in a VoiceXML telephony platform. The scope of these language features is for controlling resources in a platform on the network edge, not for building network-based call processing applications in a telephone switching system, or for controlling an entire telecom network. These components are designed to integrate naturally with existing language elements for defining applications which run in a voice browser framework. This will enable application developers to use markup to perform call screening, whisper call waiting, call transfer, and more. Users can be offered the ability to place outbound calls, conditionally answer calls, and to initiate or receive outbound communications such as another call.

W3C's Speech Interface Framework work is ongoing and the W3C Voice Browser Working Group is seeking participants to develop and/or give feedback on public drafts and give suggestions for requirements and directions as well. A public mailing list is also available for public discussion at www-multimodal.

Links:

Home page for W3C's Voice Browser Activity: http://www.w3.org/Voice/
Published Technical Reports on Voice: http://www.w3.org/TR/tr-activity.html#VoiceBrowserActivity
Voice Browser FAQ: http://www.w3.org/Voice/#faq
VoiceXML tutorial: http://www.w3.org/Voice/Guide/
VoiceXML Forum: http://www.voicexml.org/