性格决定命运 气度左右格局 拼搏方能取胜 谦虚才会进步
IVR-2 [Voice XML规范详细描述7]
上一篇 /
下一篇 2008-03-25 10:08:52
/ 个人分类:做着
| 第三节 Scope of Grammars | |
| |
| input item的语法的作用域为包含该input item的元素。即只有该input item在FIA的选定阶段被选定时,它包含的语法才会被激活。包含在input item中的<grammar>不能指定scope属性,否则抛出error.badfetch事件。 |
|
| <link>元素中的语法的作用域为包含该<link>元素的元素。因此,如果该<link>元素是在应用根文档中,则该语法在该应用所有加载的文档中都是激活的。包含在<link>元素中的<grammar>不能指定scope属性,否则抛出error.badfetch事件。 |
|
| <form>元素的语法的作用域为dialog。因此只有用户在该form中时,语法才是激活的。如果此时<grammar>元素的scope属性值为document,则当用户在该文档中时,该语法也是激活的。如果<grammar>元素的scope属性值为document,且该文档为应用根文档,则无论用户在该应用加载的哪一个文档中,这些语法都是激活的。有两种方式可以使form中的语法的作用域为document:一种是指定<form>元素的scope属性为document,另一种是指定<grammar>元素的scope属性为document。如果两个元素都指定了scope属性,则以<grammar>元素中指定的为准。 |
|
| <menu>元素中的语法默认作用域为dialog,只有用户在该<menu>元素中,它的语法才被激活。但是也可以指定这些语法的作用域为document,使它们在整个文档中都是激活的。如果该文档是应用根文档,则语法在该应用所有加载的文档中都是激活的。在<choice>元素中的<grammar>元素不能指定它的scope属性,否则抛出一个error.badfetch事件。 |
|
| 有时候,form可能需要一些语法在整个文档中都激活,而另一些语法只有在该form中激活,这样做的目的是最大限度的减少语法叠交的问题。如果<grammar>元素的scope属性值和form的scope属性值不同,应该单独指定自己的scope属性值。 |
|
<?xml version="1.0" encoding="UTF-8"?> <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"> <form. scope="document"> <grammar type="application/srgs"> #ABNF 1.0; language en-gb; mode voice; root $command; public $command = one | two | three; </grammar> <grammar type="application/srgs" scope="dialog"> #ABNF 1.0; language en-gb; mode voice; root $command2; public $command2 = four | five | six; </grammar> </form> </vxml> |
| |
导入论坛
引用链接
收藏
分享给好友
推荐到圈子
管理
举报
TAG: