25 param

<param>要素はsubdialogまたはobjectへ通過させる数値を指定するために使う。HTMLの<PARAM>要素をモデルとしている。

属性:

name objectまたはsubdialogが呼び出されるとき、このパラメータに結び付く名前。
expr nameと結び付く値を計算する表現。
value nameと結び付く内部文字列値。
valuetype 1つのdataまたはref、デフォルトはdata;もし値がdataまたはref(URI)と結び付くなら、objectを指すために使われる。これは<subdialog>では使われない。
type もしvaluetypeがrefなら、URIにより渡される結果のMIMEタイプ。;<object>内の<param>の使用にのみ関連する。

正確に1つのexprまたはvalueは渡されなければならない。valuetypeとtypeの使用は、汎用で任意であるが、それらはobject指定により要求されるかもしれない。<param>が<subdialog>要素に含まれるとき、それにより指定される数値は呼び出されたsubdialog内の対話<var>要素を初期化するために使用される。<param>が<object>内に含まれるとき、パラメータデータの使用は呼び出されるobjectを指定し、かつVoiceXML指定の有効範囲の外にある。

以下は、<object>の一部として使用される<param>の使用の例である。この場合、最初の2つの<param>要素は表現(valuetype="data"の暗示)を持ち、3つ目の<param>は明白な値を持つ。そして4つ目はtext/plainのMIMEタイプを返すURIである。このデータの目的はobjectを指定することである。

 
     <object name="debit"
classid="method://www.recordings.example/prompts/credit/jesse.jar"/>
       <param name="amount" expr="document.amt"/>
       <param name="vendor" expr="vendor_num"/>
       <param name="application_id" value="ADC5678-QWOO"/>
       <param name="authentication_server" value="http://auth_svr.example"
              valuetype="ref" value="text/plain"/>
     </object>
 

次の例は<subdialog>とともに使用される<param>を示している。この場合、2つのexprはsubdialog formの有効範囲内で変数を初期化するために使用されている。呼び出し 側フォーム

 
     <form>
       <subdialog name="result" src="http://another.example/#getssn">
         <param name="firstname" expr="document.first"/>
         <param name="lastname" expr="document.last"/>
         <filled>
<submit namelist="result.ssn" \
    next="http://myservice.example/cgi-bin/process"/>
         </filled>
       </subdialog>
     </form>
 

http://another.exampleの副対話

 
     <form id="getssn">
       <var name="firstname"/>
       <var name="lastname"/>
       <field name="ssn">
         <grammar src="http://grammarlib/ssn.gram" type="application
	                     /x-jsgf"/>
         <prompt> 社会保障番号を言ってください。 </prompt>
         <filled>
          <if cond="validssn(firstname,lastname,ssn)">
            <assign name="status" expr="true"/>
            <return namelist="status ssn"/>
          <else/>
            <assign name="status" expr="false'/>
            <return namelist="status"/>
          </if>
         </filled>
       </field>
     </form>
 

<subdialog>内での<param>の使用はサーバサイドスクリプティングを使用することなくsubdialogにデータを送る方法として便利である。