WO2005055077A2 - Predictive input - Google Patents

Predictive input Download PDF

Info

Publication number
WO2005055077A2
WO2005055077A2 PCT/IB2004/052507 IB2004052507W WO2005055077A2 WO 2005055077 A2 WO2005055077 A2 WO 2005055077A2 IB 2004052507 W IB2004052507 W IB 2004052507W WO 2005055077 A2 WO2005055077 A2 WO 2005055077A2
Authority
WO
WIPO (PCT)
Prior art keywords
string
collection
initial symbol
data
symbol
Prior art date
Application number
PCT/IB2004/052507
Other languages
French (fr)
Other versions
WO2005055077A3 (en
Inventor
Gerrit Hollemans
Vincentius P. Buil
Original Assignee
Koninklijke Philips Electronics N.V.
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 Koninklijke Philips Electronics N.V. filed Critical Koninklijke Philips Electronics N.V.
Publication of WO2005055077A2 publication Critical patent/WO2005055077A2/en
Publication of WO2005055077A3 publication Critical patent/WO2005055077A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0237Character input methods using prediction or retrieval techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/26Devices for calling a subscriber
    • H04M1/27Devices whereby a plurality of signals may be stored simultaneously
    • H04M1/274Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc
    • H04M1/2745Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc using static electronic memories, e.g. chips
    • H04M1/27467Methods of retrieving data
    • H04M1/2748Methods of retrieving data by matching character strings

Definitions

  • the invention relates to a data-processing device having input means for receiving an input for selecting a string of symbols from a collection of symbol strings.
  • the invention also relates to a method for selecting a string of symbols from a collection of symbol strings.
  • the invention also relates to a computer program product operative to cause a processor to execute the steps of said method.
  • a data-processing device which is a mobile communication unit having input means with a keypad for entering a character.
  • the mobile communication unit has a memory containing a collection of symbol strings.
  • the collection has the form of a database with data records containing the symbol strings.
  • the mobile communication unit has a controller, which processes the collection in searching the database for a data record based on an initial symbol of the string. If the initial symbol of the string of a data record is associated with the character entered, the controller selects the data record for display on a display screen.
  • a string has a first portion and a second portion
  • the operator needs to remember the distribution of the content over the first portion and the second portion to properly find the record in the database. This is cumbersome when the distribution is semantically of little significance.
  • An example is a first string containing a name of a person.
  • the first portion contains a given name of the person and the second portion contains a surname of the person.
  • the first portion contains the surname and the second portion contains the given name.
  • the chances of properly finding the record are further reduced. It is a drawback of the known data-processing device that an operator needs to remember the distribution of the content of the first string over a first portion of the string and a second portion of the string to properly find the record in the database.
  • the first object is realized in that the data-processing device has the features of claim 1. Independent of whether the input is associated with the content of the first portion of the first string or with the content of the second portion of the first string, the data- processing device selects the first string.
  • the invention is based on the recognition that looking in a collection for a string having a first and a second portion is improved by also considering another distribution of the content of the first string over the first and the second portion, especially when each of the contents of the first and the second portion is semantically significant, but the distribution of the content over the portions is of less semantic significance.
  • a string with the first portion containing a given name of a person and the second portion containing a surname of the person is an example, where each of the contents of the first and the second portion is semantically significant, but where the distribution of the content over the portions is of less semantic significance.
  • a string with a name prefix, a name infix or a name suffix a string with a name with initials, a string with a name with a title.
  • Another example is a string with an e-mail address having a first portion and a second portion that may be delineated by an at sign (@) or a full stop.
  • Yet another example is a string that indicates a multimedia content by containing, for instance, an author, an actor, a producer, a composer, a distributor, a performing artist, a performing band, a song title, an album title, a movie title, a lyric, a script, a concert, an event, a location, or a source address of the multimedia content.
  • the display screen may be part of the data-processing device or it may be external to the data-processing device.
  • the input means may comprise a button with a switch, but may also comprise sensors like a touch sensor, a pressure sensor, a microphone coupled to sound analysis means or speech analysis means, or a gesture sensor coupled to gesture analysis means.
  • the input means may comprise a computer input device like a keyboard, a keypad, a mouse, a touch pad, or a touch screen.
  • the input means may comprise a key with a fixed function or, alternatively, a key with a function that depends on content being displayed on a display screen, known as a soft key.
  • the input may be received by an activation of the input means, but may also be received by an analysis of a signal of a sensor.
  • Selection of the strings may be based on several principles.
  • a first principle is e.g. to search the collection for a matching string and to select the first matching string found.
  • a second principle is e.g. to search the collection for all matching strings and to select each matching string.
  • the memory may be, for instance, a digital solid-state memory like a RAM or a ROM.
  • the collection may be, e.g. a software structure like an array or a linked list that is stored in the memory.
  • the collection may be part of a database.
  • the database may contain a directory like an address book, a phonebook, or a contact list.
  • a string of symbols does not have to be linearly ordered, it may alternatively be ordered along several dimensions, for example, as in a matrix of symbols, or it may alternatively be a mostly unordered set of symbols.
  • the only requirement to the symbols being ordered is that there is a difference between a string with the first portion followed by the second portion and a string with a reversed sequence of the second portion followed by the first portion.
  • the string may be represented by a software structure like a collection, an array, a matrix, or a linked list that is stored in the memory.
  • a symbol may comprise various amounts of information.
  • a symbol may be, for instance, a single bit, a byte, a word of a number of bits, or an arbitrarily complex data structure.
  • a symbol may represent, for example, a letter of an alphabet, a character from the ASCII table, or a Unicode character, but it may also represent a spoken word in an audio sample of a spoken sentence, a phoneme in an audio sample of a spoken word, or an object or property of an object in a sequence of video frames.
  • the processor may be a general purpose processor or an embedded processor. The processor may repeatedly fetch an instruction from a memory and subsequently execute the instruction. The processor may be part of a personal computer or a hand-held device. The selection is presented at least partially on a display screen.
  • the display screen may be any means required for presenting the string, such as an audio display, a cathode ray tube, an LCD screen, or a video beamer.
  • the selection may contain too many strings to fit on the display screen, or the selection may contain a string or a symbol with too much information to fit on the display screen.
  • Some symbols of a string may have a temporal relation, e.g. a string of video frames or audio samples. Presenting such a string as a whole may take too much time.
  • Presenting the selection partially is especially relevant for a data-processing device with a limited resource. Examples of a limited resource are a small display screen, little or no available surface for operator interaction elements like buttons, little power, little bandwidth, and so on. Presenting can be performed in many ways. A first way is e.g.
  • a second way is e.g. to render at least an initial symbol of a selected and an initial symbol of a non- selected string of the collection, while rendering the symbol of the selected string differently from the symbol of the non-selected string. The difference can be achieved, for example, by using different colors or sounds, by reversing black and white, by using a different font weight, or by prefixing with a mark or a sign.
  • a third way is e.g. to display the selected strings in a dedicated area of a display screen.
  • a fourth way is e.g.
  • the memory is arranged for the collection to contain a first string of symbols having: a first portion containing an initial symbol; and a second portion containing a second initial symbol.
  • the ordering of symbols within each of the first and the second portion is arbitrary to some extent. With strings of symbols of, for instance, the Roman alphabet, the second initial symbol of the second portion may be the extreme left symbol.
  • the initial symbol of a portion may be the extreme right symbol.
  • the first and the second portion of the string may be determined on the basis of several principles.
  • a first principle is e.g. to have the processor parsing the string according to syntax rules.
  • a second principle is e.g. to apply a heuristic.
  • a third principle is e.g. to determine a further first portion of the string and a further second portion of the string, each with a respective further initial symbol, and to have the processor further arranged to add the first string of the collection to the selection in response to the input means receiving an input associated with either of the further first or the further second initial symbol.
  • the syntax rules or the heuristic may be based on what is stored in the string.
  • the string may be used, for instance, to store a name of a person or a company.
  • the name may be entered as just a given name, just a surname, a sequence of the given name and the surname, a sequence of the surname and the given name.
  • the name may comprise prefixes, infixes, and suffixes. Punctuation of the name may be varied. Each symbol may be in lower case or in upper case.
  • Given names may be abbreviated, for example, to initials. An initial may be immediately followed by a full stop, a space or a sequence of a full stop and a space.
  • the surname and the given name may be separated by a space or by a sequence of a comma and a space. Examples of strings with names with the initial, the second initial, the further first initial, and the further second initial symbol underlined are "Michael
  • a set of typical samples may be used for determining the first and the second portion.
  • the above may be used to enhance determining the first and the second portion, by providing syntax rules and heuristics.
  • the first and the second portion of the string may have been determined in advance of the input means receiving the input. This may have been done for each string in the collection. Alternatively, the first and the second portion may be determined in response to the input means receiving an input.
  • the processor may be arranged to modify the collection in dependence upon further input, for instance, by modifying, adding or deleting a symbol of a string of the collection, or by modifying, adding or deleting a string of the collection.
  • another alternative trigger for determining portions is to detect a modification of a string of the collection, and to determine the first and the second portion of the string in response to the modification being detected.
  • a further measure may be to detect an addition of a new string to the collection, and to determine the first and the second portion of the new string in response to detecting the addition.
  • the initial symbol and the second initial symbol may be determined in advance, or in response to an input. The initial symbol, the second initial symbol, or both may be stored in a data structure in the memory.
  • the processor is arranged to add the first string of the collection to the selection in response to the input means receiving an input associated with the initial symbol.
  • the input may be associated with the initial symbol in various ways.
  • a first way is e.g. that a picture of the symbol is in proximity of a key that is activated for the input.
  • the picture may e.g. be printed on or close to the key, or it may be on a display screen or on a touch screen.
  • the key may be a plain button or switch, a soft-key, or an area of a touch screen.
  • a second way is that an activated key pertains to navigating information on a display screen.
  • the navigation may involve a direction in which to move, and the information is ordered or sorted along the direction on the display screen.
  • One example is a scroll list with strings ordered lexicographically, the key being a scroll key.
  • the direction may be, for instance, up, down, left, right, forward, backward, zoom in, zoom out, or page up, page down.
  • the processor may be arranged to add in several methods. In a first method, for example, the processor is dedicated and is arranged to add by design. In a second method, for example, the processor is arranged by programming it with instructions in microcode registers.
  • the processor is arranged by being designed to repeatedly fetch an instruction from a general purpose memory and to execute the instruction, and by the general purpose memory containing appropriate instructions to add.
  • the processor may fetch an instruction from a remote node such as an Internet server and execute the instruction.
  • the data-processing device may comprise a graphical user interface comprising an element that embodies the invention. Examples are a combobox, a drop down list, and a field with auto-completion. If, after an input, the selection contains more than the first string, the selection may be applied again in dependence upon a following input. The selection that results from the input may be taken as a second collection.
  • the processor may be arranged to add the first string of the second collection to the second selection in response to the input means receiving an input associated with either of the first or the second initial symbol.
  • a telephone may advantageously comprise a device according to the invention.
  • a navigating device that is used to navigate collections of information on display may advantageously comprise a device according to the invention. Examples of a navigating device are a hand-held device, a personal digital assistant, a personal organizer, a personal computer, a web browser, a media player, and a personal entertainment device.
  • Another advantage of the data-processing device according to the invention is that the first string may be provided as a whole, rather than as its constituent portions. If e.g.
  • the name may be entered into the first string in one go, and the data-processing device may determine the first and the second portion and the initial and the second initial symbol of the first string. This prevents the operator distributing the entered symbols over the first and the second portion.
  • the data-processing device has the features of claim 2. Delineating the boundary between the first and the second portion with a separator may simplify determining the second initial symbol. One method is to scan the first string for an occurrence of the separator, and in case of a match, to determine that the next symbol is the second initial symbol.
  • the data-processing device has the features of claim 3.
  • Presenting the selection alphabetically may enhance navigating the information, especially when a second selection requires further input as described above.
  • the data-processing device has the features of claim 4. Presenting the reordered string may improve the consistency of the user interface, as the input received is associated with the initial symbol of the reordered string.
  • the data-processing device is part of a communication device. Initiating a communication session with a party whose name is in the first string is easier with the data-processing device being part of the communication device, because an input associated with either of the initial symbol and the second initial symbol will select the first string, which pertains to the party.
  • the data-processing device is part of a mobile phone.
  • the data-processing device is part of a personal entertainment device. Selecting entertaining content with an attribute that is in the first string is easier with the data-processing device being part of the personal entertainment device, because an input associated with either of the initial symbol and the second initial symbol will select the first string, which pertains to the content.
  • the data-processing device is part of a portable media player.
  • the method may comprise a step of determining the portions, prior to the step of selecting.
  • the method may comprise a step of adding the first string to the collection, prior to the step of determining.
  • the method may comprise a step with an input of the first string, prior to the step of adding.
  • the third object is realized in that the computer program product has the features of claim 10.
  • the computer program product may be, for example, an application, a subroutine, or an element of a user interface, a select box, a drop-down list, a combo-box, a toggle, a button, a key shortcut, a menu, or a field with auto-completion.
  • the computer program product may comprise a routine for determining the first and the second portion, e.g. a parser or a classifier based on syntax rules, semantics or a heuristic as provided above.
  • FIG. 1 shows a block diagram of a data-processing device according to the invention.
  • the data-processing device 100 has input means 101, a memory 102 and a processor 103.
  • the data-processing device 100 is coupled to a display screen 106, which may be external to the data-processing device 100.
  • the memory 102 contains a collection 104 of symbol strings.
  • the input means 101 may receive an input for selecting a string of symbols from the collection 104.
  • the processor 103 processes the collection 104.
  • the processor 103 presents a selection 105 of the collection 104 at least partially on the display screen 106.
  • the collection 104 contains a first string 107 of symbols.
  • the first string 107 of symbols has a first portion 108 containing an initial symbol 110, and a second portion 109 containing a second initial symbol 111.
  • the processor 103 is arranged to add 112 the first string 107 of the collection 104 to the selection 105 in response to the input means 101 receiving an input associated with either of the initial symbol 110 and the second initial symbol 111.
  • the memory 102 may be further arranged for the collection 104 to contain the first string 107 of symbols with the first portion 108 containing a final separator 115 delineating the second portion 109.
  • the processor 103 may be arranged to locate the final separator 115 for obtaining the second initial symbol 111, in response to the input means 101 receiving an input.
  • Alternative triggers for obtaining the second initial symbol 111 are e.g. an expiring timer, a change in the collection 104, and a change in a string of the collection 104.
  • Examples of the final separator 115 are a space, a full stop, a comma, an apostrophe, a hyphen, an ampersand, an at sign, an underscore, a back apostrophe, a quotation mark, a dash, a colon, a semicolon.
  • the final separator 115 may, however, alternatively comprise more than one symbol. Examples are prefixes, titles, suffixes and roman numerals, e.g.
  • the processor 103 may be arranged to examine all strings of the collection 104 for locating occurrences of final separators in a set of final separators.
  • the set of final separators may be selected in dependence on what is contained by the first string 107, e.g.
  • the memory 102 may be still further arranged for the collection 104 to contain symbol strings, each symbol being from an alphabet.
  • the processor 103 may be arranged to present the selection 105 alphabetically. This is especially convenient if the selection 105 is presented as a list.
  • the selection 105 may be sorted only on the initial symbol 110 of the strings in the selection 105, as e.g. the list: "ACB”, “ABC”, “ABB”, “B”.
  • the selection 105 may in addition be sorted on the symbol that follows the initial symbol 110 of the strings in the selection 105, as e.g. the list: "ABC", "ABB”, “ACB”, “B”.
  • the selection 105 may be sorted on further symbols, i.e. alphabetically lexicographically, as e.g. the list: "ABB”, “ABC”, “ACB”, “B”.
  • the selection 105 may alternatively be sorted only on both the initial symbol 110 and the second initial symbol 111 of the strings in the selection 105, as e.g. the list: “Annemarie Bakker”, “Anna Derks”, “Annemarie Fransen”. This is especially convenient if the selection 105 is applied again in dependence on the following input as provided above, because the selection 105 is then presented while being also sorted on the second initial symbol 111 of the strings of the selection 105.
  • the processor 103 may be arranged to render the selection 105 on the display screen 106 such that initial symbols of the strings are horizontally aligned and second initial symbols of the strings are horizontally aligned as well, as e.g. the list: "Annemarie Bakker",
  • the processor 103 may be arranged to produce from the first string 107 a reordered string 116 of the second portion 109 of the first string 107, followed by the first portion 108 of the first string 107.
  • the processor 103 may be arranged to present the reordered string 116. This has the advantage of a more consistent user interface, because the operator expects the selected and presented strings to have an initial symbol 110 that is associated with the input.
  • An example is the collection 104 which contains strings with artists “Michael Jackson" and "George Michael”, and a selection 105 which is presented in response to an input associated with the symbol "M”, as:
  • the reordered string 116 may be modified or presented differently.
  • One example of modifying is to insert a comma between the portions, for example, as the list:
  • the processor 103 may be arranged to horizontally align the matching symbols of the strings of the selection. This has the advantage of a more consistent user interface without producing a reordered string 116.
  • One example is the list:
  • the data-processing device 100 may process the reordered string 116 similarly as the first string 107.
  • a subsequent input directed to the reordered string 116 may be processed as if it was directed to the first string 107. Therefore, the reordered string
  • a communication device may comprise the data-processing device 100. This may enhance the convenience of initiating communication with a party, for example, when querying a directory for particulars of the party, e.g. a URL, an IP, an Ethernet or a MAC address, based on an attribute of the party, for instance, a name. It may also enable the use of a relatively small display screen 106.
  • a mobile phone may comprise the data-processing device 100. The mobile phone may be equipped with relatively little or small resources, e.g.
  • a small display screen 106 may improve the user interface, extend battery life and reduce memory 102 usage.
  • a personal entertainment device may comprise the data-processing device 100. Typically, the personal entertainment device allows an operator to select entertaining content from a relatively large collection 104, by navigating the collection 104. The data- processing device 100 may enhance the convenience of enabling the personal entertainment device to also select content independently of the initial symbol 110 of the first string 107 associated with the content to be selected.
  • a portable media player may comprise the data-processing device 100. Similarly to the mobile phone, the portable media player may be equipped with relatively little or small resources.
  • a 'computer program' is to be understood to mean any software product stored on a computer-readable medium, such as a floppy disk, downloadable via a network, such as the Internet, or marketable in any other manner.

Abstract

A data-processing device (100) has: input means (101) for receiving an input (113, 114) for selecting a string of symbols from a collection (104) of symbol strings; a memory (102) for containing the collection (104); and a processor (103) for processing the collection (104) and for presenting a selection (105) of the collection (104) at least partially on a display screen (106). The selection is based on the initial symbol of the string. However, if an operator desires to select a first string (107) of symbols having: a first portion (108) containing an initial symbol (110); and a second portion (109) containing a second initial symbol (111), the operator needs to remember the distribution of the content over the portions. This is especially cumbersome if the distribution has semantically little significance, for instance, with portions containing a surname and a given name. This is improved by the processor (103) being arranged to add (112) the first string (107) of the collection (104) to the selection (105) in response to the input means (101) receiving an input (113, 114) associated with either of the initial symbol (110) and the second initial symbol (111).

Description

Data-processing device, method, and computer program product
The invention relates to a data-processing device having input means for receiving an input for selecting a string of symbols from a collection of symbol strings. The invention also relates to a method for selecting a string of symbols from a collection of symbol strings. The invention also relates to a computer program product operative to cause a processor to execute the steps of said method.
An embodiment of a data-processing device as described in the opening paragraph is known from US 20020198027 Al. This document discloses a data-processing device which is a mobile communication unit having input means with a keypad for entering a character. The mobile communication unit has a memory containing a collection of symbol strings. The collection has the form of a database with data records containing the symbol strings. The mobile communication unit has a controller, which processes the collection in searching the database for a data record based on an initial symbol of the string. If the initial symbol of the string of a data record is associated with the character entered, the controller selects the data record for display on a display screen. However, if a string has a first portion and a second portion, the operator needs to remember the distribution of the content over the first portion and the second portion to properly find the record in the database. This is cumbersome when the distribution is semantically of little significance. An example is a first string containing a name of a person. In a first example of the distribution, the first portion contains a given name of the person and the second portion contains a surname of the person. In a second example of the distribution, the first portion contains the surname and the second portion contains the given name. When the first string has a further portion, the chances of properly finding the record are further reduced. It is a drawback of the known data-processing device that an operator needs to remember the distribution of the content of the first string over a first portion of the string and a second portion of the string to properly find the record in the database.
It is a first object of the invention to provide a data-processing device of the type described in the opening paragraph, which is able to easily select the string also independently of the initial symbol. It is a second object of the invention to provide a method of the kind described in the opening paragraph, which easily selects the string also independently of the initial symbol. It is a third object of the invention to provide a computer program product of the type described in the opening paragraph, which allows selecting the string also independently of the initial symbol. The first object is realized in that the data-processing device has the features of claim 1. Independent of whether the input is associated with the content of the first portion of the first string or with the content of the second portion of the first string, the data- processing device selects the first string. The invention is based on the recognition that looking in a collection for a string having a first and a second portion is improved by also considering another distribution of the content of the first string over the first and the second portion, especially when each of the contents of the first and the second portion is semantically significant, but the distribution of the content over the portions is of less semantic significance. A string with the first portion containing a given name of a person and the second portion containing a surname of the person is an example, where each of the contents of the first and the second portion is semantically significant, but where the distribution of the content over the portions is of less semantic significance. Other examples are a string with a name prefix, a name infix or a name suffix, a string with a name with initials, a string with a name with a title. Another example is a string with an e-mail address having a first portion and a second portion that may be delineated by an at sign (@) or a full stop. Yet another example is a string that indicates a multimedia content by containing, for instance, an author, an actor, a producer, a composer, a distributor, a performing artist, a performing band, a song title, an album title, a movie title, a lyric, a script, a concert, an event, a location, or a source address of the multimedia content. The display screen may be part of the data-processing device or it may be external to the data-processing device. The input means may comprise a button with a switch, but may also comprise sensors like a touch sensor, a pressure sensor, a microphone coupled to sound analysis means or speech analysis means, or a gesture sensor coupled to gesture analysis means. The input means may comprise a computer input device like a keyboard, a keypad, a mouse, a touch pad, or a touch screen. The input means may comprise a key with a fixed function or, alternatively, a key with a function that depends on content being displayed on a display screen, known as a soft key. The input may be received by an activation of the input means, but may also be received by an analysis of a signal of a sensor. Selection of the strings may be based on several principles. A first principle is e.g. to search the collection for a matching string and to select the first matching string found. A second principle is e.g. to search the collection for all matching strings and to select each matching string. The memory may be, for instance, a digital solid-state memory like a RAM or a ROM. The collection may be, e.g. a software structure like an array or a linked list that is stored in the memory. The collection may be part of a database. The database may contain a directory like an address book, a phonebook, or a contact list. A string of symbols does not have to be linearly ordered, it may alternatively be ordered along several dimensions, for example, as in a matrix of symbols, or it may alternatively be a mostly unordered set of symbols. The only requirement to the symbols being ordered is that there is a difference between a string with the first portion followed by the second portion and a string with a reversed sequence of the second portion followed by the first portion. The string may be represented by a software structure like a collection, an array, a matrix, or a linked list that is stored in the memory. A symbol may comprise various amounts of information. A symbol may be, for instance, a single bit, a byte, a word of a number of bits, or an arbitrarily complex data structure. A symbol may represent, for example, a letter of an alphabet, a character from the ASCII table, or a Unicode character, but it may also represent a spoken word in an audio sample of a spoken sentence, a phoneme in an audio sample of a spoken word, or an object or property of an object in a sequence of video frames. The processor may be a general purpose processor or an embedded processor. The processor may repeatedly fetch an instruction from a memory and subsequently execute the instruction. The processor may be part of a personal computer or a hand-held device. The selection is presented at least partially on a display screen. The display screen may be any means required for presenting the string, such as an audio display, a cathode ray tube, an LCD screen, or a video beamer. There are various reasons for presenting the selection partially, some reasons pertaining to space, other reasons pertaining to time. For instance, the selection may contain too many strings to fit on the display screen, or the selection may contain a string or a symbol with too much information to fit on the display screen. Some symbols of a string may have a temporal relation, e.g. a string of video frames or audio samples. Presenting such a string as a whole may take too much time. Presenting the selection partially is especially relevant for a data-processing device with a limited resource. Examples of a limited resource are a small display screen, little or no available surface for operator interaction elements like buttons, little power, little bandwidth, and so on. Presenting can be performed in many ways. A first way is e.g. to render at least an inital symbol of at least one string of the selection on the display screen. A second way is e.g. to render at least an initial symbol of a selected and an initial symbol of a non- selected string of the collection, while rendering the symbol of the selected string differently from the symbol of the non-selected string. The difference can be achieved, for example, by using different colors or sounds, by reversing black and white, by using a different font weight, or by prefixing with a mark or a sign. A third way is e.g. to display the selected strings in a dedicated area of a display screen. A fourth way is e.g. to present at least part of a sorted list of the strings of the collection in an area of a display screen, and to reposition the list such that the selected string ends up in the area. This resembles jumping through the sorted list. Certain combinations of these ways are especially advantageous, for instance, the combination of the second and the fourth way, for e.g. indicating the selection as part of a sorted collection on display. The memory is arranged for the collection to contain a first string of symbols having: a first portion containing an initial symbol; and a second portion containing a second initial symbol. The ordering of symbols within each of the first and the second portion is arbitrary to some extent. With strings of symbols of, for instance, the Roman alphabet, the second initial symbol of the second portion may be the extreme left symbol. With strings of symbols of, for instance, the Hebrew alphabet, the initial symbol of a portion may be the extreme right symbol. The first and the second portion of the string may be determined on the basis of several principles. A first principle is e.g. to have the processor parsing the string according to syntax rules. A second principle is e.g. to apply a heuristic. A third principle is e.g. to determine a further first portion of the string and a further second portion of the string, each with a respective further initial symbol, and to have the processor further arranged to add the first string of the collection to the selection in response to the input means receiving an input associated with either of the further first or the further second initial symbol. The syntax rules or the heuristic may be based on what is stored in the string. The string may be used, for instance, to store a name of a person or a company. The name may be entered as just a given name, just a surname, a sequence of the given name and the surname, a sequence of the surname and the given name. The name may comprise prefixes, infixes, and suffixes. Punctuation of the name may be varied. Each symbol may be in lower case or in upper case. Given names may be abbreviated, for example, to initials. An initial may be immediately followed by a full stop, a space or a sequence of a full stop and a space. Furthermore, the surname and the given name may be separated by a space or by a sequence of a comma and a space. Examples of strings with names with the initial, the second initial, the further first initial, and the further second initial symbol underlined are "Michael
Jackson", "George Michael", "Wim de Bie", "Pete Stone Jr.", "Robert J. Van de Graaff ' , "Jan Vanderheijden", and "henk.jansen@philips.com". A set of typical samples may be used for determining the first and the second portion. The above may be used to enhance determining the first and the second portion, by providing syntax rules and heuristics. The first and the second portion of the string may have been determined in advance of the input means receiving the input. This may have been done for each string in the collection. Alternatively, the first and the second portion may be determined in response to the input means receiving an input. The processor may be arranged to modify the collection in dependence upon further input, for instance, by modifying, adding or deleting a symbol of a string of the collection, or by modifying, adding or deleting a string of the collection. As a result, another alternative trigger for determining portions is to detect a modification of a string of the collection, and to determine the first and the second portion of the string in response to the modification being detected. A further measure may be to detect an addition of a new string to the collection, and to determine the first and the second portion of the new string in response to detecting the addition. Similarly, the initial symbol and the second initial symbol may be determined in advance, or in response to an input. The initial symbol, the second initial symbol, or both may be stored in a data structure in the memory. This may be done for one, some or all of the strings in the collection. An example is a further collection of pointers to the second initial symbol of each string in the collection. The processor is arranged to add the first string of the collection to the selection in response to the input means receiving an input associated with the initial symbol. The input may be associated with the initial symbol in various ways. A first way is e.g. that a picture of the symbol is in proximity of a key that is activated for the input. The picture may e.g. be printed on or close to the key, or it may be on a display screen or on a touch screen. The key may be a plain button or switch, a soft-key, or an area of a touch screen. A second way is that an activated key pertains to navigating information on a display screen. The navigation may involve a direction in which to move, and the information is ordered or sorted along the direction on the display screen. One example is a scroll list with strings ordered lexicographically, the key being a scroll key. The direction may be, for instance, up, down, left, right, forward, backward, zoom in, zoom out, or page up, page down. The processor may be arranged to add in several methods. In a first method, for example, the processor is dedicated and is arranged to add by design. In a second method, for example, the processor is arranged by programming it with instructions in microcode registers. In a third method, for example, the processor is arranged by being designed to repeatedly fetch an instruction from a general purpose memory and to execute the instruction, and by the general purpose memory containing appropriate instructions to add. In a fourth method, for example, the processor may fetch an instruction from a remote node such as an Internet server and execute the instruction. The data-processing device may comprise a graphical user interface comprising an element that embodies the invention. Examples are a combobox, a drop down list, and a field with auto-completion. If, after an input, the selection contains more than the first string, the selection may be applied again in dependence upon a following input. The selection that results from the input may be taken as a second collection. The processor may be arranged to add the first string of the second collection to the second selection in response to the input means receiving an input associated with either of the first or the second initial symbol. This has the additional advantage of a relatively high likelihood that the following input refines the selection. In known data-processing devices, it frequently occurs that the following input does not reduce the selection. The reason is often that the following input is matched against symbols that immediately follow the initial symbols of strings in the second collection. One example is that an operator is forced to provide the inputs of j, a, n, s, s, e, n, before arriving at the discriminating initial symbol of the given names in a collection containing "janssen bait" and "janssen henk". This is based on the following input pertaining to the initial symbol if the input pertained to the second initial symbol and the following input pertaining to the second initial symbol if the input pertained to the initial symbol. A telephone may advantageously comprise a device according to the invention. Alternatively, a navigating device that is used to navigate collections of information on display may advantageously comprise a device according to the invention. Examples of a navigating device are a hand-held device, a personal digital assistant, a personal organizer, a personal computer, a web browser, a media player, and a personal entertainment device. Another advantage of the data-processing device according to the invention is that the first string may be provided as a whole, rather than as its constituent portions. If e.g. an operator adds a name of a new friend to a phonebook, the name may be entered into the first string in one go, and the data-processing device may determine the first and the second portion and the initial and the second initial symbol of the first string. This prevents the operator distributing the entered symbols over the first and the second portion. In an embodiment, the data-processing device has the features of claim 2. Delineating the boundary between the first and the second portion with a separator may simplify determining the second initial symbol. One method is to scan the first string for an occurrence of the separator, and in case of a match, to determine that the next symbol is the second initial symbol. In another embodiment, the data-processing device has the features of claim 3. Presenting the selection alphabetically may enhance navigating the information, especially when a second selection requires further input as described above. In a further embodiment, the data-processing device has the features of claim 4. Presenting the reordered string may improve the consistency of the user interface, as the input received is associated with the initial symbol of the reordered string. In a still further embodiment, the data-processing device is part of a communication device. Initiating a communication session with a party whose name is in the first string is easier with the data-processing device being part of the communication device, because an input associated with either of the initial symbol and the second initial symbol will select the first string, which pertains to the party. In another embodiment, the data-processing device is part of a mobile phone. Calling a person whose name is in the first string is easier with the data-processing device being part of the phone, because an input associated with either of the initial symbol and the second initial symbol will select the first string, which pertains to the person. In another embodiment, the data-processing device is part of a personal entertainment device. Selecting entertaining content with an attribute that is in the first string is easier with the data-processing device being part of the personal entertainment device, because an input associated with either of the initial symbol and the second initial symbol will select the first string, which pertains to the content. In another embodiment, the data-processing device is part of a portable media player. Selecting a track from the media, with an attribute of the track being in the first string, is easier with the data-processing device being part of the portable media player, because an input associated with either of the initial symbol and the second initial symbol will select the first string, which pertains to the track. Typically, portable media players have little place for user interface elements like a display screen and a keyboard, while a lot of information may be navigated upon. In an example, the artist "George Michael" may be added to the selection in response to an input associated with the letter "M". The second object is realized in that the method has the features of claim 9. The method may comprise a step of determining the portions, prior to the step of selecting. The method may comprise a step of adding the first string to the collection, prior to the step of determining. The method may comprise a step with an input of the first string, prior to the step of adding. The third object is realized in that the computer program product has the features of claim 10. The computer program product may be, for example, an application, a subroutine, or an element of a user interface, a select box, a drop-down list, a combo-box, a toggle, a button, a key shortcut, a menu, or a field with auto-completion. The computer program product may comprise a routine for determining the first and the second portion, e.g. a parser or a classifier based on syntax rules, semantics or a heuristic as provided above.
The above object and features of the data-processing device, the method and the computer program product of the present invention will be more apparent from the following description with reference to the drawing. Fig. 1 shows a block diagram of a data-processing device according to the invention.
The data-processing device 100 has input means 101, a memory 102 and a processor 103. The data-processing device 100 is coupled to a display screen 106, which may be external to the data-processing device 100. The memory 102 contains a collection 104 of symbol strings. The input means 101 may receive an input for selecting a string of symbols from the collection 104. The processor 103 processes the collection 104. The processor 103 presents a selection 105 of the collection 104 at least partially on the display screen 106. The collection 104 contains a first string 107 of symbols. The first string 107 of symbols has a first portion 108 containing an initial symbol 110, and a second portion 109 containing a second initial symbol 111. The processor 103 is arranged to add 112 the first string 107 of the collection 104 to the selection 105 in response to the input means 101 receiving an input associated with either of the initial symbol 110 and the second initial symbol 111. The memory 102 may be further arranged for the collection 104 to contain the first string 107 of symbols with the first portion 108 containing a final separator 115 delineating the second portion 109. The processor 103 may be arranged to locate the final separator 115 for obtaining the second initial symbol 111, in response to the input means 101 receiving an input. Alternative triggers for obtaining the second initial symbol 111 are e.g. an expiring timer, a change in the collection 104, and a change in a string of the collection 104. Examples of the final separator 115 are a space, a full stop, a comma, an apostrophe, a hyphen, an ampersand, an at sign, an underscore, a back apostrophe, a quotation mark, a dash, a colon, a semicolon. The final separator 115 may, however, alternatively comprise more than one symbol. Examples are prefixes, titles, suffixes and roman numerals, e.g. "Du", "Mac", "O"', "D"', "Von", "van", "van der", "Mr", "Ms", "Mrs", "Mr and Mrs", "Mr & Mrs", "Sr", "Jr", "Sir", "Phd", "Rev", "Lt Gen", "CPA", "III", "IV". Other examples are e.g. top-level domains "com", "org", "net". Many other separators may be advantageous. The processor 103 may be arranged to examine all strings of the collection 104 for locating occurrences of final separators in a set of final separators. The set of final separators may be selected in dependence on what is contained by the first string 107, e.g. what topic, which language, or a cultural dependency like local name frequencies or a reading direction. The memory 102 may be still further arranged for the collection 104 to contain symbol strings, each symbol being from an alphabet. The processor 103 may be arranged to present the selection 105 alphabetically. This is especially convenient if the selection 105 is presented as a list. The selection 105 may be sorted only on the initial symbol 110 of the strings in the selection 105, as e.g. the list: "ACB", "ABC", "ABB", "B". The selection 105 may in addition be sorted on the symbol that follows the initial symbol 110 of the strings in the selection 105, as e.g. the list: "ABC", "ABB", "ACB", "B". The selection 105 may be sorted on further symbols, i.e. alphabetically lexicographically, as e.g. the list: "ABB", "ABC", "ACB", "B". The selection 105 may alternatively be sorted only on both the initial symbol 110 and the second initial symbol 111 of the strings in the selection 105, as e.g. the list: "Annemarie Bakker", "Anna Derks", "Annemarie Fransen". This is especially convenient if the selection 105 is applied again in dependence on the following input as provided above, because the selection 105 is then presented while being also sorted on the second initial symbol 111 of the strings of the selection 105. Additionally, the processor 103 may be arranged to render the selection 105 on the display screen 106 such that initial symbols of the strings are horizontally aligned and second initial symbols of the strings are horizontally aligned as well, as e.g. the list: "Annemarie Bakker",
"Anna Derks",
"Annemarie Fransen". The processor 103 may be arranged to produce from the first string 107 a reordered string 116 of the second portion 109 of the first string 107, followed by the first portion 108 of the first string 107. The processor 103 may be arranged to present the reordered string 116. This has the advantage of a more consistent user interface, because the operator expects the selected and presented strings to have an initial symbol 110 that is associated with the input. An example is the collection 104 which contains strings with artists "Michael Jackson" and "George Michael", and a selection 105 which is presented in response to an input associated with the symbol "M", as:
"Michael Jackson",
"Michael George". To make it easier for an operator to recognize reordered strings, the reordered string 116 may be modified or presented differently. One example of modifying is to insert a comma between the portions, for example, as the list:
"Michael Jackson",
"Michael, George".
One example of presenting differently is to reverse colors. The processor 103 may be arranged to horizontally align the matching symbols of the strings of the selection. This has the advantage of a more consistent user interface without producing a reordered string 116. One example is the list:
" Michael Jackson ",
"George Michael ". The data-processing device 100 may process the reordered string 116 similarly as the first string 107. In particular, a subsequent input directed to the reordered string 116 may be processed as if it was directed to the first string 107. Therefore, the reordered string
116 and the first string 107 may offer the same functionality in the user interface. The memory 102 does not need to contain the reordered string 116, as it may be produced upon presenting the selection. This saves memory usage and prevents the need for maintaining duplicated portions. A communication device may comprise the data-processing device 100. This may enhance the convenience of initiating communication with a party, for example, when querying a directory for particulars of the party, e.g. a URL, an IP, an Ethernet or a MAC address, based on an attribute of the party, for instance, a name. It may also enable the use of a relatively small display screen 106. A mobile phone may comprise the data-processing device 100. The mobile phone may be equipped with relatively little or small resources, e.g. a small display screen 106, a small battery capacity, a small memory 102. The data-processing device 100 may improve the user interface, extend battery life and reduce memory 102 usage. A personal entertainment device may comprise the data-processing device 100. Typically, the personal entertainment device allows an operator to select entertaining content from a relatively large collection 104, by navigating the collection 104. The data- processing device 100 may enhance the convenience of enabling the personal entertainment device to also select content independently of the initial symbol 110 of the first string 107 associated with the content to be selected. A portable media player may comprise the data-processing device 100. Similarly to the mobile phone, the portable media player may be equipped with relatively little or small resources. It is noted that the above-mentioned embodiments illustrate rather than limit the invention, and that those skilled in the art will be able to design many alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. Use of the verbs "have" or "comprise" and their conjugations does not exclude the presence of elements or steps other than those stated in a claim. Use of the indefinite article "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The invention can be implemented by means of hardware comprising several distinct elements, and by means of a suitably programmed computer. In the device claim enumerating several means, several of these means can be embodied by one and the same item of hardware. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to advantage. A 'computer program' is to be understood to mean any software product stored on a computer-readable medium, such as a floppy disk, downloadable via a network, such as the Internet, or marketable in any other manner.

Claims

CLAIMS:
1. A data-processing device (100) having: input means (101) for receiving an input (113, 114) for selecting a string of symbols from a collection (104) of symbol strings; a memory (102) for containing the collection (104); and - a processor (103) for processing the collection ( 104) and for presenting a selection (105) of the collection (104) at least partially on a display screen (106), the memory (102) being arranged for the collection (104) to contain a first string (107) of symbols having: a first portion (108) containing an initial symbol (110); and - a second portion (109) containing a second initial symbol (111), the processor (103) being arranged to add (112) the first string (107) of the collection (104) to the selection (105) in response to the input means (101) receiving an input (113, 114) associated with either of the initial symbol (110) and the second initial symbol (111).
2. A data-processing device (100) as claimed in claim 1, wherein the memory (102) is further arranged for the collection (104) to contain the first string (107) of symbols with the first portion (108) containing a final separator (115) delineating the second portion (109), and the processor (103) is arranged to locate the final separator (115) for obtaining the second initial symbol (111), in response to the input means (101) receiving an input.
3. A data-processing device (100) as claimed in claim 1, wherein the memory (102) is further arranged for the collection (104) to contain symbol strings, each symbol being from an alphabet, and - the processor (103) is arranged to present the selection (105) alphabetically.
4. A data-processing device (100) as claimed in claim 1, wherein the processor (103) is arranged: to produce from the first string (107) a reordered string (116) of the second portion (109) of the first string (107) followed by the first portion (108) of the first string (107); and to present the reordered string (116).
5. A communication device comprising a data-processing device (100) as claimed in claim 1.
6. A mobile phone comprising a data-processing device (100) as claimed in claim 1.
7. A personal entertainment device comprising a data-processing device (100) as claimed in claim 1.
8. A portable media player comprising a data-processing device (100) as claimed in claim 1.
9. A method for selecting a string of symbols from a collection (104) of symbol strings, the collection (104) containing a first string (107) of symbols having: - a first portion (108) containing an initial symbol (110); and a second portion (109) containing a second initial symbol (111), the method comprising the step of selecting the first string (107) of the collection (104) in response to an input associated with either of the initial symbol (110) and the second initial symbol (111).
10. A computer program product operative to cause a processor (103) to execute the steps of the method as claimed in claim 9.
PCT/IB2004/052507 2003-12-03 2004-11-22 Predictive input WO2005055077A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP03104523 2003-12-03
EP03104523.0 2003-12-03

Publications (2)

Publication Number Publication Date
WO2005055077A2 true WO2005055077A2 (en) 2005-06-16
WO2005055077A3 WO2005055077A3 (en) 2006-07-06

Family

ID=34639321

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2004/052507 WO2005055077A2 (en) 2003-12-03 2004-11-22 Predictive input

Country Status (1)

Country Link
WO (1) WO2005055077A2 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4341929A (en) * 1980-03-20 1982-07-27 Zelex, Inc. Memory accessing system
EP0457077A2 (en) * 1990-05-16 1991-11-21 Siemens Rolm Communications Inc. (a Delaware corp.) Accessing alphanumeric information using a numeric keypad
WO1999009729A1 (en) * 1997-08-20 1999-02-25 Maxon Systems Inc. (London) Ltd. Communication apparatus and method for locating stored entries in an electronic telephone directory
EP0915604A2 (en) * 1997-11-07 1999-05-12 Nokia Mobile Phones Ltd. Method and apparatus for searching a database
JP2000331003A (en) * 1999-05-17 2000-11-30 Kenwood Corp Method and system for name retrieval, portable terephone unit and recording medium
WO2003041371A1 (en) * 2001-11-08 2003-05-15 Alcatel Method and apparatus for name search from personal information database

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4341929A (en) * 1980-03-20 1982-07-27 Zelex, Inc. Memory accessing system
EP0457077A2 (en) * 1990-05-16 1991-11-21 Siemens Rolm Communications Inc. (a Delaware corp.) Accessing alphanumeric information using a numeric keypad
WO1999009729A1 (en) * 1997-08-20 1999-02-25 Maxon Systems Inc. (London) Ltd. Communication apparatus and method for locating stored entries in an electronic telephone directory
EP0915604A2 (en) * 1997-11-07 1999-05-12 Nokia Mobile Phones Ltd. Method and apparatus for searching a database
JP2000331003A (en) * 1999-05-17 2000-11-30 Kenwood Corp Method and system for name retrieval, portable terephone unit and recording medium
WO2003041371A1 (en) * 2001-11-08 2003-05-15 Alcatel Method and apparatus for name search from personal information database

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
PATENT ABSTRACTS OF JAPAN vol. 2000, no. 14, 5 March 2001 (2001-03-05) & JP 2000 331003 A (KENWOOD CORP), 30 November 2000 (2000-11-30) *

Also Published As

Publication number Publication date
WO2005055077A3 (en) 2006-07-06

Similar Documents

Publication Publication Date Title
US6864809B2 (en) Korean language predictive mechanism for text entry by a user
US8413050B2 (en) Information entry mechanism for small keypads
US8713079B2 (en) Method, apparatus and computer program product for providing metadata entry
US20070124149A1 (en) User-defined speech-controlled shortcut module and method thereof
US20070061495A1 (en) Initiating software responses based on a hardware action
EP2206034A1 (en) Method, apparatus and computer program product for providing an adaptive keypad on touch display devices
CN101641662A (en) Search based user interface
JP2010511217A (en) Word prediction
US20020113825A1 (en) Apparatus and method for selecting data
WO2010124511A1 (en) Intelligent operating system and method
JP2000099048A (en) Music selection reservation device used by being connected to karaoke device
AU2006325555B2 (en) A method and apparatus for accessing a digital file from a collection of digital files
TWI412959B (en) Method and apparatus of altering key function for software input panel and computer-accessible recording medium thereof
JP2005006120A (en) Portable telephone with searching means for operating function and searching method for operating function of the portable telephone
WO2010124513A1 (en) System and method of function real-time association type interaction
US20080005673A1 (en) Rapid file selection interface
CN107102987B (en) Input method and mobile terminal
WO2005055077A2 (en) Predictive input
JP2005128955A (en) Information processing method, storage medium, and program
WO2010124510A1 (en) Human-computer interface interaction system and method
CN107194004B (en) Data processing method and electronic equipment
JP2015165419A (en) information display control device, information display control method, and program
WO2010124509A1 (en) Intelligent operating system and method based on keywords inputting
JP2002024067A (en) File managing device and recording medium in which program to realize the same is recorded
KR101000704B1 (en) Commonly used sentence insertion method for mobile communication terminal

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 04799210

Country of ref document: EP

Kind code of ref document: A2

122 Ep: pct application non-entry in european phase

Ref document number: 04799210

Country of ref document: EP

Kind code of ref document: A2

WWW Wipo information: withdrawn in national office

Ref document number: 4799210

Country of ref document: EP