<?xml version="1.0" encoding="ISO-8859-1" ?>
<grammar version="1.0" xmlns="http://www.w3.org/2001/06/grammar"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://www.w3.org/2001/06/grammar
                             http://www.w3.org/TR/speech-grammar/grammar.xsd"
 xml:lang="th-TH" mode="dtmf" root="_digits">

<!--
      Copyright 2012 Nuance Communications, Inc.
      All Rights Reserved.
      
      DTMF digits grammar
 -->

   <meta name="swirec_simple_result_key" content="MEANING"/>
   <meta name="swirec_compile_parser" content="1"/>
      
   <rule id="_digits" scope="public">
      <item>
      <ruleref uri="#DIGIT_STRING"/>
      <tag>
       	  SWI_meaning=DIGIT_STRING.SWI_literal.replace(/ /g, '');
    	  var min_len = SWI_vars.minlength ? parseInt(SWI_vars.minlength, 10) : 1;
    	  var max_len = SWI_vars.maxlength ? parseInt(SWI_vars.maxlength, 10) : 20;
    	  var len = SWI_meaning.length;
    	  if (len &gt; max_len || len &lt; min_len) SWI_disallow=1;
    	  if (SWI_vars.length) 
          {
    	    var disallow = 1;
    	    var allowed_arr = SWI_vars.length.split ('+');
    	    for (i=0; i &lt; allowed_arr.length; i++) 
            {
    	      if (len == parseInt(allowed_arr[i], 10)) 
              {
                disallow = 0;
                break;
    	      }
            }
               SWI_disallow = disallow;
    	   }
           MEANING=SWI_meaning;
      </tag>
      </item>
   </rule>
      
   <rule id="DIGIT_STRING">
      <item repeat="1-">
         <ruleref uri="#DIGIT"/>
      </item>
   </rule>
      
   <rule id="DIGIT">
      <one-of>
         <item>
            0 
         </item>
         <item>
            1 
         </item>
         <item>
            2 
         </item>
         <item>
            3 
         </item>
         <item>
            4 
         </item>
         <item>
            5 
         </item>
         <item>
            6 
         </item>
         <item>
            7 
         </item>
         <item>
            8 
         </item>
         <item>
            9 
         </item>
      </one-of>
   </rule>

</grammar>

