IP Library Granted Patent US 7,321,856
Granted Patent B1
US 7,321,856 · App. 11/197,483 · Granted Jan 22, 2008

Handling of speech recognition in a declarative markup language

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,321,856
App. No.
11/197,483
Granted
Jan 22, 2008
Kind
B1
Abstract

Declarative markup languages for speech applications such as VoiceXML are becoming more prevalent programming modalities for describing speech applications. Present declarative markup languages for speech applications model the running speech application as a state machine with the program specifying the transitions amongst the states. These languages can be extended to support a marker-semantic to more easily solve several problems that are otherwise not easily solved. In one embodiment, a partially overlapping target window is implemented using a mark semantic. Other uses include measurement of user listening time, detection and avoidance of errors, and better resumption of playback after a false barge in.

Claims (18)

1. A method of determining an applicable list item for a command input received in list navigation of a list comprised of a sequence of list items during execution of a voice application program written in a declarative markup language using a computer system, the method comprising:

determining a current list item corresponding to the list item in the sequence of list items that is either: (a) currently being played back by the computer system; or (b) was the most recent list item already played back by the computer system;

exposing within a runtime environment of the declarative markup language a relative time corresponding to an amount of time from the start of playback of the current list item until when the command input was received;

comparing the relative time to a predetermined time corresponding to an amount of allowed target window overlap; and

selecting the applicable list item based on the comparing and the current list item.

2. The method of claim 1 , wherein the selecting comprises setting the applicable list item to the current list item when the relative time is greater than the predetermined time.

3. The method of claim 1 , wherein the selecting comprises setting the applicable list item to the current list item when the relative time is greater than or equal to the predetermined time.

4. The method of claim 1 , wherein the previous list item comprises the list item preceding the current list item in the sequence of list items and wherein the selecting comprises setting the applicable list item to the current list item when the relative time is less than or equal to the predetermined time.

5. The method of claim 4 , wherein if the current list item comprises first list item in sequence of list items, then the previous list item comprises the current list item.

6. The method of claim 1 , wherein the previous list item comprises the list item preceding the current list item in the sequence of list items and wherein the selecting comprises setting the applicable list item to the current list item when the relative time is less than the predetermined time.

7. The method of claim 1 , wherein the command input comprises a command selected from the set “that one”, “buy it”, “tell me more”, “more”, “previous”, “next”, “delete”, and “repeat”.

8. The method of claim 1 , wherein the voice application program has a corresponding executable program code and wherein the executable program code further includes at least a first markup tag for indicating that subsequent tags comprise playback of a list item, and wherein the exposing the relative time comprises setting a variable in the runtime environment to correspond to the amount of time from when the first markup tag was encountered until the command input was received by the computer system.

9. The method of claim 1 , wherein the list comprises a list of items for purchase and wherein the command input comprises a request to purchase the applicable list item.

10. A computer-usable medium having computer-readable program code embodied therein for causing a computer system to perform a method of determining an applicable list item for a command input received in list navigation of a list comprised of a sequence of list items during execution of a voice application program written in a declarative markup language using a computer system, the method comprising:

determining a current list item corresponding to the list item in the sequence of list items that is either: (a) currently being played back by the computer system; or (b) was the most recent list item already played back by the computer system;

exposing within a runtime environment of the declarative markup language a relative time corresponding to an amount of time from the start of playback of the current list item until when the command input was received;

comparing the relative time to a predetermined time corresponding to an amount of allowed target window overlap; and

selecting the applicable list item based on the comparing and the current list item.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034543/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 22, 2012
From: TELLME NETWORKS, INC.
To: MICROSOFT CORPORATION
Reel/Frame 027910/0585 →