VoiceXML 2.1 Development GuideHome  |  Frameset Home


<grammar>  element

The grammar element allows the developer to specify a GSL or XML recognition grammar for either voice or DTMF input.  Grammars may be defined inline (within the vxml document itself), or as a standalone, external file. For further information, see the GSL grammar Appendix and the grXML Grammar Appendix.



usage
<grammar fetchhint="(prefetch|safe)" fetchtimeout="CDATA" mode="(dtmf|voice)" root="IDREF" scope="(dialog|document)" src="URI" srcexpr="CDATA" tag-format="CDATA" type="(application/grammar-xml|text/gsl)" version="1.0" weight="CDATA" xml:base="CDATA" xml:lang="NMTOKEN" xmlns="http://www.w3.org/2001/06/grammar">


attributes
fetchhintData Type: (prefetch|safe)Default: prefetch
(Ignored attribute)
Fetchhint is used to specify when the resource should be fetched during application execution. This element is currently ignored in the VWS 2.0 voice browser. The possible values and their descriptions are:
  • prefetch : Begin the resource fetch upon initial document execution
  • safe: Only fetch the resource when it is specifically called in the application

Note that the Voxeo platform will always prefetch content, regardless of what this attribute value is set to. As such, specifying a value is somewhat redundant.
fetchtimeoutData Type: CDATADefault: 5s
(Ignored attribute)
The ‘fetchtimeout’ attribute is used to indicate how long, (in seconds or milliseconds), the interpreter should attempt to fetch the content before throwing an error.badfetch exception.
modeData Type: (dtmf|voice)Default: voice
The mode attribute specifies the mode of the grammar in question. The two values allowed for this attribute are 'voice' and 'dtmf'.
rootData Type: IDREFDefault: Optional
XML Grammars only
The root attribute defines the root rulename of the XML grammar, and is required for any inline XML grammar construct.
scopeData Type: (dialog|document)Default: Optional
The scope attribute allows the developer to specify whether the grammar will be given dialog scope or document scope. Document scoped grammars must have slotnames and return values explicitly defined in order to function properly. See the grammar documentation for additional information. If a value for this attribute is not specified, then the grammar inherits the scope of its parent element. Note that specifying a grammar 'scope' within a form-item, (such as the <field> element), will cause a fatal error.
srcData Type: URIDefault: Optional
The src attribute specifies the target URI of the grammar file. External GSL grammars referenced with the src attribute must have a pound sign and rulename appended to the end of the URI:

<grammar src=”MyGrammar.gsl#MyRuleName” type="text/gsl"/>

Inline grammars are not subject to this syntax, nor do they need an explicit src declared:


<grammar type="text/gsl">[chupacabra]</grammar>

However, inline GSL subgrammars need not referenece anything at all in the src attribute. However, the top-level rule must be prefixed by a 'period':

<grammar type="text/gsl">
        <![CDATA[
        .FULLNAME
        [NAME:d {<person_by_full_name $d>}]
       
        NAME
        (FIRSTNAME:a ?MIDDLENAME:b LASTNAME:c)
        {return(strcat($a strcat($b $c)))}
       
        FIRSTNAME
        [[matthew] {return("matthew ")}]
       
        MIDDLENAME
        [[warren]  {return("warren ")}]
       
        LASTNAME
        [[henry]  {return("henry ")}]
                        ]]>
      </grammar>


Also note that inline grammars that define slot values must be enclosed within CDATA blocks, else the application will throw a fatal error.badfetch.
srcexprData Type: CDATADefault: Optional
The srcexpr attribute evaluates to an ECMAScript value that defines the target URI. Either srcexpr or src may be specified for the element, but not both.
tag-formatData Type: CDATADefault: Nuance
The tag-format attribute allows the developer to specify the grammar tag format of an inline XML grammar construct. The only valid data type for this optional element is 'Nuance'.
typeData Type: (application/grammar-xml|text/gsl)Default: Required
The type attribute specifies the MIME type of the grammar file. Acceptable values for this attribute are 'application/grammar-xml' or 'text/gsl'. Note that unlike other voice browsers, this attribute is required in order to effectively implement a voice grammar. If left unspecified, then an error.badfetch will occur.
versionData Type: 1.0Default: 1.0
The version attribute of the grammar element, predictably enough, specifies the version of the grammar itself. This should always be set to '1.0'.
weightData Type: CDATADefault: Optional
XML Grammars only
The weight attribute specifies the increased or decreased likelihood for a particular grammar match. For instance, specifying the value as 0.8' would increase the chances that an approximate utterance would be considered a valid grammar match, while a value of '0.2' would make it highly unlikely that a match would ever be considered valid.
xml:baseData Type: CDATADefault: Optional
The URI value of the xml:base attribute denotes the base URL of the document. All relative URI’s contained in the document are derived from the base attributes value. If unspecified, then the platform assumes that the current URI is the value of the base attribute.
xml:langData Type: NMTOKENDefault: Required
The xml:lang attribute specifies the language and locale information of the grammar If omitted in GSL grammars, it will inherit this value from the document hierarchy, or ultimately from the platform default, which equates to 'en-US'. Note that this attribute is required when using XML grmmars.
xmlnsData Type: http://www.w3.org/2001/06/grammarDefault: Required
The xmlns attribute defines the grXML namespace; all tags and attributes belong to this namespace. This attribute is required when using grXML grammars, and should specify the value of "http://www.w3.org/2001/06/grammar"



