01 <html xmlns:salt="http://www.saltforum.org/2002/SALT">

02 <!-- Example electronic form (system directed) -->
03 <!-- © 2004 by Larson Technical Services -->

04 <head>
05    <!-- SALT Add-in to Internet Explorer object -->
06    <object id="SpeechTags"
07         CLASSID="clsid:33cbfc53-a7de-491a-90f3-0e782a7e347a"
08         VIEWASTEXT>
09    </object>

10 <!-- salt: Importing the namespace for the implementation -->
11    <?import namespace="salt" implementation="#SpeechTags" />
12 </head>
13 <body onload="intro.start();">

14 <!-- HTML FORM -->

15 <form id="Form1">
16    <input style = "display:none" id="iptFromCity" />
17    <input style = "display:none" id="iptToCity" />
18 </form>

19 <!-- SPEECH OUTPUT -->

20 <salt:prompt id="intro" onComplete = "askFromCity.start();">
21      Hello, welcome to the Travel Reservation Application
22 </salt:prompt>

 

23 <salt:prompt id="askFromCity" onComplete = "lsnFromCity.start();">
24      Where do you want to travel from?
25 </salt:prompt>

26 <salt:prompt id="askToCity" onComplete = "lsnToCity.start();">
27      Where do you want to travel to?
28 </salt:prompt>

29 <salt:prompt id="goodbye">
30      You chose to travel from
31      <salt:value targetelemen ="iptFromCity" targetattribute = "value"/>
32      to <salt:value targetelement = "iptToCity" targetattribute = "value"/>.
33      Your transaction has been submitted
34 </salt:prompt>

35 <salt:prompt id="progressiveHelpToCity" onComplete = "lsnToCity.start();">
36      Do you want to travel from New York, Chicago, or San Francisco?
37 </salt:prompt>

38 <salt:prompt id="progressiveHelpFromCity" onComplete = “lsnFromCity.start();”>
39      Do you want to travel to New York, Chicago, or San Francisco?
40 </salt:prompt>

41 <salt:listen id="lsnFromCity" onreco="askToCity.start();"
42      onnoreco = "progressiveHelpFromCity.start();"
43      onsilence = "progressiveHelpFromCity.start();">
44    <salt:grammar id="gram1" name="gram1">
44         <grammar version="1.0" xml:lang="en-US"
46                   xmlns="http://www.w3.org/2001/06/grammar" root="FromCity">
47              <rule id="FromCity" scope="public">
48                   <one-of>
49                        <item> New York</item>
50                        <item> Chicago</item>
51                        <item> San Francisco</item>
52                   </one-of>
53              </rule>
54         </grammar>
55    </salt:grammar>
56    <salt:bind targetelement = "iptFromCity" value="//"/>
57 </salt:listen>

 

58 <salt:listen id="lsnToCity" onreco="goodbye.start();"
59      onnoreco = "progressiveHelpToCity.start();"
69      onsilence = "progressiveHelpToCity.start();">
61      <salt:grammar id="gram2" name="gram2">
62           <grammar version="1.0" xml:lang="en-US"
63                             xmlns="http://www.w3.org/2001/06/grammar" root="ToCity">
64                <rule id="ToCity" scope="public">
65                     <one-of>
66                          <item> New York</item>
67                          <item> Chicago</item>
68                         <item> San Francisco</item>
69                    </one-of>
70                </rule>
71           </grammar>
72      </salt:grammar>

73      <salt:bind targetelement = "iptToCity" value="//"/>
74 </salt:listen>

75 </body>
76 </html>

Figure 2: Telephony application written using SALT tags. The bolded code will be replaced in Figure 3.