- VoiceXML
VoiceXML (VXML) is the W3C's standard
XML format for specifying interactive voice dialogues between a human and a computer. It allows voice applications to be developed and deployed in an analogous way to HTML for visual applications. Just as HTML documents are interpreted by a visual web browser, VoiceXML documents are interpreted by avoice browser . A common architecture is to deploy banks of voice browsers attached to the Public Switched Telephone Network (PSTN) so that users can use a telephone to interact with voice applications.Usage
Many commercial VoiceXML applications have been deployed, processing millions of telephone calls per day. These applications include: order inquiry, package tracking, driving directions, emergency notification, wake-up, flight tracking, voice access to email, customer relationship management, prescription refilling, audio newsmagazines, voice dialing, real-estate information and national
directory assistance applications.VoiceXML has tags that instruct the
voice browser to providespeech synthesis , automaticspeech recognition , dialog management, and audio playback. The following is an example of a VoiceXML document:When interpreted by a VoiceXML interpreter this will output "Hello world" with synthesized speech.
Typically,
HTTP is used as the transport protocol for fetching VoiceXML pages. Some applications may use static VoiceXML pages, while others rely on dynamic VoiceXML page generation using anapplication server like Tomcat,Weblogic , IIS, orWebSphere . In a well-designed web application, the voice interface and the visual interface share the same back-end business logic.Historically, VoiceXML platform vendors have implemented the standard in different ways, and added proprietary features. But the VoiceXML 2.0 standard, adopted as a W3C Recommendation
16 March 2004 , clarified most areas of difference. The VoiceXML Forum, an industry group promoting the use of the standard, provides aconformance testing process that certifies vendors implementations as conformant.Related standards
The W3C's Speech Interface Framework also defines these other standards closely associated with VoiceXML.
SRGS and SISR
The
Speech Recognition Grammar Specification (SRGS) is used to tell the speech recognizer what sentence patterns it should expect to hear: these patterns are called grammars. Once the speech recognizer determines the most likely sentence it heard, it needs to extract the semantic meaning from that sentence and return it to the VoiceXML interpreter. This semantic interpretation is specified via theSemantic Interpretation for Speech Recognition (SISR) standard. SISR is used inside SRGS to specify the semantic results associated with the grammars, i.e., the set of ECMAScript assignments that create the semantic structure returned by the speech recognizer.SSML
The
Speech Synthesis Markup Language (SSML) is used to decorate textual prompts with information on how best to render them in synthetic speech, for example which speech synthesizer voice to use, when to speak louder or softer.PLS
The
Pronunciation Lexicon Specification (PLS) is used to define how words are pronounced. The generated pronunciation information is meant to be used by both speech recognizers and speech synthesizers in voice browsing applications.CCXML
The
Call Control eXtensible Markup Language (CCXML) is a complementary W3C standard. A CCXML interpreter is used on some VoiceXML platforms to handle the initial call setup between the caller and the voice browser, and to provide telephony services like call transfer and disconnect to the voice browser. CCXML can also be used in non-VoiceXML contexts such as teleconferencing.History
AT&T ,IBM , Lucent, andMotorola formed the VoiceXML Forum in March 1999, in order to develop a standard markup language for specifying voice dialogs. By September 1999 the Forum released VoiceXML 0.9 for member comment, and in March 2000 they published VoiceXML 1.0. Soon afterwards, the Forum turned over the control of the standard to the World Wide Web Consortium. [http://www.voicexml.org/tutorials/intro2.html VoiceXML Forum Tutorial on VoiceXML] 2003] The W3C produced several intermediate versions of VoiceXML 2.0, which reached the final "Recommendation" stage in March 2004. [http://www.infoworld.com/article/04/03/17/HNvxml_1.html W3C recommends VoiceXML 2.0] InfoWorld, Ephraim Schwartz, March 17, 2004][http://www.w3.org/TR/voicexml21/ VoiceXML 2.1] added a relatively small set of additional features to VoiceXML 2.0, based on feedback from implementations of the 2.0 standard. It is backward compatible with VoiceXML 2.0 and reached W3C Recommendation status in June 2007. [http://www.w3.org/TR/voicexml21 http://www.w3.org/TR/voicexml21] Voice Extensible Markup Language (VoiceXML) 2.1]
Future versions of the standard
*VoiceXML 3.0 will be the next major release of VoiceXML, with new major features. It will use a new XML statechart description language called
SCXML .ee also
*
CCXML - Call Control eXtensible Markup Language
*ECMAScript - the scripting language used in VoiceXML
*OpenVXI - an open source VoiceXML interpreter
*OpenVXML - an open source VoiceXML GUI Application Designer
*Voiceglue - an open source VoiceXML implementation based onOpenVXI andAsterisk (PBX)
*Pronunciation Lexicon Specification (PLS)
*SCXML - State Chart XML
*SISR - Semantic Interpretation for Speech Recognition
*SRGS - Speech Recognition Grammar Specification
*SSML - Speech Synthesis Markup LanguageReferences
External links
* [http://www.w3.org/Voice/ W3C's Voice Browser Working Group] , Official VoiceXML Standards
* [http://www.voicexml.org VoiceXML Forum] , VoiceXML Trademark Holder
* [http://www.vxmldirectory.com VoiceXML Solutions Directory] , List of VoiceXML products and services
* [http://www.dmoz.org/Computers/Data_Formats/Markup_Languages/XML/Applications/VoiceXML/ DMOZ Open Directory Listing - VoiceXML]
* [http://www.vxml.org/ VoiceXML tutorials]
* [http://jvoicexml.sourceforge.net/ An Open Source VoiceXML interpreter for JAVA]
Wikimedia Foundation. 2010.