shadow variables
none


parents
<choice> <field> <form> <link> <record> <transfer>


children
<rule>


code samples
<Grammar xml:lang-version-type-mode> sample
<?xml version="1.0" encoding="UTF-8"?>

<vxml version = "2.1">

<meta name="author" content="Matthew Henry"/>
<meta name="copyright" content="2005 voxeo corporation"/>
<meta name="maintainer" content="YOUR_EMAIL@HERE.COM"/>




  <form id="F1">

  <field name="F_1">
   
    <grammar xml:lang="en-US" version="1.0" type="text/gsl" mode="voice">
        [(pretty darn good)]
    </grammar>

    <prompt>
    What are the Vegas odds for Michael Jacksons face to
    completely rot by the end of this year?
    </prompt>
  </field>

  <filled>
    <prompt>
    I would have to agree with you, sir!
    </prompt>
  </filled>

</form>

</vxml>

<Grammar scope> sample
<?xml version="1.0" encoding="UTF-8" ?>

<vxml version = "2.1">

<meta name="author" content="Matthew Henry"/>
<meta name="copyright" content="2005 voxeo corporation"/>
<meta name="maintainer" content="YOUR_EMAIL@HERE.COM"/>


<form id="F1" scope="document">

    <grammar scope="document" type="text/gsl">
      <![CDATA[

      .MYRULE
      [
      [(david hasselhoff)] {<MySlot "dave">}
      ]
      ]]>
        </grammar>

  <!-- the utterance of 'david hasselhoff' anywhere in the
  application will fill this namelist-->

      <filled namelist="MySlot">
        <goto next="#F3"/>
      </filled>

    <field name="F_1">

      <grammar type="text/gsl">[(moe green)]</grammar>
      <prompt>
        Who should get the next crack at playing Hamlet ?
        His initials are d h .
      </prompt>


      </field>

      <filled namelist="F_1">
        <prompt>
          You said <value expr="F_1"/> Are you insane?
        </prompt>
        <goto next="#F2"/>
      </filled>
<!-- this empty field matching
        the form grammar's slot is required
-->

  <field name="MySlot"/>

  </form>

  <form id="F2" scope="dialog">
    <field name="F_2">
    <grammar type="text/gsl">[(george jones)]</grammar>
    <prompt> 
      Who is the biggest celebrity in germany?
    </prompt>

      <filled>
        <prompt>
          now thats just crazy talk.
        </prompt>
      </filled>
    </field>

<!-- this empty field matching
        the form grammar's slot is required
-->

    <field name="MySlot"/>


  </form>

  <form id="F3">
    <block>
      <prompt>
        Our form level grammar has been filled.
      </prompt>
    </block>
  </form>

</vxml> 




additional links
W3C 2.0 Specification
W3C SRGS 1.0 Specification
Nuance Grammar Guide


  ANNOTATIONS: EXISTING POSTS
moshe
6/7/2004 4:30 PM (EDT)
In the description of the attribute "expr," the text says:

"The expr attribute evaluates to an ECMAScript value that defines the target URI. Either expr or next may be specified for the element, but not both."

There is no attribute "next" -- this is a typo, just ignore it.
MattHenry
6/7/2004 4:49 PM (EDT)
Moshe,


I got this typo fixed in the recent Build, which will be posted by the end of the week; this should read as:

"The expr attribute evaluates to an ECMAScript value that defines the target URI. Either expr or *src* may be specified for the element, but not both".

Thanks for the catch!

~Matt
anujsharma
7/19/2004 5:18 AM (EDT)
Again a little typo!

The word *both* is still missing...
awirtz
1/26/2005 8:44 PM (EST)
If you need to track down XML syntax errors in a grXML document, you might try adding the following DOCTYPE element and using an XML validator:

<!DOCTYPE grammar SYSTEM "http://www.w3.org/TR/speech-grammar/grammar.dtd">

This tag should be placed after the <?xml?> tag and before the <grammar> tag in your document.  There is a publicly available XML validator here:

http://www.stg.brown.edu/service/xmlvalid/
safarishane
8/18/2005 6:22 PM (EDT)
It seems that what attributes are *really* required and *really* optional depend on if the grammar is used inline or not.
moshe
8/22/2005 11:13 AM (EDT)
Eloy, would you please post details -- which elements are required, and which elements are optional, if it's used inline or not?

And remember, folks -- as each release of the VoiceXML interpreter comes out, things will change. With any luck, some of our comments about discrepencies will become obsolete.
safarishane
10/25/2005 3:40 PM (EDT)
Wondering if the option "both" is allowed for the grammar attribute of mode, or if you can actually put both in there.

<grammar mode="voice dtmf"....../>
<grammar mode="both"....../>

Or, do you *have* to have seperate grammars?
steve.sax
10/25/2005 3:49 PM (EDT)
Hiya Shane,

Technically, we can use dtmf and voice entries in a SRGS grammar without specifying a 'mode' at all. However, this isn't really considered Compliant behavior. To wit, check out our most execllent code samples at the below link, which illustrates this point in greater detail:

http://docs.voxeo.com/voicexml/2.0/grxml_dtmf.htm

Steve Sax
Asier
11/24/2005 3:52 AM (EST)
Hello there,

is there a way for use a dynamic uri for a grammar?? My platform not support vxml 2.1.

Thanks in Advance,
Asier
MattHenry
11/24/2005 10:38 AM (EST)

Hello Asier,

If you are stating that you are using a VXML platform that does not support the 2.1 specification, and as such, does not support the 'srcexpr' attribute, then you might well have a good reason to switch to Voxeo. The only alternative that I see for specifying a dynamic grammar URI would be to set this on the server side, using ASP/JSP/etc.


~Matt

rnayar
7/15/2007 10:29 AM (EDT)
Hi,
I have a grammar containing long & complex text. the text is normally 4-5 words longs & words are mix of easy & complex.
I am facing lots of difficulty in speech recognition.
I am using XMl grammar format. with confidencelevel as low as 30%.
Please help, its really urgent..

appreciate ur help

thanks u so much!!!!
voxeojeff
7/15/2007 3:20 PM (EDT)
Hello there,

In order to be of further assistance, we will need you to send us debugger logs illustrating the error you are receiving with your grammar.  Also, sending us the XML output of your application, along with the grammar will help in case we need to make a test case.  Once you've sent us this information, we can go ahead and create a private account ticket for you.

Best regards,

Jeff Menkel
Voxeo Corporation
Magician
7/24/2007 11:23 AM (EDT)
Greetings....

Is there support on the Voxeo platform for "built-in" grammars? I'm working through some DTMF field entry requirements. Are there other solutions other than specifying a list of the "dtmf-?" values within a specific grammar?

Thanks for your help.

Magician
voxeojeff
7/24/2007 2:01 PM (EDT)
Hello Magician,

I've managed to pull an answer out of a hat for you, so to speak. :-)  Voxeo does indeed support certain built-in grammars.

http://docs.voxeo.com/voicexml/2.0/gslbuiltins.htm

If you're looking for one which supports dtmf input, I would suggest the built-in digits grammar, which is detailed in the link above.

Hope this helps!

Jeff Menkel
Voxeo Corporation
annuvinayak
6/4/2008 5:37 AM (EDT)
Hi,

I have used grammar tag to specify the appropriate input for a field tag. But when some characters other then the ones specified in the grammar(i.e. *) are used, the application does not indicate any problem and passes the number to the next level as shown:

