Forms allow the user to provide voice or DTMF input by responding to one or more form items. The elements <field>, <subdialog>, <block>, <initial>, <record>, <transfer> and <object> are all form items.
Each field can contain one or more <prompt> elements that guide the user to provide the desired input. You can use the count attribute to vary the prompt based on the number of times that the prompt has been played.
Fields can also specify a type attribute or a <grammar> element to define the valid input values for the field, and any <catch> elements necessary to process the events that might occur. Fields may also contain <filled> elements, which specify code to execute when a value is assigned to a field. You can reset one or more form items using the <clear> element.
The <subdialog> element is similar to a function call in a traditional programming language. It can be used to gather information and return it to the form. For more information, see Subdialogs.
If your form requires prompts or computation that do not involve user input (for example, welcome information), you can use the <block> element. A <block> can also contain executable content such as <goto> or <submit>.
There are two types of form dialogs: