|Publication number||US7679534 B2|
|Application number||US 10/866,634|
|Publication date||16 Mar 2010|
|Filing date||10 Jun 2004|
|Priority date||4 Dec 1998|
|Also published as||CA2537934A1, CA2537934C, CN1707409A, CN1707409B, EP1665078A1, EP1665078A4, EP2498190A2, US20050017954, WO2005036413A1, WO2005036413A8|
|Publication number||10866634, 866634, US 7679534 B2, US 7679534B2, US-B2-7679534, US7679534 B2, US7679534B2|
|Inventors||David Jon Kay, Ethan R. Bradford, Pim van Meurs, Peter C. Peddie|
|Original Assignee||Tegic Communications, Inc.|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (205), Non-Patent Citations (90), Referenced by (143), Classifications (17), Legal Events (6)|
|External Links: USPTO, USPTO Assignment, Espacenet|
This application is a continuation-in-part of the following application, and claims the benefit thereof in accordance with 35 USC 120: U.S. application Ser. No. 10/176,933, filed Jun. 20, 2002, entitled “Explicit Character Filtering of Ambiguous Text Entry.” The '933 application was a continuation-in-part of U.S. application Ser. No. 09/454,406, filed on Dec. 31, 1999. The '933 application also claimed the benefit under 35 USC 119 of U.S. Provisional Application No. 60/110,890 which was filed on Dec. 4, 1998. The present application also claims the benefit under 35 USC 119 of U.S. Provisional Application No. 60/504,240, which was filed on Sep. 19, 2003. The entirety of the foregoing applications is hereby incorporated herein by reference.
1. Technical Field
The invention relates to user entry of information into a system with an input device.
More particularly, the invention relates to contextual prediction of intended user inputs and actions.
2. Description of the Prior Art
For many years, portable computers have been getting smaller and smaller. The principal size-limiting component in the effort to produce a smaller portable computer has been the keyboard. If standard typewriter-size keys are used, the portable computer must be at least as large as the keyboard. Miniature keyboards have been used on portable computers, but the miniature keyboard keys have been found to be too small to be easily or quickly manipulated by a user. Incorporating a full-size keyboard in a portable computer also hinders true portable use of the computer. Most portable computers cannot be operated without placing the computer on a flat work surface to allow the user to type with both hands. A user cannot easily use a portable computer while standing or moving.
In the latest generation of small portable computers, called Personal Digital Assistants (PDAs), companies have attempted to address this problem by incorporating handwriting recognition software in the PDA. A user may directly enter text by writing on a touch-sensitive panel or screen. This handwritten text is then converted by the recognition software into digital data. Unfortunately, in addition to the fact that printing or writing with a pen is in general slower than typing, the accuracy and speed of the handwriting recognition software has to date been less than satisfactory. Also, there are memory constraints. Recognition software often needs more memory than is available on the device. This is especially true with such devices as mobile telephones.
Presently, a tremendous growth in the wireless industry has spawned reliable, convenient, and very popular mobile communications devices available to the average consumer, such as cell phones, two-way pagers, PDAs, etc. These handheld wireless communications and computing devices requiring text input are becoming smaller still. Recent advances in two-way paging, cellular telephones, and other portable wireless technologies have led to a demand for small and portable two-way messaging systems, and especially for systems which can both send and receive electronic mail (“e-mail”). Some wireless communications device manufacturers also desire to provide to consumers devices with which the consumer can operate with the same hand that is holding the device.
Prior development work has considered use of a keyboard that has a reduced number of keys. As suggested by the keypad layout of a touch-tone telephone, many of the reduced keyboards have used a 3-by-4 array of keys. Each key in the array of keys contains multiple characters. There is therefore ambiguity as a user enters a sequence of keys, since each keystroke may indicate one of several letters. Several approaches have been suggested for resolving the ambiguity of the keystroke sequence, referred to as disambiguation.
One suggested approach for unambiguously specifying characters entered on a reduced keyboard requires the user to enter, on average, two or more keystrokes to specify each letter. The keystrokes may be entered either simultaneously (chording) or in sequence (multiple-stroke specification). Neither chording nor multiple-stroke specification has produced a keyboard having adequate simplicity and efficiency of use. Multiple-stroke specification is inefficient, and chording is complicated to learn and use.
Other suggested approaches for determining the correct character sequence that corresponds to an ambiguous keystroke sequence are summarized in the artide “Probabilistic Character Disambiguation for Reduced Keyboards Using Small Text Samples,” published in the Journal of the International Society for Augmentative and Alternative Communication by John L. Arnott and Muhammad Y. Javad (hereinafter the “Arnott article”). The Arnott article notes that the majority of disambiguation approaches employ known statistics of character sequences in the relevant language to resolve character ambiguity in a given context.
Another suggested approach based on word-level disambiguation is disclosed in a textbook entitled Principles of Computer Speech, authored by I. H. Witten, and published by Academic Press in 1982 (hereinafter the “Witten approach”). Witten discusses a system for reducing ambiguity from text entered using a telephone touch pad. Witten recognizes that for approximately 92% of the words in a 24,500 word dictionary, no ambiguity will arise when comparing the keystroke sequence with the dictionary. When ambiguities do arise, however, Witten notes that they must be resolved interactively by the system presenting the ambiguity to the user and asking the user to make a selection between the number of ambiguous entries. A user must therefore respond to the system's prediction at the end of each word. Such a response slows the efficiency of the system and increases the number of keystrokes required to enter a given segment of text.
H. A. Gutowitz, Touch-Typable Devices Based on Ambiguous Codes and Methods to Design Such Devices, WO 00/35091 (Jun. 15, 2000) discloses that the design of typable devices, and, in particular, touch-type devices embodying ambiguous codes presents numerous ergonomical problems and proposes some solutions for such problems. Gutowitz teaches methods for the selection of ambiguous codes from the classes of strongly-touch-typable ambiguous codes and substantially optimal ambiguous codes for touch-typable devices such as computers, PDA's, and the like, and other information appliances, given design constraints, such as the size, shape and computational capacity of the device, the typical uses of the device, and conventional constraints such as alphabetic ordering or Qwerty ordering.
Eatoni Ergonomics Inc. provides a system called WordWise, (Copyright 2001 Eatoni Ergonomics Inc.), adapted from a regular keyboard, and where a capital letter is typed on a regular keyboard, and an auxiliary key, such as the shift key, is held down while the key with the intended letter is pressed. The key idea behind WordWise is to choose one letter from each of the groups of letters on each of the keys on the telephone keypad. Such chosen letters are typed by holding down an auxiliary key while pressing the key with the intended letter. WordWise does not use a vocabulary database/dictionary to search for words to resolve ambiguous, unambiguous, or a combination thereof entries.
Zi Corporation advertises a next word prediction, eZiText(R) (2002 Zi Corporation), but to our knowledge does not anywhere suggest the presentation of multiple predictions, or the reorder of selection lists to give precedence to words matching context.
Other next word production systems that are known include iTAP, which is offered by Motorola's Lexicus division (http://www.motorola.com/lexicus/), and the adaptive recognition technology offered by AIRTX (http://www.airtx.com/).
Disambiguating an ambiguous keystroke sequence continues to be a challenging problem. For example, known approaches to disambiguation focus primarily upon completion of a partially entered sequence, and not upon predicting an as yet unentered sequence. Further, the user context is not typically taken into account when disambiguating an entered sequence, nor does the disambiguation of an entered sequence result in the taking of an action on behalf of a user, but rather merely focuses on the completion and display to a user of an intended sequence.
It would be advantageous to provide an approach to processing user inputs that results in predicting an as yet unentered sequence. Further, it would be advantageous to provide an approach in which the user context is taken into account when disambiguating an entered sequence. Additionally, it would be advantageous to provide an approach in which the disambiguation of an entered sequence results in the taking of an action on behalf of a user.
The invention concerns user entry of information into a system with an input device. A scheme is provided in which an entire word that a user wants to enter is predicted after the user enters a specific symbol, such as a space character. If the user presses an ambiguous key thereafter, rather than accept the prediction, the selection list is reordered. For example, a user enters the phrase “Lets run to school. Better yet, lets drive to “.””” After the user presses the space, after first entering the second occurrence of the word “to,” the system predicts that the user is going to enter the word “school” based on the context in which the user has entered that word in the past. Other predictions may be available if the user had previously entered text with the same context (for example, “to work”, “to camp”). These predictions are presented if the user presses the “next” key; the key specified for scrolling through the list. Should the user enter an ambiguous key after the space, then a word list is reordered to give precedence to the words that match context. For example, if the user presses the ambiguous key that contains the letters ‘a’, ‘b’, and ‘c’, the word “camp” is given precedence in the list.
The invention can also make predictions on other forms of context, such as the person to whom the message is sent, the person writing the message, the day of the week, the time of the week, etc.
Other embodiments of the invention contemplate anticipation of user actions, as well as words, such as a user action in connection with menu items, or a user action in connection with form filling.
User actions or inputs can affect the automatic changing of the device's state based on context. For example, the system might use context to change a mobile telephone from ‘ring’ to ‘vibrate’, during the time that the calendar shows that the user is in a meeting. Another embodiment uses location context to increase the mobile telephone volume when the user is outside or when the telephone detects high levels of background noise.
In another embodiment, the system learns the user habits. For example, based on the learned user action, the system is able to offer services to the user that the user may not be aware of.
In another embodiment, word prediction is based on the previous word context (bigram context), but might also use the previous ‘n’ words (trigram context, etc).
The invention concerns user entry of information into a system with an input device. A scheme is provided in which an entire word that a user wants to enter is predicted after the user enters a specific symbol, such as a space character. If the user presses an ambiguous key thereafter, rather than accept the prediction, the selection list is reordered. For example, a user enters the phrase “Lets run to school. Better yet, lets drive to “.””” After the user presses the space, after first entering the second occurrence of the word “to,” the system predicts that the user is going to enter the word “school” based on the context in which the user has entered that word in the past. Other predictions may be available if the user had previously entered text with the same context (for example, “to work”, “to camp”). These predictions are presented if the user presses the “next”. key; the key specified for scrolling through the list. Should the user enter an ambiguous key after the space, then a word list is reordered to give precedence to the words that match context. For example, if the user presses the ambiguous key that contains the letters ‘a’, ‘b’, and ‘c’, the word “camp” is given precedence in the list.
The invention can also make predictions on other forms of context, such as the person to whom the message is sent, the person writing the message, the day of the week, the time of the week, etc.
In another embodiment of the invention, rather than explicitly define the context parameters, such as sender/recipient/email/SMS/reply/forward/new email etc, the system is passed a series of parameters by the device which may or may not be relevant and the system learns which of the parameters are relevant for prediction and which ones are not.
In other embodiments of the invention, prediction may go beyond words and predict phrases. Prediction also may depend on grammar, semantics etc.
Other embodiments of the invention contemplate anticipation of user actions, as well as words and phrases, such as a user action in connection with menu items, or a user action in connection with form filling.
In further embodiments, the knowledge gained from user patterns can be uploaded/downloaded and/or served from a server allowing this information to be shared between devices and applications.
For purposes of the discussion herein, with regard to the contextual completion of words, the term ‘Next Word Prediction’ (NWP) means, inter alia:
Predictions are made when the context in the current message matches the context in text the user previously entered. The concept of context can be very general. Context can mean the nature of the text entered. Context can also be combined with other contexts, such as, for example:
Finally, the prediction system might not know what the most important factors are for context, e.g. are they:
A further embodiment starts with a very broad set of possible factors and performs on-the-fly factor analysis of the user behavior to determine the most effective factor to include as context. This system does more than adapt to user behavior based on a priori specified factors, such as text, recipient, author, day, that are recorded, but is also intelligent enough to determine which factors are most important and emphasize those. This allows for better prediction.
Another example of prediction contemplated by the invention is based upon time of day. For example, when entering a message “let's meet for” at lunchtime, the word “lunch” is automatically predicted as the next word in the phrase. Later in the day the word “dinner” is predicted. The phrases stored also can have time of day associated with them as one of their attributes. This can be used to decide which phrases are relevant when the user is entering text.
Prediction of User Actions
Prediction can also be applied to other concepts as well, such as menus and user actions. When a user clicks a menu, the context module is provided with a keyword for that menu as the preceding context word. The context module then produces the entries previously selected from that menu because they are in the context database as entries preceded by that keyword, and those words can be re-ordered to the top of the menu. When a menu entry is selected, the context module then automatically notes it as having occurred with the menu tag as context for re-ordering to the front next time.
For example, when the user clicks the “Edit” menu, the context module is provided “Edit:” as context. If the last time a user clicked “Edit” the user chose “Find,” then “Find” is shown at the front of the menu. If the user moves past that to “Replace,” then a use of “Replace” in the context of “Edit:” is marked, so that the next time the user selects the “Edit” menu, “Replace” becomes the first entry, followed by “Find” and the other less-frequently used entries.
Note that for cell phones with limited screen space, moving commonly used entries to the front of a menu can make them immediately visible when they otherwise are not visible without scrolling.
In one embodiment, learning is used, in simple case context and reorder, to predict the next macro-level user interface (UI) behavior the user is expected to perform. Instead of reordering menus based on past usage, the normal menu format is superceded entirely by reordering immediate options for the next state/application the user is expected to go to, and the most likely option can be performed automatically, if desired.
For example, consider the situation where the system knows that whenever a user is n the settings mode on the phone, and they are choosing an input method or language, they are very likely to move next to their favorite messaging application. Then, instead of presenting the user with the normal menu tree to get to the messaging application, the system:
The last option would be “go to standard menu tree.” This way, the user is presented with the most likely next end state, rather than the most likely behavior directly from here, which in a normal phone would be going back to the menu tree. The user does not have to navigate a menu tree at all, but rather has one click (or no click) to go to the next task.
Additional embodiments of the invention apply to contexts that, for example pose any of the following questions:
Form filling is another useful function performed by the invention. Context sensitivity by field attribute, e.g. date only predicts months, day switches to numeric mode etc. This can similarly be applied to form input. The browser, or other form-input software, can provide the prompt for the input cell as context for text entry of the cell. Thus, for example, when a form prompts for “Name:” the user's name is available with few to no keystrokes, and other names he might fill in on forms are also made easier to enter.
Implementation of Contextual Word Prediction in Tegic T9 Technology
The herein disclosed next word prediction invention has been applied to Tegic Corporation's T9 technology (see www.tegic.com and www.t9.com). T9 technology combines the groups of letters found on each key of an input device, e.g. each phone key, with a fast-access dictionary of words, and recognizes what a user wants to input as text as he types. T9 offers the most commonly-used word for every key sequence entered by default and then lets the user access other choices with one or more presses of the NEXT or space key.
A block diagram of a preferred embodiment of a reduced keyboard disambiguating system hardware for a T9 implementation of the invention is provided in
It should be appreciated and understood by one of ordinary skill in the art that the discussion herein applies to symbols and sequences of symbols, which, when combined, make an object or part of an object. A typical example of a symbol is a character in any language, such as a letter, digit, punctuation mark, or any other symbol from a language. A typical example of an object or part of an object is a word or part of a word. However, the discussion herein equally applies to Japanese kana and Korean jamos. Also, it should be noted that the objects do not have to be linguistic, as the claimed disambiguating system herein can be used to predict icons, phone numbers, or inventory records, as long as a type of symbolic string representation is present. Therefore, it should be appreciated that use of the terms such as letter, word, word stem, and the like are not limited to only those applications, and are used to facilitate ease of reading and understanding the discussion herein.
For purposes of the discussion herein, T9 systems comprise at least three components:
Alphabetic T9 and Chinese T9 implementations can include the following supplemental databases:
When the user enters an active key sequence, Alphabetic T9 checks its databases (LDB, UDB, CDB, and MDB) for words that match the key sequence.
The Alphabetic T9 selection list is designed to provide the words a user most likely desires, based on 1) how frequently the user enters the word, 2) how common the word is in the language and 3) the previous context in which the keys were entered, so that the words appear at the beginning of the selection list.
The relative order of selection-list items depends on which databases are enabled and which features, such as selection list reordering and word completion and word prediction, are enabled.
The first word in Alphabetic T9's selection list is active by default. The term active word refers to the currently active selection-list word.
An example of the selection list order is given below. It is assumed that keys have been entered and no T9 database or database features are disabled.
When the user accepts the active word by moving the cursor off the word (pressing keys that correspond to the T9 key values T9KEYRIGHT, or T9KEYLEFT) Alphabetic T9:
When the user accepts the active word by entering a space (pressing keys that correspond to the T9 key value T9KEYSPACE) Alphabetic T9 performs the actions above, as well as the following actions:
Alphabetic T9 creates a selection list of predicted words. The maximum number of predicted words in the selection list depends on the literal value of the #define constant T9MAXCDBMATCHES. Unless a different value is assigned, this constant is set to 6.
The user selects and accepts a predicted word using the same process used in T9 for selecting and accepting a word. After the user accepts a predicted word (310), Alphabetic T9 processes the word (312). It will be appreciated by those skilled in the art that the invention may be applied to other disambiguation systems than T9, as well as other forms of T9 than Alphabetic T9.
The following discussion describes how to implement and operate an Alphabetic T9 Context Database (CDB). A CDB contains information on recently entered words. Alphabetic T9 uses this information to include predicted and completed words in the selection list. Whereas Alphabetic T9 checks its other databases only for words that match the current active key sequence, Alphabetic T9 also checks the CDB for the most recently accepted word, i.e. the most recently entered non-active word. CDB words do not necessarily have to match the active word to be included in the selection list. For predicted words, which appear in the preferred embodiment only when there is no active key sequence, the CDB match depends on the word before the active word. For completed CDB words, the match depends on both the word before the active word and the key sequence of the active word.
If Alphabetic T9 finds in the CDB the word the user has entered, Alphabetic T9 suggests the word that immediately follows in the CDB as a predicted word. For example, if the CDB contains the word pair “text message” and the user enters the word “text” and then presses the Space key, Alphabetic T9 places “message” in the selection list as a predicted word.
Also, if Alphabetic T9 finds in the CDB the word the user has entered, Alphabetic T9 suggests the word that immediately follows in the CDB as a completed word if the word matches the active key sequence, although the completed word contains additional characters. For example, if the CDB contains the word pair “text message” and the user enters the word “text,” adds a space, and then enters the key sequence 6-3-7-7, which corresponds to the first four letters in the word “message”, Alphabetic T9 places “message” in the selection list as a completed word.
In the preferred embodiment, CDB word completion operates independently of UDB custom-word completion, LDB word completion, and MDB word completion.
Implementing a CDB
To implement an Alphabetic T9 CDB, the integration layer should:
The implementation process described above assumes the CDB is stored in non-volatile memory and that CDB data are copied to RAM before activating CDB operations. If a different storage model is used, some of the steps above may not apply.
Allocating Persistent Memory
The integration layer must allocate persistent memory to store the CDB. When the integration layer activates CDB operations by calling T9AWCdbActivate, it copies the CDB from persistent memory to RAM. The database is referenced as an instance of the CDB Data Structure (T9AWCdbInfo).
Activating CDB Operations
If there is no existing CDB, e.g. the first time CDB operations are activated on the device, the integration layer must initialize all T9AWCdbInfo structure fields values to 0. If the integration layer has copied an existing CDB from persistent memory to RAM, it should not modify any T9AWCdbInfo structure field values.
The integration layer activates CDB operations by calling T9AWCdbActivate. When the integration layer calls this function, it provides a pointer to an instance of the C D B Data Structure (T9AWCdbInfo) for which it has allocated memory.
After the integration layer has activated enabled CDB operations, Alphabetic T9 automatically searches the CDB. The type of information Alphabetic T9 searches the CDB for depends on whether there is an active key sequence:
A CDB's size is indicated by the value of T9AWCdbInfo.wDataSize. The wDataSize field indicates the total size of T9AWCdbInfo. This includes the data area, where CD B data are stored, several related variables used by T9, and any structure-padding bytes added by the compiler environment.
If T9's Function API is used, it is not necessary to set the value of T9AWCdbInfo.wDataSize directly. Instead, the size of the CDB data area is provided as an argument to the function T9AWCdbActivate. While handling the function, T9 sets the value of T9AWCdbInfo.wDataSize.
One can make the CDB area as large wanted, but it must be at least T9MINCDBDATABYTES bytes. It is recommended, however, that the CDB be 1800*T9SYMBOLWIDTH bytes in size.
Resetting the CDB
When the integration layer activates CDB operations, Alphabetic T9 ensures the integrity of the database by:
If Alphabetic T9 detects a problem, it resets the CDB, which deletes all CDB data. This process occurs without any action by the integration layer, and Alphabetic T9 does not notify the integration layer that the CDB has been reset. The integration layer can explicitly reset the CDB by calling T9AWCdbReset. Under most circumstances, the integration layer does not need to call this function.
Indicating the Integration Layer Writes Data to the CDB
If the CDB is stored in a memory area that Alphabetic T9 cannot write to, the integration layer must write data to the database. Also, one may wish to have the integration layer write data to the CDB if it is desired to monitor what is written to the database or maintain a shadow copy of the CDB in non-volatile storage.
The integration layer informs Alphabetic T9 that it writes data by calling T9AWSetCdbWriteByOEM.
After the integration layer calls this event, Alphabetic T9 requests that the integration layer write data by calling T9REQCDBWRITE. If it is no longer necessary for the integration layer to write data to the CDB, the integration layer calls T9AWClrCdbWriteByOEM to indicate that Alphabetic T9 can write data directly.
Disabling Next-Word Prediction
When CDB operations are activated, T9 by default provides predicted words, i.e. words the user may want to enter, based on the words the user has already entered. Next-word prediction is available in both Ambiguous and Multitap text-entry modes.
Alphabetic T9 places predicted words in the selection list when the word the user has just entered is found in the CDB as the first part of one or more word pairs. Whatever word appears in the CDB after each instance of the word the user has just entered is provided as a predicted word.
It is possible to disable this functionality if one wants to use only CDB word completion, and not next-word prediction, in an Alphabetic T9 implementation. To disable CD B word completion, the integration layer calls T9AWClrCdbPrediction. To re-enable next-word prediction, the integration layer calls T9AWSetCdbPrediction.
Disabling CDB Word Completion
When CDB operations are activated, Alphabetic T9 by default places in the selection list completed CDB words that match the active sequence (and contain additional characters) if the word immediately before the active word is in the CDB immediately before the completed word(s). One can disable this functionality if one want to use only next-word prediction, and not CDB word completion, in an Alphabetic T9 implementation. To disable CDB word completion, the integration layer calls T9AWClrCdbCompletion. To re-enable CDB word completion, the integration layer calls T9AWSetCdbCompletion.
Note that CDB word completion operates independently of UDB custom word completion, LDB word completion, and MDB word completion. Many of the words in a CDB are also in other Alphabetic T9 databases. Alphabetic T9 suppresses these duplicates from the selection list. However, the potential effect of this duplication on other API events functions should be noted. For example, a UDB custom word that is deleted from the database still appears in the selection list if that word is also in the CDB. Likewise, if one were to disable LDB word completion, words in the LDB still appear in the selection list as completed words if they are also in the CDB and CD B word completion is enabled.
Handling T9 Requests
Depending on how the CDB is implemented, the integration layer may need to handle the following T9 request:
The integration layer should copy the CDB data to persistent memory when it terminates Alphabetic T9 if the database has been modified during the T9 session. T9 increments the value of T9AWCdbInfo.wUpdateCounter whenever it modifies the database. The integration layer can determine whether the database has been modified by comparing the value of wUpdateCounter after the session to its value before the session. If the value is different, the integration layer must copy the updated CDB data to persistent memory. Note that it is likely that T9 modifies the CDB during every session.
Operating an Alphabetic T9 CDB
Alphabetic T9 CDB operations consist of the following tasks:
Adding Data to a CDB
Alphabetic T9 automatically adds data to the CDB. Note that if the CDB is stored in a memory area that T9 cannot write to, the integration layer must write data to the CDB.
Retrieving Data from a CDB
Alphabetic T9 automatically retrieves data from the CDB.
Deleting Data from a CDB
Alphabetic T9 does not permit users or the integration layer to delete words from the database. Instead, Alphabetic T9 automatically begins deleting the oldest words in the database when it is nearly full. This removal process is referred to as garbage collection, and it occurs without any action by the user or integration layer.
In the presently preferred embodiment of the invention, saved context data are used to return a prediction of the next word upon pressing the space, and to filter the word completions after entering key strokes. This, in principle, allows a user to reduce the number of keystrokes by quickly retrieving words that are correctly predicted based on the previous word or words. This completion feature is presently implemented by saving user entered text in a Context DataBase (CDB), and returning those words that match context and keystrokes.
NWP saves the recently entered user text and uses that text to predict the next word that the user enters. For example, if the user has typed the phrases ‘hello Leslie,’ hello Inger,’ and ‘Hello Helena’ in the recent past, when the user types and accepts the word ‘hello’ by hitting space, the invention suggests:
If the user does not accept one of these words, but rather continues typing, the invention uses context to prioritize completions presented to the user. In an embodiment employing a 12-key input device, if the above user types the 4 key after hitting space, the selection list presented to the user is:
If the above user types the 43 key after hitting space, selection list presented to the user is:
After a space, the context database (CDB) objects make up the entire selection list. After pressing ambiguous keys, CDB objects appears as follows:
System state tracks completions after space with:
After a user selects ambiguous keys, system state tracks CDB completions in the preexisting way:
The T9 API consists of a global structure which holds word, wordlist, and buffer information that is used by the customer, and a set of events or functions for building, accepting, and deleting words, scrolling through word lists, and more. In alphabetic T9, the API structure is referred to as the T9AWFieldInfo structure (often referred to as pAWFieldInfo). The T9AWFieldInfo contains data that is specific to alphabetic T9. The T9AWFieldInfo structure contains another structure, T9FieldInfo (often referred to as pFieldInfo), which contains general word data that is also used in Japanese, Chinese, and Korean T9.
New API structure data and functions were added to T9 to implement NWP. The NWP feature is active if the host has allocated space for the context database and set the pFieldInfo->pCdbInfo to a non-zero value.
The following function API event is added to activate the CDB:
To set writing configuration:
To clear writing configuration:
To reset the CDB:
To break CDB context:
To fill context buffer:
To get word prediction:
To clear buffer but retain context:
To turn off CDB completion:
To turn on CDB completion:
To turn off CDB completion:
To turn on CDB completion:
The following request type is added:
This is used to request writes to CDB if external write is on.
There is no additional direct access to write to the CDB through the API.
Internal CDB Interfaces
Two interfaces to the CDB exist in the T9 embodiment of the invention:
Adds Saves word to context buffer and add to context database. This function is called only after a space has been entered.
This function retrieves context matches from the CDB.
This function resets the CDB.
This function activates the CDB.
Present minimum database size requirements are 1800*symbol width (300 words*6 chars/word*symbolwidth bytes/char). This is 1800 for one-byte systems, and 3600 for two-byte systems.
The CDB saves recently entered text in the same form that the user enters it. The text is stored in a circular buffer. New words overwrite the least recent word in the CDB.
The CDB has global information in its header:
When requesting a word from the CDB, the system word builder passes a context buffer. Using the context buffer the CDB retrieves context matches in order of recency.
When the space key is hit, or white space is entered explicitly, the built word is written to the CDB. This happens in both ambiguous and multitap (MT) modes. The word also goes through its normal RUDB processing. There is no garbage cleanup in the CDB.
A context buffer is maintained. The context buffer is updated on the pressing of space key and is cleared with any action that tends to lose context, such as cursoring and clearing. In a word API this is attached to the flushword function of a separate confirm function.
In the T9 embodiment, the NWP feature is active if:
The functional elements that apply when the next word prediction feature is active in T9 are listed below:
CDB completions appear ahead of UDB completions.
4) Expect selection list:
Leading word is agnostic to case, trailing word is case sensitive. If space is hit with caps-lock on, the predicted word is entirely in upper case.
CDB Completions Appear Ahead of UDB Completions.
CDB Completions Appear Ahead of UDB Completions.
CDB is language independent.
Reorder of Non-Completed Words
RUDB processes around reordering of non-completed words remain unchanged.
Context predictions are not delivered after clearing a current word, but are delivered as the user begins typing again.
No context predictions are delivered across sentence punctuation.
There is no aging of the CDB, the least recent word is replaced by the most recent word entered.
When space is needed to enter a new word into the CDB, the least recent word in the CDB is removed to make room.
Entering Words in MT
Data for CDB is collected while in MT, and context predictions/completions are delivered in MT.
CDB processing occurs on the addition of space character, whether or not the context word was entered in a user maintained MyWords database.
Although the invention is described herein with reference to the preferred embodiment, one skilled in the art will readily appreciate that other applications may be substituted for those set forth herein without departing from the spirit and scope of the present invention. For example, user actions or inputs can effect the automatic changing of the device's state based on context. For example, the system might use context to change a mobile telephone from ‘ring’ to ‘vibrate’, during the time that the calendar shows that the user is in a meeting. Another embodiment uses location context to increase the mobile telephone volume when the user is outside or when the telephone detects high levels of background noise.
In another embodiment, the system learns the user habits. For example, based on the learned user action, the system is able to offer services to the user that the user may not be aware of.
In another embodiment, word prediction is based on the previous word context (bigram context), but might also use the previous ‘n’ words (trigram context, etc).
Accordingly, the invention should only be limited by the Claims included below.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US3967273||29 Mar 1974||29 Jun 1976||Bell Telephone Laboratories, Incorporated||Method and apparatus for using pushbutton telephone keys for generation of alpha-numeric information|
|US4164025||13 Dec 1977||7 Aug 1979||Bell Telephone Laboratories, Incorporated||Spelled word input directory information retrieval system with input word error corrective searching|
|US4191854||6 Jan 1978||4 Mar 1980||Coles George A||Telephone-coupled visual alphanumeric communication device for deaf persons|
|US4339806||15 Nov 1979||13 Jul 1982||Kunio Yoshida||Electronic dictionary and language interpreter with faculties of examining a full-length word based on a partial word entered and of displaying the total word and a translation corresponding thereto|
|US4360892||18 Sep 1980||23 Nov 1982||Microwriter Limited||Portable word-processor|
|US4396992||30 Jan 1981||2 Aug 1983||Sony Corporation||Word processor|
|US4427848||29 Dec 1981||29 Mar 1994||Telephone Lottery Company Inc||Telephonic alphanumeric data transmission system|
|US4442506||14 Jun 1982||10 Apr 1984||Microwriter Limited||Portable word-processor|
|US4464070||30 Jun 1982||7 Aug 1984||International Business Machines Corporation||Multi-character display controller for text recorder|
|US4481508||24 Dec 1981||6 Nov 1984||Sharp Kabushiki Kaisha||Input device with a reduced number of keys|
|US4544276||6 Oct 1983||1 Oct 1985||Cornell Research Foundation, Inc.||Method and apparatus for typing Japanese text using multiple systems|
|US4586160||5 Apr 1983||29 Apr 1986||Tokyo Shibaura Denki Kabushiki Kaisha||Method and apparatus for analyzing the syntactic structure of a sentence|
|US4649563||2 Apr 1984||10 Mar 1987||R L Associates||Method of and means for accessing computerized data bases utilizing a touch-tone telephone instrument|
|US4661916||27 Dec 1985||28 Apr 1987||Baker Bruce R||System for method for producing synthetic plural word messages|
|US4669901||3 Sep 1985||2 Jun 1987||Feng I Ming||Keyboard device for inputting oriental characters by touch|
|US4674112||6 Sep 1985||16 Jun 1987||Board Of Regents, The University Of Texas System||Character pattern recognition and communications apparatus|
|US4677659||3 Sep 1985||30 Jun 1987||John Dargan||Telephonic data access and transmission system|
|US4744050||26 Jun 1985||10 May 1988||Hitachi, Ltd.||Method for automatically registering frequently used phrases|
|US4754474||21 Oct 1985||28 Jun 1988||Feinson Roy W||Interpretive tone telecommunication method and apparatus|
|US4791556||29 Aug 1984||13 Dec 1988||Vilkaitis John V||Method for operating a computer which searches for operational symbols and executes functions corresponding to the operational symbols in response to user inputted signal|
|US4807181||2 Jun 1986||21 Feb 1989||Smith Corona Corporation||Dictionary memory with visual scanning from a selectable starting point|
|US4817129||5 Mar 1987||28 Mar 1989||Telac Corp.||Method of and means for accessing computerized data bases utilizing a touch-tone telephone instrument|
|US4866759||30 Nov 1987||12 Sep 1989||Riskin Bernard N||Packet network telecommunication system having access nodes with word guessing capability|
|US4872196||18 Jul 1988||3 Oct 1989||Motorola, Inc.||Telephone keypad input technique|
|US4891786||25 Jun 1985||2 Jan 1990||Goldwasser Eric P||Stroke typing system|
|US4969097||21 Jul 1988||6 Nov 1990||Levin Leonid D||Method of rapid entering of text into computer equipment|
|US5018201||30 Nov 1988||21 May 1991||International Business Machines Corporation||Speech recognition dividing words into two portions for preliminary selection|
|US5031206||28 Jul 1988||9 Jul 1991||Fon-Ex, Inc.||Method and apparatus for identifying words entered on DTMF pushbuttons|
|US5041967||13 Oct 1987||20 Aug 1991||Bell Communications Research, Inc.||Methods and apparatus for dynamic menu generation in a menu driven computer system|
|US5067103||28 Sep 1990||19 Nov 1991||The Laitram Corporation||Hand held computers with alpha keystroke|
|US5131045||10 May 1990||14 Jul 1992||Roth Richard G||Audio-augmented data keying|
|US5133012||30 Nov 1989||21 Jul 1992||Kabushiki Kaisha Toshiba||Speech recognition system utilizing both a long-term strategic and a short-term strategic scoring operation in a transition network thereof|
|US5163084||7 Aug 1990||10 Nov 1992||Korea Telecommunication Authority||Voice information service system and method utilizing approximately matched input character string and key word|
|US5200988||11 Mar 1991||6 Apr 1993||Fon-Ex, Inc.||Method and means for telecommunications by deaf persons utilizing a small hand held communications device|
|US5218538||28 Jun 1991||8 Jun 1993||Wei Zhang||High efficiency input processing apparatus for alphabetic writings|
|US5229936||4 Jan 1991||20 Jul 1993||Franklin Electronic Publishers, Incorporated||Device and method for the storage and retrieval of inflection information for electronic reference products|
|US5255310||17 Aug 1992||19 Oct 1993||Korea Telecommunication Authority||Method of approximately matching an input character string with a key word and vocally outputting data|
|US5258748||28 Aug 1991||2 Nov 1993||Hewlett-Packard Company||Accessing and selecting multiple key functions with minimum keystrokes|
|US5289394||9 Mar 1993||22 Feb 1994||The Laitram Corporation||Pocket computer for word processing|
|US5303299||22 Jun 1992||12 Apr 1994||Vcs Industries, Inc.||Method for continuous recognition of alphanumeric strings spoken over a telephone network|
|US5305205||23 Oct 1990||19 Apr 1994||Weber Maria L||Computer-assisted transcription apparatus|
|US5339358||26 May 1992||16 Aug 1994||Danish International, Inc.||Telephone keypad matrix|
|US5388061||8 Sep 1993||7 Feb 1995||Hankes; Elmer J.||Portable computer for one-handed operation|
|US5392338||12 May 1992||21 Feb 1995||Danish International, Inc.||Entry of alphabetical characters into a telephone system using a conventional telephone keypad|
|US5535421||16 Mar 1993||9 Jul 1996||Weinreich; Michael||Chord keyboard system using one chord to select a group from among several groups and another chord to select a character from the selected group|
|US5559512||20 Mar 1995||24 Sep 1996||Venturedyne, Ltd.||Method and apparatus for entering alpha-numeric data|
|US5642522||28 Feb 1995||24 Jun 1997||Xerox Corporation||Context-sensitive method of finding information about a word in an electronic dictionary|
|US5664896||29 Aug 1996||9 Sep 1997||Blumberg; Marvin R.||Speed typing apparatus and method|
|US5680511||7 Jun 1995||21 Oct 1997||Dragon Systems, Inc.||Systems and methods for word recognition|
|US5748512||28 Feb 1995||5 May 1998||Microsoft Corporation||Adjusting keyboard|
|US5786776||12 Mar 1996||28 Jul 1998||Kabushiki Kaisha Toshiba||Character input terminal device and recording apparatus|
|US5797098||19 Jul 1995||18 Aug 1998||Pacific Communication Sciences, Inc.||User interface for cellular telephone|
|US5805911||1 Feb 1995||8 Sep 1998||Microsoft Corporation||Word prediction system|
|US5818437||26 Jul 1995||6 Oct 1998||Tegic Communications, Inc.||Reduced keyboard disambiguating computer|
|US5825353||18 Apr 1995||20 Oct 1998||Will; Craig Alexander||Control of miniature personal digital assistant using menu and thumbwheel|
|US5847697||31 Jan 1995||8 Dec 1998||Fujitsu Limited||Single-handed keyboard having keys with multiple characters and character ambiguity resolution logic|
|US5855000||1 Oct 1996||29 Dec 1998||Carnegie Mellon University||Method and apparatus for correcting and repairing machine-transcribed input using independent or cross-modal secondary input|
|US5917890||29 Dec 1995||29 Jun 1999||At&T Corp||Disambiguation of alphabetic characters in an automated call processing environment|
|US5917941||8 Aug 1995||29 Jun 1999||Apple Computer, Inc.||Character segmentation technique with integrated word search for handwriting recognition|
|US5926566||15 Nov 1996||20 Jul 1999||Synaptics, Inc.||Incremental ideographic character input method|
|US5936556||14 Jul 1997||10 Aug 1999||Sakita; Masami||Keyboard for inputting to computer means|
|US5937380||26 Jun 1998||10 Aug 1999||M.H. Segan Limited Partenship||Keypad-assisted speech recognition for text or command input to concurrently-running computer application|
|US5937422||15 Apr 1997||10 Aug 1999||The United States Of America As Represented By The National Security Agency||Automatically generating a topic description for text and searching and sorting text by topic using the same|
|US5952942||21 Nov 1996||14 Sep 1999||Motorola, Inc.||Method and device for input of text messages from a keypad|
|US5960385||5 May 1998||28 Sep 1999||The Research Foundation Of The State University Of New York||Sentence reconstruction using word ambiguity resolution|
|US5999950||11 Aug 1997||7 Dec 1999||Webtv Networks, Inc.||Japanese text input method using a keyboard with only base kana characters|
|US6005498||29 Oct 1997||21 Dec 1999||Motorola, Inc.||Reduced keypad entry apparatus and method|
|US6009444||24 Feb 1997||28 Dec 1999||Motorola, Inc.||Text input device and method|
|US6041323||17 Apr 1997||21 Mar 2000||International Business Machines Corporation||Information search method, information search device, and storage medium for storing an information search program|
|US6044347||5 Aug 1997||28 Mar 2000||Lucent Technologies Inc.||Methods and apparatus object-oriented rule-based dialogue management|
|US6054941||27 May 1997||25 Apr 2000||Motorola, Inc.||Apparatus and method for inputting ideographic characters|
|US6098086||11 Aug 1997||1 Aug 2000||Webtv Networks, Inc.||Japanese text input method using a limited roman character set|
|US6120297||25 Aug 1998||19 Sep 2000||Lyceum Communication, Inc.||Vocabulary acquistion using structured inductive reasoning|
|US6130628||19 Mar 1998||10 Oct 2000||Siemens Aktiengesellschaft||Device for inputting alphanumeric and special symbols|
|US6169538||13 Aug 1998||2 Jan 2001||Motorola, Inc.||Method and apparatus for implementing a graphical user interface keyboard and a text buffer on electronic devices|
|US6172625||6 Jul 1999||9 Jan 2001||Motorola, Inc.||Disambiguation method and apparatus, and dictionary data compression techniques|
|US6178401||28 Aug 1998||23 Jan 2001||International Business Machines Corporation||Method for reducing search complexity in a speech recognition system|
|US6204848||14 Apr 1999||20 Mar 2001||Motorola, Inc.||Data entry apparatus having a limited number of character keys and method|
|US6208966||2 Jun 1997||27 Mar 2001||At&T Corp.||Telephone network service for converting speech to touch-tones|
|US6219731||3 Jul 1999||17 Apr 2001||Eaton: Ergonomics, Inc.||Method and apparatus for improved multi-tap text input|
|US6223059||22 Feb 2000||24 Apr 2001||Nokia Mobile Phones Limited||Communication terminal having a predictive editor application|
|US6246761 *||24 Jul 1997||12 Jun 2001||Nortel Networks Limited||Automatic volume control for a telephone ringer|
|US6304844||30 Mar 2000||16 Oct 2001||Verbaltek, Inc.||Spelling speech recognition apparatus and method for communications|
|US6307548 *||24 Sep 1998||23 Oct 2001||Tegic Communications, Inc.||Reduced keyboard disambiguating system|
|US6362752||23 Dec 1998||26 Mar 2002||Motorola, Inc.||Keypad with strokes assigned to key for ideographic text input|
|US6363347||16 Feb 1999||26 Mar 2002||Microsoft Corporation||Method and system for displaying a variable number of alternative words during speech recognition|
|US6377965||7 Nov 1997||23 Apr 2002||Microsoft Corporation||Automatic word completion system for partially entered data|
|US6392640||27 Mar 2000||21 May 2002||Cognitive Research & Design Corp.||Entry of words with thumbwheel by disambiguation|
|US6424743||5 Nov 1999||23 Jul 2002||Motorola, Inc.||Graphical handwriting recognition user interface|
|US6466232||18 Dec 1998||15 Oct 2002||Tangis Corporation||Method and system for controlling presentation of information to a user based on the user's condition|
|US6502118||22 Mar 2001||31 Dec 2002||Motorola, Inc.||Fast system and method for producing a logarithmic signal approximation with variable precision|
|US6542170||22 Feb 2000||1 Apr 2003||Nokia Mobile Phones Limited||Communication terminal having a predictive editor application|
|US6574597||11 Feb 2000||3 Jun 2003||At&T Corp.||Fully expanded context-dependent networks for speech recognition|
|US6584179||24 Oct 1997||24 Jun 2003||Bell Canada||Method and apparatus for improving the utility of speech recognition|
|US6633846||12 Nov 1999||14 Oct 2003||Phoenix Solutions, Inc.||Distributed realtime speech recognition system|
|US6646573 *||3 Dec 1999||11 Nov 2003||America Online, Inc.||Reduced keyboard text input system for the Japanese language|
|US6684185||4 Sep 1998||27 Jan 2004||Matsushita Electric Industrial Co., Ltd.||Small footprint language and vocabulary independent word recognizer using registration by word spelling|
|US6686852||15 Sep 2000||3 Feb 2004||Motorola, Inc.||Keypad layout for alphabetic character input|
|US6711290||19 Jan 2001||23 Mar 2004||Decuma Ab||Character recognition|
|US6728348||30 Nov 2000||27 Apr 2004||Comverse, Inc.||System for storing voice recognizable identifiers using a limited input device such as a telephone key pad|
|US6734881||25 Feb 2002||11 May 2004||Craig Alexander Will||Efficient entry of words by disambiguation|
|US6738952||1 Sep 1998||18 May 2004||Denso Corporation||Navigational map data object selection and display system|
|US6751605||22 Feb 2001||15 Jun 2004||Hitachi, Ltd.||Apparatus for recognizing input character strings by inference|
|US6757544||15 Aug 2001||29 Jun 2004||Motorola, Inc.||System and method for determining a location relevant to a communication device and/or its associated user|
|US6801659||4 Jan 2000||5 Oct 2004||Zi Technology Corporation Ltd.||Text input system for ideographic and nonideographic languages|
|US6807529||27 Feb 2002||19 Oct 2004||Motorola, Inc.||System and method for concurrent multimodal communication|
|US6864809||28 Feb 2002||8 Mar 2005||Zi Technology Corporation Ltd||Korean language predictive mechanism for text entry by a user|
|US6885317||9 Dec 1999||26 Apr 2005||Eatoni Ergonomics, Inc.||Touch-typable devices based on ambiguous codes and methods to design such devices|
|US6912581||27 Feb 2002||28 Jun 2005||Motorola, Inc.||System and method for concurrent multimodal communication session persistence|
|US6934564||20 Dec 2001||23 Aug 2005||Nokia Corporation||Method and apparatus for providing Hindi input to a device using a numeric keypad|
|US6947771||6 Aug 2001||20 Sep 2005||Motorola, Inc.||User interface for a portable electronic device|
|US6955602||15 May 2003||18 Oct 2005||Zi Technology Corporation Ltd||Text entry within a video game|
|US6956968||18 Jan 2002||18 Oct 2005||Zi Technology Corporation, Ltd.||Database engines for processing ideographic characters and methods therefor|
|US6973332||24 Oct 2003||6 Dec 2005||Motorola, Inc.||Apparatus and method for forming compound words|
|US6982658||22 Mar 2001||3 Jan 2006||Motorola, Inc.||Keypad layout for alphabetic symbol input|
|US6985933||30 May 2000||10 Jan 2006||International Business Machines Corporation||Method and system for increasing ease-of-use and bandwidth utilization in wireless devices|
|US7006820||5 Oct 2001||28 Feb 2006||At Road, Inc.||Method for determining preferred conditions for wireless programming of mobile devices|
|US7020849||31 May 2002||28 Mar 2006||Openwave Systems Inc.||Dynamic display for communication devices|
|US7027976||29 Jan 2001||11 Apr 2006||Adobe Systems Incorporated||Document based character ambiguity resolution|
|US7057607||30 Jun 2003||6 Jun 2006||Motorola, Inc.||Application-independent text entry for touch-sensitive display|
|US7061403||29 Oct 2002||13 Jun 2006||Research In Motion Limited||Apparatus and method for input of ideographic Korean syllables from reduced keyboard|
|US7075520||12 Dec 2001||11 Jul 2006||Zi Technology Corporation Ltd||Key press disambiguation using a keypad of multidirectional keys|
|US7095403||9 Dec 2002||22 Aug 2006||Motorola, Inc.||User interface of a keypad entry system for character input|
|US7139430||9 Mar 2004||21 Nov 2006||Zi Decuma Ab||Character recognition|
|US7152213||4 Oct 2001||19 Dec 2006||Infogation Corporation||System and method for dynamic key assignment in enhanced user interface|
|US7256769||24 Feb 2003||14 Aug 2007||Zi Corporation Of Canada, Inc.||System and method for text entry on a reduced keyboard|
|US7257528||13 Feb 1998||14 Aug 2007||Zi Corporation Of Canada, Inc.||Method and apparatus for Chinese character text input|
|US7272564||22 Mar 2002||18 Sep 2007||Motorola, Inc.||Method and apparatus for multimodal communication with user control of delivery modality|
|US7313277||8 Feb 2002||25 Dec 2007||Zi Decuma Ab||Method and device for recognition of a handwritten pattern|
|US7349576||11 Jan 2002||25 Mar 2008||Zi Decuma Ab||Method, device and computer program for recognition of a handwritten character|
|US7386454||31 Jul 2002||10 Jun 2008||International Business Machines Corporation||Natural error handling in speech recognition|
|US7389235||30 Sep 2003||17 Jun 2008||Motorola, Inc.||Method and system for unified speech and graphic user interfaces|
|US7395203||30 Jul 2003||1 Jul 2008||Tegic Communications, Inc.||System and method for disambiguating phonetic input|
|US7437001||5 Jun 2007||14 Oct 2008||Zi Decuma Ab||Method and device for recognition of a handwritten pattern|
|US7466859||30 Dec 2004||16 Dec 2008||Motorola, Inc.||Candidate list enhancement for predictive text input in electronic devices|
|US20020038207||11 Jul 2001||28 Mar 2002||Ibm Corporation||Systems and methods for word prediction and speech recognition|
|US20020072395||28 Sep 2001||13 Jun 2002||Ivan Miramontes||Telephone with fold out keyboard|
|US20020119788 *||22 Dec 2000||29 Aug 2002||Gopal Parupudi||Context-aware and location-aware cellular phones and methods|
|US20020135499||22 Mar 2001||26 Sep 2002||Jin Guo||Keypad layout for alphabetic symbol input|
|US20020152075||16 Apr 2001||17 Oct 2002||Shao-Tsu Kung||Composite input method|
|US20020188448||31 Mar 2001||12 Dec 2002||Goodman Joshua T.||Spell checking for text input via reduced keypad keys|
|US20030011574||31 Mar 2001||16 Jan 2003||Goodman Joshua T.||Out-of-vocabulary word determination and user interface for text input via reduced keypad keys|
|US20030023420||31 Mar 2001||30 Jan 2003||Goodman Joshua T.||Machine learning contextual approach to word determination for text input via reduced keypad keys|
|US20030023426||22 Jun 2001||30 Jan 2003||Zi Technology Corporation Ltd.||Japanese language entry mechanism for small keypads|
|US20030054830||4 Sep 2001||20 Mar 2003||Zi Corporation||Navigation system for mobile communication devices|
|US20030078038||25 Sep 2002||24 Apr 2003||Takahiro Kurosawa||Communication apparatus and control method therefor, information apparatus and control method therefor, communication system, and control programs|
|US20030095102||19 Nov 2001||22 May 2003||Christian Kraft||Communication terminal having a predictive character editor application|
|US20030104839||27 Nov 2001||5 Jun 2003||Christian Kraft||Communication terminal having a text editor application with a word completion feature|
|US20030119561||21 Dec 2001||26 Jun 2003||Richard Hatch||Electronic device|
|US20030144830||22 Jan 2002||31 Jul 2003||Zi Corporation||Language module and method for use with text processing devices|
|US20030179930||28 Feb 2002||25 Sep 2003||Zi Technology Corporation, Ltd.||Korean language predictive mechanism for text entry by a user|
|US20030193478||4 Mar 2003||16 Oct 2003||Edwin Ng||Reduced keyboard system that emulates QWERTY-type mapping and typing|
|US20040049388||6 Sep 2002||11 Mar 2004||Roth Daniel L.||Methods, systems, and programming for performing speech recognition|
|US20040067762||8 May 2003||8 Apr 2004||Henrik Balle||Method and device for entering text|
|US20040127197||7 Apr 2003||1 Jul 2004||Roskind James A.||Automatically changing a mobile device configuration|
|US20040127198 *||7 Apr 2003||1 Jul 2004||Roskind James A.||Automatically changing a mobile device configuration based on environmental condition|
|US20040135774||30 Dec 2002||15 Jul 2004||Motorola, Inc.||Method and system for providing a disambiguated keypad|
|US20040153963||5 Feb 2003||5 Aug 2004||Simpson Todd G.||Information entry mechanism for small keypads|
|US20040153975||5 Feb 2003||5 Aug 2004||Williams Roland E.||Text entry mechanism for small keypads|
|US20040155869||9 Feb 2004||12 Aug 2004||Robinson B. Alex||Keyboard system with automatic correction|
|US20040163032||17 Dec 2002||19 Aug 2004||Jin Guo||Ambiguity resolution for predictive text entry|
|US20040169635||12 Jul 2002||2 Sep 2004||Ghassabian Benjamin Firooz||Features to enhance data entry through a small data entry unit|
|US20040201607 *||15 Jan 2002||14 Oct 2004||Airtx, Incorporated||Alphanumeric information input method|
|US20040203656||27 Nov 2002||14 Oct 2004||Andrew Felix G.T.I.||System and method for timed profile changes on a mobile device|
|US20040259598||24 Mar 2004||23 Dec 2004||Sun Microsystems, Inc.||Context based main screen for mobile device|
|US20050017954||10 Jun 2004||27 Jan 2005||Kay David Jon||Contextual prediction of user words and user actions|
|US20050114770||21 Nov 2003||26 May 2005||Sacher Heiko K.||Electronic device and user interface and input method therefor|
|US20060010206||29 Jun 2005||12 Jan 2006||Microsoft Corporation||Guiding sensing and preferences for context-sensitive services|
|US20060129928||30 Nov 2005||15 Jun 2006||Weigen Qiu||Use of pointing device to identify ideographic characters|
|US20060136408||14 Nov 2005||22 Jun 2006||Charles Weir||Searching for and providing objects using byte-by-byte comparison|
|US20060155536||19 Dec 2005||13 Jul 2006||Williams Roland E||Method and device for displaying a telephone number|
|US20060158436||6 Dec 2005||20 Jul 2006||Jacques Lapointe||User interface with augmented searching characteristics|
|US20060173807||14 Nov 2005||3 Aug 2006||Charles Weir||Organizing pointers to objects|
|US20060190822||22 Feb 2005||24 Aug 2006||International Business Machines Corporation||Predictive user modeling in user interface design|
|US20060193519||28 Feb 2006||31 Aug 2006||Zi Decuma Ab||Handling of diacritic points|
|US20060236239||18 Jun 2004||19 Oct 2006||Zi Corporation||Text entry system and method|
|US20060239560||28 Feb 2006||26 Oct 2006||Zi Decuma Ab||Recognition graph|
|US20070094718||18 Jun 2004||26 Apr 2007||Simpson Todd G||Configurable dynamic input word prediction algorithm|
|US20070203879||21 Nov 2006||30 Aug 2007||Templeton-Steadman William J||Information Delivery System And Method For Mobile Appliances|
|US20070276814||23 May 2007||29 Nov 2007||Williams Roland E||Device And Method Of Conveying Meaning|
|US20070285397||21 Mar 2007||13 Dec 2007||Jacques Lapointe||Mobile Appliance System And Method Enabling Efficient Entry|
|US20080130996||29 Nov 2007||5 Jun 2008||Jakob Sternby||Method For Character Recognition|
|USRE32773||21 Apr 1986||25 Oct 1988||Method of creating text using a computer|
|EP0313975B1||19 Oct 1988||28 Dec 1994||International Business Machines Corporation||Design and construction of a binary-tree system for language modelling|
|EP0319193A2||23 Nov 1988||7 Jun 1989||Bernard N. Riskin||Method and apparatus for identifying words entered on DTMF pushbuttons|
|EP0464726A3||28 Jun 1991||30 Dec 1992||Wei Zhang||High efficiency input processing apparatus for alphabetic writings|
|EP0540147B1||28 Aug 1992||30 Jun 1999||Edward D. Lin||Multi-status multi-function data processing key and key array|
|EP0651315A1||19 Sep 1994||3 May 1995||International Business Machines Corporation||Data entry workstation|
|EP0660216B1||21 Dec 1994||31 Oct 2001||Microsoft Corporation||Method and system for presenting alternatives for selection using adaptive learning|
|EP0732646B1||13 Mar 1996||17 May 2006||Kabushiki Kaisha Toshiba||Character input device and method|
|EP0751469B1||28 Jun 1996||21 Aug 2002||Xerox Corporation||Automatic method of extracting summarization using feature probabilities|
|EP1031913B1||11 Feb 2000||23 Apr 2003||Nokia Corporation||A communication terminal having a predictive editor application.|
|EP1035712B1||21 Feb 2000||23 Apr 2003||Nokia Corporation||A communication terminal having a predictive editor application|
|EP1296216B1||11 Feb 2000||11 Jul 2007||Nokia Corporation||A mobile phone having a predictive editor application|
|EP1320023A2||25 Nov 2002||18 Jun 2003||Nokia Corporation||A communication terminal having a text editor application|
|EP1324573A3||19 Dec 2002||3 Dec 2003||Nokia Corporation||Dynamic user menu|
|EP1347361A1||22 Mar 2002||24 Sep 2003||Sony Ericsson Mobile Communications AB||Entering text into an electronic communications device|
|EP1347362B1||22 Mar 2002||11 May 2005||Sony Ericsson Mobile Communications AB||Entering text into an electronic communications device|
|EP2298166B1||16 Apr 2002||15 Jan 2014||Metacure Limited||Apparatus for analysis of eating habits|
|GB2298166B||Title not available|
|GB2383459B||Title not available|
|JP8006939A||Title not available|
|WO2003060451A1||2 Jan 2003||24 Jul 2003||Airtx, Incorporated||Alphanumeric information input method|
|WO2004111871A1||18 Jun 2004||23 Dec 2004||Zi Corporation||Configurable information identification system and method|
|WO2006026908A1||16 Aug 2005||16 Mar 2006||Dong Li||A chinese characters inputting method which uses continuous phonetic letters in a portable terminal|
|1||"Latest Philips Wireless Handset Ships With T9 Text Input in China", Business Wire, Nov. 9 1999, pp. 1-2 (downloaded from: www.businesswire.com/webbox/bw.110999/193130342.htm).|
|2||A. Schmidt, et al. Advanced interaction in context. In Proceedings of First International Symposium on Handheld and Ubiquitous Computing, pp. 89-101, Karlsruhe, Germany, Sep. 1999.|
|3||Ajioka, Y, Anzai, Y., "Prediction of Next Alphabets and Words of Four Sentences by Adaptive Injunctions"; IJCNN-91- Seattle: Intnl Joint Conference on Neural Networks (Cat. No. 91CH3049-4) p. 897, vol. 2; IEEE, NY, NY 1991 USA.|
|4||Arnott, J.L., et al; Probabilistic Character Disambiguation for Reduced Keyboards Using Small Text Samples; Dept. Math & comp. Sci.; Univ of Dundee, Dundee, Tayside, Scotland; AAC Augmentative and Alternative Communication ; vol. 8, Sep. 1992; Copyright 1992 by ISAAC.|
|5||Butts, L., Cockburn, A., "An Evaluation of Mobile Phone Text Input Methods", Jan.-Feb. 2002; University of Canterbury, Dept of Computer Science, Christchurch, New Zealand AUIC2002, Melbourne Australia, Conferences in Research and Practice in Information Technology, vol. 7; Copyright 2001, Australian Computer Society; 5 pages, unnumbered on original document.|
|6||Butts, L., Cockburn, A., "An Evaluation of Mobile Phone Text Input Methods", University of Canterbury, Dept of Computer Science, Christchurch, New Zealand AUIC2002, Melbourne Australia, Conferences in Research and Practice in Information Technology, vol. 7; Copyright 2001, Australian Computer Society.|
|7||Butts, Lee, et al., "An Evaluation of Mobile Phone Text Input Methods", Australian CS Communications, Tird Australasian Conf. On User Interfaces, vol. 24 Issue 4, Jan. 2002, pp. 55-59 (plus citation page).|
|8||Cockburn, A., Siresena, "Evaluating Mobile Text Entry with Fastap(TM) Keyboard"; University of Canterbury, Dept. of Computer Science, Christchurch, New Zealand; ans26@cosc,.canterbury.ac.nz, 2002.|
|9||Cockburn, A., Siresena, "Evaluating Mobile Text Entry with Fastap(TM) Keyboard"; University of Canterbury, Dept. of Computer Science, Christchurch, New Zeland; ans26@cosc.,canterbury.ac.nz.|
|10||Cockburn, A., Siresena, "Evaluating Mobile Text Entry with Fastap(TM) Keypad"; Sep. 2003; People and Computers XVII (vol. 2): British Computer Society Conference on Human Computer Interaction. Bath, England; 12 pages, unnumbered on original document.|
|11||Cockburn, A., Siresena, "Evaluating Mobile Text Entry with Fastap™ Keyboard"; University of Canterbury, Dept. of Computer Science, Christchurch, New Zealand; ans26@cosc,.canterbury.ac.nz, 2002.|
|12||Cockburn, A., Siresena, "Evaluating Mobile Text Entry with Fastap™ Keyboard"; University of Canterbury, Dept. of Computer Science, Christchurch, New Zeland; ans26@cosc.,canterbury.ac.nz.|
|13||Cockburn, A., Siresena, "Evaluating Mobile Text Entry with Fastap™ Keypad"; Sep. 2003; People and Computers XVII (vol. 2): British Computer Society Conference on Human Computer Interaction. Bath, England; 12 pages, unnumbered on original document.|
|14||D.P/ Siewiorek, et al. SenSay: a context-aware mobile phone. In Proceedings of the 7th IEEE International Symposium on Wearable Computers, pp. 248-249, IEEE Press, 2003.|
|15||Damasco, Patrick W., et al., "Generating Text From Compressed Input: An Intelligent Interface for People with Sever Motor Impairments", Communications of the ACM, vol. 35 No. 5, May 1992, pp. 68-78.|
|16||Dey, A.K. and Abowd, G.D. (1999). Towards a better understanding of context and context-awareness. GVU Technical Report GIT-GVU-99-22, GVU Center, 1999.|
|17||Foulds, R., et al. "Lexical Prediction Techniques Applied to Reduce Motor Requirements for Augmentative Communication," RESNA 10th Annual Conference, San Jose, California, 1987, pp. 115-117.|
|18||Foulds, R., et al., "Statistical Disambiguation of Multi-Character Keys Applied to Reduce Motor Requirements for Augmentative and Alternative Communication," AAC Augmentative and Alternative Communication (1987), pp. 192-195.|
|19||Gavalda, M. "Epiphenomenal Grammar Acquisition with GSG"; Interactive Systems Inc., Pittsburgh, PA USA firstname.lastname@example.org.|
|20||Gavalda, M. "Epiphenomenal Grammar Acquisition with GSG"; May 2000; Proceedings of the Workshop on Conversational Systems of the 6th Conf. on Applied Natural Language Processing and the 1st Conf. of the N. American Chapter of the Assoc. for Computational Linguistics (ANLP/NAACL-2000), Seattle, Washington; 6 pages, unnumbered on original document.|
|21||http://pitecan.com/OpenPOBox/info/index.html, Sep. 1999.|
|22||http://www.ling.upenn.edu/courses/Fall-2003/ling001/reading-writing.html. What is writing? Linguistics 001. Lecture 19. Reading and Writing 2003.|
|23||http://www.ling.upenn.edu/courses/Fall—2003/ling001/reading—writing.html. What is writing? Linguistics 001. Lecture 19. Reading and Writing 2003.|
|24||http://www.nuance.com/, Feb. 7, 2006.|
|25||http://www.pinyin.info/readings/texts/ideographic-myth.html. The Ideographic Myth. 1984.|
|26||http://www.pinyin.info/readings/texts/ideographic—myth.html. The Ideographic Myth. 1984.|
|27||http://www.tapless.biz/, Copyright 2003-2005.|
|28||http://www.wordloqic.com/products-predictive-kevboard-handheld-prediction.asp, Oct. 30, 2005.|
|30||IMB Technical Disclosure Bulletin, "Speed Keyboard for Data Processor," vol. 23, 3 pages, Jul. 1980. IBM Corp., 1993.|
|31||James, Christina L., et al., "Text Input for Mobile Devices: Comparing Model Prediction to Actual Performance", SIGCHI '01, Seattle, WA, Mar. 31 - Apr. 4, 2001, pp. 365-371 [ACM 1-58113-327-08/01/003].|
|32||James, Christina, et al., "Bringing Text Input Beyond the Desktop", CHI 2000, Seattle, WA, Apr. 1-6, 2000, pp. 49-50.|
|33||Kamphuis, H., et al., "Katdas; A Small Nunber of Keys Direct Access System," RESNA 12th Annual Conference, New Orleans, Louisiana, 1989, pp. 278-279.|
|34||King, M.T., "JustType-Efficient Communication with Eight Keys," Proceedings of the RESNA '95 Annual Conference, Vancouver, BC, Canada, 1995, 3 pages.|
|35||Kreifeldt, J.G., et al., "Reduced Keyboard Designs Using Disambiguation," Proceedings of the Human Factors Society 33rd Annual Meeting, 1989, pp. 441-444.|
|36||Kronlid, F., Nilsson, V. "TreePredict, Improving Text Entry on PDA's"; Computational Linguistics, Goteborg University, email@example.com; Victoria@viktoria.informatics.gu.se, 2000.|
|37||Kronlid, F., Nilsson, V. "TreePredict, Improving Text Entry on PDA's"; Computational Linguistics, Goteborg University, firstname.lastname@example.org;Victoria@viktoria.informatics.gu.se.|
|38||Kronlid, F., Nilsson, V. "TreePredict, Improving Text Entry on PDA's"; Mar. 31-Apr. 5, 2001; Proceedings of the Conference on Human Factors in Computing Systems (CHI2001), ACM press; 2 pages, unnumbered on original document.|
|39||Kushler, Cliff, "AAC Using a Reduced Keyboard", downloaded from: www.dinf.ne.jp/doc/english/Us-Eu/conf/csun-98/csun98-140.htm, Web Posted Mar. 3, 1998, pp. 1-4.|
|40||Kushler, Cliff, "AAC Using a Reduced Keyboard", downloaded from: www.dinf.ne.jp/doc/english/Us—Eu/conf/csun—98/csun98—140.htm, Web Posted Mar. 3, 1998, pp. 1-4.|
|41||Lesher, Gregory W. et al.; "Optimal Character Arrangements for Ambiguous Keyboards"; Dec. 1998; IEEE Transactions on Rehabilitation Engineering, vol. 6, No. 4, pp. 415-423.|
|42||Levine, S.H., "An Adaptive Approach to Optimal Keyboard Design for Nonvocal Communication," IEEE, 1985, pp. 334-337.|
|43||Levine, S.H., et al., "Adaptive Technique for Customized Interface Design With Application to Nonvocal Communication," RESNA 9th Annual Conference, Minneapolis, Minnesota, 1986, pp. 399-401.|
|44||Levine, S.H., et al., "Computer Disambiguation of Multi-Character Key Text Entry: An Adaptive Design Approach," IEEE, 1986, pp. 298-301.|
|45||MacKenzie, I. Scott, et al., "LetterWise: Prefix-based Disambiguation for Mobile Text Input" UIST '01, Orlando, FL, Nov. 11-14, 2001, pp. 111-120 [ACM 1-58113-438-x/01/11].|
|46||Martin, T.Azvine, B., "Learning User Models for an Intelligent Telephone Assistant"; Proceedings Joint 9th IFSA World Congress and 20th NAFIPS Intnl. Conf. (Cat. No. 01TH8569) Part vol. 2, p. 669-74 vol. 2; IEEE 2001, Piscataway, NJ, USA.|
|47||Masui, "POBox: An efficient Text Input Method for Handheld and Ubiquitous Computers"; Sep. 1999; in Proc. of the International Symposium on Handheld and Ubiquitous Computing (HUC '99); 12 pages, unnumbered on original document.|
|48||Matias, E.; et al., "Half-QWERTY: Typing With One Hand Using Your Two-Handed Skills," Conference Companion, CHI '94 (Apr. 24-28, 1994), pp. 51-52.|
|49||Matsui, "POBox: An efficient Text input Method for Handheld and Ubiquitous Computers"; Sony Computer Science Labs inc. 3-14-13 Higashi-Gotanda, Shinagawa Tokyo 141-0022, Japan.|
|50||Matsui, "POBox: An efficient Text input Method for Handheld arid Ubiquitous Computers"; Sony Computer Science Labs inc. 3-14-13 Higashi-Gotanda, Shinagawa Tokyo 141-0022; Japan, 2000.|
|51||Minneman, S.L., "A Simplified Touch-Tone Telecommunication Aid for Deaf and Hearing Impaired Individuals," RESNA 8th Annual Conference, Memphis Tennessee, pp. 209- 211, 1985.|
|52||News Release from Zi Corporation, "Zi Claims Second Patent Victory Against Tegic Communications, a unit of AOL Time Warner", Mar. 14, 2002, pp. 1-2 (downloaded from: www.zicorp.com/pressreleases/031402.html).|
|53||Oommen, B. John, et al.; "String Taxonomy Using Learning Automata"; Apr. 1997; IEEE Transactions on Systems, Mand and Cybernetics-Part B: Cybernetics, vol. 27 No. 20 pp. 354-365.|
|54||Oommen, B. John, et al.; "String Taxonomy Using Learning Automata"; Apr. 1997; IEEE Transactions on Systems, Mand and Cybernetics—Part B: Cybernetics, vol. 27 No. 20 pp. 354-365.|
|55||Oommen, B.J., et al., "Correction to ‘An Adaptive Learning Solution to the Keyboard Optimization Problem’." IEEE Transactions on Systems, Man and Cybernetics, vol. 22, No. 5 (Oct. 1992) pp. 1233-1243.|
|56||Oommen, B.J., et al., "Correction to 'An Adaptive Learning Solution to the Keyboard Optimization Problem'." IEEE Transactions on Systems, Man and Cybernetics, vol. 22, No. 5 (Oct. 1992) pp. 1233-1243.|
|57||Oviatt,S. "Mutual Disambiguation of Recognition Errors in a Multimodal Architecture." Chi 99. May 15-29, 1999.|
|58||P. Coppola, et al. MoBe: a framework for context-aware mobile applications. In: Proc. of Workshop on Context Awareness for Proactive Systems (CAPS2005), Helsinki University Press. 2005; ISBN: 952-10-2518-2.|
|59||Press Release from Telegic Communications, "America Online, Inc. Acquires Tegic Communications", Dec. 1, 1999, pp. 1-3 (downloaded from: www.tegic.com/pressreleases/pr-aolacquisition.html).|
|60||Press Release from Telegic Communications, "America Online, Inc. Acquires Tegic Communications", Dec. 1, 1999, pp. 1-3 (downloaded from: www.tegic.com/pressreleases/pr—aolacquisition.html).|
|61||Rosa, J. "Next Word Prediction in a Connectional Distributed Representation System"; 2002 IEEEE Intnl Conference on Systems, man and Cybernetics; Conf. Proceedings (Cat. No. 02CH37349) Part vol. 3, p. 6, Yasmine Hammamet, Tunisia, Oct. 2002.|
|62||Rosa, J. "Next Word Prediction in a Connectional Distributed Representation System"; 2002 IEEEE Intnl Conterence on Systems, man and Cybernetics; Conf. Proceedings (Cat. No. 02CH37349) Part vol. 3, p. 6, Yasmine Hammamet, Tunisia, Oct. 2002.|
|63||Rosa, J. "Next Word Prediction in a Connectional Distributed Representation System"; 2002 IEEEE IntnlConference on Systems, man and Cybernetics; Conf. Proceedings (Cat. No.: 02CH37349) Part vol. 3, p. 6, Yasmine Hammamet, Tunisia, Oct. 2002.|
|64||Rosa, J., "A Biologically Motivated Connectionist System for Predicting the Next Word in Natural Language Sentences", 2002 IEEEE IntnI Conference on Systems, man and Cybernetics; Conf. Proceedings (Cat. No. 02CH37349) Part vol. 4, p. 6, Yasmine Hammamet, Tunisia, Oct. 2002.|
|65||Rosa, J., "A Biologically Motivated Connectionist System for Predicting the Next Word in Natural Language Sentences", 2002 IEEEE Intnl Conference on Systems, man and Cybernetics; Conf. Proceedings (Cat. No.: 02CH37349) Part vol. 4, p. 6, Yasmine Hammamet, Tunisia, Oct. 2002.|
|66||Rosa, J., "A Biologically Motivated Connectionist System for Predicting the Next Word in Natural Language Sentences"; 2002 IEEEE IntnI Conference on Systems, man and Cybernetics; Conf. Proceedings (Cat. No. 02CH37349) Part vol. 4, p. 6, Yasmine Hammamet, Tunisia, Oct. 2002.|
|67||Shieber, S., Baker, E., "Abbreviated Text Input", Harvard University, Cambridge, MA, USA email@example.com firstname.lastname@example.org, 2003.|
|68||Shieber, S., Baker, E., "Abbreviated Text Input", Harvard University, Cambridge, MA, USA email@example.com@eecs.harvard.edu.|
|69||Shieber, S., Baker, E., "Abbreviated Text Input", Harvard University, Cambridge, MA, USA firstname.lastname@example.org—email@example.com.|
|70||Shieber, S., Baker, E., "Abbreviated Text Input"; Jan. 12-14, 2003; Harvard University, Cambridge, MA, USA firstname.lastname@example.org email@example.com; IUI'03, ACM 1-58113-586-6/03/0001; pp. 293-296.|
|71||Silverberg, Miika, et al., "Bringing Text Input Beyond the Desktop", CHI 2000, The Hague, Amsterdam, Apr. 1-6, 2000, pp. 9-16 [ACM 1-58113-216-6/00/04].|
|72||Smith, Sidney L., et al, "Alphabetic Data Entry Via the Touch-Tone Pad: A Comment," Human Factors, 13(2), Apr. 1971, pp. 189-190.|
|73||Sugimoto, M., et al., "SHK: Single Hand Key Card for Mobile Devices," CHI 1996 (Apr. 13-18, 1996), pp. 7-8.|
|74||Sugimoto, Masakatsu, "Single-Hand Input Scheme for English and Japanese Text", Fujitsu Sci. Tech.J., vol. 33 No. 2, Dec. 1997, pp. 189-195.|
|75||Suhm B., et al. "Multimodal Error Correction for Speech User Interfaces" ACM Transactions on Computer-Human Interaction, vol. 8. Mar. 2001.|
|76||Summary Judgment Orders, Zi Corporation, Inc. v. Tegic Communications, Inc., Mar. 13, 2002, pp. 1-7 (downloaded from: www.zicorp.com/pressreleases/031402.html).|
|77||Swiff in, A.L., et al., "PAL: An Effort Efficient Portable Communication Aid and Keyboard Emulator," RESNA 8th Annual Conference, Memphis, Tennessee, 1985, pp. 197, 199.|
|78||Swiffin, A.L., et al., "Adaptive and Predictive Techniques in a Communications Prosthesis," AAC Augmentative and Alternative Communication, (1987), pp. 181-191.|
|79||Tygran, Amalyan, "T9 or Text Predicative Input in Mobile Telephones", Business Wire, Jul. 23, 2001, pp. 1-5 (downloaded from: web.archive.org/wweb/20010723054055/http://www.digit-life.com/articles/mobilet9/).|
|80||Website printout from Lexicus; www.motorola.com/lexicus/html/itap-FAQ.html, Sep. 6, 2002.|
|81||Website printout from Lexicus; www.motorola.com/lexicus/html/itap—FAQ.html, Sep. 6, 2002.|
|82||Website Printout from Text Entry for Mobile Computing; www.yorku.ca/mack/hci3.html, Sep. 6, 2002.|
|83||Witten, I.H., Principles of Computer Speech, New York: Academic Press, (1982), pp. 246-253.|
|84||Xu, Jinxi, et al., "Corpus-Based Stemming Using Cooccurrence of Word Variants", ACM Transactions on Information Systems, vol. 16 No. 1, Jan. 1998, pp. 61-81 [ACM 1046-8188/98/0100-0061].|
|85||Yang, Y., Pedersen, J., "A Comparative Study on Feature Selection in Text Categorization"; Carnegie Mellon University: firstname.lastname@example.org; email@example.com, 1999.|
|86||Yang, Y., Pedersen, J., "A Comparative Study on Feature Selection in Text Categorization"; Carnegie Mellon University: firstname.lastname@example.org;email@example.com.|
|87||Yang, Y., Pedersen, J., "A Comparative Study on Feature Selection in Text Categorization"; Jul. 1997; Proceedings of ICML '97; 9 pages, unnumbered on original document.|
|88||Zernik, U., "Language Acquisition: Coping with Lexical Gaps", Artificial Intelligence Program, GE R&D Center, Schenectady, NY US, 1990.|
|89||Zernik, U., "Language Acquisition: Coping with Lexical Gaps", Artificial Intelligence Program, GE R&D Center, Schenectady, NY USA.|
|90||Zernik, U., "Language Acquisition: Coping with Lexical Gaps", Aug. 22-27, 1998; Proceedings of the 12th International Conference on Computational Linguistics, Budapest, Hungary. pp. 796-800.|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US7957955 *||5 Jan 2007||7 Jun 2011||Apple Inc.||Method and system for providing word recommendations for text input|
|US7991784 *||20 Nov 2009||2 Aug 2011||Prashant Parikh||Automatic dynamic contextual data entry completion system|
|US8036878||18 May 2005||11 Oct 2011||Never Wall Treuhand GmbH||Device incorporating improved text input mechanism|
|US8060839 *||26 Jun 2007||15 Nov 2011||Samsung Electronics Co., Ltd||Character input method and mobile communication terminal using the same|
|US8065135||22 Nov 2011||Research In Motion Limited||Handheld electronic device and method for employing contextual data for disambiguation of text input|
|US8065453 *||31 Jul 2007||22 Nov 2011||Research In Motion Limited||Handheld electronic device and associated method employing a multiple-axis input device and learning a context of a text input for use by a disambiguation routine|
|US8074172||5 Jan 2007||6 Dec 2011||Apple Inc.||Method, system, and graphical user interface for providing word recommendations|
|US8078884||13 Nov 2007||13 Dec 2011||Veveo, Inc.||Method of and system for selecting and presenting content based on user identification|
|US8078978 *||13 Dec 2011||Google Inc.||Method and system for predicting text|
|US8086602||27 Dec 2011||Veveo Inc.||User interface methods and systems for selecting and presenting content based on user navigation and selection actions associated with the content|
|US8112454||5 May 2009||7 Feb 2012||Veveo, Inc.||Methods and systems for ordering content items according to learned user preferences|
|US8117540||15 Nov 2007||14 Feb 2012||Neuer Wall Treuhand Gmbh||Method and device incorporating improved text input mechanism|
|US8232973||30 Jun 2008||31 Jul 2012||Apple Inc.||Method, device, and graphical user interface providing word recommendations for text input|
|US8296294||23 Oct 2012||Veveo, Inc.||Method and system for unified searching across and within multiple documents|
|US8296484 *||30 Mar 2006||23 Oct 2012||Harris Corporation||Alphanumeric data entry apparatus and method using multicharacter keys of a keypad|
|US8311805 *||13 Nov 2012||Prashant Parikh||Automatic dynamic contextual data entry completion system|
|US8316035||20 Nov 2012||International Business Machines Corporation||Systems and arrangements of text type-ahead|
|US8359532||22 Jan 2013||International Business Machines Corporation||Text type-ahead|
|US8370125 *||5 Feb 2013||Research In Motion Limited||Handheld electronic device and method for disambiguation of text input providing artificial variants comprised of characters in a core alphabet|
|US8370284||5 Feb 2013||Veveo, Inc.||System and method for finding desired results by incremental search using an ambiguous keypad with the input containing orthographic and/or typographic errors|
|US8374846||12 Feb 2013||Neuer Wall Treuhand Gmbh||Text input device and method|
|US8374850||12 Sep 2011||12 Feb 2013||Neuer Wall Treuhand Gmbh||Device incorporating improved text input mechanism|
|US8375069||12 Feb 2013||Veveo Inc.||User interface methods and systems for selecting and presenting content based on user navigation and selection actions associated with the content|
|US8380726||6 Mar 2007||19 Feb 2013||Veveo, Inc.||Methods and systems for selecting and presenting content based on a comparison of preference signatures from multiple users|
|US8381137 *||19 Feb 2013||Tegic Communications, Inc.||Explicit character filtering of ambiguous text entry|
|US8417717||5 Dec 2011||9 Apr 2013||Veveo Inc.||Method and system for incrementally selecting and providing relevant search engines in response to a user query|
|US8417855||9 Apr 2013||Research In Motion Limited||Handheld electronic device and associated method employing a multiple-axis input device and learning a context of a text input for use by a disambiguation routine|
|US8423583||16 Apr 2013||Veveo Inc.||User interface methods and systems for selecting and presenting content based on user relationships|
|US8429155||25 Jan 2010||23 Apr 2013||Veveo, Inc.||Methods and systems for selecting and presenting content based on activity level spikes associated with the content|
|US8429158||23 Apr 2013||Veveo, Inc.||Method and system for unified searching and incremental searching across and within multiple documents|
|US8429188||23 Apr 2013||Veveo, Inc.||Methods and systems for selecting and presenting content based on context sensitive user preferences|
|US8438160||9 Apr 2012||7 May 2013||Veveo, Inc.||Methods and systems for selecting and presenting content based on dynamically identifying Microgenres Associated with the content|
|US8478794||15 Nov 2011||2 Jul 2013||Veveo, Inc.||Methods and systems for segmenting relative user preferences into fine-grain and coarse-grain collections|
|US8504349 *||18 Jun 2007||6 Aug 2013||Microsoft Corporation||Text prediction with partial selection in a variety of domains|
|US8542187 *||14 Sep 2012||24 Sep 2013||Blackberry Limited||Handheld electronic device with text disambiguation|
|US8543516||4 Feb 2011||24 Sep 2013||Veveo, Inc.||Methods and systems for selecting and presenting content on a first system based on user preferences learned on a second system|
|US8549424 *||23 May 2008||1 Oct 2013||Veveo, Inc.||System and method for text disambiguation and context designation in incremental search|
|US8577667 *||28 Dec 2012||5 Nov 2013||Blackberry Limited||Handheld electronic device and method for disambiguation of text input providing artificial variants comprised of characters in a core alphabet|
|US8583440||26 Aug 2005||12 Nov 2013||Tegic Communications, Inc.||Apparatus and method for providing visual indication of character ambiguity during text entry|
|US8583566||25 Feb 2011||12 Nov 2013||Veveo, Inc.||Methods and systems for selecting and presenting content based on learned periodicity of user content selection|
|US8589324 *||5 Feb 2013||19 Nov 2013||Veveo, Inc.||System and method for finding desired results by incremental search using an ambiguous keypad with the input containing typographic errors|
|US8605039||6 Mar 2009||10 Dec 2013||Zimpl Ab||Text input|
|US8606582||12 Oct 2012||10 Dec 2013||Tegic Communications, Inc.||Multimodal disambiguation of speech recognition|
|US8612210||13 Oct 2011||17 Dec 2013||Blackberry Limited||Handheld electronic device and method for employing contextual data for disambiguation of text input|
|US8677038||11 Mar 2013||18 Mar 2014||Blackberry Limited||Handheld electronic device and associated method employing a multiple-axis input device and learning a context of a text input for use by a disambiguation routine|
|US8688746||12 Feb 2013||1 Apr 2014||Veveo, Inc.||User interface methods and systems for selecting and presenting content based on user relationships|
|US8713432 *||10 Jun 2009||29 Apr 2014||Neuer Wall Treuhand Gmbh||Device and method incorporating an improved text input mechanism|
|US8725753||5 Sep 2012||13 May 2014||International Business Machines Corporation||Arrangements of text type-ahead|
|US8745018||10 Jul 2009||3 Jun 2014||Google Inc.||Search application and web browser interaction|
|US8745168 *||10 Jul 2009||3 Jun 2014||Google Inc.||Buffering user interaction data|
|US8782568||23 Jan 2013||15 Jul 2014||Nuance Communications, Inc.||Explicit character filtering of ambiguous text entry|
|US8799804||1 Apr 2011||5 Aug 2014||Veveo, Inc.||Methods and systems for a linear character selection display interface for ambiguous text input|
|US8825484 *||23 Sep 2011||2 Sep 2014||Canon Kabushiki Kaisha||Character input apparatus equipped with auto-complete function, method of controlling the character input apparatus, and storage medium|
|US8825576||5 Aug 2013||2 Sep 2014||Veveo, Inc.||Methods and systems for selecting and presenting content on a first system based on user preferences learned on a second system|
|US8886642||22 Apr 2013||11 Nov 2014||Veveo, Inc.||Method and system for unified searching and incremental searching across and within multiple documents|
|US8892446||21 Dec 2012||18 Nov 2014||Apple Inc.||Service orchestration for intelligent automated assistant|
|US8893023||13 Dec 2011||18 Nov 2014||Google Inc.||Method and system for predicting text|
|US8896469 *||4 Jan 2012||25 Nov 2014||Blackberry Limited||Reduced keyboard character selection system and method|
|US8903716||21 Dec 2012||2 Dec 2014||Apple Inc.||Personalized vocabulary for digital assistant|
|US8930181||6 Dec 2012||6 Jan 2015||Prashant Parikh||Automatic dynamic contextual data entry completion|
|US8930191||4 Mar 2013||6 Jan 2015||Apple Inc.||Paraphrasing of user requests and results by automated digital assistant|
|US8938688 *||21 Apr 2006||20 Jan 2015||Nuance Communications, Inc.||Contextual prediction of user words and user actions|
|US8942986||21 Dec 2012||27 Jan 2015||Apple Inc.||Determining user intent based on ontologies of domains|
|US8943083||15 Nov 2011||27 Jan 2015||Veveo, Inc.||Methods and systems for segmenting relative user preferences into fine-grain and coarse-grain collections|
|US8949231||7 Mar 2013||3 Feb 2015||Veveo, Inc.||Methods and systems for selecting and presenting content based on activity level spikes associated with the content|
|US8965754||20 Nov 2012||24 Feb 2015||International Business Machines Corporation||Text prediction using environment hints|
|US8972245||20 Aug 2013||3 Mar 2015||International Business Machines Corporation||Text prediction using environment hints|
|US8972905||13 Jun 2014||3 Mar 2015||Nuance Communications, Inc.||Explicit character filtering of ambiguous text entry|
|US8990738||13 Jun 2014||24 Mar 2015||Nuance Communications, Inc.||Explicit character filtering of ambiguous text entry|
|US8994660||29 Aug 2011||31 Mar 2015||Apple Inc.||Text correction processing|
|US9075861||15 Nov 2011||7 Jul 2015||Veveo, Inc.||Methods and systems for segmenting relative user preferences into fine-grain and coarse-grain collections|
|US9086775||10 Jul 2009||21 Jul 2015||Google Inc.||Minimizing software based keyboard|
|US9086802||26 Jul 2012||21 Jul 2015||Apple Inc.||Method, device, and graphical user interface providing word recommendations for text input|
|US9087109||7 Feb 2014||21 Jul 2015||Veveo, Inc.||User interface methods and systems for selecting and presenting content based on user relationships|
|US9092503||6 May 2013||28 Jul 2015||Veveo, Inc.||Methods and systems for selecting and presenting content based on dynamically identifying microgenres associated with the content|
|US9117447||21 Dec 2012||25 Aug 2015||Apple Inc.||Using event alert text as input to an automated assistant|
|US9128987||15 Feb 2013||8 Sep 2015||Veveo, Inc.||Methods and systems for selecting and presenting content based on a comparison of preference signatures from multiple users|
|US9166714||10 Sep 2010||20 Oct 2015||Veveo, Inc.||Method of and system for presenting enriched video viewing analytics|
|US9177081||1 Apr 2013||3 Nov 2015||Veveo, Inc.||Method and system for processing ambiguous, multi-term search queries|
|US9183655||14 Mar 2013||10 Nov 2015||Semantic Compaction Systems, Inc.||Visual scenes for teaching a plurality of polysemous symbol sequences and corresponding rationales|
|US9189079||2 Dec 2011||17 Nov 2015||Apple Inc.||Method, system, and graphical user interface for providing word recommendations|
|US9202298||14 Mar 2013||1 Dec 2015||Semantic Compaction Systems, Inc.||System and method for effectively navigating polysemous symbols across a plurality of linked electronic screen overlays|
|US9208594||14 Mar 2013||8 Dec 2015||Semantic Compactions Systems, Inc.||Apparatus, computer readable medium and method for effectively using visual indicators in navigating polysemous symbols across a plurality of linked electronic screen overlays|
|US9213755||7 Mar 2013||15 Dec 2015||Veveo, Inc.||Methods and systems for selecting and presenting content based on context sensitive user preferences|
|US9223873||22 Jan 2014||29 Dec 2015||Veveo, Inc.||Method and system for incrementally selecting and providing relevant search engines in response to a user query|
|US9229925||26 Jul 2013||5 Jan 2016||Semantic Compaction Systems Inc.||Apparatus, method and computer readable medium for a multifunctional interactive dictionary database for referencing polysemous symbol|
|US9237224 *||3 May 2011||12 Jan 2016||Padmanabhan Mahalingam||Text interface device and method in voice communication|
|US9239824||14 Mar 2013||19 Jan 2016||Semantic Compaction Systems, Inc.||Apparatus, method and computer readable medium for a multifunctional interactive dictionary database for referencing polysemous symbol sequences|
|US9244536||2 Dec 2011||26 Jan 2016||Apple Inc.||Method, system, and graphical user interface for providing word recommendations|
|US9251137 *||21 Jun 2007||2 Feb 2016||International Business Machines Corporation||Method of text type-ahead|
|US9251237 *||11 Sep 2012||2 Feb 2016||International Business Machines Corporation||User-specific synthetic context object matching|
|US9262612||21 Mar 2011||16 Feb 2016||Apple Inc.||Device access using voice authentication|
|US9300784||13 Jun 2014||29 Mar 2016||Apple Inc.||System and method for emergency calls initiated by voice command|
|US9318108||10 Jan 2011||19 Apr 2016||Apple Inc.||Intelligent automated assistant|
|US9330720||2 Apr 2008||3 May 2016||Apple Inc.||Methods and apparatus for altering audio output signals|
|US9336198||26 Jul 2013||10 May 2016||Semantic Compaction Systems Inc.||Apparatus, computer readable medium and method for effectively navigating polysemous symbols across a plurality of linked electronic screen overlays, including use with visual indicators|
|US9338493||26 Sep 2014||10 May 2016||Apple Inc.||Intelligent automated assistant for TV user interactions|
|US9368114||6 Mar 2014||14 Jun 2016||Apple Inc.||Context-sensitive handling of interruptions|
|US20050283358 *||26 Aug 2005||22 Dec 2005||James Stephanick||Apparatus and method for providing visual indication of character ambiguity during text entry|
|US20060101504 *||15 Aug 2005||11 May 2006||Veveo.Tv, Inc.||Method and system for performing searches for television content and channels using a non-intrusive television interface and with reduced text input|
|US20060217953 *||8 Jun 2006||28 Sep 2006||Prashant Parikh||Automatic dynamic contextual data entry completion system|
|US20060247915 *||21 Apr 2006||2 Nov 2006||Tegic Communications, Inc.||Contextual Prediction of User Words and User Actions|
|US20060265208 *||18 May 2005||23 Nov 2006||Assadollahi Ramin O||Device incorporating improved text input mechanism|
|US20070168366 *||13 Jan 2006||19 Jul 2007||Vadim Fux||Handheld electronic device and method for disambiguation of text input providing artificial variants comprised of characters in a core alphabet|
|US20070237310 *||30 Mar 2006||11 Oct 2007||Schmiedlin Joshua L||Alphanumeric data entry apparatus and method using multicharacter keys of a keypad|
|US20070255693 *||30 Mar 2007||1 Nov 2007||Veveo, Inc.||User interface method and system for incrementally searching and selecting content items and for presenting advertising in response to search activities|
|US20070266406 *||2 May 2007||15 Nov 2007||Murali Aravamudan||Method and system for performing actions using a non-intrusive television with reduced text input|
|US20080001788 *||26 Jun 2007||3 Jan 2008||Samsung Electronics Co., Ltd.||Character input method and mobile communication terminal using the same|
|US20080010054 *||31 Jul 2007||10 Jan 2008||Vadim Fux||Handheld Electronic Device and Associated Method Employing a Multiple-Axis Input Device and Learning a Context of a Text Input for Use by a Disambiguation Routine|
|US20080072143 *||15 Nov 2007||20 Mar 2008||Ramin Assadollahi||Method and device incorporating improved text input mechanism|
|US20080167858 *||5 Jan 2007||10 Jul 2008||Greg Christie||Method and system for providing word recommendations for text input|
|US20080168366 *||5 Jan 2007||10 Jul 2008||Kenneth Kocienda||Method, system, and graphical user interface for providing word recommendations|
|US20080310723 *||18 Jun 2007||18 Dec 2008||Microsoft Corporation||Text prediction with partial selection in a variety of domains|
|US20080313174 *||23 May 2008||18 Dec 2008||Veveo, Inc.||Method and system for unified searching across and within multiple documents|
|US20080313564 *||23 May 2008||18 Dec 2008||Veveo, Inc.||System and method for text disambiguation and context designation in incremental search|
|US20080313574 *||20 May 2008||18 Dec 2008||Veveo, Inc.||System and method for search with reduced physical interaction requirements|
|US20080320411 *||21 Jun 2007||25 Dec 2008||Yen-Fu Chen||Method of text type-ahead|
|US20090106695 *||21 Nov 2007||23 Apr 2009||Hagit Perry||Method and system for predicting text|
|US20090174667 *||30 Jun 2008||9 Jul 2009||Kenneth Kocienda||Method, Device, and Graphical User Interface Providing Word Recommendations for Text Input|
|US20090182741 *||16 Jul 2009||International Business Machines Corporation||Systems and Arrangements of Text Type-Ahead|
|US20090201255 *||24 Nov 2008||13 Aug 2009||Compal Communications, Inc.||Input device and operating method thereof|
|US20090217203 *||5 May 2009||27 Aug 2009||Veveo, Inc.||Methods and systems for segmeting relative user preferences into fine-grain and course-grain collections|
|US20090271700 *||29 Oct 2009||Yen-Fu Chen||Text type-ahead|
|US20100070855 *||20 Nov 2009||18 Mar 2010||Prashant Parikh||Automatic dynamic contextual data entry completion system|
|US20100122164 *||20 Jan 2010||13 May 2010||Tegic Communications, Inc.||Contextual prediction of user words and user actions|
|US20100153380 *||18 Dec 2009||17 Jun 2010||Veveo, Inc.||System And Method For Finding Desired Results By Incremental Search Using An Ambiguous Keypad With The Input Containing Orthographic And/Or Typographic Errors|
|US20100174529 *||16 Mar 2010||8 Jul 2010||Ethan Robert Bradford||Explicit Character Filtering of Ambiguous Text Entry|
|US20100180219 *||15 Jul 2010||Samsung Electronics Co., Ltd.||Apparatus and method for providing user interface|
|US20100188358 *||18 Mar 2010||29 Jul 2010||Kenneth Kocienda||User Interface Including Word Recommendations|
|US20100225599 *||6 Mar 2009||9 Sep 2010||Mikael Danielsson||Text Input|
|US20100318576 *||16 Dec 2010||Samsung Electronics Co., Ltd.||Apparatus and method for providing goal predictive interface|
|US20100325111 *||1 Sep 2010||23 Dec 2010||Veveo, Inc.||Methods and Systems for Selecting and Presenting Content Based on Context Sensitive User Preferences|
|US20110131161 *||2 Jun 2011||Veveo, Inc.||Methods and Systems for Selecting and Presenting Content on a First System Based on User Preferences Learned on a Second System|
|US20110191331 *||4 Aug 2011||Veveo, Inc.||Method of and System for Enhanced Local-Device Content Discovery|
|US20110191332 *||4 Aug 2011||Veveo, Inc.||Method of and System for Updating Locally Cached Content Descriptor Information|
|US20110197128 *||10 Jun 2009||11 Aug 2011||EXBSSET MANAGEMENT GmbH||Device and Method Incorporating an Improved Text Input Mechanism|
|US20120084075 *||23 Sep 2011||5 Apr 2012||Canon Kabushiki Kaisha||Character input apparatus equipped with auto-complete function, method of controlling the character input apparatus, and storage medium|
|US20120105327 *||4 Jan 2012||3 May 2012||Mihal Lazaridis||Reduced keyboard character selection system and method|
|US20120284024 *||3 May 2011||8 Nov 2012||Padmanabhan Mahalingam||Text Interface Device and Method in Voice Communication|
|US20130189654 *||16 Jan 2013||25 Jul 2013||Adjelia Learning, Inc.||Vocabulary learning system and method|
|US20130253908 *||25 Apr 2012||26 Sep 2013||Google Inc.||Method and System For Predicting Words In A Message|
|US20140074833 *||11 Sep 2012||13 Mar 2014||International Business Machines Corporation||User-specific synthetic context object matching|
|US20150169537 *||13 Dec 2013||18 Jun 2015||Nuance Communications, Inc.||Using statistical language models to improve text input|
|U.S. Classification||341/22, 455/414.1, 715/708, 710/67, 455/412.2, 704/10|
|International Classification||H03K17/94, G06F17/27, G06F3/023|
|Cooperative Classification||G06F17/276, G06F3/0233, G06F3/0235, G06F3/0237|
|European Classification||G06F3/023M, G06F3/023M8, G06F3/023M4, G06F17/27P|
|21 Jul 2004||AS||Assignment|
Owner name: AMERICA ONLINE, INCORPORATED, VIRGINIA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KAY, DAVID JON;BRADFORD, ETHAN R.;PEDDIE, PETER C.;AND OTHERS;REEL/FRAME:014879/0041;SIGNING DATES FROM 20040610 TO 20040618
Owner name: AMERICA ONLINE, INCORPORATED,VIRGINIA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KAY, DAVID JON;BRADFORD, ETHAN R.;PEDDIE, PETER C.;AND OTHERS;SIGNING DATES FROM 20040610 TO 20040618;REEL/FRAME:014879/0041
|1 Feb 2007||AS||Assignment|
Owner name: AOL LLC, VIRGINIA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:AMERICA ONLINE, INC.;REEL/FRAME:018837/0141
Effective date: 20060403
Owner name: AOL LLC,VIRGINIA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:AMERICA ONLINE, INC.;REEL/FRAME:018837/0141
Effective date: 20060403
|23 Feb 2007||AS||Assignment|
Owner name: AOL LLC, A DELAWARE LIMITED LIABILITY COMPANY (FOR
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:AMERICA ONLINE, INC.;REEL/FRAME:018923/0517
Effective date: 20060403
|13 Jun 2007||AS||Assignment|
Owner name: TEGIC COMMUNICATIONS, INC., WASHINGTON
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:AOL LLC, A DELAWARE LIMITED LIABILITY COMPANY (FORMERLY KNOWN AS AMERICA ONLINE, INC.);REEL/FRAME:019425/0489
Effective date: 20070605
Owner name: TEGIC COMMUNICATIONS, INC.,WASHINGTON
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:AOL LLC, A DELAWARE LIMITED LIABILITY COMPANY (FORMERLY KNOWN AS AMERICA ONLINE, INC.);REEL/FRAME:019425/0489
Effective date: 20070605
|21 Aug 2013||FPAY||Fee payment|
Year of fee payment: 4
|23 Jan 2014||AS||Assignment|
Owner name: NUANCE COMMUNICATIONS, INC., MASSACHUSETTS
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:TEGIC INC.;REEL/FRAME:032122/0269
Effective date: 20131118