<field name="userTelNo" type="number">
<grammar type="text/gsl">
[dtmf-1 dtmf-2 dtmf-3 dtmf-4 dtmf-5 dtmf-6 dtmf-7 dtmf-8 dtmf-9 dtmf-0]
</grammar>
<prompt>
Please enter your 10 digit telephone number
</prompt>
<filled>
<if cond="userTelNo.length != 10">
<goto next="#invalidLength" />
</if>
<var name="telephoneNumber" expr="userTelNo" />
<var name="password" expr="'-1'" />
<submit next="" namelist="telephoneNumber password" />
</filled>
</field>

What do i do to specify that only certain digits should be entered and if some other digits are entered then an error message is thrown?

Regards,
Annu
voxeojeremyr
6/4/2008 10:56 AM (EDT)
Hi Annu,

Yes, you certainly can do that.  In the current grammar you gave an example of, all the digits would be valid input.  An asterisk should fail and the pound sign, is normally set as a keystroke terminator.  (This can be changed with a <property> tag.  i.e. http://docs.voxeo.com/voicexml/2.0/w3cprops.htm#start)

You can catch out of grammar utterance or keypresses with a <catch event="nomatch"> or the shorthand version <nomatch>.  More information on that can be found here:
http://docs.voxeo.com/voicexml/2.0/catch.htm
http://docs.voxeo.com/voicexml/2.0/nomatch.htm

I hope this helps and happy coding.

Thanks,
Jeremy Richmond
Voxeo Support
annuvinayak
6/5/2008 4:41 AM (EDT)
Thanks for your reply Jeremy. I had used nomatch for this functionality before but somehow it slipped my mind this time. Your post helped me out :)

Also I would like to take this opportunity to say Thanks to the entire support team that you have out there. You guys are doing a great job with your quick and apt responses for all sorts of queries.

Thanks again for your help.

Regards,
Annu
annuvinayak
6/5/2008 10:59 AM (EDT)
Hi,

I tried using nomatch with the previous post as shown:

<field name="userTelNo" type="number">
<grammar type="text/gsl">
[dtmf-1 dtmf-2 dtmf-3 dtmf-4 dtmf-5 dtmf-6 dtmf-7 dtmf-8 dtmf-9 dtmf-0]
</grammar>
<prompt>
Please enter your 10 digit telephone number
</prompt>
<filled>

<nomatch>
<prompt>
Is that a number? Please try again.
</prompt>
<reprompt/>
</nomatch>

<if cond="userTelNo.length != 10">
<goto next="#invalidLength" />
</if>
<var name="telephoneNumber" expr="userTelNo" />
<var name="password" expr="'-1'" />
<submit next="" namelist="telephoneNumber password" />
</filled>
</field>

Now If I enter * as the first digit, the control goes to the nomatch loop, but if I enter some digits and then enter * then the control flows as if all correct digits were entered. Why this discrepancy?

Also I tried this
<field name="userTelNo" type="digits">
i.e. changed the type of field to digits. Now as soon as i enter * (even after entering other digits) the nomatch block is played.

It solved my purpose a bit, but not completely, I want that the 10 digit number should be taken as input and if any of its characters is not a digit(between 0 and 9) then it should play the nomatch block. Would I have to do that explicitly or do we have support for this?

Thanks in advance.

Cheers!
Annu
VoxeoDustin
6/5/2008 11:09 AM (EDT)
Hey Annu,

The digits built-in should serve your purpose, and you can simplify your application by using the length property of it. This grammar will also except both dtmf and voice input, so you won't need the inline grammar:

<field name="userTelNo" type="digits?length=10">
  <prompt>
    Please enter your 10 digit telephone number
  </prompt>

  <nomatch>
  <prompt>
    Is that a number? Please try again.
  </prompt>
    <reprompt/>
  </nomatch>

<filled>
  <var name="telephoneNumber" expr="userTelNo" />
  <var name="password" expr="'-1'" />
<submit next="" namelist="telephoneNumber password" />
</filled>
</field>

Let me know if you have any further questions.

Cheers,
Dustin
jefo12
6/18/2008 12:11 PM (EDT)
To request an appointment this week you can say today,tomorrow ,day after tomorrow or a specific day such as this Friday.you can also request the day next week such as next Friday.


<grammar type="text.gsl">
[today tomorrow dayaftertommorrow Sunday Monday Tuesday Wednesday Thursday Friday Saturday (next Sunday) (next Monday) (next Tuesday) (next Wednesday) (next Thursday) (next Friday) (next Saturday) morning afternoon evening (next appointment)]
</grammar

THE USER CAN SELECTS ANY ONE OF THE ABOVE OR HE CAN SELECT A SPECIFIC DATE SUCH AS MARCH 2ND...
HOW CAN I WRITE GRAMMAR FOR THIS PLZ SUGGEST...

