Movatterモバイル変換


[0]ホーム

URL:


MXPA99006904A - Reduced keyboard disambiguating system - Google Patents

Reduced keyboard disambiguating system

Info

Publication number
MXPA99006904A
MXPA99006904AMXPA/A/1999/006904AMX9906904AMXPA99006904AMX PA99006904 AMXPA99006904 AMX PA99006904AMX 9906904 AMX9906904 AMX 9906904AMX PA99006904 AMXPA99006904 AMX PA99006904A
Authority
MX
Mexico
Prior art keywords
user
sequence
key
input
word
Prior art date
Application number
MXPA/A/1999/006904A
Other languages
Spanish (es)
Inventor
T King Martin
L Grover Dale
A Kushler Clifford
A Grunbock Cheryl
Original Assignee
Tegic Communications Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tegic Communications IncfiledCriticalTegic Communications Inc
Publication of MXPA99006904ApublicationCriticalpatent/MXPA99006904A/en

Links

Abstract

A reduced keyboard disambiguating system (50). The keyboard (54) has twelve keys (56, 60, 62, 64), nine of them labeled with numerous letters and other symbols, and those nine plus one more are labeled each with one of the ten digits. Textual entry keystrokes are ambiguous. The user strikes a delimiting"Select"key (60) at the end of each word, delimiting a keystroke sequence that could match any of many words with the same number of letters. The keystroke sequence is processed with a complete vocabulary, and words which match the sequence of keystrokes are presented to the user in order of decreasing frequency of use. In addition, stems of longer words whose initial letters match the sequence of keystrokes are also presented to the user in order of decreasing frequency of use. The first work (78) in the presented list (76) is automatically selected by the input of the first character in the next word. The letters are assigned to the keys in a non-sequential order which reduces chances of ambiguities. The"Select"key (60) is pressed to select the desired word other than the first word, and spacing between words and punctuation is automatically computed. For words which are not in the vocabulary, a simultaneous unambiguous interpretation of each keystroke is performed to specify each letter of a desired word. The system simultaneously interprets all keystroke sequences as both ambiguous and unambiguous keystrokes. The user selects the desired interpretation. The system also presents to the user the number which is represented by the sequence of keystrokes for possible selection by the user.

Description

