VXML 子对话框中的可选参数
Optional param in VXML subdialog
对于我们的产品,我们必须对另一个外部文件使用 VXML 子对话框,但是这个给定的子对话框的 var 元素少于我们发送的 param 元素。
这是一个例子
<subdialog ...>
<param name="Param1" expr="'1'"/>
<param name="Param2" expr="'2'"/>
...
</subdialog>
在调用者中,
<form ...>
<var name="Param1"/>
...
</form>
有没有办法在子对话框中将参数声明为可选?
非常感谢,
W3C 推荐没有提及任何关于可选参数的内容。它说的是:
- 名称:调用对象或子对话框时与此参数关联的名称。
- expr:计算与名称关联的值的表达式。
- value:将文字字符串值与名称相关联。
- valuetype:data或ref之一,默认为data;用于向对象指示与名称关联的值是数据还是 URI (ref)。这不用于因为值始终是数据。
- type:如果valuetype为ref,则URI提供的结果的媒体类型;仅与 in 的使用相关。
但是,如果您发送的参数多于您要在子对话框中使用的参数,则不会有任何问题。那些未使用的参数只会在子对话框上下文中丢失。
作为对我自己的回答,很遗憾,您不可能将比预期更多的参数传递给子对话框。
因此,我们必须传递与表单中声明的变量数量完全相同的参数。
对于我们的产品,我们必须对另一个外部文件使用 VXML 子对话框,但是这个给定的子对话框的 var 元素少于我们发送的 param 元素。
这是一个例子
<subdialog ...>
<param name="Param1" expr="'1'"/>
<param name="Param2" expr="'2'"/>
...
</subdialog>
在调用者中,
<form ...>
<var name="Param1"/>
...
</form>
有没有办法在子对话框中将参数声明为可选?
非常感谢,
W3C 推荐没有提及任何关于可选参数的内容。它说的是:
- 名称:调用对象或子对话框时与此参数关联的名称。
- expr:计算与名称关联的值的表达式。
- value:将文字字符串值与名称相关联。
- valuetype:data或ref之一,默认为data;用于向对象指示与名称关联的值是数据还是 URI (ref)。这不用于因为值始终是数据。
- type:如果valuetype为ref,则URI提供的结果的媒体类型;仅与 in 的使用相关。
但是,如果您发送的参数多于您要在子对话框中使用的参数,则不会有任何问题。那些未使用的参数只会在子对话框上下文中丢失。
作为对我自己的回答,很遗憾,您不可能将比预期更多的参数传递给子对话框。
因此,我们必须传递与表单中声明的变量数量完全相同的参数。