PLZ GIVE ME THE VXML CODE...

voxeojohnq
6/18/2008 12:48 PM (EDT)
Hello,

It appears have already addressed this question in a private account ticket under your account "jefo12".  If you have any additional questions, please refer to the existing ticket for all of your additional inquiries relating to this issue.

Thanks,
John Quinn
Voxeo Support
jefo12
6/20/2008 12:50 AM (EDT)
<grammar type="text.gsl">
[today tomorrow (day after tomorrow) (?next Sunday) (?next Monday) (?next Tuesday) (?next Wednesday) (?next Thursday) (?next Friday) (?next Saturday) ]
</grammar>


To request an appointment this week you can say today, tomorrow ,day after tomorrow or a specific day such as this Friday.you can also request the day next week such as next Friday.plz make ur request now Such as today,tomorrow,day after tomorrow,this Friday or next Friday.

For a specific date, say date.
how should i include the grammar for date...user can also say the specific date 2nd march then how can i include that..
can i write two grammar files?.

plz give me suuggestion...
jefo12
6/20/2008 7:30 AM (EDT)

<field name="abc" type="date">
<grammar type="text.gsl">
[today tomorrow (day after tomorrow) (?next Sunday) (?next Monday) (?next Tuesday) (?next Wednesday) (?next Thursday) (?next Friday) (?next Saturday) ]
</grammar>


i want to take both date and days
can i include both builtin grammar and inline grammar like this....
plz suggest
VoxeoDustin
6/20/2008 9:39 AM (EDT)
Hey Jefo,

You can, in fact, use both built-in and inline/external grammars with VoiceXML, however only one of them will match. You may want to use the SRGS grammar I provided you before as it will allow you to match both the day and the date in the same utterance. I've reattached that grammar here in case you did not get it the first time.

Thanks,
Dustin
jefo12
6/20/2008 9:46 PM (EDT)
<?xml version="1.0" encoding="UTF-8"?>
<vxml version = "2.1">

<form id="welcome">

<field name="Phone" type="number" mode="dtmf">

  <prompt> Please enter your phone number  </prompt>

<filled>
     
<prompt> ok got it you said
          <value expr="phone"/>
    </prompt>
</filled>
</field>
</form>
</vxml>

This code is not executed it is saying some internal error...can uplz tell me why?>
voxeodamonic
6/20/2008 10:11 PM (EDT)
Hi Jefo,

I'll be happy to assist you with looking into this error.  Please allow me some time test the application and try to replicate the error in which you are experiencing.  Hopefully, we can identify why we are having a problem.  I'll update you shortly with my findings.

Thanks,

Damonic
Voxeo Support
voxeodamonic
6/20/2008 10:56 PM (EDT)
Hello,

Upon reviewing your code I've noticed a possible error within the <field> element.  You'll notice that you are using the following:

<field name="Phone" type="number" mode="dtmf">

The mode attribute is not a valid component of the <field> element.  The proper attribute that I believe you may have confused this for is the "modal" attribute.

The modal attribute is a fine tuning control for grammars within the field element.  When the modal attribute is set to false(default value) all higher scoped grammars are activated.  If set to true then only grammars within the field are activated and all other grammars are temporarily disengaged or disabled.

You may find more on this subject in our online docs at the following URL:
http://docs.voxeo.com/voicexml/2.0/field.htm

In order to allow for dtmf functionality you would utilize something like this:

  <form id="guessNumber">
    <field name="guess">
    <grammar type="text/gsl">
        [one two three four five six seven eight nine zero]
      </grammar>
    <grammar type="text/gsl">
      [dtmf-1 dtmf-2 dtmf-3 dtmf-4 dtmf-5 dtmf-6 dtmf-6 dtmf-7 dtmf-8 dtmf-9 dtmf-0]
    </grammar>

    <prompt>
      Guess what the computer is thinking! Pick a number between 0 and 9.
    </prompt>
    .
    .
    .

You can also find more about DTMF functionality at the following online documentation:
http://docs.voxeo.com/voicexml/2.0/t_8.htm

Best regards,

Damonic
Voxeo Support
jefo12
6/21/2008 12:07 PM (EDT)
Thank u for your help damonic,
here i'm facing another problem regarding the callerid validations....
i'm attaching my code here....please give me your suggestion otherwise give me a reference tutorial for that.. i'll be very much pleased if u do this favour...