REDUCED KEYBOARD SYSTEM WITH ELIMINATION OF AMBIGUEDADESFIELD OF THE INVENTION The invention relates in general to reduced keyboard systems, that is, with fewer keys and, more specifically, with reduced keyboard systems that use elimination of word level ambiguities to solve ambiguous typing.
BACKGROUND OF THE INVENTION For many years, laptops have been reduced in size and size. The main limiting component of the size in order to produce a laptop to a smaller size has been the keyboard. If standard size typewriter keys are used, the laptop should at least be the size of a keyboard. Miniature keyboards have been used in laptops but the miniature keyboard keys have been too small to be easily or quickly manipulated by a user. The addition of a full-size keyboard on a laptop also prevents the true portable use of the computer. Most laptops can not be operated without the computer having to be placed on a flat work surface to allow the user to write with both hands. A user can not easily use a laptop while standing or moving. In the latest generation of small laptops, the so-called personal digital assistants (PDAs) have tried to solve this problem by incorporating handwriting recognition software into the PDA. A user can directly enter text by writing it on a panel or a touch screen. This handwritten text is then converted into digital data by means of recognition software. Unfortunately, in addition to the fact that printing or writing with a pen in general is slower than writing with the keys, the accuracy and speed of handwriting recognition software to date has been less satisfactory. To make matters worse, computer devices that are hand-held and used today and that require text entry are becoming even smaller. Recent advances in cell phones and bidirectional radiolocation and other portable wireless technologies have led to a demand for smaller and more portable bidirectional message delivery systems and especially systems that can both send and receive electronic mail ("e- mail "). Therefore, it would be advantageous to develop a keyboard for entering text into a computer that was both small and operable with one hand while the user is holding the computer with the other hand. The previous development work has considered the use of a keyboard that has a reduced number of keys. As suggested by the display of keys of a telephone for multifrequency dialing, many of the reduced keyboards have used an arrangement of 3 by 4 keys. Each key of the key arrangement contains multiple characters. Therefore, there is ambiguity as the user enters a sequence of keys, since each click can indicate one of several letters. Several approaches have been suggested to resolve the ambiguity of the typing sequence.
A suggested approach to unambiguously specifying the characters entered into a reduced keyboard requires that the user make two or more clicks to specify each letter. Typing can be entered either simultaneously (key combination) or sequentially (multiple click specification). Neither the combination nor the multiple click specification has produced a keyboard that has the simplicity and efficiency suitable for its use. The multiple click specification is not efficient and the combined click is complicated to learn and use. Other suggested approaches to determine the correct sequence of characters corresponding to an ambiguous key sequence are summarized in the article "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 uhammad Y. Javad) (hereinafter the" Arnott article "). The article Arnott notes that most aaches to elimination of Ambiguity uses known statistics of character sequences in the relevant language to resolve the ambiguity of characters in a specific context, that is, existing ambiguity elimination systems statistically analyze groups of ambiguous keystrokes as they are being entered by the user. In order to determine the proper interpretation of the typing, the article Arnott also points out that several systems of elimination of ambiguity have tried to use the elimination of ambiguity at the word level to decode text from a 3breduced keyboard. The word level ambiguity elimination eliminates the ambiguity of complete words by comparing the sequence of the received typing with possible matches in a dictionary after the reception of an unambiguous character that signifies the end of the word. The Arnott article discusses many of the disadvantages of word level ambiguity elimination. For example, the elimination of word level ambiguity does not normally decode a word correctly, due to the limitations in identifying unusual words and the inability to decode words that are not contained in the dictionary. Due to the limitations of decoding, word level ambiguity elimination does not provide error-free decoding in unrestricted English text, with one click efficiency per character. The Arnott article focuses, therefore, on the elimination of ambiguity at the character level and not on the elimination of word level ambiguity, and indicates that the elimination of ambiguity at the character level seems to be the most promising ambiguity elimination technique . A suggested approach based on the elimination of ambiguity at the word level is set forth in the textbook entitled Principies of Computer Speech, written by I. H. itten, and published by Academic Press in 1982 (hereinafter referred to as the "Witten approach"). Witten analyzes a system to reduce ambiguity from text entered using a telephone keypad. Witten recognizes that for approximately 92% of words in a 3c dictionaryof 24,500 words, there will be no ambiguity when comparing the typing sequence with the dictionary. Nevertheless,When ambiguities arise, Witten points out that these 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, therefore, must respond to the prediction of the system at the end of each word. This response slows down the efficiency of the system and increases the number of keystrokes required to enter a specific segment of the text. Another example of the interactive approach to resolving ambiguities is described in U.S. Patent No. 5,200,988, which discloses a telecommunications device that is interconnected between a telephone and that uses dual tone multiple frequency (DTMF), in marking signals and a telephone line. When the keys of the telephone keypad are activated sequentially to spell a complete word, a corresponding ambiguous signal sequence is stored in the telecommunications device, which indicates the dialing sequence by displaying the sequence of dialed numbers. If the numerical sequence displayed corresponds to the marking pattern that the user wanted, a "full word" key is activated and the sequence of the DTMF signals corresponding to the user's input sequence is transmitted to a remote dictionary database. The database is analyzed to locate a word or words that match the DTMF signal sequence and a signal representing the most commonly used matching word is transmitted back and displayed by the telecommunications device. If the word displayed is the word that the user wanted, the user activates a key to accept the word. If the word displayed is not the desired word, the user activates a key to reject the word, which sends a signal to the database to provide a signal representative of the word coinciding with the next highest frequency, to be reviewed by the user. user. In the exposed arrangement, the process continues until the desired match is achieved. European patent application No. EP 0 732 646 discloses an ambiguity elimination arrangement at the word level using 12 input keys configured in the same way as a standard telephone keypad. Working, the keys are operated to generate an ambiguous input sequence and a "conversion key" ("*" key) is activated to initiate an ambiguity elimination process. If several candidates are stored in the system memory, the conversion key is also used to return to memory and retrieve the next candidate (in order to provide a sequential display of the potential textual output). When the desired word is displayed to the user, the "decision key (" # "key) is activated to select and confirm the word displayed as the word the user wants, In an exposed variation, the word candidates are displayed with the input of each click, ie without activating the conversion key, however, the elimination of ambiguity and the display of the candidate words is limited to words of the same length as the number of clicks that have been made. this particular variation does not provide a display that allows the user to quickly determine that the desired keys have been activated (ie no typing error has been made.) The elimination of ambiguity in an ambiguous key sequence continues to be a challenging problem. As noted in the previous analysis, satisfactory solutions that minimize the number of keystrokes required to enter a text segment, have not The necessary efficiencies for a reduced keyboard with elimination of ambiguities that might be acceptable for use in a portable computer. A challenge faced by any word level ambiguity elimination application is to provide sufficient feedback to the user regarding the sequence of keystrokes being entered. With a common word processor or with a common typewriter, each click represents a unique character that can be displayed to the user as soon as typing is entered. But with the elimination of word level ambiguity, this is usually not possible, since each click represents several characters and any sequence of clicks may coincide with multiple words or roots of words. This is especially a problem when the user commits a spelling or typing error, since the user can not be sure that an error has occurred until the typing sequence ends and he enters it and the desired word does not appear. In addition, recent publications have shown that the use of word level ambiguity elimination moves away and has focused on ambiguity elimination techniques at the character level. Therefore, it is desirable to develop a system of elimination of ambiguity that minimizes the ambiguity in typing entered and also increases to the maximum the efficiency with which the user can resolve any ambiguity that may arise during the entry of the text.
SUMMARY OF THE INVENTION The present invention provides a keyboard 8reduced that uses ambiguity elimination at word level to resolve ambiguities in typing while simultaneously allowing the user to operate the invention in a way that interprets keystrokes as a non-ambiguous specification of a specific character of the plurality of characters that are associated with the key that is being operated. In one embodiment, the system includes a presentation panel that is touch-sensitive, where contact with the surface of the screen generates input signals to the system, which corresponds to the contact location. An illustrated keyboard image in which a plurality of characters (eg, letters of the alphabet) is associated with each key, allows the user of the system to input data in an unambiguous mode of operation by sequentially making contact with the keys so that the specific characters are selected. For example, in an arrangement of the invention, a specific character is selected by contacting the portion of the key exhibiting the desired character. In another arrangement, the multiple-click method of unambiguous character selection is also used. In any case, the invention operates simultaneously as a reduced ambiguity eliminator keyboard system, where each typing is interpreted as the ambiguous indication of an unspecified character of the key being operated. By displaying the textual output obtained by interpreting the input sequence as a non-ambiguous specification and as an ambiguous input, the invention can be used in a wide variety of situations and in a wide range of users. There are several ways in which the invention can be incorporated, both in relation to input arrays with touch sensitive screens and in electromechanical keyboard devices and in other arrangements. In a preferred embodiment, nine letter keys and symbols are grouped in a three-by-three arrangement along three to six additional special function keys. A plurality of letters and symbols are assigned to some of the keys, so that typing these keys (in the following "data keys") is ambiguous. A user can enter a typing sequence where each key corresponds to the entry of a letter of a word. As the individual click is ambiguous, the click sequence can potentially coincide with more than one word with the same number of letters. The typing sequence is processed by vocabulary modules that match the sequence of corresponding stored words or other interpretations. The words that match the typing sequence are presented to the user in a selection list on the screen as they are received 10every click. According to one aspect of the invention, the typing sequence can represent both letters and digits. The typing sequence is interpreted simultaneously as a number and as one or more words. Alternative interpretations of the typing sequence can also be provided to the user in the selection list. According to another aspect of the invention, the word interpretations are presented in order of descending frequency of use, with the words most commonly used being presented first. The words in the selection list are selected by pressing the Select key one or more times. Typing can be "undone" by pressing the Backspace key. According to another aspect of the invention, the user presses the Select (select) key to delimit a typed sequence entered. After receiving the Select key, the ambiguity eliminator system selects the most frequently used word and adds the word to the sentence that is being constructed. The Select key also serves to generate a space after the selected word, that is, the reduced typing system with ambiguity elimination automatically inserts the appropriate spaces between the words. According to another aspect of the invention, the Select key is also used to select less commonly used words that are presented in the selection list to the user. If the word presented to the user 10aAt the beginning of the selection list is not the desired word, the user presses the Select key one more time to advance from the word most frequently used to the word that occupies the second place in frequency of use, and once again to advance to the third word with the most frequency of use and so on. This system mode of reduced keyboard with ambiguity elimination does not have an exclusive key to "execute" or "accept" that acts on an option once selected. Once the desired word has been selected by the user, it is added to the sentence that is being composed when the next symbol or character typing is received. According to still another aspect of the invention, the user can select a desired word or other interpretation of the selection list by simply touching it on the screen. When a word is selected in this form before the activation of the Select key, the selected word is placed at the insertion point in the output document without adding a space. Alternatively, touching the screen anywhere other than the keyboard that is displayed or in the selection list, has the effect of accepting the current word or symbol in the selection list. The selection list also includes a slide control button to manually scroll additionally less commonly used words on the screen to make the selection. According to yet another aspect of the invention, the user can select a previously generated word in the output text area by making a double 10bhit on the word. The system then resets the selection list in the same state in which the selected word was generated. Alternatively, the caret symbol displayed on the screen or the editing cursor may be repositioned by a single stroke in the text area. Tapping the selection list area when it is empty causes the system to identify the word closest to the position of the caret and reset the selection list for the word. The Select key can be activated to move it forward again through the list ofelevenselection. The user can also replace the word in which he gave a double hit by touching only one desired word different in the selection list. Still in another mode, after making one or two punches in a word and resetting the selection list, a single repeated hit on the word is interpreted as the activation of the Select key and replaces the word with the next word of the word. list. According to still another additional aspect of the invention, several interpretations of the typing sequence are provided for the user to observe in the selection list. The typing sequence can be interpreted as the formation of one or more words and these corresponding words are displayed in the selection list. Simultaneously, the typing sequence can be interpreted as a number and this number is also displayed as one of the points in the selection list. Additionally, a typing sequence can be interpreted as a word entered using an unambiguous spelling method, such as the root of an incomplete word, and as a system command. These multiple interpretations are presented simultaneously to the user when each of the keys entered by the user is received. The user can select among the alternative interpretations by pressing the key 12Select several times, or by directly touching the desired interpretation in the selection list presented on a touch-sensitive screen. According to still another aspect of the invention, a method is provided for entering new words that are not contained in the vocabulary of the system, using a method of specifying multiple clicks. In this method, a sequence of clicks is interpreted as a non-ambiguous specification of a specific sequence of alphabetic characters, as it is required to press a key several times to identify which of the symbols of the key is desired. A symbol can be specified unambiguously by pressing the key a number of times equal to the order of appearance of the symbol on the key. For example, a data key could contain three letters in a horizontal row, followed by a single digit. The first letter in the row would be specified with a single click, the second letter with two clicks, the third letter with three clicks and the digit with four clicks. The interpretation of multiple keystrokes of each keystroke sequence was developed, therefore, by means of a reduced keyboard system with elimination of ambiguity and is automatically presented to the user in the selection list. According to another additional aspect of the 13present invention, the system provides visual feedback to the user regarding the interpretation of multiple keystrokes of the typing sequence being entered. This is achieved by highlighting or visually indicating which symbols of the key that is being pressed have been selected if the key sequence is being interpreted as an input of several unambiguous clicks. According to another aspect of the invention, the letters that are presented on each key are arranged from left to right in order of frequency reduction, so that the letter that appears most frequently is the one that is furthest to the left. The invention, thanks to the arrangement of letters in each key according to the frequency of the letter, requires minor keystrokes to enter data in an unambiguous manner with multiple keystrokes, with respect to the data input that is made with a standard keyboard. multifrequency tones. In accordance with yet another aspect of the invention, when two successive letters in a word appear on the same key, a pause is used in the typing sequence to distinguish the multiple-click entry of the two letters. The magnitude of the delay required to separate and distinguish multiple entries of letters in the same key is adjusted by the user in a 14system menu. The system can provide the user with either an audible or visual indication that the time delay has ended. In still another aspect of the invention, the system captures time data relative to the time of keystrokes and the time between successive keystrokes to the same key. When the user selects and accepts a multi-key interpretation of a key sequence to which an output is output, the recorded time intervals are used to update a calculated average time interval that is running. At the user's option, the system can then use the calculated value to dynamically update the minimum delay period. In one embodiment, for example, the minimum elapsed delay period is set to 1.5 times the calculated average time interval. According to another additional aspect of the invention, a method is provided for entering words not contained in the vocabulary, using a direct pointing method. Each key of the touch screen is divided into regions, each region contains a symbol. The user touches each key precisely, touching in a specific way directly on the region where the desired symbol appears. When a key is touched, the symbol that will be selected through this 15Direct signage method will be highlighted. Once a key is touched, the pen or fingertip can slide across the surface of the key until the desired symbol of the key has been highlighted. When the pen or fingertip is raised from the surface of the touch-sensitive screen, the selected symbol is added to the end of the current object with unambiguous spelling and the highlight is removed from both the selected symbol and the selected key. Preferably, the direct pointing method is only one of the multiple interpretations offered simultaneously to the user to make the selection. According to still another aspect of the invention, unambiguous keys are grouped into adjacent key sets, with each group representing a larger key that is possibly ambiguous because it includes more than one underlying key. The result is two keyboards, comprised of an ambiguous keyboard superimposed on an unambiguous keyboard, on which each key can be interpreted simultaneously as a typing on one of the superimposed keys and as an unambiguous typing on one of the underlying keys. In an alternative embodiment, a special key may be provided to switch between a keyboard display based on a set of ambiguous data keys and an alternate keyboard consisting of a keypad.greater number of unambiguous data keys, each of which is proportionally smaller and contains only one letter. According to yet another aspect of the invention, the user touches the key containing the desired letter or symbol and indicates the symbol with a short drag movement in the plane of the screen. All the symbols of a key have an associated typing address. For example, on a key containing three symbols, the symbol on the left could be indicated by touching the key and sliding it to the left, the symbol on the right could be indicated by touching the key and sliding it to the right, and the center symbol , possibly the one that is used more frequently, could be indicated by touching and releasing the key without any lateral movement. When the pen or fingertip is lifted from the surface of the touch-sensitive screen, the selected symbol is added to the end of the current non-ambiguous spelling object. According to another aspect of the invention, the words that are entered by the user using a preferred method of unambiguous spelling are displayed in a unique and distinct location in the selection list, preferably at the far right of the list, visually separated from other articles of the 17list. Displayed words generated by an unambiguous interpretation of the spelling method in the right-hand click sequence lessens the distractions that the presence of the word may cause when the user is not trying to use the unambiguous spelling method and confirms that the intended word is being written. According to another additional aspect of the invention, the words that are not in a vocabulary module that are entered either by the user using an unambiguous spelling method or are found in a text article that is being edited, are added automatically to a vocabulary module. The added words can then be written using the standard method of just one click per letter. According to yet another aspect of the invention, the keys used for the ambiguity eliminator system can be assigned to a single and easily recognized gestural symbology that can be performed on a touch-sensitive surface with either a pen or the tip of the finger. Each gesture or stroke is equivalent to pressing a key. Using gestures in this way can reduce the space required to implement the system compared to the use of individual keys. This technique can be combined with 18-way recognition systemscharacters based on clicks that are currently offered on some portable devices. According to yet another aspect of the invention, the words are stored in a vocabulary module that uses a data structure in the form of a tree. The words that correspond to a particular click sequence are constructed using the word play and the roots of words associated with the immediately previous click sequence (ie the particular click sequence without the last click). The construction of the words in this form reduces the storage space of the vocabulary module since the roots of the words are stored only once at the top of the tree structure and are shared for all the words constructed with them. The tree structure also greatly reduces processing requirements since no search is required to locate stored objects. The words and roots of words are stored in the data structure in the form of a tree and may contain frequency or other classification information that indicates which item will be displayed first to the user, thus reducing the processing requirements. According to yet another aspect of the invention, the words can be assigned to the keys in a 19non-sequential order. Instead of assigning the letters from "a" to "z", letters can be grouped on the keys in a way that reduces the frequency of ambiguities during word input. In particular, the letters can be assigned on the keys to take into account the frequency of use of each word in the vocabulary modules of the ambiguity elimination system. That is, the letters are grouped to reduce the ambiguity between words that are entered more frequently. The grouping of letters on the keys is therefore optimized with respect to one or more preferred vocabulary modules that include information regarding the frequency of common use. According to yet another aspect of the invention, it may be advantageous to use a keyboard in which the letters are assigned to the keys more or less sequentially from "a" to "z". A method to correctly determine from the context of the entry, which word of one or more ambiguous words is probably the desired word used in this case to enter the most likely word for the user first in the selection list. According to yet another aspect of the invention, the ambiguity-eliminating keyboard system can be used to edit and review existing documents. For example, in a radiolocator 20Two-way and portable bidirectional can be used to answer a received e-mail, where the reply is composed of the original message plus additional text added by the user. When the system opens an existing document it automatically scans and analyzes the text objects in the document and places these objects in a temporary dictionary that makes each object immediately available to the vocabulary of the system. That is, available for a typing by letter spelling (ambiguous). If any of these objects in the temporary vocabulary is used (that is, it is spelled by the user and selected from the output of the current document), and the word is still present in the current document at the time the document was closed , then the word moves from the Temporary Vocabulary to a permanent storage of Personal Vocabulary where it remains available to the user after the source document has been closed. In contrast, articles in the Temporary Vocabulary that are not spelled by the user while editing is being removed from memory and are not available after the document is closed. The combined effects of the non-sequential and optimized allocation of the letters for the keys, the delimitation of the words using the Select key 21(select), the presentation of the word that most commonly appears as the first word in the selection list, the inclusion of multiple interpretations in the selection list, the automatic addition of a selected word to a phrase by the first click of the Next word, and the automatic addition of the spaces produces a surprising result: for approximately 99% of the words entered, the same number of typing is required to enter a word with the keyboard system reduced with elimination of ambiguity than to enter a word. word with a conventional keyboard. When ambiguities are reduced and words are presented in the order of frequency of use, the most frequently desired word is the first word presented and often the only word presented. The user can then proceed to enter the next word with a number of clicks not greater than normal. The introduction of high-speed text is achieved, therefore, using a keyboard that has a small number of life-size keys. The reduced keyboard system with ambiguity elimination exposed here reduces the size of the computer or other device that it incorporates into the system. The reduced number of keys allows a device to be constructed so that the user can hold it in the hand whilewho is operating the same with the other hand. The exposed system is particularly advantageous for use with PDAs, bidirectional radiolocators or other small electronic devices that benefit from accurate, high-speed text input. The system can provide both efficiency and simplicity when implemented in a device based on a touch-sensitive screen.
BRIEF DESCRIPTION OF THE DRAWINGS The above aspects and many of the expected advantages of this invention will become more readily apparent as they are better understood in relation to the following detailed description, when taken in conjunction with the accompanying drawings, wherein: Figure IA is a schematic view of a preferred embodiment of a portable computer incorporating a reduced keyboard system with ambiguity elimination of the present invention; Figures 1B-1E are schematic views of alternative modes of the reduced keyboard in various modes of system operation; Figure 2 is a block diagram of the hardware of the keyboard system reduced with removal of 23ambiguity of Figure 1; Figure 3 is a flowchart of an ambiguity elimination software of the preferred embodiment for a reduced keyboard system with elimination of ambiguity; Figure 4A is a schematic view of the preferred embodiment of a reduced keyboard system editing mode with ambiguity elimination; Figure 4B is a perspective view of an alternative embodiment of a reduced keyboard system with ambiguity elimination; Figures 5A-5K are schematic views of the preferred embodiment of the reduced keyboard system with ambiguity elimination during representative use, - Figure 6A is a schematic view of a television remote control that includes a reduced keyboard system with elimination of ambiguity of the present invention; Figure 6B is a schematic view of a pulse clock having a reduced keyboard system with ambiguity elimination of the present invention; Figure 7 is a diagram of a reduced keyboard layout consisting of eight keys for people with disabilities; Figure 8A is a diagram of a mode of 24mechanical keys used with a system of the invention; Figure 8B is a side view of one of the keys of Figure 8A; Figure 8C is a schematic view of an alternative embodiment of a keyboard of the invention; Figure 8D is a schematic view showing the movements of one of the keys shown in Figure 8C; Figures 9A-9C are diagrams illustrating the construction of a preferred vocabulary module and lists of associated objects for the reduced keyboard system with ambiguity elimination; Figure 10 is a flowchart of a subroutine for identifying objects contained in the vocabulary module; and Figure 11 is a flow chart of a preferred method for identifying rules to reduce ambiguity.
DETAILED DESCRIPTION OF THE PREFERRED MODALITY I. Basic construction and operation system In relation to Figure IA, a system is formed50 of reduced keyboard with elimination of ambiguity according to the present invention, illustrated and incorporated into a laptop 52 of the palmtop type. The 25laptop 52 contains a reduced keyboard 54 implemented on a touch screen 53. For the purposes of this application, the term "keyboard" is broadly defined to include any input device that has defined areas, including a touch screen that It has defined areas for keys, discrete mechanical keys, membrane keys, etc. The keyboard 54 has a reduced number of data entry keys of a standard QWERTY keyboard. In the preferred embodiment, the keyboard contains twelve normal-size standard keys placed in four columns and three rows and an additional row of smaller 58 keys, for special purposes that are used less frequently, that appear at the top of the keyboard 54 More specifically, the preferred keyboard contains nine data keys 56 placed in a 3 by 3 array, and a left-hand column of three system keys 58, which include a select key 60, a shift key 62 and a Backspace key 64. A preferred arrangement of the letters on each key of the keyboard 54 is illustrated in Figure 1A. Figure IB shows an alternative optimized arrangement of the letters of each key of the keyboard 54, where the letters have been placed on the keys to decrease the total frequency of occurrence of words that do not appear first in the text.selection list. Figure 1C shows a preferred arrangement of the numeric digits associated with each key of the keyboard 54. Figure ID shows a preferred arrangement of some of the punctuation characters associated with each key on the keyboard 54 for the English language. Figure 1E shows a preferred arrangement of several special shapes of the base character 'a1, as an example of the way in which the diacritical marks are associated with each key of the keyboard 54. The data is entered into the ambiguity elimination system by means of clicks of the reduced keyboard 54. As a user enters a typing sequence using the keyboard, the text is displayed on the computer screen 53. Two regions are defined on the screen to display the information to the user. A region of upper text 66 that displays the text entered by the user and serves as a buffer of text entries and editing. A region of selection list 70, placed below the text region, provides a list of words and other interpretations corresponding to the typing sequence entered by a user. At the far right of region 70 of the selection list, a special region 72 is designed to display the unambiguous spelling interpretation of the current click sequence. As will be described with greater 27In the following, region 70 of the selection list helps the user to resolve the ambiguity of clicks entered. A block diagram of the reduced keyboard system equipment with ambiguity elimination is provided in Figure 2. The keyboard 54 and the display 53 are coupled to a processor 100 through suitable interface connection circuitry. A speaker 102 is also coupled to the processor. Processor 100 receives input from the keyboard and handles all outputs to the screen and to the speaker. The processor 100 is coupled to a memory 104. The memory includes a combination of temporary storage means, for example random access memory (RAM) and permanent storage means, for example read-only memory (ROM), floppy disks, hard disks or CD-ROMs. The memory 104 contains all the software routines that govern the operation of the system. Preferably, the memory contains an operating system 106, ambiguity removal software 108 and associated vocabulary modules 110 which are discussed in more detail below. Optionally, the memory may contain one or more application programs 112, 114. Examples of the application programs include word processors, software dictionaries and foreign language translators. The software of 28Speech or speech synthesis can also be provided as an application program, allowing the reduced keyboard system with ambiguity elimination to function as a communication aid. Returning to Figure 1A, the reduced keyboard system with ambiguity elimination 50 allows a user to quickly enter text or other data using only one hand. The data is entered using the data keys 56. Each of the data keys has multiple meanings, represented at the top of the key by multiple letters, numbers and other symbols. (For the purposes of this discussion, each data key will be identified by the symbols in the middle row of the data key, for example "ABC" to identify the upper left data key.) Since individual keys have multiple meanings, the typing sequences are ambiguous in their meaning. As the user enters the data, the various click interpretations are displayed in multiple regions of the screen to help the user resolve any ambiguities. A selection list 76 of possible interpretations of typed entries is provided to the user in region 70 of the selection list. The first entry or record 78 in the selection list is selected as a default interpretation 29and is displayed in the text region 66 at the insertion point 88. In the preferred embodiment, this entry or record is displayed with a box drawn with a solid line around it, both in the selection list 76 and in the dot Insertion 88. The format establishes a visual relationship between the object of the insertion point and the selection list and implies that this object is implicitly selected because it is the object that occurs most frequently in the current selection list. The selection list 76 of the possible interpretations of the keys entered can be arranged in several ways. In a normal mode of operation, keystrokes are interpreted initially as the input of letters to spell a word (hereinafter referred to as "word interpretation"). The entries 78, 79 and 80 of this selection list are, therefore, words that correspond to the typing sequence entered, the entries are ordered so that the most common word corresponds to the typing sequence that is in first place on the list. For example, as shown in Figure IA, the sequence of keystroke ABC, GHI, and DEF has been entered by a user. As the keys are operated, a vocabulary module search is performed simultaneously to locate the words that have 30Matching click sequences. The words identified in the vocabulary module are displayed to the user in the selection list 76. The words are classified according to the frequency of use, the most commonly used word is listed first. Using the example click sequence, the words "age", "aid" and "bid" were identified from the vocabulary module as the most likely words corresponding to the typing sequence. Of the three words identified, "age" is used more frequently than "aid" or "bid", so it is listed first in the selection list. The first word is also taken as a default interpretation and is provisionally placed as text at the insertion point 88. Before pressing the Select 60 key, this first word taken as the default interpretation is placed at the insertion point 88 and in the selection list 76 using an identical format. For example, as in Figure IA, the word appears as text within a box drawn with solid lines that is large enough to contain the word. In the preferred embodiment, after entry of the key sequence corresponding to the desired word, the user presses the 60 Select key. Pressing the Select key re-displays the first entry or record in the selection list 76 with a 31box around it, drawn with dashed lines and also the first entry at the insertion point 88 is again shown with a box formatted identicaand drawn around it. In a conceptual sense, the change from a continuous line box to a dotted line indicates that the text is very close to being accepted in the text that is being generated, having been explicitly selected when the user pressed the Select key. If the first entry in the selection list is the desired interpretation of the typing sequence, the user continues to enter the• next word using the data keys 56.
The system for eliminating ambiguity interprets the beginning of the next word as an affirmation that the currently selected entry (in this case, the first entry in the selection list) is the desired entry. The default word remains at the insertion point as the user selection, the surrounding box disappears completely and the word is displayed again in the normal text without any special format. If the first entry in the selection list is not the desired interpretation of the typing sequence, the user can review the items in the selection list step by step by repeatedly pressing the Select 60 key. For each activation of the Select key, the 32next entry in the selection list is pigeonholed with dotted lines and a copy of the entry is provisionacopied to the insertion point (replacing the word temporarily placed in previous form) and is pigeonholed with dotted lines. Provisional placement of the next entry in the text region allows the user to keep their attention in the text region without having to refer to the selection list. At the user's option, the system can also be configured so that, upon receiving the first activation of the Select key, the word temporarily placed at the insertion point can be expanded (verticaor horizonta to display a copy of the current selection list . The user can select the maximum number of words that will be displayed in this copy of the selection list. Alternatively, the user can choose to always display the selection list at the insertion point, even before the first activation of the Select key. If the second entry in the selection list is the desired word, the user proceeds to enter the next word after pressing the Select key twice and the ambiguity eliminator system automaticaplaces the second entry in the text region, in order to normal text If the second entry is not the 33desired word, the user can browse the selection list and press the Select a desired number of times key to select the desired entry before proceeding to enter the next word. When the end of the selection list is reached, the additional activation of the Select key causes the selection list to be moved and new entries added at the end of the selection list. Those entries that are at the beginning of the selection list are removed from the list displayed to the user. The entry selected by repeatedly activating the Select key is automaticaplaced in the text region when the user presses any data key 56 to continue entering the text. Alternatively, after entering the click sequence corresponding to the desired word, the user can select the desired word from the selection list by simply touching it. When a word is selected on this form before any activation of the Select key, the selected word is immediately placed at the insertion point without adding a space, and the selection list is deleted. The user then presses the Select key to generate a space that immediately outputs the text area at the insertion point 88. In most text entries, the 34Typing sequences given by the user tend to represent letters that form a word. However, it will be appreciated that the multiple symbols and characters associated with each key allows individual clicks and click sequences to have various interpretations. In the reduced preferred keyboard system with ambiguity elimination several different interpretations are automatically determined and displayed to the user at the same time that the typing sequence is interpreted and displayed to the user as a list of words. For example, the typing sequence is interpreted in terms of word roots that correspond to possible valid sequences of letters that a user can enter (hereinafter "root interpretation"). Unlike word interpretations, the roots of words are incomplete words. By indicating the possible interpretations of the last keystrokes, the roots of the word allow the user to confirm easily that the correct typing has been entered or that the writing is terminated when his attention has been diverted to the middle of the word. As shown in Figure 1A, the ABC key sequence GHI DEF has been interpreted as the formation of valid roots as "che" (leading to the word "check", "cheer", etc.) and "ahe" ( which leads to the word "ahead", "ahem", etc.). The 35Root interpretations, therefore, are provided as entries 81 and 82 in the selection list. Preferably, root interpretations are classified according to the composite frequency of the set of all possible words that can be generated from each root by additional clicks on the data keys. The maximum number and the minimum composite frequency of these inputs to be displayed can be selected by the user, so that some root interpretations are not displayed. In the current example, the roots "bif" that leads to the word "bifocals"), "cid" (which leads to the word "eider") and "bie" (which leads to the word "biennial") are not shown . When listing a root interpretation in the selected list, the root is omitted if a root interpretation duplicates a word that is displayed in the selection list. When the root is omitted, the word that corresponds to the omitted root can be marked with a symbol to show that there are also longer words that carry this word as its root. Root interpretations provide feedback to the user confirming that the correct keystrokes have been entered to lead to the entry of a desired word. In the preferred embodiment, each sequence of keystrokes on the data keys 56 is also interpreted 36simultaneously as the non-ambiguous specification of a string of alphabetic characters using the direct signal specification method. The data keys 56 contain up to three letters that are placed in a row at the top of each key. Each letter is placed in a different region of the key. For each key on one of the data keys 56, the direct-pointing specification method interprets each click as the unambiguous specification of the particular letter closest to the exact point on the touch-sensitive screen key, where the pen or the tip of the finger was removed from the key. It is advantageous to visually show the user which letter is selected. This can be done by highlighting the region in which the selected key is located. In addition, the user can slide his finger on the key until the appropriate region is highlighted, thus ensuring that the correct letter is selected. When you lift your finger, the highlighted region or letter is selected. The example shown in Figure 1A is based on the assumption that each key was touched near its center, resulting in the interpretation of direct pointing "bhe" (the character string formed by the characters in the centers of the three keys). ABC GHI DEF) that are being displayed as entry 83 in region 72 of the region of selection list 70. Preferably, the 37Typing sequence is also interpreted as a string of numeric digits (hereinafter the "numerical interpretation"). The data keys 56 contain characters that represent numeric digits. One of the interpretations provided in the selection list is, therefore, the numeric digits corresponding to the typing sequence. For example, the entry 84 is the numerical interpretation ("798") of the sequence of keystroke ABC, GHI, DEF. As mentioned before, in the normal mode of operation the entries in the selection list 76 that correspond to the words are presented first in the list. In other circumstances, it may be desired that key sequence renditions are presented first in the list. For example, in ations where a series of numbers are to be entered, it would be desirable for the numerical interpretation of the typing sequence to be presented first. The reduced keyboard system with ambiguity elimination allows, therefore, a user to select among other operating modes by accessing a system menu. In a numerical mode of operation, the first interpretation provided in the selection list is the number corresponding to the typing sequence. Each mode of operation changes the order of the selection list displayed to the user. Alternately, at 3 * 8Pressing the Numbers key, an explicit Numeric mode can be entered in which each keystroke of the data keys 56 is specifically identified in unambiguous and unique form as a single numerical digit. As shown in Figure 1C, the faces of the data keys 56 and the Shift key 62 on the keyboard 54 of the touch-senve screen of Figure IA are changed by the system to reflect the different key interpretations in this way. In this explicit Numeric mode, each click results in the corresponding numeric digit which is immediately output to the text area at the insertion point 88. In addition, in this explicit Numeric mode, each click of the shift key 62 generates the digit "0", so that the ten decimal digits are simultaneously available. Also, when the system is in a mode, such as that of the explicit Numeric mode, where a typing of one of the data keys 56 results in the selection of an unambiguous character to be output to the area text, any object in the selection list that is implicitly or explicitly selected at the time of typing first exits towards the text area at the insertion point 88. The operation of the reduced keyboard system with ambiguity elimination is governed by the software 39Ambiguity Removal 108. FIG. 3 is a flow diagram of a main ambiguity elimination software routine that generates a selection list to assist the user in eliminating ambiguity in ambiguous typing sequences. In a block 150, the system waits for a keypad 54 to be received. In a decision block 151 a test is made to determine whether the received key is a mode selection key. In a pove case, in block 172 the system places a flag to indicate the current system mode. In a decision block 173, a test is made to determine if the system mode has changed. In the pove case, in the block, 171 the upper parts of the keys are redesigned as needed to reflect the current mode of the system. If block 151 determines that the key does not correspond to a mode selection key, then, in decision block 152, a test is made to determine whether the received key is the Select key. If the typing is not the Select key, then in the decision block 153 a test is made to determine if the system is in a special explicit character mode, for example in the explicit numeric mode. If so, in decision block 166 a test is carried out to determine if any provisionally selected article is present in the selection list.40In the positive case, in block 167 the article is accepted and output as normal text. Subsequently, in a block 168, the explicit character corresponding to the typing goes to the text area. Subsequently, in decision block 169, a test is carried out to determine if the system mode should be changed automatically, as in the case of symbol mode. If so, the execution proceeds to block 170 and the system mode returns to the previously active mode, otherwise the execution returns to block 150. If in block 153 the explicit character mode is not activated, in a block 154 the typing is added to a stored keystroke sequence. In a block 156, the objects corresponding to the typing sequence are identified from the vocabulary modules in the system. Vocabulary modules are libraries of objects that are associated with typing sequences. An object is any piece of stored data that is to be retrieved based on the received keystroke sequence. For example, objects within the vocabulary modules can include numbers, letters, words, roots, phrases or system functions and macros. Each of these objects is briefly described in the following table:Object corresponding data 41Numbers A number, each digit of which corresponds to a single click, for example, two-digit sequence "42". Letters A letter or sequence of letters that correspond to pairs of clicks, for example, the sequence of three letters "str". Each click pair is used to eliminate ambiguity using the two-hit specification method to input individual letters. Word A word that corresponds to multiple or simple typing, for example the four-letter word "done". Roots A sequence of letters that represents a valid portion of a longer sequence of letters that form a word, for example "albe" as the root of the word "albeit". Phrase A phrase defined by the system or defined by the user that corresponds to simple or multiple clicks, for example "to Whom it May Concern:"Macro A word or associated code that describes one of the system function or a function defined by the user system, for example, "<clear>" to delete the current text region. In addition, from the descriptive word, in the vocabulary module the macro object of the system is associated with the executable code necessary to perform the specified function.42While the preferred vocabulary objects are discussed earlier, it will be appreciated that other objects can be contemplated. For example, a graphic object may be associated with a stored graphic image or a speech or speech object may be associated with a stored speech or speech segment. It can also be foreseen that a spelling or spelling object will be linked to the typing sequence of commonly misspelled words and typographical errors with the correct spelling of the word. For example, words that include the sequence of letters "ie" or "ei" will appear in the word list even if the typing for these letters is accidentally reversed from their proper sequence. To simplify processing, each vocabulary and preference module has similar objects. It will be appreciated however that the various objects can be mixed within a vocabulary module. A representative diagram of a word object vocabulary module 110 is illustrated in Figure 9A. A tree data structure is used to organize the objects in a vocabulary module based on a corresponding typing sequence. As shown in Figure 4A, each node NI, N2, ... N9 in the vocabulary module tree represents a sequence of 43particular click The nodes of the tree are connected by the routes Pl, P2, ... P9. As there are nine ambiguous data keys in the preferred mode of the ambiguity elimination system, each node related in the tree of the vocabulary module can be connected with nine child nodes. The nodes connected by the routes indicate valid typing sequences, while the lack of a route from a node indicates an invalid typing sequence, ie one that does not correspond to any stored words. The tree of the vocabulary module is traversed based on a received typing sequence. For example, by pressing the data key first from the beginning, the block traverses the route Pl to the node NI. Pressing the ninth data key after pressing the first data key traverses the P9 route to the node N9. As will be described in more detail below, each node is associated with a number of objects corresponding to the typing sequence. As each node is reached, a list of objects of the objects corresponding to the typing sequence is generated. The object list of each vocabulary module is used by the main routine of the ambiguity eliminator system to generate a selection list 76. Figure 9B is a block diagram of a 44data structure 400 preferred and associated with each node. The data structure contains information that links to each parent node with the child nodes in the vocabulary module tree. The data structure also contains information to identify the objects associated with the particular sequence of keystroke represented by the node. The first field in the data structure of node 400 is a field 402 of pointer bits indicating the number and identity of the child nodes that are connected to the parent node. Since there are nine data keys, only nine child nodes can be connected to any parent node. In the preferred embodiment, the nine bits of the pointer are thus provided in the pointer bit field to indicate the presence or absence of child nodes. Each pointer bit is associated with a pointer field 404a, 404b, ... 404n which contains a pointer to the representative child node data structure in the vocabulary module. Since a child node is only present if the typing associated with the child node is a valid continuation of the typing sequence associated with the parent node, the number of pointer fields varies for each node. For example, pointer bit fields 402 may indicate that only six of the nine possible keystrokes lead to a valid child node. Since there are only six valid routes, only six pointer fields 404a, 45404b, ... 404f are included in the data structure of the parent node. The pointer bit field 402 is used to determine the identity of the pointer fields contained within the node data structure. If a typing does not lead to a valid child node, the associated pointer field can be omitted from the node data structure in order to preserve the amount of memory space required to store the vocabulary module. In form associated with each node, there is a number of objects corresponding to the key sequence represented by the node. For each node a number of object fields 406 is provided to indicate the number of objects (NUMOBJ) associated with the node. As each node is associated with one and only one typing sequence, the number of objects associated with any node is a constant. Each of the nodes is associated with an object packet 408 contained in the data structure of the node. The number of object fields 406 specifies the number of object packets 408 that are present in the node data structure. Each object packet 408 describes one of the objects corresponding to the keystroke sequence represented by each node. The description of an object requires maintaining two lists of objects. Figure 9C illustrates representative object lists created for a 46parent node and a child node in a vocabulary module tree. The object list 430 is an object list that contains the 0L (1) -0L (8) objects associated with a node representing two clicks. Object list 440 is an object list that contains the NOL (1) -NOL (8) objects associated with a node representing three clicks. Each object list contains a list of all the objects that are associated with each node. The object list 430 is associated with a parent node representing the ADF OLX key sequence from the optimized keypad of Figure IB. The object list 440 is associated with a child node representing the ADF OLX EWV key sequence. Although a maximum of nine entries are illustrated as being capable of being stored in each object list, it will be appreciated that the size of the object list may vary to take into account the maximum number of objects associated with each node. Each object associated with a child node is constructed by adding a character sequence to an object that was built for the parent node. The object package 408 therefore contains a prior object identifier field 410 that identifies an object that is used to construct the child node object from an object list of the parent node. For example, with reference to Figure 9C, the third object "fo" in the old object list 430 is used to construct the first object "foe" in the 47new object list 440. The previous object identifier field 410 then provides a link to the entries in the old object list to identify the old object used to construct the new object. Object package 408 contains a two-bit symbol field 412 to indicate the symbol to be added to the identified object to construct the new object. In the preferred mode, each ambiguous key contains a maximum of three letters. The bits of the symbol field in each node therefore specify the letter of each final key in the node key sequence that will be used to construct the new object. The letter is specified using the following binary code: "00" corresponds to the first letter on the key, "01" corresponds to the second letter on the key, and "10" corresponds to the third letter on the key. For example, with reference to Figure 9C, the first object "FOE" in the new object list 440 is constructed using the third object "FO" in the old object list 430 and adding an additional key to specify the E. In the optimized keyboard arrangement of Figure IB, "E" is the first letter of the key is EWV, therefore, the symbol field corresponding to the object "FOE" is set to "00" to indicate the first letter in The key. The coding of objects in this way makes use of the sequence of 48Known keys associated with each node and the known association of letters with the keys to greatly reduce the amount of stored space that is required for each vocabulary module. The vocabulary coding technique also allows access to vocabulary mode entries without searching. Upon receipt of each new click the system follows a single pointer to the appropriate child node and then builds the new list of objects. Also, instead of having to store all the objects in the vocabulary module, a new object is defined using a two-bit code to add it to an old interpretation. The exposed storage method, however, requires keeping a list of objects from a parent node in the vocabulary module tree, in order to build a list of child node objects. The symbol field 412 can also be set to the value "11". When set to the value "11" the symbol field indicates the presence of an ASCII sequence field 414 that immediately follows the symbol field. The ASCII sequence field is used to store strings of characters that are to be appended to the identified object. For example, the ASCII sequence field can store the string "rward" to the third object "fo" of the old object list to form the word "forward". In this way, 49The length of a typed sequence entered does not necessarily correspond directly to the magnitude of an associated object. The ASCII sequence field allows a vocabulary object to be identified by a sequence of arbitrary keys, that is, stored in an arbitrary location within the vocabulary module tree. The ability to store objects with an arbitrary typing sequence is used to accelerate the processing of abbreviations and contractions in the system. The abbreviations and contractions can be identified by a typing sequence that corresponds to its pure alphabetic content, ignoring the punctuation. The result is that abbreviations and contractions are easily accessed by the user without entering the score, resulting in significant savings in clicks. For example, the user can enter a typing sequence for "did not" without typing the apostrophe between "n" and "t". The word in the vocabulary module corresponding to the "didnt" sequence contains an ASCII sequence field with an apostrophe between "n" and "t". The ambiguity eliminator system, therefore, will automatically display the user the correct word "did not", without requiring the user to enter the punctuation mark. The system 50ambiguity eliminator uses the same technique to properly display fgn words unique characters, for example, "Ü" which can be entered as "U". Capitalization can be handled in a similar way. Words that should always be used in capital letters, with an initial uppercase letter or with uppercase letters in half, can be associated typing consequences that omit typing that indicate capital letters, eliminating the need for the user to enter this writing of letters capital letters. An object type field 416 may also be included in each object pack 408 to specify additional information about the object being constructed. The object type field can contain a code to specify whether the generated object is a word, a root of a word or any other object. The object type field, theref allows different types of objects to be mixed within a specific vocabulary module. In addition, the object type field may also include information regarding the voice part or speech of the word, information about how the object is capitalized or information that is needed to construct various inflections and terminations. A reduced keyboard system with ambiguity elimination can use the additional information to implement a syntax analysis and improve the process of 51elimination of ambiguity. The object type field may also contain a unique code to allow the transmission of text in a compressed form. The unique code would be transmitted to a remote terminal instead of transmitting the entered key sequence or the characters associated with the elimination of ambiguity. One of the key features of the data structure of the preferred vocabulary module tree is that the objects associated with each node are st in the data structure of no do 400 according to their frequency of use. That is, the first object packet 408 has a higher usage frequency than the second object packet in the node data structure, which has a higher usage frequency than the third object packet. In this way, the objects are automatically placed in the object list so that they are classified according to a lower frequency of use. For the purposes of this description, frequency of use of a word object refers to the probability of using a specific word within a body of representative use, which is proportional to the number of times each word is presented in the body of the word. text. In the case of root objects of a word, the frequency of use is determined by adding the frequencies of all the words that share the root.52The storage of frequency of use or other classification information in each node avoids the need to determine and classify the rating of each object when the system is being used. This has important implications in the vocabulary of the word object, since st objects can include shared roots common to a large number of longer words. The determination of the relative qualification of these roots would dynamically require crossing the entire tree of children nodes and accumulating information about each root, a difficult task for a small computer to perform quickly. Determining this information in advance and storing it in the vocabulary data reduces overall processing. In addition, when the frequency of use or the rating is implicitly represented by the order of the objects 408 in the node, no additional storage space is required for this information. While the objects are preferably st within the node data structure 400 in the order of their frequency of use, it will be appreciated that a frequency of use field would also be associated with each object packet. The frequency of the field of use would contain a representative number corresponding to the frequency of use of the associated object. The frequency of 53Use between different objects would be determined by comparing the frequency of each object's use field. The advantage of using this last construction that associates a frequency of use field with each object package is that the frequency of the use field would be changed by the ambiguity eliminating system. For example, the system could change a frequency of use field to reflect the frequency with which a user used certain objects within the vocabulary module during the representative text input. Returning to Figure 3, block 156 identifies the objects corresponding to the typing sequence received in each vocabulary module. Figure 10 is a flow chart of a subroutine 500 for analyzing the received keystroke sequence to identify corresponding objects in a particular vocabulary module. Subroutine 500 constructs an object list for a node that represents a particular click sequence. As noted before, to build a new object list the ambiguity elimination system starts with a copy of the object list the ambiguity elimination system starts with a copy of the old object list. In block 502, the object list from the previous node is stored, therefore, so that it can be used to construct the new list 54of obj eto. In the main routine shown in Figure 3, the system detects a typing in block 150. The reception of a new key causes a downward traverse in the vocabulary module tree, if there is a valid route to a corresponding child node. click. In block 504 of Figure 10, the pointer bit field of the data structure of the parent node is examined, therefore, to determine whether a pointer corresponds to the received key. In a decision block 506, a test of the pointer bit field is performed to determine whether a pointer field 404a, 404b, ... 404n exists and corresponds to the typed entry. If no pointer field corresponds to typing, in block 508 the old list of objects is copied to the new list of objects. In block 510 the object list is returned to the main routine to generate the selection list. As the received typing is part of an invalid typing sequence that does not correspond to any object within the vocabulary module, the typing is ignored and the current object list is returned to the main routine representing the object list of the vocabulary module . The branch of the routine 500 comprising the blocks 508 and 510 therefore ignores any invalid keystroke sequence and returns the list 55of object generated in the parent node for possible inclusions in the selection list generated by the ambiguity eliminator system. If there is a pointer corresponding to the typing received in decision block 506, the subroutine proceeds to block 512 where the pointer is followed up to the child node representing typing. When the child node is identified, a new object list corresponding to the node must be constructed. In block 514, upon identifying the child node, the node of objects associated with the node is determined from the number of object fields 406 in the child node data structure. After determining the number of objects to be generated in the child node, the subroutine enters the circuit comprised by blocks 516 to 526 to reconstruct the object list associated with the child node. In block 516 a counter is initially set to one. In block 518, a test is made to determine whether the counter has exceeded the number of objects associated with the node. If the counter has not exceeded the number of objects associated with the node, in block 520 the previous object identifier field 410 is examined and the corresponding object is loaded from the old object list. In block 522, the symbol field 412 is examined and the appropriate symbol associated with the received key is appended to the end of object 56identified. It will be appreciated that an additional ASCII sequence may also be attached to the object identified in block 522 if the symbol field indicates the presence of an ASCII sequence field 414 in the node data structure. In block 524, the combined object and symbol are stored as a new object in the new object list. After storing the new object in the list of objects, in a block 526 the counter is incremented by one. The subroutine then makes a circuit to decision block 518 to determine whether all objects associated with the node have been constructed. If the test done in the decision block 518 indicates that all the objects have been built for the node, the subroutine proceeds to a block 528 where the new list of objects is returned to the main routine in order to generate the list of selection. It will be appreciated that the subroutine 500 for generating the list of objects associated with each node is performed for each click received from the user. No "search" is done for the vocabulary modules as the user enters a new sequence of clicks, since each key simply advances the subroutine to an additional level within the vocabulary module tree. As a search is not performed for each click, the vocabulary module returns the list of objects associated with each node in a time period 57minimum . It will be appreciated that the relationship between the objects of the vocabulary module and the typing sequences is a detail of implementation of the vocabulary module. If only a limited number of objects (that is, less than a predetermined number) are associated with a particular node, the additional nodes can be traversed to identify objects that have a typing sequence that begins with the typing sequence entered. The objects are identified by traversing down the vocabulary module tree along the valid routes until the objects are identified. Subsequently the objects are placed in the selection list before all keystrokes corresponding to the objects have been entered. Objects are also included with objects that are directly associated with the sequence of input keystrokes. The display of the objects associated with the long typing sequences in the selection list (hereinafter referred to as the "look forward" feature) allows the user to optimally select the objects immediately, without having to complete the clicks remaining to specify the object. The "look forward" feature is enabled when the number of objects identified in the vocabulary module does not fill the selection list region 70 in 58the screen. Returning to Figure 3, in blocks 158-162, the objects found by querying the sequence of clicks in the vocabulary modules are placed by priority and the user is displayed in the selection list 76. To determine the sequence of the objects displayed in the selection list, the priorities are established between each vocabulary module and also between the objects returned by each vocabulary module. To indicate the priority of the lists of objects identified from the various vocabulary modules, block 158 examines the operation mode of the reduced ambiguity eliminator keyboard system. As discussed earlier, in a normal mode of operation word interpretations are first displayed on the selection list. The object list of a word vocabulary module would therefore be assigned with a higher priority than the object list of another vocabulary module. Conversely, if the ambiguity eliminator system is in the numerical mode of operation, the numerical interpretations would be assigned with a higher priority than the other vocabulary modules. The module of the ambiguity eliminator system therefore dictates the priority among the lists of vocabulary module objects. It will be appreciated that in some modes, lists 59of the vocabulary modules can be omitted from the selection list completely. The lists of objects generated from the vocabulary modules can contain only one entry or can contain multiple entries, in block 160, the priority between the objects starting from the same vocabulary module is solved therefore if the list of objects It contains multiple entries. Objects that match a particular typing sequence that are searched in a specific vocabulary module also receive a priority that determines their relative presentation relative to each other. As already mentioned, the default order of presentation is preferably the"sense of lower frequency of use in a text body of representative use." The priority data associated with each object is therefore used to sort the objects in the selection list, as region 70 of the selection list is limited in the number of entries that can be displayed, the objects that fall below a predetermined minimum use frequency can be omitted from the initial display of the selection list.Outsides can later be added to the selection list when the user moves beyond the end of the displayed list. The selection list automatically scrolls so that the object 60currently selected is always visible. The user can also use dedicated scroll buttons to manually move additional objects to the screen, in which case, the currently selected object can scroll out of what is seen on the screen. Alternatively, all the objects in the selection list can be displayed simultaneously in a "drop-down" list at the request of the user. Many of the properties associated with the presentation of objects that are queried in a vocabulary module are programmable by the user when there is access to suitable system menus. For example, the user can specify the order of the individual objects or object classes in the selection list region. The user can also set the priority level that determines the priority between the vocabulary modules and between the objects identified from each vocabulary module. In this way, the number of entries presented to the user in the selection list region can be kept at a minimum. Additional entries in the selection list region can always be moved so that they can be observed by repeatedly pressing the Select key. After the priorities between the objects have been resolved, in a block 162 a list 61 is constructed.of selection from the objects identified and presented to the user. As a default interpretation of the sequence of ambiguous keys entered by the user, the first entry in the selection list is temporarily placed and highlighted at the insertion point 88 in the text region 66. The routine of the removal software of ambiguity then returns to block 150 to wait for the next key. If the detected key is the Select key, the "if" branch is taken from the decision block 152 to the decision block 163, where a test determines whether the current selection list is empty. If so, in block 165 an explicit space is generated and immediately outputs the text area, after which the execution returns to block 150. If in decision block 163 the selection is not empty, the branch "does not "is taken up to block 174. In a block 174, space is added at the end of each text article in the selection list and the line box continues around the first entry in the selection list (and also at the point insertion where it was temporarily placed) changes to a dotted box. In a block 175, the system then waits to detect the next key entered by the user. In a decision block 176, a test is made to determine whether the 62next click is the one of the Select key. If the next key is the Select key, a block of dotted lines is placed in a block 178 around the next entry in the selection list and the entry is temporarily displayed at the insertion point with a box of dotted lines around it. the same. The routine then returns to block 174 to detect the next typing entered by the user. It will be appreciated that the circuit formed by the blocks 175-178 allows the user to select several interpretations of the ambiguous typing sequence entered which has a lower frequency of use by pressing the Select key several times. If the next key is not the Select key, from the decision block 176 the routine continues to a block 180, where the input provisionally displayed as an interpretation of the typing sequence is selected and converted into a normal text format in the text region. In block 184, the old keystroke sequence is deleted from the system memory, as the reception of an ambiguous key after the Select key signals the system the start of a new ambiguous sequence. The new received click is then used to start the new sequence of clicks in block 154. As the interpretation of the word 63has the highest frequency of use is presented as a default choice, the main routine of the ambiguity elimination software allows a user to continuously enter text where a minimum number of times of additional activation of the selected key is required. II. Advanced System Characteristics 1. Visual and Auditory Feedback In Figure 1A, information related to the status of the reduced keyboard system, ambiguity eliminator, is provided to the user using various types of visual and auditory feedback. The entries in the selection list 76 can be represented in different colors depending on the interpretation of the typing sequence. For example, the interpretation of the word can be of one color, the interpretation of the unambiguous spelling can be of another color and the numerical interpretation of a third color. Therefore, a user can easily review the selection list to find the desired interpretation. When the system is implemented on a touch-sensitive screen, at the user's option the display of the normal on-screen keyboard can be replaced by a simple line drawn in a grid pattern corresponding to the positions of the keys. This pattern 64it may overlap at the top of other displayed information, for example text area 53 in Figure 1A. This can be advantageous in systems with very limited screen sizes, since the user will in most cases quickly memorize which letters have been assigned to which keys, and will not require actual display of the upper parts of the keys. A grid pattern can be drawn with thin lines that clearly indicate the location of the key without significantly obscuring the underlying displayed information. The audible tones indicate the state of the selection list 76 and provide feedback about typing to allow the system information to be transferred independently of any visual feedback provided in the selection list. Different tones indicate when the selection list is empty, when it contains a single unique word and when it contains multiple ambiguous words. Another tone indicates that the second or third entries in the selection list have a frequency of use greater than a preset threshold or when the difference in frequency between the first and the second words falls below a selected threshold. This tone is generated as soon as the Select key is pressed or, at the user's option, only upon receiving the first click of the next word. In case 65in which the user has already started writing the next word, a special combination of keys is designated (eg Shift-Select) so that the user can "reselect" the previous key sequence, where each activation of the key combination designated re-interprets the preceding key sequence as if an additional activation of the Select key had occurred, before starting the writing of the next word. This allows the user to select the correct word for the previous key sequences, without having to cancel or rewrite the word that has already been started. Still other tones distinguish the type of item that is being selected in the selection list as you press the Select key. Therefore, separate tones are used to distinguish words, numbers, proper names, phrases, system macros, etc. Different tones can also be assigned to each key to allow the identification of typing errors. Finally, a unique tone is heard when the user presses a key that is not available for a word, as described above. The system also provides visual feedback to the user regarding the interpretation of multiple clicks in the typing sequence that is being entered.66This is achieved by highlighting or by visually indicating which of the symbols of the key being pressed have been selected if the key sequence is interpreted as an input of multiple unambiguous keystrokes. In this way, a single key is pressed once, twice or three times in succession (where the time interval between successive key presses is less than the minimum delay period elapsed), the first, second and third symbols represented by the key They are also indicated. After the expiration of the minimum delay period elapsed or upon receipt of a key click on a different key, the currently indicated symbol is accepted as the next symbol of multiple click interpretation of the current key sequence and the visual indication of the symbol is Remove the key.2. Punctuation, Capitalization, Spaces and ExecutionWhen entering text, the reduced ambiguity eliminator keyboard system 54 allows punctuation to be entered using various techniques. All symbols and punctuation elements, including those that are used less frequently, are accessible from a system menu that is displayed in the "Symbols Mode". As in the example page shown in Figure ID, this menu consists of a set of character pages 67scoring where each page contains nine characters, each of which is associated with one of the data keys 56. A special key (the Symbols key) or a key combination is designated to put the system in a "Mode of Symbols ". This method is especially effective on a touch screen based on the implementation of the system, but it can also be used in a system that uses a physical keyboard. When a physical keyboard is used, during activation of the symbol key or key combination, a three-by-three menu grid appears on the screen containing the nine most common punctuation characters. Each location in the menu grid is correlated with the corresponding data key 56. In a touch screen implementation, the tops of the data keys are simply redesigned to display the corresponding punctuation characters. Repeated activation of any of the Symbol keys or the Select key produces progress in the menus of other progressively less common punctuation characters, nine at a time. The advance beyond the last page of symbols takes the system out of the Symbols mode (returning to the system to any mode in which it was previously active) and the menu of 68 disappears.punctuation. Each punctuation character appears in the location of a menu screen corresponding to the position of the data key with which the punctuation character was correlated. When a word is explicitly written that requires the placement of a character with a special diacritical mark (metaphony, etc.) the base character (for example "u") is written first, then a special key is written (the "Diacritical" key) ) or a combination of keys (for example, Shift-Symbols keys). A three-by-three menu is then displayed with all forms of possible variants of the base character. Figure 1E shows an example of a Diacritics page for the base character 'a'. Each of the various forms of any character (for example, severe accent, acute accent, metaphony, etc.) always appears in the same location as the three-by-three matrix in each base character to which it can be applied. Therefore, for the example, the form of metaphony of any character could always appear in the top right location of the three-by-three menu. The selection of the location that exhibits the desired form of the base character with the appropriate diacritic results in the previously generated base character already present in the explicit writing object that is being replaced with the desired diacritical shape.69Many common words contain a diacritic or a punctuation mark such as a hyphen or an apostrophe. As discussed earlier in the description of the vocabulary modules, when writing a word that is already in a dictionary and that includes punctuation or diacritics, the key location corresponds to the punctuation or diacritic (for example the upper right data key for a metaphony) can be included or omitted when the key sequence used to generate the word is actually written. All the techniques for entering the score are enabled simultaneously during the operation of the system. The selection of a character from the Symbols mode generates a character from the symbols mode generates an explicit and unambiguous character. The generation of this character has the effect of implicitly accepting the current text provisionally accepted to output the insertion point. Therefore, even if the Select key has not been activated yet, the first word in the list is implicitly accepted and is output without appending a following space. This allows the user to easily generate a word and immediately follow it with a character, for example, a comma, a period or a hyphen. Occasionally the situation arises in which the user wishes to use the second or last word 70word in the selection list without following a space. Another situation, perhaps the least common, is one in which the user wants to concatenate two different words to form a new word. Four alternative strategies are available to solve these situations. The first alternative is to provide two unambiguous, separate and distinct keys, one of which is marked as the "Only Select" key. The Select Only key in this mode works only to select alternative words from the selection list and does not result in a space being appended to any of these selected words. The second unambiguous, separate and distinct key can be, at the option of the user, marked as a "Swarmer" key that works only to generate an immediate, explicit and unambiguous space character at the insertion point 88. Alternatively, the second unambiguous key can be marked as a "Select" key and works exactly like the Select key just described. This approach can be advantageous for languages such as German, where a large number of words are formed simply by concatenating other existing words. A "Just Select" key simplifies the process of concatenation of arbitrary words from the selection list, particularly in an implementation that does not use antouch-sensitive screen and therefore does not support the ability to select words directly from the selection list on the screen. The second alternative is to enable the use of "intelligent" punctuation, where certain punctuation characters (for example, comma, period, admiration, interrogation, hyphen, apostrophe, colon, semicolon, right parenthesis, right bracket, and percentages) , will automatically cancel a preceding space. With a certain score (for example, with a script) there may be a situation where the user wishes to keep the space and will need to generate an additional space that would be canceled by the "smart" score. Another score (for example, a quote) follows the current context's crawl with a flag indicating whether the current markup of quotes that is being generated is the first or second of a pair, since there is a need to distinguish between a mark of opening of quotation marks (that does not cancel the previous space) and a closing mark of quotation marks (that if you cancel the previous space). In some languages, special "smart" punctuation forms are included in entries in the standard word vocabulary module. For example, in French many words like "me", "le", "de", etc. they change their final letter to an apostrophe and they are not followed by a 72space when the next word starts with a vowel. These forms (', 1', d1, etc.) are included in the standard word vocabulary module in the sequence of two clicks corresponding, in each case, to the first letter of the word followed by a click on the key of data corresponding to the position of the apostrophe in the Symbols mode. Subsequently, even when these word objects are selected by virtue of an activation of the Select key, the text area is left without a space that follows them. A third alternative allows the use of a particular selection of modifier mode (eg uppercase) that can be combined with a next Select key (or sequence of selections) so that in this case, selecting does not generate a space afterwards. This capitalization mode would be presented before making one or more selections and would apply to any word that is finally selected (including selected words when going back in the list with the backspace key after more than one Select). The mode is cleared when the first Select next key is canceled or when the next word or explicit character starts. Alternatively, the system can be configured so that the selection of the modifier mode (eg uppercase) can be activated and only the key can be modified.
Select immediately next. The fourth alternative allows the user to configure the system so that it modifies the manner in which the Backspace operates when the activation of the Select key is being canceled. This alternative mode of operation is structured in a simple and consistent model: the first Select key of any uninterrupted sequence of keys Select append a space to the current word and change it to a temporarily accepted state in case it is not already in that state state. The subsequent activation of the Select key effects the forward movement through the selection list, where each selected word has an annexed space. The first Backspace key after one or more selection keys cancels an adjacent space in the currently selected word, but does not change the word that is currently selected. Subsequent activations of the Backspace key cause the backward movement in the selection list, where each selected word does not have an appended space, and is still provisionally accepted. When the last activation of the Select key is canceled (that is, the selection focus returns to the first word in the list), the first word of the list goes out of the provisionally accepted state (su 74previous condition when activating the first Select key, where it is simply the most likely match of the current key sequence) so that additional character writing results in the generation of a longer word, and not of a new word. The only task not adapted through this strategy is the concatenation of words with the first word to select. This can be adjusted with an alternative mode of operation that introduces an additional state at the end of the Backspace sequence, where the first word is provisionally accepted and has no attached spaces. This approach requires an additional activation of Backspace when a sequence of activation of the Select key is "undoing". When the first letter of the word is capitalized, the words in the selection list 76 are optionally arranged to show the proper names listed first in the interpretation lists. The words are classified according to the frequency of use, where the most commonly used proper name is listed first. The frequency of occurrence of proper names can be pre-stored in a vocabulary module, programmed by the user through a system menu or calculated adaptively as the user continues to use the system as analyzed at 75continuation. The display of proper names first in the selection list is disabled or a warning sound is emitted when the word with capital letters is the first word of a phrase. When the selection list is empty (for example, when the user taps the touch screen to simply pick up the text cursor without selecting a word to be placed in the selection list, the key activation Select generates an unambiguous and explicit space character at the insertion point.3. Editing A user of the keyboard system 50 reduced ambiguity eliminator can enter an edit mode by means of a special key (the Edit key) or a combination of keys. When entering edit mode on a touch-sensitive display implementation, the upper portions of the keys on the on-screen keyboard are redesigned to show their re-correlated functions.
Figure 4A illustrates the display 53 of a touch screen-based system while in edit mode. Figure 4B illustrates a system using a mechanical keyboard, wherein a key map 800 indicates the functions of the re-correlated data key that is displayed on the keyboard.they display the user in the text region 66. Each box in the map or key map indicates the edit command that will result if the corresponding data key is pressed. The editing is done word by word. Once in edit mode, the user selects a word to be edited by moving a cursor 802 to highlight the word or by touching the desired word. The user selects a word to be edited using the data keys corresponding to the cursor movement arrows to move a word or a line at a time, through the text displayed in the text region. The selection of a word in the text region recreates the same selection list 76 that was presented to the user at the time when the edited word was added to the text region 66. To recreate the original selection list, the sequence of More efficient key that would produce a specific word is reconstructed from the word itself. The typing sequence is then interpreted using the vocabulary modules to reconstruct the environment (i.e. the content of the selection list) from which the original word was selected. Once a word is selected and the selection list is displayed again, the user has severaldifferent options to edit the word. An option allows the user to select a different word from the exposed selection list by pressing the Select key properly. Pressing the Select key several times moves down the selection list, in the same way that the edited word was originally selected. Pressing the Backspace key moves the user up the interpretation list. The word in the selection list is automatically added to the text region when the user exits edit mode. After any word is selected in the edit mode, the additional written text is inserted after the word in the point being edited in the text region. The edition of a particular word is completed by the selection of an appropriate word from the selection list. When the editing of a word is complete, the user can use the arrow keys to move the cursor in order to move through the text string displayed in the text region and select a different word for editing. When the text editing is complete, the user exits the edit mode using the "Exit" key. At the user's option, an operation mode can be enabled that modifies the operation of the roof 78backspace when characters are canceled from the text screen. When this special cancellation mode is enabled and the user cancels a space or punctuation character immediately to the right of a preceding word, the system automatically resets the selection list in the same state it was in when the preceding word was generated in initial form. The Select key can then be activated to again move forward through the selection list, replacing the previously generated word with other items in the selection list. Similarly, the Backspace key can be used to move back through the list to select previous items. Once the user has moved back to the first item in the selection list, repeated activation of the Backspace key cancels the typing from the end of the word. Similarly, at this point the alphabetic data keys can be activated to add clicks to the article and create a longer word. At the user's option, an edit mode of "verify ambiguity cancellation" can be selected where all the words in the output text area are tested to determine, for each word, whether they meet one or more of the following criteria applied to the output word in 79At the time it was written: (1) the word appears as the first entry in the selection list; (2) the next most frequent occurring word that appeared in the selection list has an occurrence frequency that exceeds a selected threshold; (3) the next most frequent occurring word that appeared in the selection list has an occurrence frequency that differs from that of the output word in less than a selected threshold. The user can select in a configuration menu which of the criteria should be satisfied and to which values the thresholds will be adjusted. When entering the edit mode of "ambiguity cancellation check", all words in the output text area that meet the currently selected criteria are re-displayed in a special way, for example with highlighted text or with a special color text. The user can then touch any word of special format to replace it with the most frequent occurrence word that appeared in the selection list at the time the word was given. A special function key can also be provided to automatically advance to the next occurrence of a special format word.804. Shortcuts The reduced keyboard system 50 with ambiguity elimination incorporates several short routes that accelerate the entry of texts into the system. A short path causes the entry of an unambiguous symbol or unambiguous function to delimit a currently ambiguous sequence, if one exists, and automatically selects and accepts the first entry in the selection list 76. For example, a user that enters the ambiguous sequence ABC ABC MNO, followed by an explicit apostrophe (for example, Symbols Mode) (') will cause the system to automatically select and place in the text region the word "can", since the word "can" "is the first interpretation (that is, the most probable) of the ABC ABC MNO key sequence. When a typing sequence is automatically interpreted in this way, no space is generated after the selected interpretation. The user can, therefore, continue entering the word by adding additional characters. This shortcut is typically used when punctuation marks are used as a sequence of clicks. In addition to operating in different operation modes where the selection list 76 is ordered to present particular typing performances as the first entry in the list, the reduced keyboard system 50 with 81Ambiguity deletion can also give input (through a system menu, a specially defined key or a combination of keys) to a number of exclusive modes, where only one interpretation is made for each key and no entries are displayed in the list of selection. For example, in a dedicated numeric mode, each click corresponds to the entry of a number. In a dedicated dedicated cursor movement mode, each of the outer circles of the data keys corresponds to a cursor movement direction to allow a user to manipulate a cursor in an application program. Those with expertise in this field will recognize that the other dedicated or exclusive modes of operation can also be displayed, for example, mouse emulation or emulation of a multi-frequency tone telephone. When operating in dedicated modes, texts or commands are implemented directly since there is no ambiguity in typing entered.
. Individual Vocabularies and FrequencyAdaptive use. Among the vocabulary modules 110 contained in the reduced keyboard system 50 with elimination of ambiguity is an individual vocabulary module. The words entered using the 82 methodunambiguous spellings are automatically stored using the ambiguity eliminator system in a temporary vocabulary module. The words stored in the temporary vocabulary module will subsequently be displayed automatically in the selection list when the user enters the shortest sequence of simple keys(ambiguous) for these words. When the user finishes editing the current text object that is being generated(for example, close a word processor document or accept a text field entry), all words in the temporary dictionary that are still present in the document are added to the "permanent" individual vocabulary module. This prevents words that are simply misspelled (and subsequently canceled from the document or text field) from being added inappropriately to the individual vocabulary module. In addition to adding words to the individual vocabulary module during normal text input, the words may be added to a user's individual vocabulary module from a variety of other sources. For example, documents that can be loaded into the ambiguity eliminator system and analyzed to identify proper names or other words that are not contained in the vocabulary modules present in the ambiguity eliminator system. After the analysis, 83newly identified words are added to the temporary vocabulary module. These words are immediately available to be written using the normal letter-by-letter writing method. Any of the words that are written in this form by the user during the editing of the document, will be marked as "used" in the temporary vocabulary module. When the user finishes editing the document, only the words in the temporary dictionary that have been marked as "used" and that are still present in the document, are added to the "permanent" individual vocabulary module. This avoids overloading the individual vocabulary module with words that are not really required by the user. The individual vocabulary modules can also be uploaded or downloaded to other ambiguity elimination systems or to a mass storage medium. A user can, therefore, merge their individual present vocabularies with other vocabularies created by another user. The words in the selection list 76 identified from the standard vocabulary modules of preference are always presented to the user in the same order, according to the frequency of downward use, so that the user can dedicate himself to memorize the 84clicks necessary to enter a desired word.
III. Representative System Operation Figures 5A through 5K illustrate display 53 of the laptop 52 during a representative use of the reduced keyboard system with ambiguity elimination. After turning on the laptop, the text region 66 and the selection list region 70 are empty. In Figure 5A, the user has typed the phrase "Now is the time for all good women to come to the" and then played the ABC key in the center. The word vocabulary module has interpreted the ABC key as the word "a" 502 and has placed the interpretation in the selection list 76. The root vocabulary module has interpreted the ABC key as the "C" and "roots" B "503 and placed the interpretations in the selection list. The numerical vocabulary module has interpreted this typing as the number "7" 504. The command vocabulary module of the system has matched the sequence of clicks with the system command "<Setup>" 506 and has added the command from the system to the selection list. The unambiguous spelling method has interpreted the typing using the direct pointing specification method, and placed the "b" 507 interpretation in the display region of 85unambiguous spelling 72 of the selection list region 70. The first entry in the selection list has been drawn with a continuous line box around it (indicating that it is the implicitly selected object) and this entry has also been temporarily placed in the text region at the insertion point 88 with a solid line box drawn around it. In Figure 5B the user has subsequently activated the GHI key, followed by the DEF key, touching both keys approximately in the center. The word vocabulary module has interpreted the sequence of clicks ABC GHI DEF as the words "age" 511, "aid" 512 and "bid" 513 and placed these interpretations in the selection list 76. The root vocabulary module has interpreted the sequence of clicks as the roots "che" and "ahe" 514 and placed the interpretations in the selection list. The numerical vocabulary module has interpreted the sequence of clicks as the number "798" 515. The unambiguous spelling method has interpreted the click using the direct pointing specification method and has placed the interpretation "bhe" 516 in the region of unambiguous spelling display 72. The first entry in the "age" 511 selection list has been surrounded by a solid line box around it and has 86been provisionally placed at the insertion point 88 with a continuous line box drawn around it. For simplicity of illustration, the remaining figures 5C - 5K will illustrate the operation of the system where the interpretations of the numerical and system commands have been turned off. In Figure 5C, the user has presented the Select key 60, explicitly selecting the first entry in the "age" selection list 521 and attaching a space to each entry in the selection list. The boxes around the word "age" both in the selection list and where it has been temporarily placed in the insertion point 88, become dotted line boxes and not solid lines, to indicate that the interpretation has been made. explicitly selected and will be accepted as the output text if the user continues entering text with an ambiguous typing. In Figure 5D the user has pressed the Select 60 key once more, enclosing in a box the desired word "aid" 531 in the selection list. The word "aid" replaces the word "age" that had previously been provisionally placed at the insertion point 88. In Figure 5E, the user has pressed the key 87MNO to start spelling the next desired word "of". The word "aid" that has been provisionally placed at the insertion point 88 has been accepted to be entered into the text area and appears normally without a special box or special format. The root vocabulary module has interpreted the MNO key as the root "n", "o" and "m" 541 and has placed these interpretations in the selection list. The non-ambiguous specification and direct pointing method has placed the "n" interpretation 542 in the unambiguous spelling display region 72. The first implicitly selected entry in the selection list has been drawn with a solid line square around This one, both in the selection list as well as in the place where it will be temporarily placed in the insertion point 88. In Figure 5F, the user has just pressed the WXY key to complete the sequence of keys required to write the word "country "551, which is the first entry implicitly selected in the selection list and has been drawn with a continuous line box around it, both in the selection list and where it had been temporarily placed in the insertion point 88. Each The key of the sequence has been played approximately in the center, so that theunambiguous specification method of direct pointing has placed the "bnunurx" interpretation 552 in the unambiguous spelling display region 72. In Figure 5G, the user has subsequently pressed the Symbols key 61, placing the symbol in the Mode of Symbols The upper part of the data keys 56 has been redesigned to display the most common punctuation characters with which each key is associated. In Figure 5H, the user has pressed the data key 56 at the top center, where a point has been displayed in the Symbol Mode. As a result, an explicit "." As a punctuation character was selected for immediate exit to the text area at insertion point 88, after the previously implicitly selected "country" word that was accepted to be placed in the area of text and appears normally without any format or special box. At this point, the selection list is empty, since all ambiguous keys have been resolved. A standard text editing symbol appears at insertion point 88, immediately to the right of the dot that follows the word "country". In Figure 51, the user has pressed the Section 60 key. Since the selection list 76 is empty at the time of pressing the Select 60 key, this gives 89result in the generation of an implicit space that is immediately placed at the insertion point 88 and appears to the right of the dot and to the left of the standard text editing symbol. Figure 5J shows the result of the same and exact sequence of keystrokes as described in 5A-51, except that the additional activation of the Select key 60 described in relation to Figure 5D was not presented. As a result, the word "aid" shown in 51 has been left in the output of the text as the word "age". In Figure 5J, the user has observed that the desired word "aíd" does not appear and has selected the word "age" to avoid it by doing a double hit on it. Since the word "age" has been explicitly selected, it appears in a box of dashed lines both in the selection list and in the text area. The selection list has been reset to the state in which it would appear immediately after the ambiguous ABC GHI DEF keys required to generate the selected word "aid". The unambiguous direct pointing method has meant that each keyboard is carried out in the region of the specific letters that form the word "age", so that the words also appear in the unambiguous spelling display region 72. . Figure 5K shows the result that 90user of a tap on the word "aid" that appears in the selection list of Figure 5J. The word "age" in the text output area is immediately replaced with the selected word "aid", which is displayed as normal text in the output area without a special box or format. At this point, the selection list is empty, since all ambiguous keys have been resolved. A standard text editing symbol appears at insertion point 88, immediately to the right of the new inserted word "aid".
IV. Applications and. Alternative Ways In some cases, it may be advantageous to use a keyboard in which the letters are assigned to the keys more or less sequentially from "a" to "z", as is the case with current keyboards for telephones. In these cases, the letters are not grouped on the keyboard so as to minimize the possibility of ambiguities. As a result, the number of ambiguities increases during use. According to the invention, in these cases it is advantageous to use a method to correctly determine from the context of the input, which word from one or more ambiguous words is probably the desired word. The most likely desired word is 91it then provides the user as the first one in the selection list. A surprising result is obtained when the appropriate techniques are applied to reduce the frequency of ambiguities in this system. The greatest number of ambiguities that result in this system is mainly the result of a small number of relatively common words that do not appear as the first choice in the selection list since they correspond to the same key sequence as other words that have even a occurrence of greater frequency. In many cases, ambiguous pairs of words are different in their syntactic use (for example in English, "am" and "an", "me" and "of"). The ambiguity of these pairs of words can usually be solved by analyzing the parts of the speech emission and other attributes of the words that precede and follow the ambiguous entry. The correct word can then be placed first in the selection list (when the ambiguity is resolved by the preceding context), automatically corrected in the output text or call the user's attention for correction. The following examples illustrate a method of the invention for the English language, using the keyboard design shown in Figure IA. The words "me" and "of" are written with the same typing sequence and, therefore, 92therefore, they constitute an ambiguous pair. In general use, the word "of" will appear approximately 11 times more frequently than the word "me". However, "me" is the word that appears most frequently and does not appear as the first choice in the selection list when a multi-frequency tone keyboard design is used. In most cases where the word "me" appears, it is preceded by a preposition, (for example "to", "with", "from", etc.), while "of" is often preceded by a preposition. Therefore, each time the typing sequence corresponding to "me" and "of" is immediately followed by a preposition, the word "me" may be placed first in the selection list, while in all other circumstances the word "of" will appear first in the list. Similarly, "am" and "an" correspond to the same typing sequence. In most of the times the word "am" appears, it will be preceded or followed by the word "I". Therefore, the occurrence of the word "I" preceded by the typing sequence of "am" and "an" will result in "am" being placed first in the selection list and "I" after the sequence of typing will result in the word previously generated "an" automatically changing to "am". In each case, the rules are followed to resolve the ambiguity between two words 93particular, when both are known in advance. In the ambiguity eliminator system of this invention, the use of a few specific rules for some pairs of known word "problems" or groups of these words greatly reduces the occurrence of ambiguities. The approach of the invention can be effective in reducing ambiguity even when applied to a small number of the words that appear most frequently and result in ambiguities. The following list establishes how eight of the most frequently used ambiguous pairs can be resolved. Each rule provides a set of simple tests to indicate when to "select" the word that appears less frequently, to appear in the first place of the selection list or as a replacement for the word that appears more frequently in the text than has been generated: 1. Select "me" instead of "of" when: the preceding word is a preposition. 2. Select "if" instead of "he" when: the preceding word is a verb and not a form of the verb "to be" or a modal form; or when the next word is not a verb, an adverb, a conjunction or a preposition.943. Select "then" instead of "them" when: the preceding word is a determinant, or when the preceding character that is not a space is a character of punctuation, or when the preceding word is not a transitive verb, a conjunction or a preposition. 4. Select "these" instead of "there" when: the next word is a pronoun or an adjective. 5. Select "go" instead of "in" when: the next or preceding word is the word "to". 6. Select "night" instead of "might" when: the preceding word is an article, an adjective or a preposition. 7. Select "am" instead of "an" when: the preceding word is the word "I", or the word "I" followed by one or more adverbs, or when the next word is the word "I". 8. Select "mr" and "ms" instead of "or" when: the Shift key has been pressed to capitalize the first letter of the word. Ambiguity can also be reduced by applying rules to larger sets of words. The set of conditions used to distinguish 95Word pairs need only expand as needed to resolve the ambiguity in the set of white word pairs. This approach does not require significant amounts of storage or processing power, since only a limited number of words and a small number of conditions need to be considered. Figure 11 shows a flow chart of a method for determining what information should be included in the system to reduce the frequency of ambiguities, without an unacceptable increase in the processing or storage requirements for the resulting system. The method starts in a block 1102, where the body of words of a large text is collected in the context of its actual use. This body of text must be large enough to establish a relative average frequency of occurrence of each word to be included in the vocabulary of the system. In a block 1104, the desired list of words for the vocabulary is extracted from the body of the text together with the frequency of occurrence or occurrence for each, where the frequency is expressed as a number, for example the average number of occurrences per each million words In a block 1106, the vocabulary words receive group assignment as Gn, where each group includes the words spelled with a single-click sequence. The 96words of a specific group are, therefore, ambiguous when spelled on the reduced keyboard. These groups are classified and ranked in descending order according to the frequency of the second most frequent word in each group. In a block 1108, the total ambiguity of the system is calculated as the sum of the frequencies of all the words in all the groups, excluding the most frequent word of each group. Subsequently, in decision block 1110, the current total ambiguity of the system is compared to a desired maximum value. When the ambiguity has been reduced below the desired threshold, the procedure is interrupted in block 1112. Otherwise, in block 1114, the next highest rating group Gn is selected. For the word Wl of higher frequency, with a frequency Fl and the word W2 of second highest frequency, with frequency F2, the body of words in the context, is analyzed. For each occurrence of Wl and for each occurrence of W2, the preceding N words, where N can be 3, for example, and the word immediately following, are identified and recorded. For each word Wl and W2 and for each relative position, the occurrences of specific words are counted. For the immediately preceding and immediately following locations, the occurrence of each voice part is counted.97In a block 1118, a grouping analysis in the identified word sets and voice parts is reformed to identify the best rule to distinguish the occurrences of W2 from the occurrences of W1 in the body of the text in use. The reliability R of the rule is a fraction between 0 and 1 which represents the proportion of cases where the correct word is selected when the rule is applied for all cases of Wl and W2 of the body of the text. In decision block 1120, it is determined whether the inclusion of the rule would result in a general decrease in the overall ambiguity of the system. If not, the process returns to block 1114 to consider the next group of words with the highest rating. Otherwise, in block 1122, the process determines whether the information required for the rule has already been added to the system. If not, in a block 1124, the additional storage required to add the new information is calculated (for example, the storage required to add tags or pointers to the specific words, or to label all the words of a particular voice part), and in a decision block 1126, if the additional storage required exceeds the previously determined maximum allowed, the process returns to block 1Í14 to consider the next highest rating group of words.98Otherwise, the additional information required is added to the system (or was already present in the system) and a block 1130 the given rule is added to set the rules for the system, and W1 and W2 are marked so that the rule it will be applied when the corresponding typing sequence is entered. Subsequently, in block 1132, the total ambiguity of the system is adjusted to take into account the improvement imposed by the rule. The process returns to decision block 1110 to determine if the process should stop. Greater refinement can be added, a process for first recording all potential rules, including the resulting improvement in ambiguity and required information, and then analyzing the set of rules and rating the rules with respect to the amount of improvement obtained for a specific cost of additional storage. This approach can also be used when words are always placed on the selection list in the same relative order. If the user begins to write the next word without having to select the word, the system can generate a signal to require the attention of the user pointing out the fact that there is a very significant probability that the desired word is not the one selected . This may be preferred by users who prefer a system with 99a predictable and fixed behavior (for example that the words always appear in the selection list in the same order). In this situation, even when the user has already started writing the next word, a special combination of keys (for example Control-Select) is designed so that the user can "reselect" the previous word, choosing the correct word of the word. ambiguous pair, without having to cancel or rewrite the word that the user had already begun to write. While the preferred embodiment of the invention has been illustrated and described, it will be appreciated that various changes may be made therein without departing from the spirit and scope of the invention. For example, those skilled in the art will appreciate that the keyboard 54 of the reduced keyboard system with ambiguity reduction can have up to three data keys at least or up to twenty data keys at most. The ambiguity elimination technique discussed here is equally applicable to keyboards of different sizes. It will also be appreciated that the unambiguously reduced keyboard system of this invention can be used in conjunction with other devices that require text input. For example, an ambiguity eliminating system of this invention is illustrated in Figure 6, 100Built-in a 600 remote control for a television. This system may be required for programming text on a standard type television or may be additionally used to control an interface device, for example a "decoder" which can access the resources of a computer, for example the Internet. The television remote control sends signals indicating clicks, to a receiving and processing unit 602 connected or contained within a television 604. The text input is effected in the manner described above using a reduced set of data keys 606 located in the top surface of the remote control. An unambiguous Select 608 key is included on the keyboard in order to delimit the entered sequence of clicks and select different interpretations of the selection list displayed on the television screen. The incorporation of a keyboard directly into the remote control is particularly advantageous since the user does not have to use a separate keyboard of real size when operating the Internet access interface based on television. Figure 6B illustrates a wristwatch using the reduced keyboard system with ambiguity elimination of this invention. The text entry is effected in the manner described above using a set 101reduced by 610 data keys placed, for example, on the outer circumference of the dial of the watch. Alternatively, the dial of the watch can be implemented as a control disc that moves laterally in different directions corresponding to the various keys. An unambiguous Select 612 key is included in the clock to delimit the typed input sequences and select different interpretations displayed sequentially at the insertion point of the screen. It will also be appreciated that the reduced keyboard system with ambiguity elimination of this invention is an especially effective technique for entering text based on eye movement, as detected by an eye tracking device. This admission system is particularly suited to be used by people with hand control disabilities. As the visual targets that must be discriminated increase, the resolution required for the eye tracking system increases correspondingly, resulting in systems that tend to be less robust and more expensive. By decreasing the number of data keys that are required by the system from 27 or more to up to 8 keys, the reliability of the system can be greatly improved when using an ocular tracking device with low 102resolution. A suitable arrangement of eight keys is shown in Figure 7. Seven keys are used to enter letters or numbers and a key is used as the "Select" key. The eight keys are organized in a circle, and each key corresponds to one of the eight directions. When arranged in a circle, each key can be easily selected by eye movement in one of the eight directions of the compass, as detected by an eye tracking device. Previous text entry systems based on eye tracking have generally been based on an approach that requires two eye fixations (ie, two key selections) for each letter of the generated text. A system based on the reduced ambiguity eliminator keyboard system of this invention, which requires only one ocular fixation for each letter of the generated text, offers advantages over this approach. An alternative embodiment of a reduced keyboard, ambiguity reducing portable system, 50, is shown in Figure 4B. The keyboard is constructed with mechanical keys 54 of normal size, which are distinguished from the system display 53. The full-sized mechanical keys allow the user to write more quickly using three separate fingers to write on the three columns of data keys 56, taking advantage of the improved tactile feedback provided by the 103mechanical keys. The reduced keyboard contains twelve keys 54 placed in the preferred arrangement described above. Variations can be made in the construction and operation of each of the above modalities. Those skilled in the art will appreciate that there are alternative arrangements for keyboard 54 of the reduced ambiguity eliminating keyboard system. A 3x3 array of the data keys 56 is preferred since the array is easy to manipulate with the three middle fingers of the user's hand. Most typing is done either in the middle row or one row above or one row below. Another 3x3 array of the data keys 56 can be constructed using the "rocking chair" keys 801, an example of which is shown in Figure 8A. Figure 8B shows a side view of a rocking key 802 having three closing positions: balanced upward and slightly away from the one writing, straight down and down slightly towards the person writing. Therefore, by placing the three middle fingers of a user's hand through the centers of the three rocking keys as a "starting row", each of the data keys can be activated without having to lift the 104fingers of the keys. The three positions can be activated by extending one finger forward and pushing slightly back and down, pushing straight down or curving the finger slightly pulling back and pushing up. A small hole in the center of each key provides tactile feedback regarding the position of the finger. This allows the user to write more quickly in the small set of data keys since the fingers never need to be physically lifted from the keys. Yet another 3x3 array of the data keys 56 is shown in Figure 8C, where the data keys 56 are constructed using nine mechanical keys, each of which can be depressed in four distinguishable ways. In the example shown in Figure 8C, each key can be tilted in four different directions (up, down, left and right), when depressed. This allows each key activation to unambiguously specify one of up to four different characters or different functions that are associated with the key, while simultaneously also signaling an activation of an ambiguous key. In Figure 8C, for example, eight of the nine data keys 56 are each unambiguously associated with three letters and one digit, and the lower right key 105it is unambiguously associated with two letters, a digit and a punctuation character (a period). As shown in Figure 8D, each key is constructed so that it will tilt in one of four directions by clicking on one of the four regions 842 on the top of the key, resulting in the closure of one of the four contacts 843 different switching. Each key will be constructed to tilt in up to eight directions or at least up to two directions, and allows the system to distinguish a corresponding number of unambiguous states. In another embodiment of the invention, the system can be used in a touch pad device, wherein each key has multiple symbols on each key. Each symbol is located in a different location on the key. A user selects a symbol that is on the touch keys by touching the key that contains the desired letter or symbol and then indicating the symbol with a small short stroke movement in the plane of the screen, towards the desired letter or symbol. All symbols on a key have an associated hit address. For example, on a key that contains three symbols, the symbol on the left could be indicated by touching the key and sliding to the left, the symbol on the right could be indicated by touching the key andslide to the right, and the center symbol, possibly the most frequently used symbol, could be indicated by touching and releasing the key without any lateral movement. When the pen or fingertip is lifted from the surface of the touch-sensitive screen, the selected symbol is added to the end of the current object that has unambiguous spelling. This method can be expanded to include more than three selectable elements on a key. For example, a set of nine different "gesture" strokes can be defined as eight different strokes in the direction of eight compass points, plus a simple tap as a ninth gesture or direction. This will allow the user to select unambiguously with a single key up to nine different characters or other options such as functions or menus. While the above analysis is related to the use of reduced keyboard systems with elimination of ambiguity using Roman and English characters, it will be appreciated that the system can also operate with foreign languages that use different character sets. The foreign language versions would operate in a similar way, with the set of foreign characters optionally grouped on the keyboard keys, to optimize the keyboard and decrease ambiguity in that 107particular language, or through several languages. In the case of the Japanese language, the current Japanese word processors in general use Roman characters as the preferred method for entering Japanese kana and kanji. The first step of processing is to write the Roman characters used to spell each phonetic syllable of the desired kana, which appears as each syllable is written. When Kanji is desired, after writing the kana corresponding to one or more kanji that are used to write the desired word, a "Conversion" key is pressed and one or more possible interpretations of the kana of the entered kana are displayed as numerical alternatives in the screen. The user then selects the desired interpretation by pressing the corresponding number. A preferred embodiment of the reduced keyboard system that eliminates ambiguity for generating Japanese kana and kanji, works as follows. The user writes the Roman characters that correspond to the phonetic spelling of the kana that corresponds to the desired word. The word vocabulary module contains an entry for each unique phonetic spelling corresponding to one or more words, where the off-center frequency is adjusted to the sum of the frequencies of all the inputs with that phonetic reading. After each ambiguous typing, the 108The word vocabulary module displays the kana and each matching word in descending order of frequency. After typing the ambiguous keys that correspond to the desired word, the user presses the Select key to select the first interpretation of the kana from the sequence of clicks in the selection list. The reduced keyboard system with ambiguity elimination then exports this kana reading to a kanji interpretation software program that takes a reading of the kanji as input and returns a list of the kanji that corresponds to it. Associated with each interpretation of kanji is information regarding its frequency of use and its current use. The frequency of use refers to its use in the general language and it is kept fixed. Current usage refers to the user of the software package and is adjusted according to the user's particular history of use for the software. The reduced keyboard system with ambiguity elimination for the Japanese language then exhibits the kanji returned over the upper parts of the data keys 56. The system is configured by the user in a configuration menu to determine three aspects of the way the that the kanji will be displayed. The first aspect is the maximum number of separate kanji readings that are to be displayed on a key top. When there are 109more than nine possible kanji readings, the readings are distributed as evenly as possible among the nine keys. When the possible kanji readings are greater than nine times the maximum number, the remaining kanji readings are displayed on subsequent screens. A special "Next Screen" key is activated to advance the system to these subsequent screens and to return it to the first screen after the last screen of possible readings has been reached. An audible tone indicates when the system has returned to the first screen. When more than one reading is displayed for each data key, the preferred unambiguous spelling method (direct pointing or multiple click) is used to select the desired reading of the key on which it is being displayed. The second aspect configured by the user is the number of data keys that are used to display the kanji readings according to the actuality of use and the number of data keys used to display the kanji readings according to the frequency of use. For example, three of the nine keys can be selected to be displayed according to current usage, and the remaining six keys according to frequency. The display of the keys according to the actuality of use show the kanji readings plus 110recently used, in order to reduce the actuality of use, in the first three data keys of each screen of readings displayed. The remaining six keys show kanji readings in descending order of frequency of use. In addition, at the user's option, the selected kana reading also appears as hiragana, only and as katakana only if two fixed locations were first displayed on the first screen, preferably on the same key with the hiragana reading that was displayed first. The hiragana reading that is implicitly or explicitly selected in the selection list also appears at the insertion point. If the hiragana reading is the one that you want to place in the text area without converting it to some kanji, the user can select it by touching the desired reading in the selection list. It is important to note that since the frequency of use information is not dynamic, for a specific input kana reading and the number of keys assigned (in this example six), the same kanji readings will always appear on the same keys, allowing the user automatically select the kanji based on frequency. Since a kanji reading displayed based on frequency may also have been used recently, the same kanji reading may appear in two different screen locations. At user's option, a selected number 111of the most recently used kanji readings that were displayed according to frequency, are displayed as resulting readings or in some other distinguishing format. If the first kana interpretation of the typing sequence in the selection list is not the desired kana reading, the user presses the Select key again to select the next kana interpretation of the selection list. The reduced keyboard system with ambiguity elimination then exports this next kana reading to the kanji interpretation software program and displays the first screen of the list of kanji renditions returned. This process is repeated with each repeated activation of the Select key until the desired kana reading is selected. In an alternative mode, to preserve processing, the selected kana reading can not be sent to the kanji interpretation software program until the "Next Screen" key is initially pressed. In this alternative mode, if the selected hiragana reading is to be placed in the text area without converting it to kanji, the user can simply start writing the next desired word without pressing the "Next Screen" key. Once the desired kana reading is selected, the "Next Screen" key is pressed up to 112that the desired kanji appears on one of the data keys. The user then presses the data key (using the method of specifying direct pointing or specifying multiple keystrokes if more than one kanji reading appears on the key) in order to select the desired kanji. The selected kanji is immediately placed in the text area at the insertion point 88 and the data keys are displayed again showing the Roman characters assigned to each key in the standard design. The user then starts writing the next desired word and repeats the previous process. Those experts in this field will recognize that other vocabulary modules can be enabled within the computer, for example vocabulary modules that contain legal terms, medical terms and terms in foreign language. Using a system menu, the user can configure the system so that other words in the vocabulary can be displayed first or last in the list of possible words, with a special coloration or highlight. Accordingly, within the scope of the appended claims, it will be appreciated that the invention may be practiced in other ways than the one specifically described herein.

Claims (37)

113 CLAIMS: 1. A system for establishing digitally encoded text comprising: (a) a user input device (54) having a plurality of inputs (56), each input of the plurality of inputs is associated with a plurality of characters , the inputs are operable by the user of the system to generate an input sequence each time an input is selected when manipulating the user input device and the sequence corresponds to the sequence of the inputs that have been selected and that have an interpretation ambiguous text when the user operates the system in an ambiguous input mode, the generated sequence is ambiguous due to the plurality of characters associated with each entry, the generated sequence corresponds to the sequence of entries that have been selected and that have a textual interpretation unambiguous when the user operates the system in an unambiguous input mode; (b) a memory (104) containing a plurality of objects, each object of the plurality of objects is associated with an input sequence; (c) a screen (53) for displaying the system's output to the user; and (d) a processor (100) coupled to the device 114 of user input, memory and screen, wherein the processor: (i) processes each generated input sequence by selecting an input as an ambiguous selection of one or more of the plurality of characters associated with the input to identify starting from the plurality of objects in the memory, at least one object that is associated with the input sequence being processed; (ii) simultaneously processing each generated input sequence by selecting an input as an ambiguous selection of a specific character associated with the input, to identify the unambiguous textual interpretation associated with the generated input sequence; and (iii) generating an output signal that causes the screen to display at least one of the identified objects associated with the generated input sequence as a textual interpretation of the generated input sequence and to simultaneously display the unambiguous textual interpretation, identified, which is associated with the output sequence. The system according to claim 1, wherein the plurality of inputs of the user input device are implemented as a plurality of keys displayed on a touch-sensitive screen, with the plurality of characters associated with each key that is being displayed within a limit defining that key and where contact with the screen directly where the character is displayed is simultaneously processed as a non-ambiguous selection of the character and as an ambiguous selection of either of the plurality of characters associated with the key. The system according to claim 1, wherein the plurality of inputs of the user input device are implemented as a plurality of keys displayed on a touch-sensitive screen, where the plurality of characters associated with each key that is being displayed within of a limit that defines that key and where the specific character is unambiguously selected by making contact with the key on which the desired character is displayed and by making a distinguishable movement to indicate the specific character. The system according to claim 3, wherein the distinguishable movement specifies an alternate form of a character. The system according to claim 1, wherein the plurality of inputs of the user input device are implemented as a plurality of keys displayed on a touch-sensitive screen, where the plurality of characters associated with each key is displayed. is displaying within a limit that defines that key and where the specific character is unambiguously selected by making contact several times with a key displayed, where the number of times that the displayed key is contacted corresponds to the position of the desired character on the key. The system according to claim 2, 3, or 5, wherein the screen of the key contacted is visually modified to show the specific character that has been unambiguously selected. The system according to claim 5, wherein a next specific character is unambiguously selected from the contacted key, after a time interval exceeding a predetermined threshold, during which no contact is made with any key, and wherein the predetermined time threshold length is automatically adjusted as a function of the time average for the time interval between successive pairs of contacts on the same key, when the time intervals are less than the predetermined threshold and the interpretation unambiguous textual of the input sequences containing the contact pairs is selected by the user as the output. The system according to claim 1, wherein the plurality of inputs of the input device 117 of the user are implemented as a plurality of mechanical keys, where each of the plurality of keys is associated with a plurality of characters and wherein the mechanical keys are activated in a plurality of different ways to unambiguously select specific characters. The system according to claim 1, wherein the plurality of inputs of the user input device are implemented as a plurality of mechanical keys, wherein each of the plurality of keys is associated with a plurality of characters that are displayed on each key, and where a specific character is unambiguously selected by activating a specific key several times, and the number of times this key is activated corresponds to the position of the desired character in the key. The system according to claim 9, wherein the additional character is unambiguously selected by activating the specific key several times and wherein the number of times said key is activated is greater than the number of characters displayed on the key. The system according to claim 9, wherein a next specific character is selected unambiguously from the specific key after a time interval exceeding a predetermined threshold, during which no key is activated 118 and wherein the predetermined time threshold length is automatically adjusted as a function of a time average for the time intervals between successive contact pairs on the same key, when the time intervals are less than the predetermined threshold and the textual interpretation Unambiguous of the input sequences containing the contact pairs is selected by the user to output. The system according to claim 1, wherein the unambiguous entry of words that do not correspond to any object in the memory is detected by the processor and the objects corresponding to those words are automatically added provisionally to the memory, of so that the words can be generated during the operation of the system in the ambiguous input mode, selecting the corresponding sequence of entries. The system according to claim 12, wherein, when an object has been provisionally added to the memory corresponding to a previously unknown word that has been entered unambiguously, and where all occurrences of the word are canceled from the Digitally encoded output text, produced by the system when the previously unknown word was entered unambiguously, the object is automatically canceled from memory. 119 14. The system according to claim 12, wherein, when an object has been provisionally added to the memory corresponding to a previously unknown word that has been entered unambiguously, and wherein the input sequence associated with the word is not generated before receiving a signal indicating that the system is going to shut down, the object is automatically canceled from memory. 15. An ambiguity eliminator system to eliminate the ambiguity of ambiguous input sequences entered by a user, the ambiguity eliminator system comprises: a. a user input device (54) having a plurality of input means (56) and a set of one or more unambiguous inputs (58), each of the first plurality of inputs (56) is associated with a plurality of of characters, wherein the selection of one or more of the first plurality of inputs generates a selected input sequence, and wherein the selection of one or more ambiguous inputs (58) generates signals that control the operation of the system; b. a memory (104) containing a plurality of objects, each of the objects of the plurality of objects is associated with an input sequence; 120 c. a screen (53) to illustrate to the user the output of the system; and d. a programmable processor (100) coupled to the user input device, to the memory and to the screen, wherein the processor is programmed to: (i) to identify from the plurality of objects in the memory, at least one object associated with each selected input sequence, that is generated; (ii) to display at least one of the identified objects associated with each selected input sequence and generated as a textual interpretation of the selected input sequence; (iii) responding to an unambiguous signal generated by the selection of one or more unambiguous entries, by selecting an object from the identified set of at least one object in the memory associated with the selected input sequence and entering the selected object in a location of the text entry display on the screen, such as the textual interpretation of the selected input sequence; and (iv) responding to an unambiguous signal generated by the selection of one or more unambiguous entries, by identifying the input sequence associated with an object, from the location of the text entry display and establishing the sequence of Identified entry 121 as the selected input sequence. The system according to claim 15, wherein the unambiguous signal that causes the processor to identify the input sequence associated with an object, from the display location of the text input and establish the input sequence identified as the selected input sequence is a signal that cancels the character immediately after the object in the display location of the text input. The system according to claim 15, wherein: (a) each object of the plurality of objects in the memory is further associated with a frequency of use (b) the object associated with each input sequence having the frequency of use highest is displayed as the first identified object, and is the default object for the associated input sequence; and (c) the default object is identified to the user of the system as a highly ambiguous object, if the second object identified is not the default object and is associated with the same generated input sequence and has a usage frequency that exceeds a selected threshold, where the selected threshold is a function of the frequency of use of the default object and the average usage frequency of all objects in the memory 18. An ambiguity eliminator system to eliminate the ambiguity of ambiguous input sequences entered by a user, the ambiguity eliminator system comprises: a. a user input device (54) having: (i) a plurality of inputs (56), each input of the plurality of inputs is associated with a plurality of characters, an input sequence is generated each time an input is selected when manipulating the user input device, wherein the generated input sequence corresponds to the sequence of inputs that have been selected, the generated input sequence has a textual interpretation that is ambiguous due to the plurality of characters associated with each input; and (ii) at least one unambiguous input (60) for generating an unambiguous output, and wherein an input sequence is terminated when the user manipulates the user input device with an unambiguous input; b. a memory (104) containing a plurality of objects, each of the objects of the plurality is associated with an input sequence and a frequency of use, where each of the objects of the plurality contained in the memory corresponds to a sequence of Latin characters, known as romaji, where the sequence of Latin characters corresponds to a phonetic spelling kana, and this phonetic spelling kana is associated with one or more words in Japanese. c. a screen (53) to illustrate to the user the output of the system; and d. a processor (100) coupled to the user input device, the memory and the screen, the processor comprises: (i) an identifier component for identifying from the plurality of objects in the memory, at least one object associated with each input sequence generated and having the highest frequency of use, and identifying any additional objects associated with each generated input sequence; (ii) an output component for displaying on the screen at least one of the identified objects associated with each generated input sequence, such as a textual interpretation of the generated input sequence, and displaying any additional identified objects, associated with each sequence of input as additional textual interpretations of the input sequence generated in descending order of frequency of use; 124 (iii) a selection component to select the object identified with the highest frequency of use to be entered in a screen location for text entry, upon detecting manipulation of the user input device with an unambiguous input, and selecting the identified objects that have a lower frequency of use for their entrance to the exhibition location for text entry, upon detecting the manipulation of the user input device with an unambiguous entry for a plurality of times, each manipulation of the user input device with the unambiguous input selects an object that has the next lowest frequency of use among the identified objects. The system according to claim 18, wherein the frequency of use associated with each object contained in the memory is equal to the sum of frequencies of use of the Japanese words associated with that object. The system according to claim 19, wherein after each generated input sequence, the phonetic kana spelling corresponding to the object in the memory associated with the input sequence and having the highest frequency of use, is displayed. The system according to claim 19, wherein after each generated input sequence, the 125 phonetic kana spelling corresponding to one or more objects in the memory associated with the input sequence is displayed in descending order of frequency. The system according to claim 19, wherein the processor automatically selects an object having a higher frequency of use, such as phonetic phonetic spelling associated with the generated input sequence, upon detecting the manipulation of the user input device with the unambiguous input, causing the screen to display one or more textual interpretations associated with the selected object, these one or more textual interpretations being one or more of: Latin characters hiragana, katakana, kanji or kanji plus furigana, one or more of the textual interpretations associated with one or more entries of the plurality of entries, wherein the selection of the corresponding entry selects the associated textual interpretation that will be output from the textual interpretation of the generated input sequence. 23. The system according to claim 22, wherein the user can select an object that has a lower frequency of use as the kana phonetic spelling of the input sequence generated when manipulating the user input device with the unambiguous input, during a plurality of times, each manipulation 126 of the user input device with the unambiguous input selects an object that has the next lowest frequency of use and causes the screen to display the textual interpretations associated with the selected object. The system according to claim 20, wherein the user can select an object that has a lower frequency of use as the phonetic phonetic spelling of the input sequence generated when manipulating the user input device with the unambiguous input, during a plurality of times, each manipulation of the user input device with the unambiguous input selects an object having the following lower frequency of use and causes the screen to display the phonetic kana spell selected as the phonetic kana spelling associated with the sequence of generated entry. The system according to claim 24, wherein the processor, upon detecting the manipulation of the user input device with a second unambiguous input, selects a text interpretation associated with the selected phonetic kana spelling object having the highest frequency of use for the textual interpretation of the phonetic, selected kana spelling object, causing the screen to display textual interpretation, where the textual interpretation it includes one or more Latin characters, iragana, katakana, kanji or kanji with furigana. 26. The system according to claim 25, wherein the user can select a textual interpretation that has a lower frequency of use as the textual interpretation of the phonetic, phonetic, selected kana spelling object by manipulating the user input device with the second unambiguous input, for a plurality of times, each manipulation of the user input device with the second unambiguous input selects a textual interpretation that has the following lower frequency of use, and causes the screen to display the textual interpretation as the textual interpretation of the kana spelling object, phonetic, selected. 27. The system according to claim 23, wherein the textual interpretations are displayed in descending order of frequency of use. The system according to claim 27, wherein when there are more textual interpretations than associated input means of the plurality of input means, the additional textual interpretations are displayed upon detecting the manipulation of the user input device with an input means. unambiguous additional. 29. The system according to claim 23, in 128 where when there are fewer textual interpretations than associated input means of the plurality of input means, additional textual interpretations are exhibited associated with other less frequent phonetic interpretations (kana) of the ambiguous input sequence. The system according to claim 1 or 15, wherein the memory includes objects that are associated with input sequences that are shorter than the number of characters in the textual interpretation associated with the object. 31. The system according to claim 1 or 15, wherein the user input device is a remote control for television with a reduced keyboard for entering text. The system according to claim 1 or 15, wherein the user input device is an eye tracking input system that determines which of the input means set is selected by monitoring the position and / or orientation of one or both user's eyes 33. The system according to claim 1 or 15, wherein the user's input device is a wristwatch with a reduced keypad (610). 34. The system according to claim 1 or 15, wherein the user input device is a keyboard 129 constructed of mechanical keys (801, 56), which can be activated in a plurality of different ways, wherein each different activation corresponds to a different input. 35. The system according to claim 1 or 15, wherein the user input device is implemented as a simple pattern of grid delineation on a touch-sensitive screen that delineates the regions indicated on the screen corresponding to the various inputs and where the delineations appear superimposed on the screen. 36. The system according to claim 1 or 15, wherein the user input device is implemented as a touch-sensitive screen on which the user performs a plurality of simple contact gestures on the screen, where the screen is touched. sensitive to touch and the point of contact moves in a different way, where each different gesture corresponds to an entrance. 37. The system according to claim 1 or 15, wherein the objects in the memory that include one or more characters with special diacritical marks are associated with input sequences composed of the input means associated with corresponding characters without diacritical marks. 130 SUMMARY OF THE INVENTION A reduced keyboard system with ambiguity elimination (50). The keyboard (54) has twelve keys (56, 60, 62, 64), nine of them marked with several letters and other symbols, and these nine plus one additional are marked, each one, with one of the ten digits. The typing for text entry is ambiguous. The user types a delimiting key "Select" (60) at the end of each word, the delimitation of a sequence of clicks that could coincide with any of the several words that have the same number of letters. The typing sequence is processed with a complete vocabulary and the words that match the typing sequence are presented to the user in descending order of frequency of use. In addition, the roots of the longest words whose initial letters match the typing sequence are also presented to the user in descending order of frequency of use. The first job (78) in the presented list (76) is to automatically select by entering the first character in the next word. The letters are assigned to the keys in a non-sequential order that reduces opportunities for ambiguity. The "Select" key (60) is pressed to select the desired word other than the first word, and the word spacing and punctuation are automatically computed. For words that 131 they are not in the vocabulary, an unambiguous simultaneous interpretation of each click is made to specify each letter of a desired word. The system simultaneously interprets all typing sequences both in the sense of ambiguous and unambiguous sequences. The user selects the desired interpretation. The system also presents the user with the number that is represented by the sequence of clicks for possible user selections.
MXPA/A/1999/006904A1997-01-241999-07-23Reduced keyboard disambiguating systemMXPA99006904A (en)

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
US087929691997-01-24

Publications (1)

Publication NumberPublication Date
MXPA99006904Atrue MXPA99006904A (en)2000-05-01

Family

ID=

Similar Documents

PublicationPublication DateTitle
CA2278549C (en)Reduced keyboard disambiguating system
US6307549B1 (en)Reduced keyboard disambiguating system
AU746674B2 (en)Reduced keyboard disambiguating system
EP1514357B1 (en)Explicit character filtering of ambiguous text entry
WO1998033111A9 (en)Reduced keyboard disambiguating system
JP2007133884A5 (en)
KR20000035960A (en)Speed typing apparatus and method
WO1997005541A9 (en)Reduced keyboard disambiguating system
KR20020015986A (en)High Speed Typing Apparatus and Method
EP1248183B1 (en)Reduced keyboard disambiguating system
MXPA99006904A (en)Reduced keyboard disambiguating system
AU747901B2 (en)Reduced keyboard disambiguating system
HK1026757A1 (en)Reduced keyboard disambiguating system
HK1026757B (en)Reduced keyboard disambiguating system
HK1010924B (en)Reduced keyboard disambiguating system
MXPA00002641A (en)Reduced keyboard disambiguating system
HK1071446B (en)Reduced keyboard disambiguating system
HK1053876A (en)Reduced keyboard disambiguating system

[8]ページ先頭

©2009-2025 Movatter.jp