method and system for dynamically processing ambiguous, reduced text search queries and highlighting...

Upload: priorsmart

Post on 08-Aug-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    1/18

    IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIUS007779011B2

    (12) United States PatentVenkataraman et al. (Io) Patent No.: US 7,779,011B2(45) Date of Patent: Aug. 17, 2010(54) METHOD AND SYSTEM FORDYNAMICALLY PROCESSING AMBIGUOUS,REDUCED TEXT SEARCH QUERIES AND

    HIGHLIGHTING RESULTS THEREOFEP

    FOREIGN PATENT DOCUMENTS1050794 11/2000

    (75) Inventors: Sashikumar Venkataraman, Bangalore(IN); Rakesh Barve, Bangalore (IN);Murali Aravamudan, Windham, NH(US); Ajit Rajasekharan, West Windsor,NJ (US)

    (73) Assignee: Veveo, Inc., Andover, MA (US)( * ) Notice: Subject to any disclaimer, the term of thispatent is extended or adjusted under 35U.S.C. 154(b) by 201 days.(21) Appl. No.: 11/312,908(22) Filed: Dec. 20, 2005

    (Continued)OTHER PUBLICATIONS

    Press Release From TEGIC Communications, TEGIC Communica-tions IsAwarded Patent for Japanese T9(R1Text Input Software Fromthe Japan Patent Otfrce, Oct. 12, 2004.Retrieved Nov. 18, 2005 Fromhttp: //www.tegic.corn/press view,html?release num=55254242.

    (Continued)Primary Examiner John R. CottinghamAssistant Examiner Mariela D Reyes(74JAttorney, Agent, or Firm Wilmer Cutler Pickering Haleand Dorr LLP

    (65) Prior Publication DataUS 2007/0050337 Al Mar. I, 2007

    Related U.S.Application Data

    (51) Int. Cl.G06F 7/00 (2006.01)G06F 17/30 (2006.01)(52)(58)

    U.S.Cl. 707/742; 707/741Field of ClassiTication Search .................07/741,707/742See application file for complete search history.

    (56) References CitedU.S. PATENT DOCUMENTS

    1,261,167 A 4/1918 Russell

    (60) Provisional application No. 60/716,101, filed on Sep.12, 2005, provisional application No. 60/711,866,filed on Aug. 26, 2005.

    (57) ABSTRACT

    A method and system are provided of processing a searchquery entered by a user of a device having a text input inter-face with overloaded keys. The search query is directed atidentifying an item from a set of items. Each of the items hasa name including one or more words. The system receivesfrom the user an ambiguous search query directed at identi-fying a desired item. The search query comprises a prefixsub string of at least one word in the name of the desired item.The system dynamically identifies a group of one or moreitems from the set of items having one or more words in thenames thereof matching the search query as the user enterseach character of the search query. The system also orders theone or more items of the group in accordance with givencriteria. The names of the one or more items of the identifiedgroup are output to be displayed on the device operated by theuser as ordered with the characters of the one or more wordsin the names corresponding to the prefix substring of thesearch query being highlighted.

    (Continued) 24 Claims, 7 Drawing Sheets

    SERVER FARM

    NETWORK204

    208HAND HELDDEVICE !TELEVISIONSYSTEM

    2I0TELEPHONE WITHDISPLAY

    208 REMOTE CONTROL

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    2/18

    US 7,779,011B2Page 2

    4,045,777 A4,453,217 A4,760,528 A4,893,238 A5,224,060 A5,337,347 A5,369,605 A5,487,616 A5,532,754 A5,623,406 A5,635,989 A5,745,889 A5,774,588 A5,802,361 A5,805,155 A5,818,437 A5,828,420 A5,828,991 A5,835,087 A5,859,662 A5,880,768 A5,912,664 A5,937,422 A5,945,928 A5,945,987 A5,953,541 A6,005,565 A6,005,597 A6,006,225 A6,009,459 A6,011,554 A6,041,311 A6,047,300 A6,075,526 A6,133,909 A6,169,984 Bl6,184,877 Bl6,189,002 Bl6,223,059 Bl *6,260,050 Bl6,266,048 Bl6,266,814 Bl6,269,361 Bl6,286,064 Bl6,292,804 Bl6,307,548 Bl6,307,549 Bl6,377,945 Bl6,438,579 Bl6,438,751 Bl6,466,933 Bl6,529,903 B26,564,213 Bl *6,564,313 Bl6,594,657 Bl6,600,496 Bl6,614,455 Bl6,615,248 Bl6,631,496 Bl6,721,954 Bl6,732,369 Bl6,757,906 Bl6,766,526 Bl6,772,147 B26,785,671 Bl6,801,909 B26,839,702 Bl *6,839,705 Bl6,850,693 B26,865,575 Bl6,865,746 Bl

    g/19776/19847/1988I/19906/1993g/199411/1994I/19967/19964/19976/19974/19986/19989/19989/199810/199810/199810/199811/1998I/19993/19996/1999g/1999g/1999g/19999/199912/199912/199912/199912/1999I/20003/20004/20006/200010/2000I/20012/20012/20014/20017/20017/20017/20017/20019/20019/200110/200110/20014/2002g/2002g/200210/20023/20035/20035/20037/20037/20039/20039/200310/20034/20045/20046/20047/2004g/2004g/200410/2004I/2005I/20052/20053/20053/2005

    Mierzwinski et al.BoivieLevinVenemaMa et al.Halstead-Nussloch et al.ParksIchbiahYoung et al.IchbiahRothmullerBurrowsLiWang et al.Allibhoy et al.Grover et al.Marshall e t al.Skiena et al.Herz et al.Cragun et al.Lemmons et al.Eick et al.Nelson et al.Kushler et al.DunnKing et al.Legall et al.Barrett et al.Bowman et al.Belfiore et al. ..............King et al.Chislenko et al.Walfish et al.RothmullerSchein et al.BogdanDodson et al.RoitblatHaestrupYost et al.Carau, Sr.Lemmons et al.Davis et al.King et al.Ardoin et al.Flinchem et al.King et al.RisvikHosken et al.Voyticky et al.Huang et al.SmithOrtega et al....................KashyapLivowsky et al.Wagner et al.Cuijpers et al.SmithLi et al.NickumSchein et al.Look et al.EllisWangBailey et al.Delgado et al.Patel et al.GrootersYoung et al.Smith et al.Herrington et al.

    709/203

    455/566

    707/5

    707/3

    U.S. PATENT DOCUMENTS 6,907,273 Bl6,965,374 B27,013,304 Bl7,117,207 Bl7,130,866 B27,136,854 B27,146,627 Bl7,149,983 Bl7,213,256 Bl7,225,180 B27,225,184 B27,225,455 B27,269,548 B27,293,231 Bl7,487,151 B27,594,244 B22002/0002550 Al2002/0042791 Al2002/0052873 Al2002/0059621 Al2002/0083448 Al2002/0133481 Al2002/0144267 Al

    2002/0152190 Al2002/0184373 Al2002/0188488 Al2002/0199194 Al2003/0005452 Al2003/0005462 Al2003/0011573 Al2003/0014753 Al2003/0023976 Al2003/0037043 Al2003/0037333 Al2003/0046698 Al2003/0051240 Al2003/0066068 Al2003/0066079 Al2003/0084270 Al2003/0103088 Al2003/0217121 Al2003/0226146 Al2003/0229900 Al2003/0237096 Al2004/0013909 Al2004/0021691 Al2004/0024777 Al2004/0046744 Al2004/0049783 Al2004/0054520 Al2004/0073926 Al2004/0078815 Al2004/0078816 Al2004/0078820 Al2004/0083198 Al2004/0093616 Al2004/0111745 Al2004/0128686 Al2004/0139091 Al2004/0143569 Al2004/0163032 Al2004/0194141 Al2004/0216160 Al2004/0220926 Al2004/0221308 Al2004/0261021 Al2005/0015366 Al2005/0071874 Al2005/0086234 Al2005/0086691 Al2005/0086692 Al2005/0174333 Al2005/0192944 Al

    6/200511/20053/200610/200610/200611/200612/200612/20065/20075/20075/20075/20079/200711/20072/20099/2009I/20024/20025/20025/20026/20029/200210/200210/200212/200212/200212/2002I/2003I/2003I/2003I/2003I/20032/20032/20033/20033/20034/20034/20035/20036/200311/200312/200312/200312/2003I/20042/20042/20043/20043/20043/20044/20044/20044/20044/20044/20045/20046/20047/20047/20047/2004g/20049/200410/200411/200411/200412/2004I/20053/20054/20054/20054/2005g/20059/2005

    SmethersVillet et al.Schuetze et al.Kerschberg et al.SchafferSmithIsmail et al.Robertson et al.KikinisDonaldson et al.Carrasco et al.Bennington et al.Fux et al.Gunn et al.Yamamoto et al.Scholl et al.BermanSmith et al.Delgado et al.Thomas et al.JohnsonSmith et al.Gutta et al.Biebesheimer et al.MaesHinkleAliRodriguezBroadus et al.Villet et al.Beach et al.Kamen et al.Chang et al.Ghashghai et al.Kamen et al.Schaffer et al.Gutta et al.SugaCoon et al.Dresti et al.WillisThurston et al.ReismanBarrett et al.Shimizu et al.Dostie et al.SchafferRafii et al.Lemmons et al.Dehlinger et al.Nakamura et al.Lemmons et al.JohnsonNickumBradford et al.JohnsonSchein et al.Boyer et al.ShinGross et al.Guo et al.SandersLemmons et al.Lamkin et al.Cuttner et al.Mittal et al.Carrasco et al.Elcock et al.ToseyDudkiewicz et al.Dudkiewicz et al.Robinson et al.Flinchem

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    3/18

    US 7,779,011B2Page 3

    2005/0210020 Al2005/0210383 Al2005/0210402 Al2005/0223308 Al2005/0240580 Al2005/0246311 Al2005/0267994 Al2005/0278175 Al2005/0283468 Al2006/0010477 Al2006/0013487 Al2006/0036640 Al2006/0059044 Al2006/0075429 Al2006/0090182 Al2006/0090185 Al2006/0101499 Al2006/0101503 Al2006/0101504 Al2006/0112162 Al2006/0117019 Al2006/0163337 Al2006/0167676 Al2006/0167859 Al *2006/0173818 Al2006/0190308 Al2006/0195435 Al *2006/0206454 Al2006/0242178 Al2006/0256078 Al2006/0259344 Al2006/0274051 Al2006/0282856 Al2007/0005526 Al2007/0005563 Al2007/0016476 Al2007/0027852 Al2007/0027861 Al2007/0044122 Al2007/0050348 Al *2007/0061244 Al2007/0061317 Al2007/0061321 Al2007/0061754 Al2007/0067272 Al2007/0088681 Al2007/0100650 Al2007/0130128 Al2007/0143567 Al2007/0150606 Al2007/0208718 Al2007/0219984 Al2007/0219985 Al2007/0255693 Al2007/0256070 Al2007/0260703 Al2007/0266021 Al2007/0266026 Al2007/0266406 Al2007/0271205 Al2007/0276773 Al2007/0276821 Al2007/0276859 Al2007/0288456 Al2007/0288457 Al

    9/20059/20059/200510/200510/200511/200512/200512/200512/2005I/2006I/20062/20063/20064/20064/20064/20065/20065/20065/20065/20066/20067/20067/20067/2006g/2006g/2006g/20069/200610/200611/200611/200612/200612/2006I/2007I/2007I/20072/20072/20072/20073/20073/20073/20073/20073/20073/20074/20075/20076/20076/20076/20079/20079/20079/200711/200711/200711/200711/200711/200711/200711/200711/200711/200711/200712/200712/2007

    Gunn et al.Cucerzan et al.Gunn et al.Gunn et al.Zamir et al.Whelan et al.Wong et al.HyvonenKamvar et al.YuLonge et al.Tateno et al.Chan et al.Istvan et al.Horowitz et al.Zito et al.Aravamudan et al.VenkataramanAravamudan et al.Marot et al.Sylthe et al.UnruhPlumbVerbeck Sibley et al.......707/3Berstis et al.Janssens et al.Laird-McConnell et al.... 707/4Forstall et al.Butterfield et al.Flinchem et al.Patel et al.Longe et al.Errico et al.Whitney et al.AravamudanHoffberg et al.Howard et al.Huentelman et al.Scholl et al.Aharoni et al.Ramer et al.Ramer et al.VenkataramanArdhanari et al.Flynt et al.Aravamudan et al.Ramer et al.Garg et al.GorobetsFlinchem et al.Javid et al.Aravamudan etAravamudan etRamaswamy etBykov et al.Ardhanari et al.Aravamudan etAravamudan etAravamudan etAravamudan etAravamudan etAravamudan etAravamudan etAravamudan etAravamudan et

    alalal

    EPEPEPWOWO

    11436911338967 A21463307 A2WO-00/70505WO-2004/010326

    10/2001g/20039/200411/2000I/2004

    FOREIGN PATENT DOCUMENTS

    WO WO-2004/031931 Al 4/2004WO WO-2005/033967 A3 4/2005WO WO-2005/084235 A2 9/2005

    OTHER PUBLICATIONSGadd T.N., Phonix; The Algorithm, Program 24(4), Oct. 1990, pp.363-369.Dalianis, Improving Search Engine Retrieval Using a CompoundSplitter for Swedish, Abstract of Presentation at NODALIDA2005 15th Nordic Conference on Computational Linguistics,Joensuu Finland, May 21-22 2005. Retrieved Jan. 5, 2006 fromhttp;//phon.j oensuu.fi/nodalida/abstracts/03, shtml.Silfverberg et al., Predicting Text Entry Speed on Mobile Phones,Proceedings of the ACM Conference on Human Factors in Comput-ing Systems~HI 2000, pp, 9-16.Mackenzie et al., Letterwise: Prefix-Based Disambiguation forMobile Text Input, Proceedings of the ACM Symposium on UserInterface Software and Technology UIST 2001, pp. 111-120.U.S.Appl. No. 60/548,589, filed Sep. I, 2005, Flinchem.U.S.Appl. No. 11/855,661,Venkataraman et al.U.S.Appl. No. 11/862,917,Aravamudan.U.S.Appl. No. 11/939,086, Ramakrishnan et al.U.S.Appl. No. 12/018,566, Venkataraman et al.Ardissono, L, et al., User Modeling and Recommendation Tech-niques for Personalized Electronic Program Guides, PersonalizedDigital Television, Editors: Ardissono, et al., Kluwer AcademicPress, 2004.Digital Video Broadcasting, http: //www.dvb.org (Oct. 12, 2007).Good, N, et al., Combining Collaborative Filtering with PersonalAgents for Better Recommendations, in Proc, of the 16th NationalConference on Artificial Intelligence, pp. 439-446, Orlando, Florida,Jul. 18-22, 1999.International Search Report, International Application No. PCT/US06/25249, mailed Jan. 29, 2008 (2 pages).International Search Report, International Application No. PCT/US06/33204, mailed Sep. 21, 2007 (2 pages).International Search Report, International Application No. PCT/US06/33257, mailed Mar. 26, 2008 (2 pages).International Search Report, International Application No. PCT/US06/33258, mailed Mar. 26, 2008 (2 pages).International Search Report, International Application No. PCT/US06/40005, mailed Jul. 3, 2007 (4 pages).International Search Report, International Application No. PCT/US07/65703, mailed Jan. 25, 2008 (2 pages).International Search Report, International Application No. PCT/US07/67100, mailed Mar. 7, 2008 (2 pages).Matthom, "Text Highlighting in Search Results", Jul. 22, 2005.Available at www.matthom.corn/archive/2005/07/22/text-highlight-ing-in-search-results; retrieved Jun. 23, 2006. (4 pages).Mokotoff, Soundexing and Genealogy, Available at http: //www.avotaynu.corn/soundex.html, retrieved Mar. 19, 2008, last updatedSep. g, 2007 (6 pages).Review of Personalization Technologies: Collaborative Filtering vs.ChoiceStream's Attributized Bayesian Choice Modeling, Technol-ogy Brief, ChoiceStream Technologies, Cambridge, MA.Roe, David et al., "Mapping UML Models Incorporating OCL Con-straints into Object-Z", Technical Report, Sep. 2003, Department ofComputing, Imperial College London (17 pages).Talbot, David. "Soul ofaNew Mobile Machine." Technology Review:The Design Issue May/Jun. 2007, (pp, 46-53).Wikipedia's entry for Levenshtein distance (n.d.).Retrieved Nov. 15,2006 from http;//en.wikipedia.org/wiki/Levenshtein distance.Written Opinion of the International Searching Authority, Interna-tional Application No. PCT/US06/25249, mailed Jan. 29, 2008.Written Opinion of the International Searching Authority, Interna-tional Application No. PCT/US06/33204, mailed Sep. 21, 2007 (3pages).Written Opinion of the International Searching Authority, Interna-tional Application No. PCT/US06/33257, mailed Mar. 26, 2008 (4pages).

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    4/18

    US 7,779,011B2Page 4

    Written Opinion of the International Searching Authority, Interna-tional Application No. PCT/US06/33258, mailed Mar. 26, 2008 (4pages).Written Opinion of the International Searching Authority, Interna-tional Application No. PCT/US06/40005, mailed Jul. 3, 2007 (4pages).Written Opinion of the International Searching Authority, Interna-tional Application No. PCT/US07/65703, mailed Jan. 25, 2008 (4pages).Written Opinion of the International Searching Authority, Interna-tional Application No. PCT/US07/67100, mailed Mar. 7, 2008 (3pages).Kurapati, et al., "AMulti-Agent TV Recommender," In Proceedingsof the UM 2001 Workshop "Personalization in Future TV," 2001, gpages.Nardi, et al., "Integrating Communication and Information ThroughContact Map," Communications of the ACM, vol. 45, No. 4, Apr.2002, 7 pages, retrieved from URL:http: //portal.acm.org/citation.cfm?id+505251).

    Supplemental European Search Report for 05826114.0 dated Aug.20, 2009, 13 pages.Supplemental European Search Report for 05826129.8 dated Aug.11,2009, 15 pages.Supplemental European Search Report for 06838179.7dated Dec. 9,2009, 7 pages.Supplemental European Search Report for 07761026.9dated Jan. 28,2010, g pages.Turski, et al., "Inner Circle People Centered Email Client," CHI2005 Conference on Human Factors in Computing Systems, Apr.2005, pp. 1845-1848,4 pages, retrieved from URL:http;//portal.acm.org/citation.cfm?id+1056808.1057037.Zimmerman, et al., "TV Personalization System Design of a TVShow Recommender Engine and Interface," in Liliana Adrissono,Alfred Kosba, Mark Maybury (edsi Personalized Digital Television:Targeting Programs to Individual Viewers, Kluwer, 29 pages.* cited by examiner

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    5/18

    U.S.Patent Aug. 17, 2010 Sheet 1 of 7 US 7,779,011B2

    10

    OPICS00

    PRIOR ARTFIG. 1

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    6/18

    U.S.Patent Aug. 17, 2010 Sheet 2 of 7 US 7,779,011B2

    g+ LULU I& (0I- K00V N

    QCLQ pc&

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    7/18

    U.S.Patent Aug. 17, 2010 Sheet 3 of 7 IJS 7,779,011B2

    UJ ~OUJ

    IZ UJUJ +g) QO'UJ M

    I- ~UJ ZMz0O

    0M oU0CL

    I-CLZ ooOC9XUJI-

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    8/18

    U.S.Patent Aug. 17, 2010 Sheet 4 of 7 US 7,779,011B2START

    USER ENTERS CHARACTER(S)WITH SINGLE KEYPRESS FOREACH CHARACTER402

    DISPLAY RESULTS MATCHINGQUERY- HIGHLIGHT THE PREFIXSTRINGS IN THE RESULTSTHAT MATCH THE QUERY404

    USER FOUNDDESIRED RESULTS406

    YES

    END

    FIG. 4

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    9/18

    U.S.Patent Aug. 17, 2010 Sheet 5 of 7 US 7,779,011B2

    SINGLE-WORDPREFIXQLIERY501MULTI-WORDPREFIXQUERY502

    SINGLE-WORD TERMMATCH503

    MULTI-WORD TERMMATCH504

    MULTI-WORDABBREVIATION MATCH505

    FIG. 5A

    SINGLE-WORD TERM MATCH506MULTI-WORD TERM MATCH507

    MULTI-WORD ABBREVIATION MATCH508 DECREASING RELEVANCE

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    10/18

    U.S.Patent Aug. 17, 2010 Sheet 6 of 7 US 7,779,011B2

    Z',00IUZ'.Qo

    0C6$

    0(8~CD+Oo6)I

    ZEOo

    CV00CDIMOo+Oo

    LACDCDV)G)

    CD OCDG)

    ~ooI

    LAC)CD

    (06)IC:~~IEQCD(06)I

    COC)CO

    UQ3cv M w00I-ZuJ LL

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    11/18

    U.S.Patent Aug. 17, 2010 Sheet 7 of 7 US 7,779,011B2

    6)th~~Eo-- Oo

    0~oEEOo

    6)~~NSEOo

    (0tDQ)

    OoOo

    I

    0E0VQ0QlOoOo

    COQ)DO0)IV)OoOo

    I~QGJca+

    ZJL0Q)

    OoCL~Oo

    CVO

    IUUJ F) Z (0 g CD gI0 ~ ) oQ) M + LA ~ 00 + CDCL

    Q)o

    ICO

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    12/18

    US 7,779,011 B21

    METHOD AND SYSTEM FORDYNAMICALLY PROCESSING AMBIGUOUS,REDUCED TEXT SEARCH QUERIES ANDHIGHLIGHTING RESULTS THEREOFRELATED APPLICATIONS

    The present invention is based on and claims priority fromU.S.Patent Application No. 60/711,866,

    file

    Au. 26, 2005,and entitled "A Dynamic Highlighting Interface of MultiWord Prefixes of Results Obtained by Incremental Searchwith Reduced Text Entry on Television and Mobile DevicesUsing a Keypad with Overloaded Keys," and U.S. PatentApplication Ser. No. 60/716,101, filed Sep. 12, 2005, andentitled "Method And System For Incremental Search WithReduced Text Entry Using A Reduced Keypad With Over-loaded Keys," both of which are incorporated by referenceherein in their entirety.

    BACKGROUND OF THE INVENTION1.Field of InventionThe present invention generally relates to processingsearch queries and, more particularly, to methods and systemsfor processing ambiguous, reduced text, search queries and

    highlighting results thereof.2. Description ofRelated ArtThere are many user-operated devices such as mobilephones, PDAs (personal digital assistants), and televisionremote control devices that have small keypads, which a usercan use for text entry. In many of these devices, largelybecause ofdevice size constraints, the keypad is small and has

    only a small number of keys, which are overloaded withalpha-numeric characters. Text input using these keypads iscumbersome.FIG. 1 illustrates a common twelve-key keypad interfacefound in many cell phones and other mobile devices, and alsoincreasingly in devices like television remote control devices.The keypad 10 includes twelve keys 12, most of which areoverloaded with multiple alpha-numeric characters or func-tions. The same key can be pressed to enter different charac-ters. For instance, the "2"key can be used to enter the number"2"and the letters "A","B"and "C".Text entry using such akeypad with overloaded keys can result in an ambiguous textentry, which requires some type of a disambiguation action.For instance, with a so-called multi-press interface, a user canpress a particular key multiple times in quick succession toselect a desired character (e.g., to choose "B",the user wouldpress the "2"key twice quickly, and to choose "C", the userwould press the key three times quickly). Alternatively, textentry can be performed using the so-called T9 and other textinput mechanisms that provide vocabulary based completionchoices for each word entered. Neither of these methods ishowever particularly suitable for use in performing searchesbecause of the number of steps needed to get to the result. Onedeficiency of the multi-press interface is that too many keystrokes are needed. A drawback of applying a vocabularybased word completion interface is the need for the additionalstep of making a choice from a list of all possible wordmatches generated by the ambiguous text input. Furthermorevocabulary based word disambiguation systems are designedtypically for composition applications (as opposed to searchapplications) where user explicitly disambiguates each wordby performing a word completion action to resolve that wordbefore proceeding to the next word in the composition. Thisdeficiency is even more apparent for a multi-word searchsystem where results could ideally be obtained by the entry of

    10

    16

    20

    26

    30

    36

    40

    46

    60

    66

    60

    66

    just a few characters. These methods suffer from the fact thatthe fewer the number of characters entered, the greater theambiguity of the input. (The ambiguity decreases as the inputcharacter count increases.) This has the undesirable conse-quence of reducing the usefulness of a search engine that hasthe potential to retrieve results with just a few input charac-ters.

    BRIEF SUMMARY OF EMBODIMENTS OF THEINVENTIONIn accordance with one ormore embodiments of the inven-

    tion, amethod and system are provided of processing a searchquery entered by a user of a device having a text input inter-face with overloaded keys. The search query is directed atidentifying an item from a set of items. Each of the items hasa name comprising one or more words. The system receivesfrom the user an ambiguous search query directed at identi-fying a desired item. The search query comprises a prefixsub string of at least one word in the name of the desired item.The system dynamically identifies a group of one or moreitems from the set of items having one or more words in thenames thereof matching the search query as the user enterseach character of the search query. The system also orders theone or more items of the group in accordance with givencriteria. The names of the one or more items of the identifiedgroup are output to be displayed on the device operated by theuser as ordered with the characters of the one or more wordsin the names corresponding to the prefix substring of thesearch query being highlighted.These and other features will become readily apparentfrom the following detailed description wherein embodi-ments of the invention are shown and described by way ofillustration. As will be realized, the invention is capable ofother and different embodiments and its several details maybe capable of modifications in various respects, all withoutdeparting from the invention. Accordingly, the drawings anddescription are to be regarded as illustrative in nature and notin a restrictive or limiting sense with the scope of the appli-cation being indicated in the claims.

    BRIEF DESCRIPTION OF THE DRAWINGSFor a more complete understanding of various embodi-

    ments of the present invention, reference is now made to thefollowing descriptions taken in connection with the accom-panying drawings in which:FIG. 1 illustrates a keypad with overloaded keys in accor-dance with the prior art.FIG. 2 illustrates a search system in accordance with one ormore embodiments of the invention.FIG. 3 illustrates exemplary device configuration optionsfor various devices for performing searches in accordancewith one or more embodiments of the invention.FIG. 4 is a flow chart illustrating a method for finding andhighlighting results of a reduced text, ambiguous searchquery made using an overloaded keypad in accordance withone or more embodiments of the invention.FIG. 5A illustrates the different match possibilities for asingle-word and multi-word prefix query in accordance withone or more embodiments of the invention.FIG. 5B illustrates possible ordering criteria for searchresults in accordance with one or more embodiments of theinvention.FIGS. 6A and 6B illustrate an exemplary text input inter-face and a display interface, respectively. The display inter-face shows the results of a sample incremental search where

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    13/18

    US 7,779,011 B2the user has entered a single-word query in accordance withone or more embodiments of the invention.FIGS. 7A and 7B illustrate an exemplary text input inter-face and a display interface, respectively. The display inter-face shows the results of a sample incremental search wherethe user has entered a multi-word query in accordance withone or more embodiments of the invention.Like reference numerals generally refer to like elements inthe drawings.

    DETAILED DESCRIPTION OF THE PREFERREDEMBODIMENTSBriefly, methods and systems are provided in accordance

    with various embodiments of the invention for performingsearches using ambiguous text input from devices havinglimited text input interfaces, and highlighting results of thesearches.As described in further detail below, in accordance withvarious embodiments of the invention, methods and systemsare provided for processing a search query entered by a userofa device having a text input interface with overloaded keys.The search query is directed at identifying an item from a setof items. Each of the items has a name comprising one ormore words.Using the text input interface, the user can enter an ambigu-ous search query directed at identifying a desired item. Thesearch query comprises a prefix sub string ofat least one wordin the name of the desired item. A prefix substring of a word

    is a variable length string of characters that contains fewerthan all the characters making up the word.The system dynamically identifies a group of one or moreitems from the set of items having one or more words in thenames thereof matching said search query as the user enterseach character of said search query. The group of the one ormore items is displayed on the device operated by the userwith the characters of the one or more words in the namescorresponding to the prefix substring of the search querybeing highlighted. The items are preferably displayed in anorder of expected interest to the user.The user types in the prefix input query by pressing over-loaded keys of the text input interface once to form eachcharacter of an ambiguous query string. In accordance withone or more embodiments of the invention, the search space

    containing the searchable items is initially indexed by per-forming a many-to-many mapping from the alphanumericspace ofterms to numeric strings corresponding to the variousprefixes of each alphanumeric term constituting the querystring. In a numeric string, each alphanumeric character in thestring is replaced by its corresponding numeric equivalentbased on the arrangement of characters on the keypad, e.g.,the commonly used twelve-key reduced keypad shown inFIG. 1. This mapping scheme enables the system in accor-dance with one or more embodiments to incrementallyretrieve results matching the ambiguous alphanumeric inputquery, as the user types in each character of the query. Theuser does not have to explicitly specify the termination ofeach word in the query to assist the system in disambiguatingthe input query; instead, the user only enters an input querythat includes prefix sub strings from the one or more words ofthe query. If multiple word prefixes are entered, the systemcan leverage offthe multiple word prefixes to disambiguate it.A multiple word prefix based disambiguation method canreduce the amount of text and steps needed to enter a multipleword input query and retrieve results.There are various possible applications for the search tech-niques described herein including, e.g., assisting television

    10

    15

    20

    25

    30

    35

    40

    45

    50

    55

    60

    65

    viewers in identifying desired television content items andchannels, and assisting users of mobile devices such as cellphones and PDAs in performing searches for items in variousdatabases (e.g., performing searches in directories of peopleor businesses, searching for and purchasing products/serviceslike airline tickets, and searching for transportation schedulessuch as airline and train schedules, and for searching for audioand/or video content).In the context of television systems, the term "televisioncontent items" can include a wide variety of video/audiocontent including, but not limited to, television shows, mov-ies, music videos, or any other identifiable content that can beselected by a television viewer. Searching for television con-tent items can be performed across disparate content sourcesincluding, but not limited to, broadcast television, VOD,IPTV, and PVR (local and network).FIG. 2 schematically illustrates an overall system for per-forming searches with reduced text entry using variousdevices in accordance with one or more embodiments of theinvention. The system includes a server farm or system 202, anetwork 204, and a variety of devices 206, 20S, 210 operatedby users with text input interfaces. In accordance with one ormore embodiments of the invention, the server 202 processessearch queries received from the user devices 206, 20S, 210.In other embodiments, the search queries are processed on thedevices themselves. As discussed below, the server 202 can bethe source of search data and relevance updates. If part of atelevision system, the server 202 can also be the source of orbe linked to a source of at least some of the available televi-sion content (e.g.,a cable or satellite television operator) fromwhich the user can obtain content associated with searchresults.The network 204 functions as the distribution frameworkfor transmitting data from the server 202 to the devices oper-ated by the users. The distribution network 204 could bewired or wireless connections or some combination thereof.Examples of possible networks include computer networks,cable television networks, satellite television networks, IP-based television networks, mobile communications networks(such as, e.g., wireless CDMA and GSM networks), wiredtelephone networks, and IP-based wired and wireless net-works.The search devices could have a wide range of interfacecapabilities. A device, e.g., could be a hand-held mobile com-munications device 206 such as a cellular phone or PDAhaving a limited display size and a reduced keypad withoverloaded keys. Another type of search device is a televisionsystem 204 with a remote control device 20S having an over-loaded keypad. Another possible search device is a desk tele-phone 210 with a reduced keyboard and a small displayscreen.FIG. 3 illustrates multiple exemplary configurations forsearch devices in accordance with various embodiments ofthe invention. In one configuration, a search device (e.g.,devices 206, 20S, 210) can have a display 302, a processor304, volatile memory 306, text input interface 30S, remoteconnectivity 310 to the server 202 through the network 204,and a persistent storage 312.A device configuration for adevice such as the hand-held device 206 might not includelocal persistent storage 312.In this case, the device 206 couldhave remote connectivity 310to submit the query to the server202 and retrieve results from it. Another configuration of thedevices 206, 20S, 210may not have remote connectivity 310.In this case, the search database may be locally resident on alocal persistent storage 312.The persistent storage 312 maybe, e.g., a removable storage element such as SD, SmartMe-dia, CompactFlash card etc. In a configuration of the device

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    14/18

    US 7,779,011 B2with remote connectivity 310 and persistent storage 312 forperforming searches (e.g., a television system 20S), thedevice may use the remote connectivity for search relevancedata update or for the case where the search database isdistributed on the local storage 312 and on the server 202.Apreferred configuration in amemory constrained device is thesearch data residing remotely on a server. Unlike compositionapplications where the "most frequently used or popularterms space" are small in size and can be maintained in a localvocabulary, search spaces are typically larger inherentlybecause people instinctively use unique word "signatures" torecall an item of interest. Hence maintaining search spaceslocally may not be practical in many devices that have limitedlocal memory, making a network based search configurationpreferable.In one exemplary embodiment, a television system 20Smay have a set-top box or other device with a one-way link toa satellite network. In this configuration, all search dataincluding relevance updates may be downloaded to the devicethrougha satellite linktoperformlocal searching. Inthis case,the set-top box preferably has sufficient storage capacity tomaintain search spaces locally. Local storage is preferablylarge in this case to circumvent the deficiency of a one-waylink.FIG. 4 illustrates a search process in accordance with oneor more embodiments of the invention. At step 402, the userenters a character using an ambiguous text input interface,e.g., using a keypad with overloaded keys where a single keypress is performed for each character entered. At 404, anincremental search system determines and displays at leastsome of the results that match the input character entered at402. Since the input is ambiguous, the match ofresults wouldinclude the matches for all the ambiguous input charactersrepresented by the single key press (including those not ofinterest to the user). To address this increased set ofmatches,an ordering scheme is preferably used to order the results toimprove accessibility to results expected to be more of inter-est to the user. The ordering of results can be based on avariety of criteria including, e.g.,temporal relevance, locationrelevance, popularity and personal preferences (that mayhave been determined implicitly or explicitly) or some com-bination of these criteria. (In a television application, tempo-ral relevance can be used to favor programs whose timing maybe more of interest to the viewer. For example, if the userentered NBA, then the system would list the games in order oftemporal relevance such as those in progress or are scheduledto begin in the near future are listed at the higher on the list.The popularity criterion can be used to favor programs orchannels that are more popular than others. The personalpreference criterion can be used to favor programs or chan-nels that the user has indicated preference for in prior userselections. For example, if a user frequently scrolls down to"CNBC" and selects it, the system would over time placeCNBC higher in the list of results over a more generallypopular channel such as CNN. Furthermore, identity inde-pendent time-based usage pattern learning algorithms can beapplied in conjunction with personalization to apply theresults ordering rules in an appropriate context. Also, e.g.,when using a PDA or cell phone to search for a business, thesystem may use location relevance as part of the orderingcriteria.)In addition, other ordering schemes can be used in additionto or instead of the schemes indicated above such as charactercount based subspace biasing. In a character count basedsubspace biasing scheme, items in the search space do nothave a constant relevance value, but rather have a relevancevalue that is a function of the number ofcharacters entered so

    6

    10

    16

    20

    26

    30

    36

    40

    46

    60

    66

    60

    66

    far in the prefix substring. In such a scheme, the search space(Le., set of items that can be searched for) can divided intomultiple subspaces. The relative relevance of a given sub-space (and all the items contained therein) is dynamicallyboosted or suppressed as a function of the number of charac-ters in the search query. As an example, a sub space containingtelevision channel names might be boosted when the charac-ter count is one because television viewers might expect tofind a channel with a single key press. Various examples ofcharacter count based subspace biasing are described in U.S.patent application Ser. No. 11/246,432 entitled "Method AndSystem For Incremental Search With Reduced Text EntryWhere The Relevance Of Results Is A Dynamically Com-puted Function OfUser Input Search String Character Count"and filed on Oct. 7, 2005, which is assigned to the assignee ofthe present application and is incorporated by referenceherein in its entirety.The ordering criteria can also give preference to the resultsmatching the search query based on a lexical match of the

    type ofquery input, e g., in the following order ofpreference:single term prefixes, multiple term prefixes, and lastly abbre-viation matches.In accordance with various embodiments of the invention

    and as will be described below with reference to FIGS. 6Band7B, the characters in the search result items that match thesearch prefix substring characters are highlighted to providethe user with a visual indication of the relationship betweenthe key or keys pressed and the incremental match results.This facilitates identification by the user ofthe item of interestfrom the group of items displayed.Ifthe user does not find the desired results at 406, he or shecan continue to enter more characters to the search query atstep 402. Then at step 404, the system will perform the searchbased on the cumulative substring of characters of the searchquery entered by the user up to that point.In the scenario where user does not reach the result due to

    misspelling or due to the case of a word whose uniqueness(e.g.,Tom Brown, Todd Brown) is embedded in the suffix ofa word in the query (as opposed to the prefix), the user wouldhave to either go back to the first word and enter more char-acters or erase one or more of the typed characters and re-enter characters to reach the desired result. The dynamichighlight of the prefix strings in the results for each characterentry enables the user to recover from an error during the textentry process itself, in contrast to discovering that no resultsmatch after typing the entire text.FIG. 5A illustrates the two broad categories of input que-ries and the various potential matches they could have in theresults space. Input queries that do not include an explicitspace or other break character form a single-word prefixquery. A single-word query 501 can either match a single-word term 503 or an abbreviation representing multiplewords 505. Input queries that explicitly include a space char-acter or other break character between character entries formamulti-word prefix query. A multi-word prefix query 502 canmatch a multi-word term 504 or an abbreviation presentingmultiple words. In an exemplary search of a movie database,the matches could be a direct match on terms representing atitle (e.g., for the search query "gomu", a match could be themovie title Gods Must Be Crazy) or it could be matches onterms representing different types of information (e.g., if auser is searching for amovie starring Tom Hanks that featuresvolleyball, he or she may enter the search query "tovo" to getthe result: Tom Hanks Volleyball). As described earlier, thesematches are then ordered in decreasing relevance, and in oneor more embodiments, in the following order: single-word

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    15/18

    US 7,779,011 B2term matches 506 and multi-word term matches 507 followedby multi-word abbreviation matches 50S as illustrated in FIG.5B.FIGS. 6A and 6B illustrate an example of highlightedsearch results in accordance with one or more embodimentsof the invention. FIG. 6A illustrates an overloaded keypadinterface 602, which can in a television application, be anon-screen interface. In this example, the user has entered asingle-word text input query "S66"using the keypad 602.Theresults of the search input are shown in FIG. 6B,which showssingle-word term matches 603 and 604 ordered before abbre-viation matches 605 and 606. Because each key pressed bythe user is overloaded and represents multiple possible searchprefixes, simply displaying the text input "S66"with theresults will not provide the user sufficient information toassociate his or her input with the match results. The "8"character entered initially by the user matches all items in thesearch database containing any word which begins with anyof the alphanumeric characters "8", "T", "U" or "V".Examples ofmatches to the first character would be "8MM"604 and "Star Trek" (not shown here since what is shown isthe result of the query S66, not 8). The "6"character nextentered by the user limits these search results only to itemscontaining words that begin with the alphanumeric characters"8","T","U"or "V"and whose second character is one ofthealphanumeric characters "6", "M", "N" or "0"or to itemscontaining words that begin with the alphanumeric characters"8","T","U"or "V"and that also contain subsequent wordsthat begin with the alphanumeric characters "6","M","N"or"0".The earlier match, "Star Trek", would drop out of thematch results when the user pressed the overloaded "6"keybecause the "r" following the "T"matched by the "8"char-acter does not match "6","M", "N" or "0"and there are nowords following "Trek" to match the "6","M", "N" or "0".The next "6" character entered by the user as the thirdoverloaded character further limits the search result to onlythose matches that also contain the alphanumeric characters"6", "M", "N" or "0" immediately following one of thematched characters for the first "6"previously entered or thatcontain subsequent words that begin with the alphanumericcharacters "6","M", "N" or "0".This relationship betweenthe overloaded characters entered by the user and the matchresults is complicated and not necessarily intuitive to the user.In various embodiments of the invention, the characters in thesearch result that match the overloaded single-word searchprefix characters are highlighted, providing the user with avisual indication of the relationship between the key pressedand the incremental match results. This facilitates identifica-tion by the user of the item of interest from the group of itemsdisplayed.The term "highlighting" as used herein refers to makingmore prominent or otherwise making more distinct charactersof interest in the search results relative to other characters.Non-limiting examples ofhighlighting include bolding, itali-cizing, coloring, underlining, or changing font of (or somecombination thereof) the characters of interest relative to theothers.In another example, FIG. 7B illustrates the results for amulti-word text input "S66 2" using a 12-key keypad 702shown in FIG. 7A. As discussed earlier, the multi-word termmatches 703 are preferably ordered ahead of multi-wordabbreviation matches. The difference between the single-word search illustrated in FIG. 6B and the multi-word searchillustrated in FIG. 7B is that the use of an explicit wordseparator in the user input (in this case a space character)before the "2"entry, further limits results of the search. Onlythe results of the search illustrated in FIG. 6B for prefix

    6

    10

    16

    20

    26

    30

    36

    40

    46

    60

    66

    60

    66

    substring "S66"that also contain at least two words and inwhich a subsequent word begins with "2","A", "B",or "C"are included in the results displayed to the user. A title such as"Tomb Raider" would not match the multi-word search eventhough the word "Tomb" matches the overloaded keys "8","6","6","2"because the "2"must match the first letter in asubsequent word. As in the FIG. 6Bexample, the characters inthe ordered result that match the multi-word overloadedsearch prefix characters are highlighted to provide the userwith immediate feedback relating the key pressed to the incre-mental match results.Methods of processing ambiguous search query inputsfrom users and highlighting results in accordance with vari-ous embodiments of the invention are preferably imple-

    mented in software, and accordingly one of the preferredimplementations is as a set of instructions (program code) ina code module resident in the random access memory of acomputer. Until required by the computer, the set of instruc-tions may be stored in another computer memory, e.g., in ahard disk drive, or in a removable memory such as an opticaldisk (for eventual use in a CD ROM) or floppy disk (foreventual use in a floppy disk drive), or downloaded via theInternet or some other computer network. In addition,although the various methods described are convenientlyimplemented in a general purpose computer selectively acti-vated or reconfigured by so ftware, one ofordinary skill in theart would also recognize that such methods may be carried outin hardware, in firmware, or in more specialized apparatusconstructed to perform the specified method steps.Having described preferred embodiments of the present

    invention, it should be apparent that modifications can bemade without departing from the spirit and scope of theinvention.Method claims set forth below having steps that are num-bered or designated by letters should not be considered to benecessarily limited to the particular order in which the stepsare recited.The invention claimed is:1.A method ofprocessing unresolved keystroke entries bya user from a keypad with overloaded keys in which a given

    key is in fixed association with a number and at least onealphabetic character, said unresolved keystroke entries beingdirected at identi fying an item from a set of items, each of saiditems being associated with information describing the itemcomprising one or more words, said method comprising:indexing said items by associating subsets of said itemswith corresponding strings of one or more unresolvedkeystrokes for overloaded keys so that the subsets ofitems are directly mapped to the corresponding stringsofunresolved keystrokes for various search query prefixsubstrings;for at least one subset of items, which determining lettersand numbers present in the information associated withand describing the indexed items of said subset causedsaid items to be associated with the strings of one ormore unresolved keystrokes that are directly mapped tosaid subset;

    subsequent to said indexing, receiving from a user a searchquery for desired items composed of unresolved key-strokes, said search query comprising a prefix substringfor at least one word in information associated with thedesired item;

    in response to each unresolved keystroke, identifying anddisplaying the subsets of items, and information associ-ated therewith, that are associated with the strings ofoneor more unresolved keystrokes received from the user

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    16/18

    US 7,779,011 B2 10based on the direct mapping of strings of unresolvedkeystrokes to subsets of items;

    in response to each unresolved keystroke, as the identifieditems are displayed, highlighting the letters and numberspresent in the one or more words in said informationdescribing the identified items that were determined tohave caused the displayed items to be associated with thestrings of unresolved keystrokes that are directlymapped to said items received so as to illustrate to theuser how the unresolved keystrokes entered match theinformation associated with the displayed items; and

    ordering the displayed items in accordance with one ormore given criteria.2. The method of claim 1 wherein said alphabetical and

    numeric symbols are highlighted by being colored, bolded,italicized, underlined, or changed to a different font, or somecombination thereof.3. The method of claim 1 wherein said one or more givencriteria include one or more of: temporal relevance, locationrelevance, popularity, personal preferences and charactercount.4. The method of claim 1wherein said displayed items areordered such that items having single-word or multi-wordterm matches are displayed before items having single-wordor multi-word abbreviation matches.5. The method of claim 1 wherein said search query isprocessed by a server system remote from said user.6. The method of claim 1 wherein said search query isprocessed by a device operated by said user.7. The method of claim 1 wherein said items comprisetelevision content items, or a product or service sought by theuser.S. The method of claim 6 wherein said device is a cell

    phone, desk phone, a PDA, or a remote control device for atelevision.9.A system for processing unresolved keystroke entries bya user from a keypad with overloaded keys in which a givenkey is in fixed association with a number and at least onealphabetic character, said unresolved keystroke entries beingdirected at identifying an item from a set of items, each of saiditems being associated with information describing the itemcomprising one or more words, said system comprising acomputer-readable medium comprising instructions for caus-ing a computer system to:index said items by associating subsets of said items withcorresponding strings of one or more unresolved key-strokes for overloaded keys so that the subsets of itemsare directly mapped to the corresponding strings ofunre-solved keystrokes for various search query prefix sub-strings;for at least one subset of items, which determine letters andnumbers present in the information associated with anddescribing the indexed items of said subset caused saiditems to be associated with the strings of one or moreunresolved keystrokes that are directly mapped to saidsubset;

    subsequent to said indexing, receive from a user a searchquery for desired items composed of unresolved key-strokes, said search query comprising a prefix substringfor at least one word in information associated with thedesired item;

    in response to each unresolved keystroke, identify anddisplay on a display device at least one of the subsets ofitems, and information associated therewith, that areassociated with the strings of one or more unresolved

    6

    10

    16

    20

    26

    30

    36

    40

    46

    60

    66

    60

    66

    keystrokes received from the user based on the directmapping of strings of unresolved keystrokes to subsetsof items;in response to each unresolved keystroke, as the identifieditems are displayed, highlight on the display device theletters and numbers present in the one or more words insaid information describing the identified items thatwere determined to have caused the displayed items tobe associated with the unresolved keystrokes received soas to illustrate to the user how the strings of unresolvedkeystrokes that are directly mapped to said items enteredmatch the information associated with the displayeditems; andorder on the display device the displayed items in accor-dance with one or more given criteria.10. The system of claim 9 wherein said alphabetical and

    numeric symbols are highlighted by being colored, bolded,italicized, underlined, or changed to a different font, or somecombination thereo f.11.The system of claim 9 wherein said one or more givencriteria include one or more of: temporal relevance, locationrelevance, popularity, personal preferences and charactercount.12.The system ofclaim 9wherein said displayed items areordered such that items having single-word or multi-wordterm matches are displayed before items having single-wordor multi-word abbreviation matches.13.The system of claim 9 wherein said computer systemcomprises a server system remote from said user.14.The system ofclaim 9wherein said computer system isincorporated in or proximate a device operated by said user.15. The system of claim 9 wherein said items comprisetelevision content items, or a product or service sought by theuser.16. The system of claim 14 wherein said device is a cellphone, desk phone, a PDA, or a remote control device for atelevision.17.A computer program product for proces sing unresolvedkeystroke entries by a user from a keypad with overloadedkeys in which a given key is in fixed association with anumber and at least one alphabetic character, said unresolvedkeystroke entries being directed at identifying an item from aset of items, each of said items being associated with infor-mation describing the item comprising one or more words,said computer program product residing on a computer read-able medium having a plurality of instructions stored thereon

    which, when executed by a processor, cause the processor to:index said items by associating subsets of said items withcorresponding strings of one or more unresolved key-strokes for overloaded keys so that the subsets of itemsare directly mapped to the corresponding strings ofunre-solved keystrokes for various search query prefix sub-strings;for at least one subset of items, which determine letters andnumbers present in the information associated with anddescribing the indexed items of said subset caused saiditems to be associated with the strings of one or moreunresolved keystrokes that are directly mapped to saidsubset;

    subsequent to said indexing, receive from a user a searchquery for desired items composed of unresolved key-strokes, said search query comprising a prefix substringfor at least one word in information associated with thedesired item;in response to each unresolved keystroke, identify anddisplay at least one of the sub sets of items, and informa-tion associated therewith, that are associated with the

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    17/18

    US 7,779,011 B2 12strings of one or more unresolved keystrokes receivedfrom the user based on the direct mapping of strings ofunresolved keystrokes to subsets of items;

    in response to each unresolved keystroke, as the identifieditems are displayed, highlight the letters and numberspresent in the one or more words in said informationdescribing the identified items that were determined tohave caused the displayed items to be associated with thestrings of unresolved keystrokes that are directlymapped to said items received so as to illustrate to theuser how the unresolved keystrokes entered match theinformation associated with the displayed items; andorder the displayed items in accordance with one or moregiven criteria.1S.The computer program product of claim 17 whereinsaid alphabetical and numeric symbols are highlighted bybeing colored, bolded, italicized, underlined, or changed to adifferent font, or some combination thereof.19.The computer program product of claim 17 whereinsaid one or more given criteria include one or more of: tem-poral relevance, location relevance, popularity, personal pref-erences and character count.

    5

    10

    15

    20

    20. The computer program product of claim 17 whereinsaid displayed items are ordered such that items havingsingle-word or multi-word term matches are displayed beforeitems having single-word or multi-word abbreviationmatches.21. The computer program product of claim 17 wherein

    said search query is processed by a server system remote fromsaid user.22. The computer program product of claim 17 wherein

    said search query is processed by a device operated by saiduser.23. The computer program product of claim 17 wherein

    said items comprise television content items, or a product orservice sought by the user.24. The computer program product of claim 22 wherein

    said device is a cell phone, desk phone, a PDA, or a remotecontrol device for a television.

  • 8/22/2019 Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results th

    18/18

    UNITED STATES PATENT AND TRADEMARK OFFICECERTIFICATE OF CORRECTIONPATENT NO.APPLICATION NO.DATEDINVENTOR(sl

    : 7,779,011 B2: I I/312908: August 17, 2010: Sashikumar Venkataraman et al.

    Page I of I

    It is certified that error appears in the above-identified patent and that said Letters Patent is hereby corrected as shown below:

    In the Claims:At column 8, claim 1, line 53, "which determining letters" should read etermining which

    letters .At column 9, claim 1, line 9, "mapped to said items received so" should read mapped to

    said items so.At column 9, claim 9, line 52, "which determine letters" should read etermine which

    letters .At column 10, claim 17, line 54, "which determine letters" should read etermine whichletters .

    At column 11, claim 17, line 10, "mapped to said items received so" should read mappedto said items so.

    Signed and Sealed thisFifteenth Day of February, 2011

    David J.KapposDirector ofthe United States Patent and Trademark Office