怎么检查vxml有没有错误?
How check vxml has error?
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!-- DOCTYPE vxml SYSTEM "http://127.0.0.1:5000/voicexml1-0.dtd" -->
<vxml xmlns="http://www.w3.org/2001/vxml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.0">
<form id="dtmfForm">
<property name="inputmodes" value="dtmf"/>
<field name="dtmf">
<audio src="http://localhost/File/voicefiles/T/menu/playCatDefinition.wav"/>
<prompt>press 1</prompt>
<audio src="http://localhost/File/voicefiles/T/cats/Love.wav"/>
<prompt>press 2</prompt>
<audio src="http://localhost/File/voicefiles/T/cats/Thinking of you.wav"/>
<prompt>press 3</prompt>
<audio src="http://localhost/File/voicefiles/T/cats/Oba Nathi Da.wav"/>
<prompt>press 4</prompt>
<audio src="http://localhost/File/voicefiles/T/cats/Adareta Kiyana Katha.wav"/>
<prompt>press 5</prompt>
<audio src="http://localhost/File/voicefiles/T/cats/Akamatththa.wav"/>
<prompt>press 6</prompt>
<audio src="http://localhost/File/voicefiles/T/cats/Sorry.wav"/>
<prompt>press 7</prompt>
<audio src="http://localhost/File/voicefiles/T/cats/Birthday.wav"/>
<prompt>press 8</prompt>
<audio src="http://localhost/File/voicefiles/T/cats/Annivesary.wav"/>
<prompt>
go to next step press 0
</prompt>
<grammar mode="dtmf" root="digit">
<rule id="digit" scope="public">
<one-of>
<item>0</item>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item>5</item>
<item>6</item>
<item>7</item>
<item>8</item>
<item>9</item>
</one-of>
</rule>
</grammar>
<if cond="dtmf=='9'">
<goto next="http://localhost/myApp/resteasy/service/msisdn/7777?greetingCatagory='dtmf'"/>
<else />
<goto next="http://localhost/myApp/resteasy/service/msisdn/7777?greeting='dtmf'"/>
</if>
</field>
</form>
<nomatch>
No Match! I'm sorry, I didn't understand you. Could you please try that again?
<reprompt />
</nomatch>
<noinput>
No Input! I'm sorry, I didn't hear anything. Could you please try that again?
<reprompt />
</noinput>
</vxml>
考虑这个 vxml 任何错误在这个如何检查 vxml 有错误。如何,我解决它?这个 vxml 中包含什么样的错误,有时转到 <goto next={url}/>
这一步其他代码不起作用。此代码中的错误是什么? How to manage time next step go to.. 我正在寻找合适的答案?
谢谢。
<goto>
元素不能在 <field>
里面,它负责从用户那里收集信息。它应该移至 <filled>
负责解释。结构如下:
<form>
<field>
<grammar>...</grammar>
</field>
<filled>
<goto ...
</filled>
</form>
VoiceXML 文档验证可以针对 VoiceXML DTD 在您发布的代码中完成 <goto>
并且 <if>
元素是 VoiceXML 中的内容称为可执行内容,可执行内容只能包含在以下元素中:
<block>
<catch>
<error>
<help>
<noinput>
<nomatch>
<if>
<filled>
所以在您的页面中,<if>
元素位于错误的元素内。
在线(语音)XML 验证可以使用 W3C 站点上的 validator 完成,直接根据 W3C 验证程序验证您的文档会出现以下错误:
Line 57, Column 25: document type does not allow element "if" here;
missing one of "catch", "help", "noinput", "nomatch", "error",
"filled" start-tag
为了进行正确的 DTD 验证,您需要在 VoiceXML 文档的开头添加有效的 DOCTYPE,例如语音XML 2.1 DOCTYPE如下:
<!DOCTYPE vxml PUBLIC "-//W3C//DTD VOICEXML 2.1//EN" "http://www.w3.org/TR/voicexml21/vxml.dtd">
.
Voximal 集成了一个名为 vxmlvalidator 的命令行工具。
如果您安装了 Voximal 包,您可以使用它来验证 VoiceXML 2.0 和 2.1 标准文档。
root@192:~# vxmlvalidator http://demo.ulex.fr/vxml/index.vxml
------------------------------------------------------------------------------
.
VALID: http://demo.ulex.fr/vxml/index.vxml
TIME PROCESSING: 213697
PAGES PARSED: 1 (4.67952 p/s)
无论您使用的是脚本语言还是静态 vxml,您都必须 运行 浏览器中的页面才能看到您得到的 xml 输出。
它会告诉你是否有任何 ecmascript/xml 错误。
即使 xml 输出是正确的,你也必须仔细检查所有标签。
有时 vxml 服务器不会给您正确的错误信息。
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!-- DOCTYPE vxml SYSTEM "http://127.0.0.1:5000/voicexml1-0.dtd" -->
<vxml xmlns="http://www.w3.org/2001/vxml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.0">
<form id="dtmfForm">
<property name="inputmodes" value="dtmf"/>
<field name="dtmf">
<audio src="http://localhost/File/voicefiles/T/menu/playCatDefinition.wav"/>
<prompt>press 1</prompt>
<audio src="http://localhost/File/voicefiles/T/cats/Love.wav"/>
<prompt>press 2</prompt>
<audio src="http://localhost/File/voicefiles/T/cats/Thinking of you.wav"/>
<prompt>press 3</prompt>
<audio src="http://localhost/File/voicefiles/T/cats/Oba Nathi Da.wav"/>
<prompt>press 4</prompt>
<audio src="http://localhost/File/voicefiles/T/cats/Adareta Kiyana Katha.wav"/>
<prompt>press 5</prompt>
<audio src="http://localhost/File/voicefiles/T/cats/Akamatththa.wav"/>
<prompt>press 6</prompt>
<audio src="http://localhost/File/voicefiles/T/cats/Sorry.wav"/>
<prompt>press 7</prompt>
<audio src="http://localhost/File/voicefiles/T/cats/Birthday.wav"/>
<prompt>press 8</prompt>
<audio src="http://localhost/File/voicefiles/T/cats/Annivesary.wav"/>
<prompt>
go to next step press 0
</prompt>
<grammar mode="dtmf" root="digit">
<rule id="digit" scope="public">
<one-of>
<item>0</item>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item>5</item>
<item>6</item>
<item>7</item>
<item>8</item>
<item>9</item>
</one-of>
</rule>
</grammar>
<if cond="dtmf=='9'">
<goto next="http://localhost/myApp/resteasy/service/msisdn/7777?greetingCatagory='dtmf'"/>
<else />
<goto next="http://localhost/myApp/resteasy/service/msisdn/7777?greeting='dtmf'"/>
</if>
</field>
</form>
<nomatch>
No Match! I'm sorry, I didn't understand you. Could you please try that again?
<reprompt />
</nomatch>
<noinput>
No Input! I'm sorry, I didn't hear anything. Could you please try that again?
<reprompt />
</noinput>
</vxml>
考虑这个 vxml 任何错误在这个如何检查 vxml 有错误。如何,我解决它?这个 vxml 中包含什么样的错误,有时转到 <goto next={url}/>
这一步其他代码不起作用。此代码中的错误是什么? How to manage time next step go to.. 我正在寻找合适的答案?
谢谢。
<goto>
元素不能在 <field>
里面,它负责从用户那里收集信息。它应该移至 <filled>
负责解释。结构如下:
<form>
<field>
<grammar>...</grammar>
</field>
<filled>
<goto ...
</filled>
</form>
VoiceXML 文档验证可以针对 VoiceXML DTD 在您发布的代码中完成 <goto>
并且 <if>
元素是 VoiceXML 中的内容称为可执行内容,可执行内容只能包含在以下元素中:
<block>
<catch>
<error>
<help>
<noinput>
<nomatch>
<if>
<filled>
所以在您的页面中,<if>
元素位于错误的元素内。
在线(语音)XML 验证可以使用 W3C 站点上的 validator 完成,直接根据 W3C 验证程序验证您的文档会出现以下错误:
Line 57, Column 25: document type does not allow element "if" here; missing one of "catch", "help", "noinput", "nomatch", "error", "filled" start-tag
为了进行正确的 DTD 验证,您需要在 VoiceXML 文档的开头添加有效的 DOCTYPE,例如语音XML 2.1 DOCTYPE如下:
<!DOCTYPE vxml PUBLIC "-//W3C//DTD VOICEXML 2.1//EN" "http://www.w3.org/TR/voicexml21/vxml.dtd">
.
Voximal 集成了一个名为 vxmlvalidator 的命令行工具。
如果您安装了 Voximal 包,您可以使用它来验证 VoiceXML 2.0 和 2.1 标准文档。
root@192:~# vxmlvalidator http://demo.ulex.fr/vxml/index.vxml
------------------------------------------------------------------------------
.
VALID: http://demo.ulex.fr/vxml/index.vxml
TIME PROCESSING: 213697
PAGES PARSED: 1 (4.67952 p/s)
无论您使用的是脚本语言还是静态 vxml,您都必须 运行 浏览器中的页面才能看到您得到的 xml 输出。 它会告诉你是否有任何 ecmascript/xml 错误。 即使 xml 输出是正确的,你也必须仔细检查所有标签。
有时 vxml 服务器不会给您正确的错误信息。