- From: David Scarratt <dscarratt@holly.com.au>
- Date: Wed, 18 Jan 2006 16:14:49 +1100
- To: www-voice@w3.org
The type 'RestrictedVariableName.datatype' in vxml-datatypes.xsd changed
from being
<xsd:restriction base="xsd:NMTOKEN">
</xsd:restriction>
(the same as for VoiceXML 2.0) in the VoiceXML 2.1 20040728 working
draft schema to
<xsd:restriction base="xsd:token">
<xsd:pattern value="([a-zA-Z]|[a-zA-Z$][a-zA-Z0-9_$]*[a-zA-Z0-9_])"/>
</xsd:restriction>
in the VoiceXML 2.1 candidate recommendation schema, but I can find no
comment about the change. It seems intended to implement some of the
additional constraints listed in the accompanying 'xsd:documentation'
section; but since the VoiceXML 2.0 specification indicates that "the
variable naming convention is as in ECMAScript", which allows Unicode
letters in names, while the new pattern apparently restricts variable
names to a subset of ASCII, it breaks backwards compatibility.
For example, the following document is a conforming VoiceXML 2.0
document, but the same document with "version='2.1'" (and correct schema
location) would not be a conforming VoiceXML 2.1 document:
<?xml version="1.0" encoding="iso8859-1"?>
<vxml version="2.0" xmlns="http://www.w3.org/2001/vxml"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3.org/2001/vxml
http://www.w3.org/TR/voicexml20/vxml.xsd">
<var name="café"/>
<form>
<block>hello</block>
</form>
</vxml>
Could someone clarify this for me?
Thanks.
--
David Scarratt
Senior Engineer, Holly Connects
david.scarratt@holly-connects.com
Received on Friday, 20 January 2006 08:19:03 UTC