Patent ID: 8677236

Claim:
A system for location-aware word prediction, said system comprising: a memory area for storing input history data associated with words, one or more geographic locations in which the words were previously input by a user, and one or more previous recipients of the words, the input history data comprising the words, wherein each word has a user attribute, a recipient attribute, and a geographic location attribute; and a processor programmed to: receive one or more words in a first message to one of the previous recipients, said first message being composed by the user while in a geographic location; create the input history data comprising received words each word of the received words having the user attribute associating the user with the word, the recipient attribute associating said one of the previous recipient with the word, and the geographic location attribute associating the geographic location with the word; store the created input history data in the memory area; subsequently receive text input from the user, said user composing a second message to said one of the previous recipients; search the stored input history data and select words for prediction based on the received text input, with probability of the prediction being higher for the selected words with the recipient attribute associated with said one of the previous recipients compared to other selected words; predict a plurality of words based on the selected words having the higher probability; determine a geographic location of the user responsive to the received text input; access the stored input history data in the memory area and identify at least one word from the predicted plurality of words, the at least one word having a geographic location attribute associated with the determined geographic location; rank the predicted plurality of words such that more weight is given to the identified at least one word compared to other of the predicted plurality of words; select one or more of the ranked words; and provide the selected one or more ranked words for display to the user, wherein the input history data stored in the memory area represent lexicon data, wherein the lexicon data is stored on a service accessible from a plurality of computing devices via a network, and wherein the lexicon data is used by one or more of the following in communication with the service: a speech recognition engine, a handwriting recognition engine, and a spell check engine.