W3C home > Mailing lists > Public > public-xg-htmlspeech@w3.org > October 2011

Re: Speech-enabled form filling example

From: Olli Pettay <Olli.Pettay@helsinki.fi>
Date: Thu, 27 Oct 2011 13:57:47 +0300
Message-ID: <4EA9392B.7050808@helsinki.fi>
To: Charles Hemphill <charles@everspeech.com>
CC: public-xg-htmlspeech@w3.org
On 10/27/2011 09:24 AM, Charles Hemphill wrote:
> Hi Everyone,
>
> On the last call I mentioned that we have an example that shows
> speech-enabled form filling. This is a 60-second Flash demo at
> http://www.everspeech.com/demos/FormFillingAnnotated/.

Trying to find a machine with Flash installed ;)


>
> A few quick notes:
>
> ·This is only one of many possible approaches for interacting with a
> speech-enabled form.
>
> ·This demo addresses a commercial rather than a consumer application
> with the focus on direct, rapid data entry with high accuracy.
>
> ·The user’s hands are busy operating equipment while entering data.
>
> ·This demo is approaching 10 years old and has gone through several
> implementation approaches.
>
> ·This started with a JavaScript API and has morphed into a fully
> declarative tag-based API.
>
> ·Tags are used for the <input type=”text”> boxes to associate the
> appropriate grammars.
>
> ·Grammars are activated/deactivated by the User Agent as focus changes.
>
> ·Most other elements require no modification, but it is possible to
> influence vocabulary and pronunciation as needed.
>
> ·I apologize in advance for this demo if you’re a vegetarian!
>
> The “Day 2 Procedure” page has a good sampling of HTML elements. The
> markup for “Kidney Fat” follows:
>
>                         <label  for="KIDNEY_FAT_id">Kidney Fat</label>
>
>                         <evsp:grammar  src="evsp:GrmInteger?min=0;max=0;minDec=2;maxDec=2"  type="application/srgs+xml">
>
>                             <input  type="text"  size="6"  maxlength="4"
>
>                                           name="KIDNEY_FAT"  id="KIDNEY_FAT_id"  value=""
>
>                                           onchange="validateField(this, true);"  />
>
>                         </evsp:grammar>
>
> This is obviously isomorphic to approaches that we’ve discussed. The
> grammar here is builtin/generated, but could be any SRGS. The JavaScript
> here is for text-input validation and could be removed given HTML5
> validation mechanisms.
>
> We also support the “for” attribute to relate a grammar to an <input>
> tag given an ID. The wrapping approach supports a direct association.
> When cut-and-paste is used, this avoids bugs if a developer forgets to
> match the value of the “for” attribute with the new ID. This also keeps
> symmetry with the existing <label> tag so developers can always know
> that the “for” attribute is optional with wrapping.
>
> This is a relatively simple, yet fully useful example. The point is that
> many cases can be covered with a declarative tag. The most recent
> proposals support this approach, but there was a desire to see a use case.
>
> We have more complex Web applications that are also fully declarative
> from a markup perspective. The JavaScript used to change visibility and
> focus for the GUI naturally affects the current speech context. No extra
> code is needed to track a state model or keep speech in synch with the GUI.
>
> Of course more can be done with a JavaScript speech API, but it gets
> relatively complex quickly and is needed much less than one might think.
>
> Best regards,
>
> Charles
>
Received on Thursday, 27 October 2011 10:58:42 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Thursday, 27 October 2011 10:58:43 GMT