Xml 如何仅导航到文档三次

Xml 如何仅导航到文档三次,xml,database,jsp,vxml,Xml,Database,Jsp,Vxml,我想创建一个vxml应用程序,在其中,机器要求用户输入员工代码 然后对照数据库进行检查。这只能做三次。 1) 向用户询问员工代码 2) 查找代码的对应名称 3) 如果代码无效,请要求用户重试(此操作只能执行三次) <?xml version="1.0" encoding = "UTF-8"?> <vxml version="2.1" xml:lang="en-IN" xmlns="http://www.w3.org/2001/vxml" application="lang_

我想创建一个vxml应用程序,在其中,机器要求用户输入员工代码 然后对照数据库进行检查。这只能做三次。 1) 向用户询问员工代码 2) 查找代码的对应名称 3) 如果代码无效,请要求用户重试(此操作只能执行三次)

<?xml version="1.0" encoding = "UTF-8"?> 
<vxml version="2.1" xml:lang="en-IN"  xmlns="http://www.w3.org/2001/vxml" application="lang_select.vxml">
<var name="stop" expr="stop+1"/>
<var name="count" expr="1"/>
<form id="ecode">
        <field name="employee" type="digits?minlength=04;maxlength=04">
            <prompt count="1" cond="lang=='2'">
                Please say your four digit employee code.
            </prompt>
            <prompt xml:lang="hi-IN" count="1" cond="lang=='1'">
                अपने चार अंकों कर्मचारी कोड कहिए
            </prompt>
            <prompt count="2" cond="lang=='2'">
                please try saying your four digit employee code again.
            </prompt>
            <prompt count="2" xml:lang="hi-IN" cond="lang=='1'">
                फिर से अपने चार अंकों कर्मचारी कोड कह के प्रयास करें.
            </prompt>
            <prompt count="3" cond="lang=='2'">
                Your employee code is written on your I-card. please say or enter your four digit employee code.
            </prompt>
            <prompt count="3"  xml:lang="hi-IN" cond="lang=='1'">
                आपका एंप्लायी कोड आपके ई-कार्ड पे लिखा है. अपने चार अंकों कर्मचारी कोड बोलिए या दर्ज करें.
            </prompt>
            <filled>
            <var name="inc_count" expr="count+1"/>
            </filled>
        </field>
    </form>
    <form id="retry">
        <field name="confirm" type="boolean">
            <prompt cond="lang=='2'&& count &lt; 3"> <!-- the machine will ask the user only thrice for confirmation -->
                you have entered <value expr="employee"> as your employee code. Is it correct?
            </prompt>
            <prompt cond="lang=='1' && count &lt; 3" xml:lang="hi-IN">
                 आप ने प्रवेश किया है <value expr="employee">. क्या यह सही है?
            </prompt>
            <grammar xml:lang="hi-IN" version="1.0"></grammar>
            <filled>
                <if cond="confirm=='2'">  <!-- if the user has given an incorrect employee code -->
                    <clear namelist="employee confirm"/>
                    <goto next="#ecode">
                <elseif cond="confirm=='1'"/> <!-- if the user has given correct employee code -->
                    <submit next="database.jsp" namelist="employee" method="get" /><!--<connect to database --> 
                <elseif />
                <prompt cond="lang=='2'"> the employee code you entered is invalid, please try again later.</prompt>
                <prompt cond="lang=='1'" xml:lang="hi-IN">  आपके द्वारा दर्ज कर्मचारी कोड अमान्य है, बाद में पुन: प्रयास करें.  </prompt><!--if the value of confirm is undefined --> 
                </if>
            </filled>
            <block>
                <if cond="stop=='4'">
                    <prompt cond="lang=='2'"> the employee code you entered is invalid, please try again later.</prompt>
                    <prompt cond="lang=='1'" xml:lang="hi-IN">  आपके द्वारा दर्ज कर्मचारी कोड अमान्य है, बाद में पुन: प्रयास करें.  </prompt>
                </if>
                <prompt cond="lang=='2'">  Thank you for calling! </prompt>
                <prompt cond="lang=='1'" xml:lang="hi-IN">  फोन करने के लिए धन्यवाद!  </prompt>
            </block>
        </field>    
    </form>
 </vxml>

请说出您的四位员工代码。
अपने चार अंकों कर्मचारी कोड कहिए
请尝试再次说出您的四位数员工代码。
फिर से अपने चार अंकों कर्मचारी कोड कह के प्रयास करें.
您的员工代码写在您的工卡上。请说出或输入您的四位员工代码。
आपका एंप्लायी कोड आपके ई-कार्ड पे लिखा है. अपने चार अंकों कर्मचारी कोड बोलिए या दर्ज करें.
您已输入员工代码。是否正确?
आप ने प्रवेश किया है . क्या यह सही है?
您输入的员工代码无效,请稍后再试。
आपके द्वारा दर्ज कर्मचारी कोड अमान्य है, बाद में पुन: प्रयास करें.   
您输入的员工代码无效,请稍后再试。
आपके द्वारा दर्ज कर्मचारी कोड अमान्य है, बाद में पुन: प्रयास करें.  
谢谢您的来电!
फोन करने के लिए धन्यवाद!  

您将以与示例中相同的方式计算重复次数。您将在catch块中处理所有可能的错误:无输入、无匹配和数据错误(处理无效条目的应用程序自定义事件)。大致如下:

<form>
    <catch event="nomatch noinput app.dataerror">
        <assign name="app_count" expr="app_count + 1"/> <!-- define it beforehand -->
        <if cond="app_count &lt; max_count/>">
            Please try again.
        <else/>
            Maximum number of attempts exceeded.
            <!-- Do something here -->
            <submit namelist="..." next="..."/>
        </if>
        <reprompt/>
    </catch>

    <field name="cardNumber" type="digits?length=16">
       Please enter a card number.</field>

    <subdialog name="res" namelist="cardNumber" src="..." method="post">
       <filled>
          <if cond="res.status == 'success'">
             <log> Card number input success </log>
             <submit next="..." method="post"/>
          <else/>
             <log> Card number input data error <value expr="res.status"/></log>
             <clear namelist="cardNumber res"/>
             <throw event="app.dataerror"/>
          </if>
              </filled>
      </subdialog>
</form>

请再试一次。
超过最大尝试次数。
请输入卡号。
卡号输入成功
卡号输入数据错误
您也可以添加带有计数属性的提示