<vxml>
<var name="callerid" expr="session.callerid">
<form id="welcome">
<block>
<if cond="callerid.length==10&,&amp;callerid!='restricted'&,&amp;callerid!='unknown'">
<field name="enterphone" type=digits?length=10">
<prompt>
welcome plz enter your phone no.</prompt>
<filled>
<subdialog name="checkapp" src="checkapponitment.jsp" namelist="enterphone/">
<prompt> you have the appointments on  (".....")so and so date
</prompt>
</filled>
</field>
</form>

1) An error occurs at if condition...dont know why it is?.
another important one i would like to know is....
2) if we submit this phone no to checkappointment.jsp from that send  it to database retrieve the appointments of that phone no from database and we hav to store appointments in an array in jsp.

                my question is how to store that date and timings in an array..suppose if the user has an appointment on 25th march at 10:30 how to store that in an array in checkappointment.jsp....suppose lets assume that we store that in a array.Is it possible to receive the array which is having appointment timings from jsp to the subdialog "checkapp"...

after receiving from jsp to subdialog how can i prompt all these appointments  to the user...





MattHenry
6/21/2008 2:21 PM (EDT)


Hello Jefo,

Your questions on the topic of the <if> element are being addressed in the account ticket that you opened for it, but regarding the question on how to store arrays in the JSP context is best left for JSP specific sites:

http://forum.java.sun.com/thread.jspa?threadID=580629&messageID=2941191

As to how you may read them back in the VoiceXML context, you may want to take a look at the <foreach> element:

http://docs.voxeo.com/voicexml/2.0/foreach.htm

~Matt
jefo12
6/24/2008 1:49 AM (EDT)
how to enable dynamic grammar using dtmf...



<prompt> The appointments are </prompt>


          <foreach item="applist" array="myarr">
            <prompt><value expr="applist"/><break/></prompt>
        </foreach>

//palys all the appointments the callerid has.....

<prompt> Do you want to cancelorreschedule any of those appointments say cancel or
    reschedule or
    if you want to take an new appointment say schedule..
</prompt>
If the user selects cancel...then
<prompt>To cancel any of the appointments press the corresponding dtmf button to cancel </prompt>
//how can i do this dynamiclaly....

plz suggest me.....

voxeojohnq
6/24/2008 9:06 AM (EDT)
Hey jefo,

In order to create a dynamic grammar, you must generate it using server side programming.  We have an excellent tutorial on how to create these grammars in our VoiceXML documentation.  You can read it here: http://docs.voxeo.com/voicexml/2.0/frame.jsp?page=t_16.htm  If after reading this, you still have questions, please don't hesitate to ask.

Regards,

John Quinn
Voxeo Support
archdave
7/15/2008 6:56 AM (EDT)
hello,
i'm having a small problem trying a starter vxml script. When I call i get an error saying something about the file content having an internal error. However, i have run the xml file and it is well-formed and validates perfectly. Please see below:

<?xml version="1.0" encoding="UTF-8"?>
<vxml version="2.1">

  <form>
    <block>
      <prompt>
        Things are working correctly. Congratulations.
      </prompt>
    </block>
  </form>
</vxml>


Can u pls help me on this one? I am anxious to begin full IVR devt.
Thanks in advance.
voxeojohnq
7/15/2008 7:18 AM (EDT)
Hello,

First off, your code is 100% correct.  I took at look at your application configuration, and what I think is happening here is that the server that you hosted your VoiceXML script on is not responding.  If you goto your evolution account then open the application debugger and call your application, you will be able to see the "Fetch Timeout" error that I am talking about.  If you have any further questions, please don't hesitate to ask.

Regards,

John Quinn
Voxeo Support
jefo12
9/8/2008 4:37 AM (EDT)
Hi,

Can any one suggest me how can i use freestyle grammar.means

"I would like a coca cola and three large pizzas with pepperoni and mushrooms".

how can i recognize this.. pls give me the link.
voxeoJeffK
9/8/2008 5:04 AM (EDT)
Hi,

A situation like that is best solved with a mixed initiative dialog. We have a full tutorial on them here:

http://docs.voxeo.com/voicexml/2.0/t_20.htm?search=mixed+dialog#anchor

hope that helps,
Jeff K.

login



© 2008 Voxeo Corporation  |  Voxeo IVR  |  VoiceXML & CCXML IVR Developer Site