<?xml version="1.0" encoding="utf-8"?>
<ui-config>
<!--
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
-->
<component name="mortgage-type" summary="Specify the mortgage type"
           path="META-INF/tags/rdc/mortgage-type.tag">

    <input-params>
       <param name="id" value="some-name" required="true"  rtexprvalue="false" visible="1" description="Component ID">
		  This specifies the id of the rdc component. 
	    </param>
	     <param name="minTerm" value="[0-9]{1,2}Y(fixed|adjustable)" required="false" rtexprvalue="true" visible="1" description="Minimum acceptable mortgage type">
		The minimum mortgage type constraint. Any mortgage type lesser than this mortgage type will be treated as invalid and
		will be rejected.Value is a number like 10YFixed.
	    </param>
	    <param name="maxTerm" value="[0-9]{1,2}Y(fixed|adjustable)" required="false" rtexprvalue="true" visible="1" description="Maximum acceptable mortgage type">
		The maximum mortgage type constraint. Any mortgage type greater than this mortgage type will be treated as invalid and
		will be rejected.Value is a number like 30YFixed . 
	    </param>
        <param name="locale" value="[language](-[country])?" required="false" rtexprvalue="true" visible="2" description="RDC Locale">
        The Locale to which the grammar(s) and default configuration chosen for this component will belong to.
        Default is en-US.
        </param>	    
	    <param name="initial" value="[0-9]{1,2}Y(fixed|adjustable)" required="false" rtexprvalue="true" visible="2" description="Default value of mortgage type">
		 This specifies the initial default value of mortgage type.
		 If not specified, the user will not be able to select a default value.
	     </param>
	     <param name="confirm" value="true/false" required="false" rtexprvalue="true" visible="1" description="Confirmation option">
		 If confirm is true, it asks a user for confirmation of the value, else it does not.
		 Default is no confirmation.
	     </param>
	     <param name="maxNoInput" value="[0-9]*" required="false" rtexprvalue="true" visible="2" description="Graceful exit on noinput">
         Maximum number of client side &lt;noinput&gt; events before this RDC gracefully exits with MAX_NOINPUT exitStatus.
         Never exit by default.
         </param>
         <param name="maxNoMatch" value="[0-9]*" required="false" rtexprvalue="true" visible="2" description="Graceful exit on nomatch">
         Maximum number of client side &lt;nomatch&gt; events before this RDC gracefully exits with MAX_NOMATCH exitStatus.
         Never exit by default.
         </param>
	    <param name="echo" value="true/false" required="false" rtexprvalue="true" visible="1" description="Playback options">
		  If echo is true, the value is played back to the user, else it is not.
		  Default is no echo.
     	</param>
	    <param name="config" value="xxx-cfg.xml" required="true" rtexprvalue="true" visible="1" description="Configuration file for the component">
	       This specifies the location of the  configuration file 
	       used to customize interaction beahvior of this instance. Customizations include prompts, properties etc
           (see configuration section for details).
	      Default is to use a  pre-packaged configuration.
	    </param>
	    <param name="numNBest" value="[0-9]*" required="false" rtexprvalue="true" visible="2" description="Maximum number of N-best values requested">
	      This specifies the maximum number of N-Best mortgage type values requested.
	      Default is 1 value.
        </param>
	    <param name="minConfidence" value="[0-9][0-9].[0-9]*F" visible="2" required="false" rtexprvalue="true" description="Minimum confidence value of the recognised output">
	      This specifies the minimum confidence score of an utterance for it to be considered in the NBest list.
	      Default is 40.0F.
	    </param>
	    <param name="submit" value="self-URI" required="false" rtexprvalue="true" visible="0" description="Location where results are submitted">
	      This specifies the URL to which the component should submit its results.
          The default is to submit to the originating page that instantiated the component.
	    </param>
	    <param name="subdialog" value="true/false" required="false" rtexprvalue="true" visible="1" description="Subdialog option">
          If subdialog is true, the RDC value will be returned to the calling dialog using
          the VoiceXML return statement. Default value is false.
          The value of the RDC must be serialized according to a standard public contract so 
          meaningful deserialization can take place in the host dialog (or caller).
        </param>
       </input-params>
       <output-params>
	   <param name="id of this component" description="Variable that holds  the mortgage type specified by the user">
		Variable that holds the mortgage type specified by the user.
		 Thus, if the component is invoked with an id value of "start", then variable $start holds the value collected by the component. 
         </param>
      </output-params>
   </component>
   <config>
    <input>
      <property-list>
        <property name="incompletetimeout"  value="1s"/>
        <property name="completetimeout"  value="1s"/>
      </property-list>
      <prompt-list>
          <prompt>What kind of mortgage would you like? <break time="small"/>
                  For example, you could say fixed thirty years with no points.
           </prompt>
      </prompt-list>
      <help-list>
        <help>
          <prompt> Please specify the complete mortgage type. </prompt>
        </help>
        <help>
          <prompt> For instance, say 20 year fixed . </prompt>
        </help>
      </help-list>
      <noinput-list>
        <noinput>
          <prompt>I did not hear you speak the mortgage type.</prompt>
        </noinput>
        <noinput>
          <prompt>Could you please repeat the mortgage type?</prompt>
        </noinput>
        <noinput>
          <prompt>I appear to be having trouble hearing you. 
          Waiting for you to say the mortgage type. </prompt>
        </noinput>
      </noinput-list>
      <nomatch-list>
        <nomatch>
          <prompt>I did not hear you speak the mortgage type. </prompt>
        </nomatch>
        <nomatch>
          <prompt>Please repeat the  mortgage type.</prompt>
        </nomatch>
      </nomatch-list>
    </input>
    <confirm>
      <property-list>
        <property name="incompletetimeout" value="1s"/>
        <property name="completetimeout" value="1s"/>
      </property-list>
      <prompt-list>
        
          <prompt>I think you said #{model.utterance}. Is that
        right? </prompt>
      </prompt-list>
      <help-list>
        <help>
          <prompt>To accept mortgage type, say yes. To change your mind, say no.</prompt>
        </help>
      </help-list>
      <noinput-list>
        <noinput>
          <prompt>If mortgage type is acceptable say yes otherwise say no. </prompt>
        </noinput>
      </noinput-list>
      <nomatch-list>
        <nomatch>
          <prompt>If mortgage type is acceptable say yes otherwise say no. </prompt>
        </nomatch>
      </nomatch-list>
      <reject>
      <prompt-list>
        <prompt>OK, lets try again. What was that mortgage type?</prompt>
      </prompt-list>
    </reject>
    </confirm>
    <validate>
      <handler errorCode="635463">
        <prompt>There is no default or initial mortgage type supplied.
        </prompt>
      </handler>
      <handler errorCode="1">
        <prompt>The mortgage type you specified, #{model.utterance}, is
        not valid.</prompt>
      </handler>
      <handler errorCode="2">
        <prompt>Please choose a shorter mortgage type.</prompt>
      </handler>
      <handler errorCode="3">
        <prompt>Please choose a longer mortgage type.</prompt>
      </handler> 
    </validate>
    <echo>
      <property-list>
        <property name="universals" value="all"/>
      </property-list>
      <prompt-list>
        <prompt>OK, #{model.utterance}. Got it.</prompt>
      </prompt-list>
    </echo>
   </config>

</ui-config>
