VoiceXML
Conformance Testing
Continued from page 2...
<?xml version="1.0" encoding="UTF-8"?>
<!-- @ Copyright 1998-2003 W3C (MIT, ERCIM, Keio),
All Rights Reserved. See
http://www.w3.org/Consortium/Legal/. @ -->
<vxml xmlns="http://www.w3.org/2001/vxml"
xmlns:conf="http://www.w3.org/2002/vxml-conformance"
version="2.0">
<var name="count" expr="1"/>
<catch>
<conf:fail expr="'event: ' + _event"/>
</catch>
<form id="exampleForm">
<conf:grammar utterance="alpha">
<conf:key name="x">
<conf:key name="a" value="valueA"/>
<conf:key name="b" value="valueB"/>
</conf:key>
<conf:key name="y" value="valueY"/>
<conf:key name="z" value="valueZ"/>
</conf:grammar>
<initial> <conf:speech value="alpha"/>
</initial>
<block>
<if cond="typeof x == 'object' &&
x.a == 'valueA' && x.b == 'valueB'">
<conf:pass/>
<else/>
<conf:fail/>
</if>
</block>
<field name="x"/>
</form>
</vxml> |
The resulting VoiceXML code is:
<?xml version="1.0"?>
<vxml xmlns="http://www.w3.org/2001/vxml"
version="2.0">
<var name="count" expr="1"
/>
<catch>
<prompt>fail</prompt>
<log>failure expression:
<value expr="'event: ' + _event"
/>
</log>
<prompt>
<value expr="'event: ' + _event"
/>
</prompt>
<exit />
</catch>
<form id="exampleForm">
<grammar type="application/srgs+xml"
root="CityNameid2917879" version="1.0">
<rule id="CityNameid2917879" scope="public">
<one-of>
<item>chicago
<tag>var x=new Object(); x.a='valueA'; x.b='valueB';
var y='valueY'; var
z='valueZ';</tag>
</item>
</one-of>
</rule>
</grammar>
<initial>
<prompt count="1">Say 'Chicago'.</prompt>
<prompt count="2">Say 'Chicago'
again.</prompt>
<prompt count="3">Say 'Chicago'
one more time.</prompt>
</initial>
<block>
<if cond="typeof x == 'object' &&
x.a == 'valueA' && x.b == 'valueB'">
<prompt>pass</prompt>
<exit />
<else />
<prompt>fail</prompt>
<exit />
</if>
</block>
<field name="x" />
</form>
</vxml>
|
Some
of the conformance tests require test scripts to be
hosted on application servers (i.e. consider a test
assertion involving the VoiceXML fetchtimeout property).
A simple web-server agnostic XML markup language called
IRCGI was developed for this purpose. The server-side
scripts can be written in IRCGI and transformed into
specific server-side scripts (i.e. Perl, JSP, etc.).
Interim Solution for Differences in Semantic Interpretation
Tags
The W3C Semantic Interpretation for Speech Recognition
has been published as a working draft. However, many
vendors have not yet supported it in their implementations.
This introduces some difficulties in that some of the
conformance tests necessarily involve semantic interpretation
tags. To enable testing on a wide variety of platforms
now, the conformance committee has been encouraging
vendors to supply versions of the test style sheet that
generate SI tags compatible with their shipping products.
So far, a couple of key vendors (IBM and Speechworks)
have responded to this request and provided style sheets.
Several more vendors are currently working to produce
their versions of the style sheet. We also support the
original ECMAScript tags generated by the original W3C
style sheet. We encourage vendors whose semantic interpretation
tags are not compatible with the ECMAScript tags to
submit style sheets to be included in the conformance
test harness. When the W3C SISR specification is ratified
and vendors begin to implement it, we will remove these
vendor customizations, as each vendor will be expected
to conform to the standard.
Test
Suite Execution
To facilitate and encourage conformance testing, the
conformance committee has implemented a testing harness
that is now available to Forum member companies for
download. The testing harness is a series of JSP pages
that allow a developer to manually run specific conformance
tests to determine whether or not the platform under
test passes the test. In addition, the test harness
implements a web-based view that allows the developer
to browse assertion tests, viewing the original test
scripts, the generated VoiceXML code, as well as various
test dependencies.
Accessing the Test Suite
The test suite is made available in two forms: online
execution directly from the VoiceXML Forum's website,
and as a downloadable package for execution in your
local environment. VoiceXML Forum members will not only
have access to the tests, but also the testing harness
itself.
A
preview version of the test suite is available now:
To run locally: download the zip file from the members
only area of http://www.voicexml.org/login.asp. You will find
the download in: Members Home > VoiceXML Forum Conformance
Committee > IR Test Suite.
To run online: go to http://cvs.voicexml.org:8282/ir
(This preview version is not password protected; future
version will require registration.)
Testing and Reporting Policy
Once a platform vendor runs the tests, test results can
be kept private or made public. Regardless, results must
be provided in the Forum's report format so customers
can easily compare. The VoiceXML Forum encourages all
vendors to make their results public; if the vendor chooses
to do so, the results can be included in the Forum's website.
Beyond 'self testing,' to obtain VoiceXML Forum certification,
a vendor must go through the certification testing process
with the Forum's testing laboratory. This process is under
development and will be available shortly. .
What's Next?
Beyond the VoiceXML 2.0 test suite, the Conformance
Committee plans to include support for the W3C Speech
Recognition Grammar Specification (SRGS) and Speech
Synthesis Markup Language (SSML). Other W3C languages
required to build portable speech applications will
be added as these standards become available.
We
also plan to develop a program for application certification
and development tool certification.
Get
Involved!
Everyone is welcome to provide feedback on the Conformance
Program; VoiceXML Forum members are welcome to join
the Conformance Committee. You can:
Provide public feedback to the mailing list
Provide modified / corrected test scripts to committee
Submit new assertions for areas not currently covered
Design and submit new test scripts to committee
If you're an application developer, ask your vendors
for their detailed test results, and require your vendors
to be certified!
References
- The VoiceXML 2.0 Implementation Report
(http://www.w3.org/Voice/2003/ir/voicexml20-ir.html).
Matt Oshry, et. al. World Wide Web Consortium. April 7, 2003.
- Voice Extensible Markup Language (VoiceXML) Version 2.0.
(http://www.w3.org/TR/2003/CR-voicexml20-20030220/). Candidate Recommendation.
W3C. February 20, 2003.
- Semantic Interpretation for Speech Recognition.
(http://www.w3.org/TR/semantic-interpretation/). Working Draft. April 1, 2003.

back
to the top

Copyright
© 2001-2003 VoiceXML Forum. All rights reserved.
The VoiceXML Forum is a program of the
IEEE
Industry Standards and Technology Organization
(IEEE-ISTO).
|