W3C home > Mailing lists > Public > www-voice@w3.org > January to March 2006

Variable name type change in VoiceXML 2.1 CR

From: David Scarratt <dscarratt@holly.com.au>
Date: Wed, 18 Jan 2006 16:14:49 +1100
Message-ID: <43CDCEC9.9020204@holly.com.au>
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 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 30 October 2006 12:49:01 GMT