已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VoiceXML手册陈光 2008-10-142.2 MenuMenu2.3 Form项2.3.1 Field元素一个field表示要从用户获取的一个输入项。Field元素的属性如表9所示Name在dialog范围内,用于保存输入结果的一个form项变量。命名在form内必须是唯一的,否则在载入文档时会抛出BadFetch异常。命名须遵守5.1节的变量命名规范。ExprForm项变量的初始值。默认为ECMAScript未定义的。如果被初始化为一个值,那么除非该form项变量被清空,否则该form项不会被访问。Cond一个表达式,该表达式的值转换为boolean值后须为真,使得form项可以被访问。如果没有指定该属性,该form项也可以被访问。TypeField的类型,即内置语法类型的名称(见附录P)。内置语法类型的平台支持是可选的,如果指定的内置类型不被平台所支持,会抛出error.unsupported.builtin事件。Slot用于populate该变量的grammar slot名称(缺省和变量名称相同)。如果使用的语法可以返回slot/value对的集合,并且slot名称与变量名称不同时,可以使用这个属性。Modal若为假(缺省值),在获取变量值时所有的活动语法都被打开;若为真,仅仅此field的语法被使用,其它语法临时禁用。表9 属性元素的影子变量如表10所示,其中name即为field变量的名称。Utterance, inputmode和interpretation影子变量的值必须和application.lastresult$中的值相同。(参见5.1.5节)Name$.utterance识别出的原始单词字符串。具体表示方法和拼写是平台特定的(比如可能是“五百三十”、“530”、“five hundrend thirty”)。如果是DTMF语法,此变量包含匹配的数字串。Name$.inputmode用户输入模式:DTMF或者语音。Name$.interpretation一个ECMAScript变量。包含了3.1.5节中所描述的解释。Name$.confidenceName field的信度,取值从0.0至1.0。有的平台使用utterance信度(application.lastresult$.confidence的值)作为name$.confidence。field信度和utterance信度之间的区别是平台特定的。更多关于信度取值的解释,依赖于具体的平台,因为不同平台可能有不同的计算方法。表10 影子变量 使用显式语法的field显式语法可以使用一个URL指定,该URL可以是绝对或者相对的。 What is your favorite ice cream? 语法也可以内联(inline)指定,比如使用一个W3C ABNF语法: What is your favorite flavor? Say one of vanilla, chocolate, or strawberry. #ABNF 1.0; $options = vanilla | chocolate | strawberry 如果同时使用了grammar的src属性和内联语法,则会抛出error.badfetch。 平台特定的内置显式语法对内置资源(比如语音语法、DTMF语法和音频文件)的平台支持是可选的。可通过平台特定的URIs来访问这些资源,比如“http:/localhost:5000/grammar/boolean”,或者通过平台特定的模式来访问,比如常用的“built-in”模式:builtin:grammar/boolean。如果一个平台支持访问内置资源,那么它也应该支持基本的内置语法(见附录P),比如:其中第一个使用内置的boolean语音语法,第二个使用内置的boolean DTMF语法。通过定义 Prompt for builtin grammar,和下面的平台特定内置语法具有相同的效果 Prompt for builtin grammar其中sample是基本的内置field类型(boolean、date等)之一。另外,平台特定的内置URI模式可以用以访问特定解释器上下文支持的语法。推荐在平台特定的语法名称前加“-x”,因为这个命名空间在以后的版本中不会被使用。平台特定的内置语法例子: 使用选项列表的field当一个field的合法输入是一个简单的可选项的集合时,使用可选项列表比使用语法要更为方便。一个可选项列表即元素中的一组元素集合,每个元素包含了用于生成语音语法的PCDATA,这和2.2.5节中元素的语法生成方法相同。可以使用属性来为每个选项指定一个DTMF序列,或控制赋给form项变量的值。当一个选项被选中,value属性就决定了该field的影子变量和application.lastresult$的值。下面的field提供给用户三个选择,并将选中的选项的value属性的值赋予maincourse变量。 Please select an entree. Today, we are featuring swordfish roast beef frog legs 对话流程如下:C: Please select an entree. Today, were featuring swordfish; roast beef; frog legs.H: frog legsC:(assigns chicken to maincourse, then submits maincourse=chicken to /maincourse.cgi)下面的例子演示了在form的catch元素中,的正确和不正确的用法。该form中有几个包含元素的fields。 We need a few more details to complete your order. Which color? red blue green Which size? small medium large How many? Thank you. Your order is being processed. Your options are . 对话场景:C: We need a few more details to complete your order. Which color?H: help. (throws help event caught by form-level )C: Your options are red, blue, green.H: red.C: Which size?H: 7 (throws nomatch event caught by form-level )C: Your options are small, medium, large.H: small.在上面的步骤中,form级的catch元素中的有一些要枚举的东西,即在“color”和“size”元素中的元素。然而对于下一个就不同了:C: How many?H: a lot. (throws nomatch event caught by form-level )这时会引起一个“error.semantic”事件,因为在“quantity”中没有任何可以供列举的。解决方法是在“quantity”中添加一个field级的: Please say the number of items to be ordered.这样nomatch事件就在局部被捕获,从而可以完成对话:C: Please say the number of items to be ordered.H: 50C: Thank you. Your order is being processed元素在2.2.4节有详细讨论。元素的属性包括Dtmf一个可选的DTMF序列”,它和简单的DTMF语法或者用于识别DTMF序列的DTMF属性(6.3.3节)作用相同。和DTMF语法不一样的是,空格是可选的,dtmf=”123#”和dtmf=”1 2 3 #”是等价的。如果没有指定此属性,则没有和该选项对应的DTMF序列,即本选项不能和DTMF序列匹配。Accept当设为“exact”时(缺省),元素定义了要识别的短语的精确文本;设为“approximate”时,元素定了要识别的近似的文本。(2.2.5节)Value当用户选中该选项时(通过DTMF或者语音),赋予field变量的字符串值。默认值是元素的CDATA,去掉开头和结尾的空格。如果没有该值,则使用DTMF序列代替,如果CDATA和DTMF序列都没有指定,那么缺省值不确定,field变量不会被赋值。表11 属性使用并不和同时使用相抵触,field变量的结果将从这两种“语法”中获取,就好象在一个中有两个元素,分别表示不同的选择。2.4 Filled元素指定了要执行的行为,条件是某种输入项的组合被赋值。它可能发生在两个地方:作为元素的子元素,或作为输入项的子元素。作为的子元素时,可用于在一个或多个输入项被赋值后执行某种动作。比如下面的元素对出发城市和到达城市进行检查,以保证两者不同。 What is the starting city? What is the ending city? You cant fly from and to the same city. 如果元素出现在一个输入项中,它指定了该输入项被赋值后要执行的动作。 What is the city? Note, Novosibirsk service ends next year. 在每次捕获用户输入后,所有的输入项都被赋值,然后解释器按照文档的顺序查找每一个元素(输入项中的和form中的并无优先权区别)。那些和用户输入匹配的会被依次执行,直到结束,或者有转移控制,或者抛出某种事件。属性包括:ModeAll(缺省)或者any。如果是any,则用户最后的输入可以为任意一个输入项赋值后,就会执行行为。如果是all,则必须所有输入项都被赋值,且至少有一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/CPFIA 0006-2022含聚谷氨酸复合肥料
- T/CMES 20024-2025船用泵机械密封振动试验方法
- T/CSAE 446.2-2025车用再生塑料使用规范 第2部分:聚丙烯(PP)材料
- 2026年建筑施工工程师资格考试试题及答案
- T/TMAC 167-2025大型铝电解槽槽壳及上部结构安装制作工艺要求
- T/UNP 146-2024化妆品舒缓功效评价技术规范
- T/UNP 382-2024建筑基础工程施工验收技术规范
- 2026年低压电工试题附参考答案(完整版)
- 2026年高级电工考试题及答案
- 2026年化妆品原料考试试题及答案解析
- 2026年10月自考08119管理会计高频考点重点
- 2型糖尿病防治指南(2026版)
- 2026事业单位工勤技能-湖南-湖南垃圾清扫与处理工二级(技师)历年参考题库含答案详解
- IPC 7621 2025 中文版 电子组件低压注塑包封设计应用指南
- 江苏省安全员c2模拟试题及答案
- 海上风电基础施工作业指导书
- 2025年AHA心肺复苏指南
- 2026年中国石油化工集团校园招聘面试题库
- 电梯的维保服务要求规范标准
- 电力系统消防培训
- 2025年医疗科技创新计划发展研究报告
评论
0/150
提交评论