| 第四节 Activation of Grammars | |
| 当解释器访问一个input item,等待输入的时候,以下的语法被激活: | |
| ·该input item的语法,包括该input item包含的元素中的语法。 | |
| ·该form的语法,包括该form包含的元素中的语法 | |
| ·该文档包含的元素中的语法,及该文档的 | |
| ·该应用根文档包含的元素中的语法,及该应用根文档的 | |
| ·平台定义的默认事件处理的语法,例如help、exit和cancel。 | |
| 如果一个输入匹配了多个激活的语法,则语法的优先权按照上面定义的顺序。如果一个输入匹配了多个激活的同一优先权的语法,则语法的优先权由文档顺序决定。当平台期待一个输入却没有任何语法激活时,平台必须抛出一个error.semantic事件,该事件在所执行的元素的环境中抛出。menu中的语法激活机制和form中的一样(见2.2.1节)。 | |
| 如果form. item的modal属性为true,则在等待输入的时候,除了该form. item的语法外,其他的语法都是失效的。如果该输入匹配了另外一个form或menu中的语法,而不是当前form或menu,则控制交给那个被匹配的语法所在的form或menu,且当前form或menu中的数据丢失。 | |
| Inputmodes property不会影响语法的激活,例如,如果inputmodes property要求输入只能是voice时,DTMF语法也会被激活,只是不能被匹配。 | |
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/12476590/viewspace-217104/ ,如需转载,请注明出处,否则将追究法律责任。