System and method for implementing a natural language user interface
AssigneeResearch In Motion Limited
InventorsMihal Lazaridis, Michael Brown
Life of this patent
Estimating the term…
Abstract
A system and method for implementing a natural language user interface includes a plurality of software applications, a means for entering text, and a natural language search engine. The natural language search engine is configured to receive an abbreviated textual command from the text entering means, match the abbreviated textual command with a desired application command, and launch one of the software applications by executing the desired application command.
Claims42
An interface system, comprising:
- a plurality of software applications;
- a means for entering text;
- and
- a natural language search engine configured to receive an abbreviated textual command from the text entering means, match the abbreviated textual command with a desired application command, and launch one of the software applications by executing the desired application command.
An interface system for a hand-held device, comprising:
- a plurality of software applications;
- and
- means for receiving an abbreviated textual command, for matching the abbreviated textual command with a desired application command, and for launching one of the software applications by executing the desired application command.
An interface system for a hand-held device, comprising:
- a plurality of software applications;
- a plurality of keys;
- and
- a natural language search engine configured to identify a key stroke combination from the plurality of keys while any of the software applications are executing, match the key stroke combination with a desired application command, and launch another one of the software applications by executing the desired application command.
An interface system for a hand-held device, comprising:
- a plurality of software applications;
- a home screen;
- means for entering text that can be accessed by a user either from the home screen or while any of the software applications are executing;
- a natural language database that stores a data set of abbreviated textual commands and associated application commands;
- and
- a natural language search engine configured to receive an abbreviated textual command from the text entering means, to match the abbreviated textual command with a desired application command using the natural language database, and to launch one of the software applications by executing the desired application command.
A method for launching a software application, comprising the steps of:
- entering an abbreviated textual command into a hand-held device;
- receiving the abbreviated textual command in a natural language search engine;
- matching the abbreviated textual command with a desired application command;
- and
- executing the desired application command.
A method of launching a software application, comprising the steps of:
- entering an abbreviated textual command into a hand-held device;
- receiving the abbreviated textual command in a natural language search engine;
- searching a natural language database that contains a historical log of previously entered abbreviated textual commands and their associated application commands;
- analyzing the historical log to determine if the abbreviated textual command has previously been associated with a probable application command more than a set percentage of the time, and if so, setting the probable application command as a desired application command;
- and
- executing the desired application command.
A method for executing software commands in a hand-held device, comprising the steps of:
- entering an abbreviated textual command;
- searching a natural language database that stores a data set of abbreviated textual commands and associated application commands to determine if the abbreviated textual command has an exact match in the data set;
- if the abbreviated textual command has an exact match in the data set, then setting the exact match as a user command;
- if the abbreviated textual command does not have an exact match in the data set, then analyzing a user's historical preferences to determine if the abbreviated textual command has a probable match in the data set;
- if the abbreviated textual command has a probable match in the data set, then setting the probable match as the user command;
- if the abbreviated textual command does not have a probable match in the data set, then presenting a list of possible commands to the user, receiving a command choice from the user, and setting the command choice as the user command;
- and
- executing the user command.
A method for launching a software application in a hand-held device, comprising the steps of:
- displaying a home screen that includes an icon ribbon having a plurality of icons;
- providing a user with the option of selecting one of the icons or entering an abbreviated textual command;
- if the user selects one of the icons, then executing an application command associated with the icon;
- and
- if the user enters an abbreviated textual command, the receiving the abbreviated textual command in a natural language search engine, matching the abbreviated textual command with a desired application command, and executing the desired application command.
Dependencies are inferred from the claim text.