This application is a 35 U.S.C. 371 National Stage application of International Application No. PCT/CN2013/081156, filed Aug. 9, 2013, the entire contents of which are incorporated herein by reference.
Today, input method editors (IMEs) may be used to input non-Latin characters (e.g., Chinese characters) into a computer program using a conventional keyboard. IMEs are an indispensable tool for a significant portion of East Asian users. IMEs may also provide an English mode, wherein assistance is provided for non-native users creating English language documents. In the English mode, English assistance may be provided, such as word or spelling suggestions in response to problematic user typing. The assistance may also include automated spelling corrections, multiple word-choice suggestions and/or anticipated words suggestions, etc. Unfortunately, known IMEs are intrusive, and tend to distract a user with unwanted suggestions. Turning such IMEs on and off as suggestions are needed is awkward. Moreover, the user interfaces (UIs) of known IMEs are inflexible, and do not allow the user to optimally control intrusion of the IME.
Techniques to provide language assistance and operate an input method editor (IME) are disclosed. The IME may be configured to provide language assistance across a plurality of applications. In one example, an IME may be adapted for use by English-as-a-second-language (ESL) users. In a specific example, language assistance may be provided by first detecting a need to provide a suggestion to a user typing within an application. The suggestion may include a substitute word, substitute spelling or substitute grammar. The detection may be based on a probability that a current word or word-use is in error. If need for a suggestion is detected, a suggestion may be obtained for the word. The suggestion may be based on input from a cloud linguistic service (CLS). If network connectivity is unavailable, a local lexicon and/or language-model may be used to obtain the suggestion. Once obtained, the suggestion may be displayed to the user. The display may include adjustable user interface element(s), which allow the user to minimize intrusiveness of the user interface when not needed. The IME may provide opportunities for interaction with the user. For example, the interaction may allow may allow the user to accept or reject the suggestion, or copy the suggestion to a clipboard for use by a plurality of applications. The interaction may allow the user to relocate or minimize user interface elements.
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter. The term “techniques,” for instance, may refer to device(s), system(s), method(s) and/or computer-readable instructions as indicated by the context above and throughout the document.
The detailed description is described with reference to the accompanying figures. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The same numbers are used throughout the drawings to reference like features and components. Moreover, the figures are intended to illustrate general concepts, and not to indicate required and/or necessary elements.
Overview
The disclosure describes techniques for operation of an input method editor (IME) configured to provide language assistance across a plurality of applications. In one example, the IME provides an adjustable user interface that may be made unobtrusive if desired, to reduce cognitive overload of a user. The IME may be adapted for use by English-as-a-second-language (ESL) users. In one example, language assistance is provided by detecting a need to suggest a substitute word to a user who is typing within an application. The detection may be based on a probability that a current word is in error or by observation of the difficulty (typing speed, backspaces, etc.) of the user typing the word. If a need for assistance is detected, a suggestion may be obtained for the word. The suggestion may be obtained from a cloud linguistic service or from a local lexicon and/or language-model, if network connectivity is poor. Once obtained, the suggestion may be displayed to the user by a user interface. Aspects of the user interface may be adjustable by the user, and may particularly provide non-intrusive information to the user that does not distract from the user's focus on typing and input. Following the suggestion, interaction with the user allows the user to accept or reject the suggestion, and perform other functions, such as relocating user interface elements utilized by the display.
Example System and Techniques
In one example, the client device 102 may include one or more processors 108 in communication with one or more memory devices 110. A network connection 112 may provide an interface to the network 104. The client device 102 may include and/or communicate with one or more peripheral devices. A first example of a peripheral device, a display 114, can operate as an input and output peripheral with a touch screen, or as an output peripheral without a touch screen. Thus, display 114 may be provided to receive touch input and present visual output. In a second example of peripheral device(s) 116, input peripheral devices can include a hard and/or soft keyboard, a mouse or other pointing device, a microphone, and/or gestural input devices such a one or more cameras or other gesture sensors. In a third example of peripheral device(s) 118, output peripheral devices can include one or more speakers, a printer, auxiliary monitor, or other output devices.
An application 120 may be defined within memory 110 and configured for operation and/or execution by the processor(s) 108. The application 120 may be configured for any of a wide variety of purposes, including word-processing and/or text-based data entry. Thus, application 120 may include a word processor, an Internet browser, an email client, or other application into which a user may type or otherwise input text.
In the example of
The IME DLL 122 may be defined “in-process,” i.e., within the application 120. The IME DLL 122 may be configured to receive input, such as keystrokes, and pass them on to an IME platform process 124 and to the application 120.
In the example of
The suggestion renderer 126 may be configured to provide and manage a user interface, such as seen in the examples of
Detection techniques 202 may detect or recognize a language problem associated with input entered by a user into an application (e.g., application 120 of
The detection techniques 202 may be configured to detect or recognize when suggestions should be sought for possible errors in spelling, word use, grammar or other language issues. In the example shown, the suggestions may be sought from the suggestion techniques 204A, 204B, as will be discussed infra. In one implementation, the IME may be part of an operating system, such as Windows® or another operating system. According to the example, characters (e.g., keystrokes resulting from user operating a keyboard) may be intercepted by the IME dynamic link library (e.g., IME DLL 122 of
The detection techniques 202 may maintain previously typed word(s) in memory, such as within the IME platform process 124 or other location. Such previously typed words may be used (e.g., by the IME platform process 124) to determine the appropriateness of a current word in terms of spelling, context of use, grammar and other linguistic considerations.
The detection techniques 202 may utilize a test or check to determine whether suggestions are needed to replace a word typed by the user. Such testing may be based on a probability of correctness of a word typed by the user and intercepted and recognized by the IME platform process 124. The probability may be based on multiple factors and testing, which may be performed by one or both of local checks (e.g., performed on the client device 102) and remote checks (e.g., performed by the cloud linguist services 106). In an example of local checks, the intercepted word may be checked against a lexicon (e.g., a dictionary), as well as its likelihood of appearing near previously written (possibly adjacent) words. Thus, a sequence of words may be examined and a determination made if each word is correct and/or if a suggestion for replacement is needed. The determination may be based at least in part on a statistical language model (e.g., unigram models, N-gram models, etc.).
The detection techniques 202 may include one or more statistical language models, which may operate on the IME platform process 124, on the cloud linguistic service(s) 106 or both. Consideration of network connectivity and speed may be used to determine if a local or cloud statistical model should be utilized. Generally, if sufficient network speed and bandwidth is available, statistical language model(s) on the cloud linguistic services 106 should be utilized. The cloud based models may have larger lexicon, better ability to process word sequences and better ability overall to detect errors in spelling, word use and/or grammar. Statistical language models operable in either location may detect errors utilizing factors such as input from a lexicon (dictionary, word list, technical vocabulary, etc.), typing speed and/or back-spacing or other corrections made by the user.
Thus, detection techniques 202 may be performed using IME-based techniques. Using such techniques, the IME DLL 122 may be loaded into each application in a configuration that will be able to intercept all keystrokes within the application and will be able to take into account specific input scopes (words, word sequences and/or word usages, etc.). The IME-based techniques also allow keystrokes to be processed in various ways, including forwarding all processing to a running application, a local service or an external service.
The detection techniques 202 may be utilized in conjunction with non-IME based mechanisms, as well as the IME-based mechanisms previously described. For example, applications programming interfaces (APIs) provided by an operating system of the client device may be used directly to monitor keystrokes either by polling or subscribing to global events.
Suggestion techniques 204A and 204B may be utilized to provide suggestions or alternatives to words indicated by the detection techniques 202 as having a high likelihood of error. The suggestion techniques may include remotely-based or cloud-implemented suggestion techniques 204A and locally-based suggestion techniques 204B. Depending on implementation, suggestion techniques 204A and 204B may be operated in an alternative, parallel and/or complementary manner(s). In one example, the remote suggestion techniques 204A, which may be based within the cloud linguistic services 106, may be the primary source of suggestions. The local suggestion techniques 204B may be utilized only when network connectivity does not allow use of the cloud-based suggestion techniques 204A. In some embodiments, the suggestion techniques 204A available in the cloud linguistic services 106 may provide greater capacity and performance than is available from the suggestion techniques 204B operating on the IME platform process 124. In particular, suggestion techniques that are based on a particular technology may be more effective when provided by the cloud-based suggestion techniques 204A, due to computational advantages of the cloud over the IME platform process 124. Example technologies may include language models based at least in part on unigram model technology, N-gram model technologies, etc. Cloud-based word suggestion-generation resources may be configured to leverage computing power of the cloud, including faster execution, massive lexicons and computationally complex algorithms for which implementation may be impossible on the IME platform process 124. In additional examples, cloud linguistic services 106 may arbitrate between multiple cloud-based services or resources to collect candidate suggestions to replace word errors. The arbitration may be performed by comparison of suggestion provider-based design patterns, provider-used technologies, and how those patterns compare to the suggestion process.
In one example, the cloud linguistic services 106 may return an ordered list of candidates to be suggested to the user to replace the word typed by the user. The suggestions on the list, obtained from cloud-based sources, may be derived from globally based statistical language model(s) and ranked by their respective confidence scores. The IME platform process 124 may also collect an ordered list from locally-determined suggestion candidates. The locally-based suggestion techniques 204B may be based at least in part on user-specific personalization within the application 120 (seen in
In other examples, candidate suggestions to replace word errors may be either entirely locally-based or entirely cloud-based. In one example of cloud-based suggestion generation, the suggestions can be queried from multiple cloud-based services and aggregated on the client. In the example, a number of data sources (e.g., cloud-based statistical language models, lexicons, etc.) may be varied according to a required speed of the system. In a contrasting example, a single cloud linguistics service may be used as a point of entry to the IME platform 124. Generally, by reducing the number of data sources, candidate suggestions for an erroneous word may be obtained more quickly.
Example User Interface
Various display techniques shown by the example user interface 300 may be performed by the suggestion renderer 126 (as seen in
The user may misspell a word, violate a rule of grammar or otherwise enter text that indicates that the user would benefit from assistance. In the example of
In one example, only the single most preferred suggestion for replacement of the detected erroneous word is displayed. The preferred suggestion is provided if a confidence score is greater than a threshold value (e.g., 90%) that the suggestion is correct. Also, the preferred suggestion is provided if it can be obtained within a threshold period of time after the user typed the word thought to be erroneous.
The notification window 304 may provide a suggestion 312 for a misspelled word, misused word, or grammatical error, etc. Three examples are representative of ways that the suggestion may be utilized by the user. In a first example, the user may click command 314, to thereby replace the erroneously typed text with the suggestion 312. In a second example, the user may click command 316 to copy the suggested change to the clipboard. Once on the clipboard, the suggested text may be used in any application, and may be used with applications that fail to perform correctly if the command 314 selected. In a third example, the user may simply copy the text seen at suggestion 312 by typing it into any application. Additionally, the user may turn off the English assistance by operation of command 318.
An event indicator 402 may be configured to appear and/or change in appearance (e.g., color) to indicate an event. In one example, the event indicator may be an exclamation mark or other symbol, typically indicating concern and/or urgency. The event or issue indicated by the event indicator 402 may include detection of an error or potential error in spelling, word use, grammar or other aspect checked by the IME. To continue the example, upon appearance (or change in appearance) of the event indicator 402, the user may “mouse over” or otherwise select the event indicator to receive a suggestion from the IME. The suggestion may be provided by appearance of the notification window 304 or other user interface element. Thus, selection of the event indicator 402 may result in appearance of, or change in the content of, the notification window 304.
Example Methods
At operation 502, a need to suggest a word to replace a word typed by a user is detected. In some instances, the detection is in response to recognition that the word typed by the user is misspelled. Alternatively, the detection may result from recognition that the word is used in a grammatically incorrect manner or has otherwise been misused. In the examples of
At operation 504, a suggestion is obtained for the word, e.g., in response to detection of the need for a suggestion. The suggestion may be obtained over a network and from cloud-based resources (e.g., cloud linguistic services 106 of
At operation 506, the suggestion is displayed to the user, such as by operation of a user interface. In one example, the IME platform process 124 may provide data, and together with the suggestion renderer 126, may cause the suggestion to be presented. The user interface may be unobtrusive and/or may be regulated by the user to control a degree to which it intrudes on the user's operation of an application on the client device.
At operation 508, the user may interact with the user interface. In several examples, the user may provide input regarding: the detection process whereby a suggestion was found to be necessary; the suggestion process by which a replacement word was obtained; the display process by which the replacement word was presented to the user; or feedback as provided and/or supported by the IME. In the example of
In a further example, at operation 610 keystrokes are detected within an application by operation of an in-process IME dynamic link library (DLL). In the example of
At operation 616, local- and/or server-based testing may be performed on one or more received words. The testing may be performed using local and/or cloud-based lexicon(s), statistical language model(s) and/or cloud-based linguistic service(s). Local testing may be performed by the IME platform process 124 and cloud-based testing may be performed by cloud linguistic services 106. The testing may be coordinated, and/or the results of the testing received, at the IME platform process.
In the example of operation 708, multiple cloud-based services may be queried for correction candidates and the results aggregated. The results may be aggregated by the IME platform process 124 (
In the example of operation 710, the IME may determine if technologies employed by local and remote (e.g., server- or cloud-based) resources to suggest word replacements are similar. At operation 712, if the technologies are similar, then the remote resources are utilized. In one example, the IME platform and a cloud-based linguistic service may use a similar statistical language model, and the remote statistical model may be used. The computing power of the cloud may make this choice preferable.
In the example of operation 714, a suggestion may be obtained from a cloud linguistic service (CLS) that is configured to collect candidates for the suggestion to replace a word typed by the user. Such a suggestion may be obtained if network connectivity is adequate. Alternatively, at operation 716 a suggestion may be obtained from a local lexicon and/or language model if the network connectivity is not adequate.
In the example of operation 806, the user may be monitored by the IME to determine when the user stops typing. If the user stops typing, that may be a factor indicating or weighing toward uncertainty on the part of the user regarding the accuracy of one or more words the user has typed. Other factors indicating possible user confusion may include slowed typing, back-spacing and/or deleting, re-typing, and others. At operation 808, the user interface (e.g., the notification bubble 304 of
In the example of operation 810, unwanted intrusion on the user may be prevented by binding, fixing or moving the notification bubble 304 to a location selected by the user. At operation 812, the display of the word suggestion (e.g., the notification bubble) may be located adjacent to the IME bar. Thus, the user may move the notification bubble and/or the IME bar to a location on a display (e.g., a video display screen, display of a mobile device, etc.) that is less intrusive and/or preferred for any reason. In some examples, the notification bubble 304 and IME bar 308 move together (e.g., joined by the tail 306), and in other examples they are separately movable.
In the example of operation 814, the suggestion may be provided to the user in response to an indicator that a word suggestion is available. In the example of
In the example of operation 816, the suggestion for use in word replacement may be displayed if a confidence in the suggestion is greater than a threshold value. In the example, the threshold may be set at a level that does not interfere with the user unless the confidence level of a user error is sufficiently high.
In the example of operation 904, the IME may respond to user input to move the IME bar and/or the notification bubble. In the example of
In the example of operation 910, the IME may receive a rejection from the user of the suggestion made by the IME to replace a word(s) typed by the user. At operation 912, in response to the rejection, the IME may reduce a likelihood of presenting any suggestion in the future under similar circumstances. At operation 914, the IME may reduce a likelihood of presenting the rejected suggestion if a suggestion is to be presented in the future under similar circumstances.
As used herein, “computer-readable media” includes computer storage media and communication media. Computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer-readable instructions, data structures, program modules, or other data. Computer storage media includes, but is not limited to, random access memory (RAM), read only memory (ROM), electrically erasable programmable ROM (EEPROM), flash memory or other memory technology, compact disk ROM (CD-ROM), digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store information for access by a computing device. In contrast, communication media may embody computer-readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave. As defined herein, computer storage media does not include communication media.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described. Rather, the specific features and acts are disclosed as exemplary forms of implementing the claims.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/CN2013/081156 | 8/9/2013 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2015/018055 | 2/12/2015 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
4559604 | Ichikawa et al. | Dec 1985 | A |
5796866 | Sakurai et al. | Aug 1998 | A |
5873107 | Borovoy et al. | Feb 1999 | A |
5987415 | Breese et al. | Nov 1999 | A |
5995928 | Nguyen et al. | Nov 1999 | A |
6014638 | Burge et al. | Jan 2000 | A |
6076056 | Huang et al. | Jun 2000 | A |
6085160 | D'hoore et al. | Jul 2000 | A |
6092044 | Baker et al. | Jul 2000 | A |
6236964 | Tamura et al. | May 2001 | B1 |
6247043 | Bates et al. | Jun 2001 | B1 |
6363342 | Shaw et al. | Mar 2002 | B2 |
6377965 | Hachamovitch et al. | Apr 2002 | B1 |
6408266 | Oon | Jun 2002 | B1 |
6460015 | Hetherington et al. | Oct 2002 | B1 |
6731307 | Strubbe et al. | May 2004 | B1 |
6732074 | Kuroda | May 2004 | B1 |
6801893 | Backfried et al. | Oct 2004 | B1 |
6941267 | Matsumoto | Sep 2005 | B2 |
6963841 | Handal et al. | Nov 2005 | B2 |
7069254 | Foulger et al. | Jun 2006 | B2 |
7089504 | Froloff | Aug 2006 | B1 |
7099876 | Hetherington et al. | Aug 2006 | B1 |
7107204 | Liu et al. | Sep 2006 | B1 |
7165032 | Bellegarda | Jan 2007 | B2 |
7194538 | Rabe et al. | Mar 2007 | B1 |
7224346 | Sheng | May 2007 | B2 |
7277029 | Thiesson et al. | Oct 2007 | B2 |
7308439 | Baird et al. | Dec 2007 | B2 |
7353247 | Hough et al. | Apr 2008 | B2 |
7360151 | Froloff | Apr 2008 | B1 |
7370275 | Haluptzok et al. | May 2008 | B2 |
7389223 | Atkin et al. | Jun 2008 | B2 |
7447627 | Jessee et al. | Nov 2008 | B2 |
7451152 | Kraft et al. | Nov 2008 | B2 |
7490033 | Chen et al. | Feb 2009 | B2 |
7505954 | Heidloff et al. | Mar 2009 | B2 |
7512904 | Matthews et al. | Mar 2009 | B2 |
7555713 | Yang | Jun 2009 | B2 |
7562082 | Zhou | Jul 2009 | B2 |
7565157 | Ortega et al. | Jul 2009 | B1 |
7599915 | Hill et al. | Oct 2009 | B2 |
7676517 | Hurst-Hiller et al. | Mar 2010 | B2 |
7689412 | Wu et al. | Mar 2010 | B2 |
7725318 | Gavalda et al. | May 2010 | B2 |
7728735 | Aaron et al. | Jun 2010 | B2 |
7752034 | Brockett et al. | Jul 2010 | B2 |
7844599 | Kasperski et al. | Nov 2010 | B2 |
7881934 | Endo et al. | Feb 2011 | B2 |
7917355 | Wu et al. | Mar 2011 | B2 |
7917488 | Niu et al. | Mar 2011 | B2 |
7930676 | Thomas | Apr 2011 | B1 |
7953730 | Bleckner et al. | May 2011 | B1 |
7957955 | Christie et al. | Jun 2011 | B2 |
7957969 | Alewine et al. | Jun 2011 | B2 |
7983910 | Subramanian et al. | Jul 2011 | B2 |
8161073 | Connor | Apr 2012 | B2 |
8230336 | Morrill | Jul 2012 | B2 |
8285745 | Li et al. | Oct 2012 | B2 |
8498864 | Liang et al. | Jul 2013 | B1 |
8539359 | Rapaport et al. | Sep 2013 | B2 |
8564684 | Bai | Oct 2013 | B2 |
8597031 | Cohen et al. | Dec 2013 | B2 |
8762356 | Kogan | Jun 2014 | B1 |
8996356 | Yang | Mar 2015 | B1 |
20020005784 | Balkin et al. | Jan 2002 | A1 |
20020045463 | Chen et al. | Apr 2002 | A1 |
20020188603 | Baird et al. | Dec 2002 | A1 |
20030160830 | DeGross | Aug 2003 | A1 |
20030179229 | Van Erlach et al. | Sep 2003 | A1 |
20030220917 | Copperman et al. | Nov 2003 | A1 |
20040128122 | Privault et al. | Jul 2004 | A1 |
20040220925 | Liu et al. | Nov 2004 | A1 |
20040243415 | Commarford et al. | Dec 2004 | A1 |
20050144162 | Liang | Jun 2005 | A1 |
20050203738 | Hwang | Sep 2005 | A1 |
20050216253 | Brockett | Sep 2005 | A1 |
20060026147 | Cone et al. | Feb 2006 | A1 |
20060167857 | Kraft et al. | Jul 2006 | A1 |
20060190822 | Basson et al. | Aug 2006 | A1 |
20060204142 | West et al. | Sep 2006 | A1 |
20060206324 | Skilling et al. | Sep 2006 | A1 |
20060218499 | Matthews | Sep 2006 | A1 |
20060242608 | Garside et al. | Oct 2006 | A1 |
20060248074 | Carmel et al. | Nov 2006 | A1 |
20070016422 | Mori et al. | Jan 2007 | A1 |
20070033269 | Atkinson et al. | Feb 2007 | A1 |
20070050339 | Kasperski et al. | Mar 2007 | A1 |
20070052868 | Chou et al. | Mar 2007 | A1 |
20070088686 | Hurst-Hiller | Apr 2007 | A1 |
20070089125 | Claassen | Apr 2007 | A1 |
20070124132 | Takeuchi | May 2007 | A1 |
20070150279 | Gandhi et al. | Jun 2007 | A1 |
20070162281 | Saitoh et al. | Jul 2007 | A1 |
20070167689 | Ramadas et al. | Jul 2007 | A1 |
20070192710 | Platz et al. | Aug 2007 | A1 |
20070208738 | Morgan | Sep 2007 | A1 |
20070213983 | Ramsey | Sep 2007 | A1 |
20070214164 | MacLennan et al. | Sep 2007 | A1 |
20070233692 | Lisa et al. | Oct 2007 | A1 |
20070255567 | Bangalore et al. | Nov 2007 | A1 |
20080046405 | Olds et al. | Feb 2008 | A1 |
20080115046 | Yamaguchi | May 2008 | A1 |
20080167858 | Christie et al. | Jul 2008 | A1 |
20080171555 | Oh et al. | Jul 2008 | A1 |
20080189628 | Liesche et al. | Aug 2008 | A1 |
20080195388 | Bower | Aug 2008 | A1 |
20080195645 | Lapstun et al. | Aug 2008 | A1 |
20080195980 | Morris | Aug 2008 | A1 |
20080208567 | Brockett et al. | Aug 2008 | A1 |
20080221893 | Kaiser | Sep 2008 | A1 |
20080288474 | Chin et al. | Nov 2008 | A1 |
20080294982 | Leung et al. | Nov 2008 | A1 |
20080312910 | Zhang | Dec 2008 | A1 |
20080319738 | Liu | Dec 2008 | A1 |
20090002178 | Guday et al. | Jan 2009 | A1 |
20090043584 | Philips | Feb 2009 | A1 |
20090043741 | Kim | Feb 2009 | A1 |
20090077464 | Goldsmith et al. | Mar 2009 | A1 |
20090106224 | Roulland et al. | Apr 2009 | A1 |
20090128567 | Shuster et al. | May 2009 | A1 |
20090150322 | Bower | Jun 2009 | A1 |
20090154795 | Tan et al. | Jun 2009 | A1 |
20090187515 | Andrew et al. | Jul 2009 | A1 |
20090187824 | Hinckley et al. | Jul 2009 | A1 |
20090210214 | Qian | Aug 2009 | A1 |
20090216690 | Badger | Aug 2009 | A1 |
20090222437 | Niu et al. | Sep 2009 | A1 |
20090249198 | Davis et al. | Oct 2009 | A1 |
20090300546 | Kwok et al. | Dec 2009 | A1 |
20090313239 | Wen et al. | Dec 2009 | A1 |
20100005086 | Wang et al. | Jan 2010 | A1 |
20100122155 | Monsarrat | May 2010 | A1 |
20100125811 | Moore et al. | May 2010 | A1 |
20100138210 | Seo et al. | Jun 2010 | A1 |
20100146407 | Bokor et al. | Jun 2010 | A1 |
20100169770 | Hong et al. | Jul 2010 | A1 |
20100180199 | Wu et al. | Jul 2010 | A1 |
20100217581 | Hong | Aug 2010 | A1 |
20100217795 | Hong | Aug 2010 | A1 |
20100231523 | Chou | Sep 2010 | A1 |
20100245251 | Yuan et al. | Sep 2010 | A1 |
20100251304 | Donoghue et al. | Sep 2010 | A1 |
20100306139 | Wu et al. | Dec 2010 | A1 |
20100306248 | Bao et al. | Dec 2010 | A1 |
20100309137 | Lee | Dec 2010 | A1 |
20100315266 | Gunawardana | Dec 2010 | A1 |
20110014952 | Minton | Jan 2011 | A1 |
20110041077 | Reiner | Feb 2011 | A1 |
20110060761 | Fouts | Mar 2011 | A1 |
20110066431 | Ju et al. | Mar 2011 | A1 |
20110087483 | Hsieh et al. | Apr 2011 | A1 |
20110107265 | Buchanan et al. | May 2011 | A1 |
20110131642 | Hamura et al. | Jun 2011 | A1 |
20110137635 | Chalabi et al. | Jun 2011 | A1 |
20110161080 | Ballinger et al. | Jun 2011 | A1 |
20110161311 | Mishne | Jun 2011 | A1 |
20110173172 | Hong et al. | Jul 2011 | A1 |
20110178981 | Bowen et al. | Jul 2011 | A1 |
20110184723 | Huang et al. | Jul 2011 | A1 |
20110188756 | Lee et al. | Aug 2011 | A1 |
20110191321 | Gade et al. | Aug 2011 | A1 |
20110201387 | Paek et al. | Aug 2011 | A1 |
20110202836 | Badger | Aug 2011 | A1 |
20110202876 | Badger | Aug 2011 | A1 |
20110219299 | Scalosub | Sep 2011 | A1 |
20110258535 | Adler, III et al. | Oct 2011 | A1 |
20110282903 | Zhang | Nov 2011 | A1 |
20110289105 | Hershowitz | Nov 2011 | A1 |
20110296324 | Goossens et al. | Dec 2011 | A1 |
20120016678 | Gruber et al. | Jan 2012 | A1 |
20120019446 | Wu | Jan 2012 | A1 |
20120022853 | Ballinger et al. | Jan 2012 | A1 |
20120023103 | Soderberg et al. | Jan 2012 | A1 |
20120029902 | Lu et al. | Feb 2012 | A1 |
20120035932 | Jitkoff et al. | Feb 2012 | A1 |
20120036468 | Colley | Feb 2012 | A1 |
20120041752 | Wang et al. | Feb 2012 | A1 |
20120060113 | Sejnoha et al. | Mar 2012 | A1 |
20120060147 | Hong et al. | Mar 2012 | A1 |
20120078611 | Soltani et al. | Mar 2012 | A1 |
20120113011 | Wu et al. | May 2012 | A1 |
20120117506 | Koch et al. | May 2012 | A1 |
20120143897 | Wei et al. | Jun 2012 | A1 |
20120173222 | Wang et al. | Jul 2012 | A1 |
20120222056 | Donoghue et al. | Aug 2012 | A1 |
20120296627 | Suzuki | Nov 2012 | A1 |
20120297294 | Scott et al. | Nov 2012 | A1 |
20120297332 | Changuion et al. | Nov 2012 | A1 |
20120311480 | Cohen | Dec 2012 | A1 |
20130016113 | Adhikari et al. | Jan 2013 | A1 |
20130054617 | Colman | Feb 2013 | A1 |
20130091409 | Jeffery | Apr 2013 | A1 |
20130132359 | Lee et al. | May 2013 | A1 |
20130151533 | Udupa | Jun 2013 | A1 |
20130159920 | Scott et al. | Jun 2013 | A1 |
20130282624 | Schackmuth | Oct 2013 | A1 |
20130298030 | Nahumi et al. | Nov 2013 | A1 |
20130346872 | Scott et al. | Dec 2013 | A1 |
20140040238 | Scott et al. | Feb 2014 | A1 |
20150081369 | Sarrazin et al. | Mar 2015 | A1 |
20150088927 | Sarrazin et al. | Mar 2015 | A1 |
20150106702 | Scott et al. | Apr 2015 | A1 |
20150121291 | Scott et al. | Apr 2015 | A1 |
20150127748 | Buryak | May 2015 | A1 |
20150161126 | Wang et al. | Jun 2015 | A1 |
20150370833 | Fey et al. | Dec 2015 | A1 |
Number | Date | Country |
---|---|---|
1609764 | Apr 2005 | CN |
1851617 | Oct 2006 | CN |
1908863 | Feb 2007 | CN |
101183355 | May 2008 | CN |
101276245 | Oct 2008 | CN |
101286092 | Oct 2008 | CN |
101286093 | Oct 2008 | CN |
101286094 | Oct 2008 | CN |
101587471 | Nov 2009 | CN |
101661474 | Mar 2010 | CN |
102012748 | Apr 2011 | CN |
102141889 | Aug 2011 | CN |
102144228 | Aug 2011 | CN |
102193643 | Sep 2011 | CN |
102314441 | Jan 2012 | CN |
102314461 | Jan 2012 | CN |
2000148748 | May 2000 | JP |
2011507099 | Mar 2011 | JP |
2012008874 | Jan 2012 | JP |
2012094156 | May 2012 | JP |
WO2010105440 | Sep 2010 | WO |
Entry |
---|
Yury Kats “Improve the usability of Web applications with type-ahead input fields using JSF, AJAX, and Web services in Rational Application Developer v7” Dec. 5, 2006 (Year: 2006). |
OPENJS Waiting Until User Stops Typing to Check the Status Using Ajax Jan. 29, 2009—Wayback Machine archived date (Year: 2009). |
The Chinese Office Action dated Mar. 24, 2017 for Chinese Patent Application No. 201280074281.4, a counterpart foreign application of U.S. Appl. No. 13/586,267. |
Office action for U.S. Appl. No. 13/635,306, dated Feb. 25, 2017, Scott et al., “Input Method Editor”, 23 pages. |
“Oral Hearing Issued in European Patent Application No. 13891201.9”, dated Jan. 26, 2018, 10 Pages. |
“Second Office Action Issued in Chinese Patent Application No. 201380078787.7”, dated Apr. 3, 2018, 12 Pages. |
The Chinese Office Action dated Jan. 3, 2017 for Chinese patent application No. 201280074383.6, a counterpart foreign application of U.S. Appl. No. 13/635,306. |
The Chinese Office Action dated Feb. 3, 2017 for Chinese patent application No. 201280074382.1, a counterpart foreign application of U.S. Appl. No. 13/635,219. |
The European Office Action dated Dec. 22, 2016 for European patent application No. 12880149.5, a counterpart foreign application of U.S. Appl. No. 13/635,219, 11 pages. |
Office action for U.S. Appl. No. 13/635,219, dated Nov. 14, 2016, Scott et al., “Cross-Lingual Input Method Editor”, 27 pages. |
Office action for U.S. Appl. No. 13/701,008, dated Nov. 30, 2016, Wang et al., “Feature-Based Candidate Selection”, 21 pages. |
Ciccolini, Ramiro, “Baidu IME More literate in Chinese input,” Published Sep. 15, 2011, retrieved at << http://www.itnews-blog.com/it/81630.html>>, 4 pages. |
Millward, Steven, “Baidu Japan Acquires Simeji Mobile App Team, for added Japanese Typing fun,” Published Dec. 13, 2011, 3 pages. |
Ben-Haim, et al., “Improving Web-based Image Search via Content Based Clustering”, Proceedings of the 2006 Conference on Computer Vision and Pattern Recognition Workshop (CVPRW '06), IEEE, Jun. 17, 2006, 6 pages. |
Berg, et al., “Animals on the Web”, Proceedings of the 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR '06), vol. 2, IEEE, Jun. 17, 2006, pp. 1463-1470. |
The Chinese Office Action dated Jun. 28, 2016 for Chinese Patent Application No. 201280074281.4, a counterpart foreign application of U.S. Appl. No. 13/586,267. |
The Chinese Office Action dated Jun. 3, 2016 for Chinese Patent Application No. 201280074382.1, a counterpart foreign application of U.S. Appl. No. 13/635,219, 18 pages. |
Damper, “Self-Learning and Connectionist Approaches to Text-Phoneme Conversion”, retrieved on May 26, 2010 at <<ftp://ftp.cogsci.ed.ac.uk/pub/joe/newbull.ps>>, UCL Press, Connectionist Models of Memory and Language, 1995, pp. 117-144. |
“Database”, Microsoft Computer Dictionary, Fifth Edition, retrieved on May 13, 2011, at <<http://academic.safaribooksonline.com/book/communications/0735614954>>, Microsoft Press, May 1, 2002, 2 pages. |
Dinamik-Bot, et al., “Input method”, retrieved on May 6, 2015 at <<http://en.wikipedia.org/w/index.php?title=lnput_method&oldid=496631911>>, Wikipedia, the free encyclopedia, Jun. 8, 2012, 4 pages. |
Engkoo Pinyin Redefines Chinese Input, Published on: May 13, 2013, Available at: http://research.microsoft.com/en-us/news/features/engkoopinyinime-051313.aspx. |
“English Assistant”, Published on: Apr. 19, 2013, Available at: http://bing.msn.cn/pinyin/. |
The European Office Action dated Oct. 8, 2015 for European patent application No. 12879804.8, a counterpart foreign application of U.S. Appl. No. 13/586,267, 9 pages. |
The European Office Action dated Nov. 27, 2015 for European patent application No. 12880149.5, a counterpart foreign application of U.S. Appl. No. 13/635,219, 10 pages. |
The European Office Action dated Mar. 1, 2016 for European Patent Application No. 12883902.4, a counterpart foreign application of U.S. Appl. No. 13/701,008, 8 pages. |
The European Office Action dated Jun. 18, 2015 for European patent application No. 12879676.0, a counterpart foreign application of U.S. Appl. No. 13/635,306, 5 pages. |
The European Office Action dated Jul. 19, 2016 for European Patent Application No. 13891201.9, a counterpart foreign application of U.S. Appl. No. 14/911,247, 7 pages. |
The European Office Action dated Jul. 19, 2016 for European patent application No. 12880149.5, a counterpart foreign application of U.S. Appl. No. 13/635,219, 7 pages. |
The Supplementary European Search Report dated May 20, 2015 for European Patent Application No. 12879676.0, 3 pages. |
The Partial Supplemenary European Search Report dated Oct. 26, 2015 for European patent application No. 12883902.4, 7 pages. |
The Supplementary European Search Report dated Nov. 12, 2015 for European patent application No. 12880149.5, 7 pages. |
The European Search Report dated Feburary 18, 2016 for European patent application No. 12883902.4, 7 pages. |
The Supplemenary European Search Report dated Jul. 16, 2015 for European patent application No. 12880149.5, 5 pages. |
The Supplemenary European Search Report dated Sep. 14, 2015 for European patent application No. 12879804.8, 5 pages. |
“File”, Microsoft Computer Dictionary, Fifth Edition, retrieved on May 13, 2011, at <<http://academic.safaribooksonline.com/book/communications/0735614954>>, Microsoft Press, May 1, 2002, 2 pages. |
Final Office Action for U.S. Appl. No. 13/109,021, dated Jan. 11, 2013, Scott et al., “Network Search for Writing Assistance”, 16 pages. |
“Google launched Input Method editor—type anywhere in your language,” published Mar. 2, 2010, retrieved at <<http://shoutingwords.com/google-launched-input-method-editor.html>>, 12 pages. |
Lenssen, Philipp, “Google Releases Pinyin Converter,” Published Apr. 4, 2007, retrieved at <<http://blogoscoped.com/archive/2007-04-04-n49.html>>, 3 pages. |
Guo et al., “NaXi Pictographs Input Method and WEFT”, Journal of Computers, vol. 5, No. 1, Jan. 2010, pp. 117-124. |
“Innovative Chinese Engine”, Published on: May 2, 2013, Available at: http://bing.msn.cn/pinyin/help.shtml. |
“Input Method (IME)”, Retrieved on: Jul. 3, 2013, Available at: http://www.google.co.in/inputtools/cloud/features/input-method.html. |
International Search Report & Written Opinion for PCT Patent Application No. PCT/CN2013/081156, dated May 5, 2014; filed Aug. 9, 2013, 14 pages. |
The Japanese Office Action dated Oct. 31, 2016 for Japanese Patent Application No. 2015-528828, a counterpart foreign application of U.S. Appl. No. 13/701,008. |
The Japanese Office Action dated May 24, 2016 for Japanese patent application No. 2015-528828, a counterpart foreign application of U.S. Appl. No. 13/701,008, 17 pages. |
Miessler, “7 Essential Firefox Quicksearches”, Retrieved from <<https:danielmiessler.com/blog/7-essential-firefox-quicksearches/>>, Published Aug. 19, 2007, 2 pages. |
Office action for U.S. Appl. No. 13/567,305, dated Jan. 30, 2014, Scott, et al., “Business Intelligent In-Document Suggestions”, 14 pages. |
Office action for U.S. Appl. No. 13/315,047, dated Feb. 12, 2014, Liu, et al., “Sentiment Aware User Interface Customization”, 14 pages. |
Office Action for U.S. Appl. No. 13/109,021, dated Mar. 11, 2014, Dyer, A.R., “Network Search for Writing Assistance,” 18 pages. |
Office action for U.S. Appl. No. 13/586,267, dated Jan. 2, 2015, Scott et al., “Input Method Editor Application Platform”, 19 pages. |
Office action for U.S. Appl. No. 12/693,316, dated Oct. 16, 2014, Huang, et al., “Phonetic Suggestion Engine”, 24 pages. |
Office Action for U.S. Appl. No. 13/315,047, dated Oct. 2, 2014, Weipeng Liu, “Sentiment Aware User Interface Customization”, 12 pages. |
Office action for U.S. Appl. No. 12/693,316, dated Oct. 30, 2013, Huang, et al., “Phonetic Suggestion Engine”, 24 pages. |
Office action for U.S. Appl. No. 13/331,023 dated Nov. 20, 2015, Scott et al., “Scenario-Adaptive Input Method Editor”, 25 pages. |
Office action for U.S. Appl. No. 13/586,267 dated Nov. 6, 2015, Scott et al., “Input Method Editor Application Platform”, 22 pages. |
Office action for U.S. Appl. No. 13/331,023, dated Feb. 12, 2015, Scott et al, “Scenario-Adaptive Input Method Editor”, 20 pages. |
Office action for U.S. Appl. No. 13/635,306, dated Feb. 25, 2016, Scott et al., “Input Method Editor”, 29 pages. |
Office action for U.S. Appl. No. 13/635,219, dated Mar. 13, 2015, Scott et al., “Cross-Lingual Input Method Editor”, 21 pages. |
Office action for U.S. Appl. No. 13/701,008, dated Mar. 17, 2016, Wang et al., “Feature-Based Candidate Selection”, 13 pages. |
Office action for U.S. Appl. No. 13/635,219, dated Mar. 24, 2016, Scott et al., “Cross-Lingual Input Method Editor”, 29 pages. |
Office action for U.S. Appl. No. 13/635,306, dated Mar. 27, 2015, Scott et al., “Input Method Editor”, 18 pages. |
Office action for U.S. Appl. No. 13/315,047, dated Apr. 24, 2014, Liu et al., “Sentiment Aware User Interface Customization”, 13 pages. |
Office action for U.S. Appl. No. 13/315,047, dated Apr. 28, 2015, Liu et al., “Sentiment Aware User Interface Customization”, 12 pages. |
Office action for U.S. Appl. No. 13/701,008, dated May 12, 2015, Wang et al., “Feature-Based Candidate Selection”, 12 pages. |
Office action for U.S. Appl. No. 12/693,316, dated May 19, 2014, Huang et al., “Phonetic Suggestion Engine”, 22 pages. |
Office action for U.S. Appl. No. 13/586,267, dated May 8, 2015, Scott et al., “Input Method Editor Application Platform”, 18 pages. |
Office action for U.S. Appl. No. 13/701,008, dated Jun. 15, 2015, Wang et al., “Feature-Based Candidate Selection”, 17 pages. |
Office action for U.S. Appl. No. 12/693,316, dated Jun. 19, 2013, Huang et al., “Phonetic Suggestion Engine”, 20 pages. |
Office Action for U.S. Appl. No. 13/109,021, dated Jun. 19, 2014, Dyer, A.R., “Network Search for Writing Assistance,” 42 pages. |
Office action for U.S. Appl. No. 13/331,023, dated Jun. 26, 2015, Scott et al., “Scenario-Adaptive Input Method Editor”, 23 pages. |
Office action for U.S. Appl. No. 13/586,267, dated Jun. 7, 2016, Scott et al., “Input Method Editor Application Platform”, 24 pages. |
Office action for U.S. Appl. No. 13/635,306, dated Jul. 28, 2016, Scott et al., “Input Method Editor”, 24 pages. |
Office action for U.S. Appl. No. 13/586,267, dated Jul. 31, 2014, Scott et al., “Input Method Editor Application Platform”, 20 pages. |
Final Office Action for U.S. Appl. No. 13/635,219, dated Aug. 10, 2016, Matthew Robert Scott, “Cross-Lingual Input Method Editor”, 29 pages. |
Office action for U.S. Appl. No. 13/635,306, dated Aug. 14, 2015, Scott et al., “Input Method Editor”, 26 pages. |
Office Action for U.S. Appl. No. 13/109,021, dated Aug. 21, 2012, Scott et al., “Network Search for Writing Assistance”, 19 pages. |
Non-Final Office Action for U.S. Appl. No. 13/331,023, dated Aug. 4, 2014, Matthew Robert Scott et al., “Scenario-Adaptive Input Method Editor”, 20 pages. |
Office action for U.S. Appl. No. 13/315,047, dated Sep. 24, 2015, Liu et al., “Sentiment Aware User Interface Customization”, 12 pages. |
Office Action for U.S. Appl. No. 13/109,021, dated Sep. 25, 2013, Scott et al., “Network Search for Writing Assistance”, 18 pages. |
Office action for U.S. Appl. No. 13/635,219, dated Sep. 29, 2015, Scott et al., “Cross-Lingual Input Method Editor”, 14 page. |
Office Action for U.S. Appl. No. 13/109,021, dated Sep. 30, 2014, Dyer, A.R., “Network Search for Writing Assistance,” 17 pages. |
International Search Report & Written Opinion for PCT Patent Application No. PCT/US2013/053321, dated Oct. 1, 2013, filed date Aug. 2, 2013, 9 Pages. |
PCT International Preliminary Report on Patentability dated Feb. 18, 2016 for PCT Application No. PCT/CN2013/081156, 8 pages. |
PCT International Preliminary Report on Patentability dated Mar. 12, 2015 for PCT Application No. PCT/CN2012/080749, 8 pages. |
“Prose”, Dictionary.com, Jun. 19, 2014, 2 pgs. |
Wikipedia, “Soundex”, retrieved on Jan. 20, 2010 at http://en.wikipedia.org/wiki/soundex, 3 pgs. |
“Third Office Action Issued in Chinese Patent Application No. 201380078787.7”, dated Oct. 10, 2018, 9 Pages. |
“First Office Action & Search Report Issued in Chinese Patent Application No. 201380078787.7”, dated Jul. 19, 2017, 22 Pages. |
“Supplementary Search Report Issued in European Patent Application No. 13891201.9”, dated Jul. 6, 2016, 4 Pages. |
“Office Action Issued in Chinese Patent Application No, 201380078787.7”, dated Mar. 14, 2019, 12 Pages. |
U.S. Appl. No. 13/63,5219, filed Sep. 14, 2011, Scott, et al., “Cross-Lingual Input Method Editor”. |
Number | Date | Country | |
---|---|---|---|
20160196150 A1 | Jul 2016 | US |