JP5147712B2 - データ入力を形成するためのシステム、コンピュータ・プログラムおよび方法 - Google Patents

データ入力を形成するためのシステム、コンピュータ・プログラムおよび方法 Download PDF

Info

Publication number
JP5147712B2
JP5147712B2 JP2008544898A JP2008544898A JP5147712B2 JP 5147712 B2 JP5147712 B2 JP 5147712B2 JP 2008544898 A JP2008544898 A JP 2008544898A JP 2008544898 A JP2008544898 A JP 2008544898A JP 5147712 B2 JP5147712 B2 JP 5147712B2
Authority
JP
Japan
Prior art keywords
data
input
dynamically determined
determined period
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2008544898A
Other languages
English (en)
Other versions
JP2009524853A (ja
Inventor
ディコッコ、アントニオ
カラ、フィリッポ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2009524853A publication Critical patent/JP2009524853A/ja
Application granted granted Critical
Publication of JP5147712B2 publication Critical patent/JP5147712B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0237Character input methods using prediction or retrieval techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)

Description

本発明は、一連のデータ・シンボルの入力を可能にするユーザ・インターフェースに関連してデータ入力を形成するためのシステム、コンピュータ・プログラムおよび方法に関する。
ある種の電子デバイスまたはソフトウェア環境のヒューマン・インターフェースはオートコンプリート(自動補完)機能を提供する。この環境では、インターフェースが、すでにユーザによって入力された内容を補完することができる情報の一部として識別しようと試みる。その結果、ユーザは、その残りの部分を明示的に入力するわずらわしさから解放される。この識別プロセスは、しばしば、たとえば過去の入力に基づいて可能な完全な入力のリストや標準ライブラリを参照することによって実施される。こうしたメカニズムは、しばしば、たとえば携帯電話のインターフェースで見られる。この携帯電話のインターフェースは、連絡先リストおよび以前にダイヤルされた番号を参照することによって、部分的に入力された番号または名前に基づいて完全な電話番号を提示するようにされる。他の例はプログラミング環境で見られる。このようなプログラミング環境のオートコンプリート・メカニズムは、ユーザによって入力された最初の数文字に基づいて標準コードの大部分を提示することができる。
図1は、従来技術の手法を示すフローチャートである。この手法によれば、キー入力受付機能が、最新のキー入力イベント(Key Press Event)のタイムスタンプをローカル変数内に格納する。新しいイベントが発生すると新しいタイムスタンプが発行される。この2つの値の差が所与の間隔より短い場合、新しい文字が以前の文字の続きであるとみなされ、新しいタイムスタンプが更新される。
この方法は、ステップ101から開始され、データ入力の開始時にタイムスタンプが記録される。ステップ103でキーが押されたかどうかが判定され、このステップはキー入力イベントが実際に検出されるまで繰り返される。キー入力イベントが検出された場合、ステップ105でこのイベントのタイムスタンプが記録され、ステップ107でこの最新の2つのタイムスタンプ間の間隔が計算される。ステップ109で、ステップ107で計算された間隔が所定の間隔を超えるか否かが判定される。所定の間隔を超えないと判定された場合、新しいデータ・シンボルがこれまでのデータ・シンボル入力の記録に追加され、ステップ103へとループ・バックする。しかし、この所定の間隔を超えていると判定された場合、方法はステップ113へと進み、ステップ101以降にされたキー入力の記録と可能なデータ入力の集合とが比較され、ステップ115で、可能なコンプリート値がユーザに提示される。コンプリート値は、受け入れられる場合もあればそうでない場合もある。いずれの場合も、制限時間が経過したという事実がデータ入力シーケンスの終了に達したことを示すものとされ、ステップ117で、ステップ101以降のキー入力の記録が空にされた後、ステップ103へループ・バックする。
以下の擬似コードは、本方法の例示的な部分実施を提供する。
if((curTime−ivLastKeyTime)>TimeLimit)

オートコンプリート・テキストの検索を実施
現在の選択をリセットし、新しいキーで初期化

else

現在の選択に新しいキーを追加
オートコンプリート・テキストの検索を実施
本発明の目的の1つは、データ入力を形成するためのシステム、コンピュータ・プログラムおよび方法を提供することである。
本発明により、一連のデータ・シンボルの入力を可能にするユーザ・インターフェースにおいてデータ入力を形成するためのシステム、コンピュータ・プログラムおよび方法が提供される。システムは、データ・シンボルが入力された後、動的に決定される期間だけ待機するための手段と、期間の経過前に他のデータ・シンボル入力が受けた場合、受けたシンボルと可能なデータ入力の集合との比較によって、データ入力の補完を試みる手段と、期間の経過前に他のデータ・シンボルが受け取られない場合、以前に将来の比較の目的で受けたすべてのシンボルを廃棄する手段を含み、動的に決定される期間は以前のデータ・シンボル入力間の間隔に応じて計算される。好ましい諸実施形態は、従属請求項で定義される。
本発明の他の利点は、当業者であれば、図面および詳細な説明により明らかとなるであろう。任意の追加の利点は、本明細書に組み込まれることが意図される。
次に、本発明の諸実施形態について、同じ参照が同様の要素を示す添付の図面を参照しながら、例として説明する。
前述のようなオートコンプリート・メカニズムの問題の特徴は、時間間隔が構成パラメータによって固定されるかまたはカスタマイズ可能であるが、いったん読み取られると、ユーザに関係なく有効なことである。しかし実際は、様々なユーザが様々な速度でデータ入力をし、ユーザがあまりに低速なためオートコンプリート・メカニズムを使用できなかったり、データ入力があまりに高速なため検索を再開するのが困難であったりする可能性がある。ある実施形態によれば、たとえば、実際に構成要素を使用しているユーザから習得することによって、基準とみなされる間隔が異なる可能性がある。言い換えれば、制限時間は動的に決定される期間である。2以上の実際の時間間隔値およびキー入力された回数を格納し、現在のユーザの実際のデータ入力速度に基づいて、時間間隔を計算する際に使用することができる。言い換えれば、各データ・シンボルの入力後に、動的に決定される期間だけ待機するステップと、当該期間の経過に先立って他のデータ・シンボル入力が受け取られた場合、受け取られたシンボルと可能なデータ入力の集合との比較によって、当該データ入力のコンプリートを試みるステップと、当該期間の経過前に他のデータ・シンボルが受け取られない場合、以前に将来の比較の目的で受けたすべてのシンボルを廃棄するステップが提供される。ここでは、動的に決定される期間は以前のデータ・シンボル入力間の間隔に応じて計算される。
時間間隔の値は、アプリケーションが閉じられる際に、永続的に格納するようにすることができるため、アプリケーションが再起動される場合、それを取り出すことが可能となる。こうすることで、以前のセッションで決定された最適化された値を新しいセッションの開始点において採用することが可能であり、新しいセッション用の制限時間の値の調整に必要な平均的な時間が短縮されることになるだろう。
動的に決定される期間は、複数の以前のデータ・シンボル入力間の時間間隔の平均を決定することによって算出されることが好ましい。単純な回路またはソフトウェア・ルーチンを使用して平均を決定することができ、その結果、実施のコストまたはオーバヘッドが低くなる。動的に決定される期間は、複数の連続したデータ・シンボル入力間の時間間隔の平均を決定することによって算出されることがさらに好ましい。これにより、たとえば必要なバッファまたはメモリ割り振りのサイズに関して、他の簡略化された回路またはソフトウェア・ルーチンが可能となり、その結果、実施のコストまたはオーバヘッドがさらに低くなる。さらに好ましくは、動的に決定される期間は、複数の直前の連続したデータ・シンボル入力間の時間間隔の平均を決定することによって算出される。これにより、たとえば必要なバッファまたはメモリ割り振りのサイズに関して、さらに他の簡略化された回路またはソフトウェア・ルーチンが可能となり、その結果、実施のコストまたはオーバヘッドがさらに低くなる。さらに好ましくは、動的に決定される期間は、3つの直前の連続したデータ・シンボル入力間の時間間隔の平均を決定することによって算出される。これにより、たとえば必要なバッファまたはメモリ割り振りのサイズに関して、さらに他の簡略化された回路またはソフトウェア・ルーチンが可能となり、それによって実施のコストまたはオーバヘッドがさらに低くなる。
好ましくは、時間間隔は、ユーザのデータ入力速度においてある程度の変化を可能にするような、マージンまたはデルタ量(Delta quantity)を含む。マージンまたはデルタ値は、たとえば、時間間隔の百分率、時間間隔の指数、固定量、または任意の他の手法によって決定された値とすることができる。百分率の値が使用される場合、デルタ値は時間間隔の変化に伴って変化することになり、時間間隔が長くなると増加し、時間間隔が短くなると減少する。これに対して、固定デルタ値は、時間間隔が小さい値であれば大きな変化を可能とし、時間間隔が大きければより小さな変化を可能とする。この方法では、2つのキーが同じテキストに属するとみなされることになる時間間隔を、ユーザのタイプ頻度に応じてカスタマイズすることができる。
したがってマージン値は、たとえば、固定値、変数値とすることが可能であり、さらに平均値の実倍数(real multiple)とすることが可能である。
図2は、第1の実施形態を示す。この第1の実施形態によれば、平均キー入力時間の評価が維持される。所与のマージンによるこの平均期間よりも長い休止は、新しいワードの始まりを示すものと解釈される。最後の休止以降に実行された入力が集められ、オートコンプリートの可能性を識別および提示する目的で、反復されるたびに辞書と比較される。
たとえば以下の様に、反復ごとに最後の2つのキー入力遅延が平均され、制限時間lを決定するためにマージン値Δに追加される。
l=((t+tn−1)/2)+Δ
以下の擬似コードは、単純な実装例を提供する。
AverageDelay=((PreviousDelay+PrePreviousDelay)/2)
TimeLimit=delta+AverageDelay
if((curTime−ivLastKeyTime)>TimeLimit)

オートコンプリート・テキストの検索を実施
現在の選択をリセットし、新しいキーで初期化

else
If keyvalue<>“”

現在の選択に新しいキーを追加
オートコンプリート・テキストの検索を実施

PrePreviousDelay=PreviousDelay
PreviousDelay=curTime−ivLastKeyTime
図2に示される方法は、ステップ201で開始され、処理が開始される時間が記録される。ステップ203で時間値が更新され、ステップ205で、ステップ201で記録された開始時間とステップ203で決定された現在時間との差分が、制限時間値と比較される。制限時間がまだ経過していないと判定された場合、すなわち、ステップ201で記録された開始時間とステップ203で決定された現在時間との差分が所定の制限時間値未満である場合、方法は、キーが押されたかどうかが判定されるステップ207へと進む。キーが押されたと判定された場合、ステップ209で、そのキーの値がステップ201以降のキー入力の記録に追加される。ステップ205で決定された間隔値がステップ210で記録され、ステップ211で、以前のデータ・シンボル入力間の間隔に応じて制限時間を変更するために使用される。次にプロセスはステップ203へループ・バックする。ステップ207で、新しいキーが入力されなかったと判定された場合、方法は単にステップ203へループ・バックする。他方で、ステップ205で、所定の制限時間を超えたと判定された場合、すなわち、ステップ201で記録された開始時間とステップ203で決定された現在時間との差分が所定の制限時間値を上回っている場合、方法はステップ213へと進み、ステップ201以降のキー入力の記録と可能なデータ入力の集合との比較が実施され、ステップ215で、コンプリート値がユーザに提示される。コンプリート値は、受け入れられる場合もあればそうでない場合もある。いずれの場合も、制限時間が経過したという事実がデータ入力シーケンスの終了に達したことを示すものとされ、ステップ217で、ステップ201以降のキー入力の記録が空にされた後、ステップ201へとループ・バックする。
図3は、第2の実施形態を示す。この第2の実施形態に従って、平均キー入力時間の評価が維持される。この平均期間よりも所与のマージンだけ長い休止によって検索語句が構成されると解釈される。最後の休止以降に実行された入力が集められる。制限時間を超える休止が検出されると、オートコンプリートの可能性を識別および提示する目的で、集められた入力が辞書と比較される。この手法は、ユーザがより大規模なテキストまたは任意の入力シーケンスの一部を入力し、その後オートコンプリート・システムがこれを補完するまで待機する状況に、特に好適である。
方法は、ステップ301で開始され、データ入力の開始時にタイムスタンプが記録される。ステップ303で、キーが押されたかどうかが判定され、このステップは、キー入力イベントが実際に検出されるまで繰り返される。キー入力イベントが検出された場合、ステップ305でこのイベントのタイムスタンプが記録され、ステップ307でこの最新の2つのタイムスタンプ間の間隔が決定される。ステップ309で、ステップ307で計算された間隔が所定の間隔を超えるか否かが判定され、この所定の間隔を超えないと判定された場合、新しいデータ・シンボルがこれまでのデータ・シンボル入力の記録に加えられる。
この段階では、ステップ309で適用された制限時間が、ステップ319で、以前のデータ・シンボル入力間の間隔に応じて改定される。好ましくは前述のように、新しい制限時間は、先行するタイムスタンプ間の間隔の平均にデルタ値を加えたものである。
ステップ319で制限時間値が変更されると、方法はステップ303へと折り返される。しかし、所定の間隔を超えていると判定された場合、方法はステップ313へと進んで、ステップ301以降のキー入力の記録と可能なデータ入力の集合との比較が実施され、ステップ315で、可能なコンプリート値がユーザに提示される。コンプリート値は、受け入れられる場合もあればそうでない場合もある。いずれの場合も、制限時間が経過したという事実がデータ入力シーケンスの終了に達したことを示すものされ、ステップ317で、ステップ301以降のキー入力の記録が空にされた後、ステップ303へループバックする。
次に、第2の実施形態のプロセスの動作例が示される。この動作例では、システムにテキスト「oldt」とタイプ入力される。以下の表1では、「n」列はプロセスの反復に関し、「t」および「s」列は対応する時間間隔および記号値を提供する。
Figure 0005147712
この動作例では、10のデルタ(Δ)の固定値が採用される。
以下の表2.1は、例示的な値によるプロセスの第1の反復における、図3でそれぞれ「a」、「b」、および「c」とマークされたノードでの値を示す。
Figure 0005147712
データ入力ワード「o」は、メモリ内で保持される。いずれの場合も、制限時間lは以下のようにノードcで示されるように変更される。
l=(t+tn−1)/2+Δ
l=(30+40)/2+10=45
Figure 0005147712
制限時間lは以下のようにノードcで示されるように変更される。
l=(t+tn−1)/2+Δ
l=(31+30)/2+10=40.5
Figure 0005147712
制限時間lは以下のようにノードcで示されるように変更される。
l=(t+tn−1)/2+Δ
l=(32+31)/2+10=41.5
Figure 0005147712
このケースでは、41.5の制限時間を超えるため、ワード「old」が辞書で検索される。この場合のように、訂正または補完が不要であると想定すると、ワード「old」は受け入れられ、データ入力バッファは次のワードのために消去される。第5の反復のノード「a」を見るとわかるように、データ入力バッファはこの反復で検出された文字「t」で初期設定されている。
この実施形態によれば、制限時間内の意図的な休止により、過度に大きい値を含むことに関与することになるため、制限時間はこの反復中には変更されない。他方で、ユーザ速度の変化の程度に応じて、またはタイピング速度が大幅に遅い、すなわちデルタ値によって許可されたマージンを大幅に超える、新しいユーザが引き継ぐ場合、この手法は性能を低下させる可能性があり、この場合、制限時間の計算においてすべての遅延値を含むことが望ましい。さらに他の手法は、1文字ワードなどの短いワードの終わりに記録される制限時間を含めるものであり、これは制限時間が新しいユーザにとって遅すぎる設定だった場合を意味し、すべての入力は1文字ワードとして登録されることになり、その遅延が制限時間平均に組み込まれるため、制限時間値を急激に増加させることになる。
Figure 0005147712
前述のように、遅延値が平均されるキー入力回数は2を超える可能性がある。この展開によれば、プロセスは、これらの目的で制限時間に合致しない第1のキー入力を無視するように設計することができる。したがって、ワード間の休止を考慮に入れることによって、平均を人為的に長くすることなく、いくつかのワードにまたがる長い平均を決定することができる。
図4は、本発明を実施するのに好適な可能なハードウェア構成を示す。この構成によれば、キーボード、マウス、タッチパッド、音声認識システムなどのヒューマン・インターフェース入力デバイス404と、ビデオ・ディスプレイ・ユニットまたはスピーカなどのヒューマン・インターフェース出力デバイス402と、を有する、従来のコンピュータ・システムが提供される。これら2つのインターフェースは、従来のアーキテクチャによればCPU 420、メモリ430、および、ハード・ディスク・ドライブなどの大容量記憶デバイス430を備える、コンピューティング・ユニット400と通信する。加えて、ユーザによってヒューマン・インターフェース入力デバイス404に入力されたデータを受信する、インターフェース・バッファ410が提供される。
前述の諸実施形態を実施するために、プロセッサ420は、インターフェース・バッファ410から入力記号を取り出し、取り出した値を、タイムスタンプ・メモリ431として指定された当該メモリの関連領域に追加された対応するタイムスタンプ値と共に、当該メモリ430のデータ入力バッファ432として指定された領域へと追加する、入力処理モジュール422を実行する。入力処理モジュール422は、最新の文字入力以降の間隔を決定するためにタイムスタンプ値を比較するステップも実行し、間隔の比較のために、制限時間メモリ432として指定された当該メモリ430の領域から制限時間値を取り出す。
最終的に、入力処理ユニットは、大容量記憶デバイス430に格納された可能な入力の集合431に問合せ(interrogate)機能を実行し、ヒューマン・インターフェース出力デバイス402を使用して、可能な訂正またはオートコンプリート値をユーザに提示する。
さらにプロセッサ420は、タイムスタンプ・メモリ431からタイムスタンプ値を取り出し、さらに必要であれば、本発明に従って制限時間の値を再評価するため、および、入力処理モジュール422による取り出しのために制限時間のためのメモリ内に新しい値を格納するために、デルタ値メモリ431として指定されたメモリ430の領域からデルタ値を取り出す機能を実行する、制限時間処理モジュール421を実装する。
それぞれのタスクが実施される順序、およびそれらが実施される様式は、実施される実際の実施形態に応じて変化することは明らかである。
ハードウェア、ファームウェア、ソフトウェア、あるいはこれらのうちのいずれかまたはすべての組み合わせに関して、任意の要素が実現可能である。ソフトウェア構成要素が提供される場合、それらは、CDまたはDVDなどの光ディスク、ハード・ドライブまたはフロッピィ・ディスクなどの磁気ディスク、フラッシュ・メモリ・カード、EPROM、揮発性メモリ・ユニットなどのメモリ・デバイス、あるいは、たとえば配信目的の光、電気、無線、またはその他の伝送チャネルなどの、キャリア上に、一時的または永続的に配置することが可能である。
一実施形態によれば、システムは、事前に定義されたトレーニング期間後、従来の固定期間認識システムに戻るか、あるいは、たとえば2番目、3番目、または4番目ごとなど、一定の遅延値のみを使用する、とすることが可能である。これらの手法は、連続的な制限時間の再計算に関する長いオーバヘッドなしに、実際にユーザに適応性の利点を提供する。
本発明は、エラーを識別し、ユーザにこれらをフラグで通知する、あるいは訂正を提案するかまたは課す、またはその両方のために、入力されたテキストをリストと比較する際に使用するエラー検出または訂正メカニズムに、同様に適用され得る。
図5は、本発明の第1の適用例を示す。この図に示されるように、ウィンドウ・ベースのグラフィカル・ユーザ・インターフェースで、「参照を入力」というラベルの付いたテキスト・ボックス501を備える、「コマンド・ライン」というタイトルのウィンドウ500が開いている。ユーザによってテキストが入力され、テキスト・ボックス501に表示される。前述の本発明によれば、テキスト入力中に制限時間が経過すると、それまでに入力されたテキスト、たとえば図に示されたテキスト「old」が、たとえば以前の入力に基づいて、可能な入力のリスト内で検索される。候補を伴うドロップ・ダウン・ボックス505が表示され、ユーザはたとえばポインタ509を使用してここから選択することができる。この図に示されるように、候補「olden」がハイライト表示され、この項目が当該GUIに適した手段によって、たとえばマウス・クリックによって、現在選択される可能性があることを示している。
図6は、本発明の第2の適用例を示す。この図に示されるように、ウィンドウ・ベースのグラフィカル・ユーザ・インターフェースで、ユーザによってプログラミング・コードが入力されたテキスト・フィールド601を備える、「プログラミング・プロジェクト」というタイトルのウィンドウ600が開いている。システムは、本発明に従ってユーザ入力を監視されており、文字列「curTime」の終わりに制限時間を超える休止が発生した。したがって、入力されたテストの最後の部分が、たとえば共通コード・モジュールのライブラリに基づいて、可能な入力リスト内で検索される。ユーザが開始したコード部分の残りの部分607を含み、一致したテキスト605がハイライト表示された、「オートコンプリート」というタイトルの第2のウィンドウ603がポップアップ表示される。ウィンドウ603は、「同意」ボタン611または「拒否」ボタン609をクリックすることによって、提示されたテキストを同意または拒否するように、ユーザに申し出る。
他の実施形態によれば、キー入力イベントなどのデータ入力イベント間の制限時間の経過によって入力リスト検索の辞書がトリガされ、この制限時間の値は入力速度に応じて動的に決定される、オートコンプリートまたはオートコレクト・メカニズムの実施が提供される。制限時間は、たとえば平均入力速度に基づいて算出することが可能であり、特別なマージン値を含むことができる。したがって、検索のトリガの発生は、現在のユーザのデータ入力速度に対して最適化される傾向がある。
当業者であれば、本発明が、音声認識、キーボード、キーパッド、タッチ・センサ式ディスプレイ、または任意の他のインターフェースを手段として含む、データ入力のすべての方法に及ぶものであることを理解されよう。この手段によって入力されるデータ・シンボルは、同様に、ローマ字または他のアルファベット、アラビア、ローマ、または他の数字、数学記号、音符、あるいは実際にはオートコンプリート・プロトコルが定義可能ないずれかの任意の記号セットから導出される、任意の文字セットに従った記号を含む、オートコンプリートに適合する任意のタイプとすることが可能である。入力は、文字などの個々のグリフ、またはより大きな表意文字の一部を形成するピクトグラムに関するものとするか、あるいはそうでない場合、ワードまたはフレーズの全体または一部などのより大きなグループに対応するものとすることができる。
それに対応して、オートコンプリートまたはコレクトの検索が実行される際に参照する可能なデータ入力のセットは、辞書、頻繁に使用されるテキストの編集物、過去の入力の記録、および、データベース、ファイル・ストレージ・システム、またはインターネットなどのこうした使用向けに特に準備されたものでない実際のデータ・ソースを含む、入力された記号の比較の対象とすることができる、任意のデータ・セットを含むことができる。
従来の手法を示す例示的フローチャートである。 第1の実施形態を示す図である。 第2の実施形態を示す図である。 本発明の実施に好適な可能なハードウェア構成を示す図である。 本発明の第1の適用例を示す図である。 本発明の第2の適用例を示す図である。

Claims (12)

  1. 一連のデータ・シンボルの入力を可能にするユーザ・インターフェースに関連してデータ入力を形成するためのシステムであって、
    各データ・シンボルの入力後、動的に決定される期間だけ待機するための手段と、
    受けたシンボルと入力される可能性のあるデータの集合との比較によって、前記データ入力の補完を試みる手段と、
    前記期間の経過前に他のデータ・シンボルが受け取られない場合、以前に将来の比較の目的で受けたすべてのシンボルを廃棄する手段を含み、
    前記動的に決定される期間は以前のデータ・シンボル入力間の間隔に応じて計算される、システム。
  2. 前記動的に決定される期間が、複数の以前のデータ・シンボル入力間の時間間隔の平均を決定することによって算出される、請求項1に記載のシステム。
  3. 前記動的に決定される期間が、複数の連続したデータ・シンボル入力間の時間間隔の平均を決定することによって算出される、請求項2に記載のシステム。
  4. 前記動的に決定される期間が、直近の複数の連続したデータ・シンボル入力間の時間間隔の平均を決定することによって算出される、請求項3に記載のシステム。
  5. 前記動的に決定される期間が、直近の3つの連続したデータ・シンボル入力間の時間間隔の平均を決定することによって算出される、請求項4に記載のシステム。
  6. 前記動的に決定される期間がマージン値をさらに含む、請求項2から5のいずれか一項に記載のシステム。
  7. 前記マージン値が固定値である、請求項6に記載のシステム。
  8. 前記マージン値が変数値である、請求項6に記載のシステム。
  9. 前記マージン値が前記平均値の実倍数である、請求項8に記載のシステム。
  10. 前記動的に決定される期間の値を不揮発性メモリに格納するステップをさらに含む、前記請求項のいずれか一項に記載のシステム。
  11. 一連のデータ・シンボルの入力を可能にするユーザ・インターフェースに関連してデータ入力を形成するためのコンピュータ・プログラムであって、
    データ・シンボルが入力された後、動的に決定される期間だけ待機するステップと、
    受けたシンボルと入力される可能性のあるデータの集合との比較によって、前記データ入力の補完を試みるステップと、
    前記期間の経過前に他のデータ・シンボルが受け取られない場合、以前に将来の比較の目的で受けたすべてのシンボルを廃棄するステップをコンピュータに実行させ、
    前記動的に決定される期間は以前のデータ・シンボル入力間の間隔に応じて計算される、コンピュータ・プログラム。
  12. 一連のデータ・シンボルの入力を可能にするユーザ・インターフェースに関連してデータ入力を形成するためのコンピュータ・プログラムであって、
    コンピュータが、データ・シンボルが入力された後、動的に決定される期間だけ待機するステップと、
    コンピュータが、受けたシンボルと入力される可能性のあるデータの集合との比較によって、前記データ入力の補完を試みるステップと、
    コンピュータが、前記期間の経過前に他のデータ・シンボルが受け取られない場合、以前に将来の比較の目的で受けたすべてのシンボルを廃棄するステップを含み、
    前記動的に決定される期間は以前のデータ・シンボル入力間の間隔に応じて計算される、方法。
JP2008544898A 2005-12-13 2006-06-16 データ入力を形成するためのシステム、コンピュータ・プログラムおよび方法 Active JP5147712B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP05112043.4 2005-12-13
EP05112043 2005-12-13
PCT/EP2006/063289 WO2007068505A1 (en) 2005-12-13 2006-06-16 Autocompletion method and system

Publications (2)

Publication Number Publication Date
JP2009524853A JP2009524853A (ja) 2009-07-02
JP5147712B2 true JP5147712B2 (ja) 2013-02-20

Family

ID=37810101

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008544898A Active JP5147712B2 (ja) 2005-12-13 2006-06-16 データ入力を形成するためのシステム、コンピュータ・プログラムおよび方法

Country Status (7)

Country Link
US (1) US10152139B2 (ja)
EP (1) EP1960861A1 (ja)
JP (1) JP5147712B2 (ja)
KR (1) KR101027167B1 (ja)
CN (1) CN101317147B (ja)
CA (1) CA2633880A1 (ja)
WO (1) WO2007068505A1 (ja)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9177292B2 (en) * 2006-07-19 2015-11-03 International Business Machines Corporation Cautious auto-entry for messaging systems
US8232973B2 (en) 2008-01-09 2012-07-31 Apple Inc. Method, device, and graphical user interface providing word recommendations for text input
US9740986B2 (en) * 2008-09-30 2017-08-22 Excalibur Ip, Llc System and method for deducing user interaction patterns based on limited activities
US8326358B2 (en) 2009-01-30 2012-12-04 Research In Motion Limited System and method for access control in a portable electronic device
US9477763B2 (en) * 2009-03-02 2016-10-25 Excalibur IP, LC Personalized search results utilizing previously navigated web sites
CN101930295B (zh) 2009-06-24 2012-11-07 宏达国际电子股份有限公司 动态调整长按延迟时间的方法及其电子装置
KR101122366B1 (ko) * 2010-09-20 2012-03-23 엔에이치엔(주) 검색어 리스트 제공 시스템 및 방법
US20120167009A1 (en) * 2010-12-22 2012-06-28 Apple Inc. Combining timing and geometry information for typing correction
US8490008B2 (en) 2011-11-10 2013-07-16 Research In Motion Limited Touchscreen keyboard predictive display and generation of a set of characters
US9652448B2 (en) 2011-11-10 2017-05-16 Blackberry Limited Methods and systems for removing or replacing on-keyboard prediction candidates
US9715489B2 (en) 2011-11-10 2017-07-25 Blackberry Limited Displaying a prediction candidate after a typing mistake
US9122672B2 (en) 2011-11-10 2015-09-01 Blackberry Limited In-letter word prediction for virtual keyboard
US9310889B2 (en) 2011-11-10 2016-04-12 Blackberry Limited Touchscreen keyboard predictive display and generation of a set of characters
US9557913B2 (en) 2012-01-19 2017-01-31 Blackberry Limited Virtual keyboard display having a ticker proximate to the virtual keyboard
EP2618248B1 (en) 2012-01-19 2017-08-16 BlackBerry Limited Virtual keyboard providing an indication of received input
US20130222255A1 (en) 2012-02-24 2013-08-29 Research In Motion Limited Portable electronic device including touch-sensitive display and method of controlling same
DE112012000189B4 (de) 2012-02-24 2023-06-15 Blackberry Limited Berührungsbildschirm-Tastatur zum Vorsehen von Wortvorhersagen in Partitionen der Berührungsbildschirm-Tastatur in naher Assoziation mit Kandidaten-Buchstaben
US9201510B2 (en) 2012-04-16 2015-12-01 Blackberry Limited Method and device having touchscreen keyboard with visual cues
US9354805B2 (en) 2012-04-30 2016-05-31 Blackberry Limited Method and apparatus for text selection
US9292192B2 (en) 2012-04-30 2016-03-22 Blackberry Limited Method and apparatus for text selection
US10025487B2 (en) 2012-04-30 2018-07-17 Blackberry Limited Method and apparatus for text selection
US9207860B2 (en) 2012-05-25 2015-12-08 Blackberry Limited Method and apparatus for detecting a gesture
US9116552B2 (en) 2012-06-27 2015-08-25 Blackberry Limited Touchscreen keyboard providing selection of word predictions in partitions of the touchscreen keyboard
EP2703955B1 (en) * 2012-08-31 2014-11-26 BlackBerry Limited Scoring predictions based on prediction length and typing speed
US9524290B2 (en) 2012-08-31 2016-12-20 Blackberry Limited Scoring predictions based on prediction length and typing speed
US9063653B2 (en) 2012-08-31 2015-06-23 Blackberry Limited Ranking predictions based on typing speed and typing confidence
US9122376B1 (en) * 2013-04-18 2015-09-01 Google Inc. System for improving autocompletion of text input
US20150006632A1 (en) * 2013-06-27 2015-01-01 Google Inc. Determining additional information for an intended action of a user
US9442700B2 (en) * 2013-09-30 2016-09-13 MuleSoft, Inc. API notebook tool
KR101593145B1 (ko) * 2014-09-25 2016-02-11 주식회사 포워드벤처스 연관 질의어 제공 시스템 및 방법
US10042514B2 (en) * 2014-10-30 2018-08-07 Microsoft Technology Licensing, Llc Typeahead features
US10402734B2 (en) * 2015-08-26 2019-09-03 Google Llc Temporal based word segmentation
US11334800B2 (en) * 2016-05-12 2022-05-17 International Business Machines Corporation Altering input search terms
KR20230010431A (ko) 2021-07-12 2023-01-19 홍소현 동애등에 산란장치
KR102661746B1 (ko) 2021-08-25 2024-04-30 홍소현 동애등에 산란유도 구조물

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5520539A (en) 1978-07-28 1980-02-14 Casio Comput Co Ltd Automatic arithmetic process system
US4330845A (en) 1979-12-31 1982-05-18 International Business Machines Corporation Guess-ahead feature for a keyboard-display terminal data input system
US4805222A (en) * 1985-12-23 1989-02-14 International Bioaccess Systems Corporation Method and apparatus for verifying an individual's identity
JPH05119892A (ja) 1991-10-09 1993-05-18 Nec Corp データ入力方式
US5557686A (en) * 1993-01-13 1996-09-17 University Of Alabama Method and apparatus for verification of a computer user's identification, based on keystroke characteristics
US5761689A (en) * 1994-09-01 1998-06-02 Microsoft Corporation Autocorrecting text typed into a word processing document
JPH08147282A (ja) 1994-11-16 1996-06-07 Omron Corp 仮名漢字変換装置および仮名漢字変換方法
JPH09325959A (ja) 1996-06-06 1997-12-16 Nec Home Electron Ltd かな漢字変換方法及びシステム
US5953541A (en) * 1997-01-24 1999-09-14 Tegic Communications, Inc. Disambiguating system for disambiguating ambiguous input sequences by displaying objects associated with the generated input sequences in the order of decreasing frequency of use
KR19990009965A (ko) * 1997-07-14 1999-02-05 정명식 타자 패턴을 이용한 사용자 인증 방법
JPH11212705A (ja) 1998-01-26 1999-08-06 Toshiba Corp 文字列予測装置及び文字列予測方法
US6426843B1 (en) * 1999-04-27 2002-07-30 International Business Machines Corporation Settle time estimator feedback for rotational position reordering in data storage devices
JP2002007390A (ja) 2000-06-23 2002-01-11 Toshiba Corp 文字列予測制御方法、および文字列入力装置
US6744422B1 (en) 2001-07-13 2004-06-01 Openwave Systems Inc. Variable time-out for multi-tap key entry
US7185271B2 (en) * 2002-08-20 2007-02-27 Hewlett-Packard Development Company, L.P. Methods and systems for implementing auto-complete in a web page
US7206938B2 (en) * 2002-09-24 2007-04-17 Imagic Software, Inc. Key sequence rhythm recognition system and method
US20040163032A1 (en) 2002-12-17 2004-08-19 Jin Guo Ambiguity resolution for predictive text entry
JP2004213269A (ja) * 2002-12-27 2004-07-29 Toshiba Corp 文字入力装置
US7509686B2 (en) * 2003-02-03 2009-03-24 Checco John C Method for providing computer-based authentication utilizing biometrics
US20040153963A1 (en) * 2003-02-05 2004-08-05 Simpson Todd G. Information entry mechanism for small keypads
WO2004074952A2 (en) * 2003-02-18 2004-09-02 Tokyo Electron Limited Method for automatic configuration of a processing system
WO2005043306A2 (en) * 2003-10-20 2005-05-12 Zoll Medical Corporation Time coordination and synchronization of event times in electronic medical records
ATE418756T1 (de) * 2004-06-02 2009-01-15 Research In Motion Ltd Tragbares elektronisches gerät mit eliminierung der vieldeutigkeit bei texteingabe
US7382359B2 (en) * 2004-06-07 2008-06-03 Research In Motion Limited Smart multi-tap text input
JP5119892B2 (ja) 2007-12-05 2013-01-16 株式会社豊田中央研究所 電子制御システム

Also Published As

Publication number Publication date
CN101317147A (zh) 2008-12-03
CA2633880A1 (en) 2007-06-21
WO2007068505A1 (en) 2007-06-21
KR101027167B1 (ko) 2011-04-05
EP1960861A1 (en) 2008-08-27
US20120159317A1 (en) 2012-06-21
JP2009524853A (ja) 2009-07-02
KR20080075878A (ko) 2008-08-19
CN101317147B (zh) 2011-09-07
US10152139B2 (en) 2018-12-11

Similar Documents

Publication Publication Date Title
JP5147712B2 (ja) データ入力を形成するためのシステム、コンピュータ・プログラムおよび方法
US11614862B2 (en) System and method for inputting text into electronic devices
US10402493B2 (en) System and method for inputting text into electronic devices
US10073829B2 (en) System and method for inputting text into electronic devices
US6573844B1 (en) Predictive keyboard
US6654733B1 (en) Fuzzy keyboard
CN101393506B (zh) 用于具有多语言环境的设备的输入方法及相关设备和系统
US20080195571A1 (en) Predicting textual candidates
US20040153975A1 (en) Text entry mechanism for small keypads
MXPA06003062A (es) Prediccion contextual de palabras de usuario y acciones de usuario.
CN1954286A (zh) 用于小键盘的信息输入机制
JP2009532773A (ja) キーパッドの複数文字キーを使用した英数字データ入力装置および方法
CN107797676B (zh) 一种单字输入方法及装置
CN111128254B (zh) 音频播放方法、电子设备及存储介质
WO2001095051A2 (en) Method and apparatus for displaying information
US7130470B1 (en) System and method of context-based sorting of character strings for use in data base applications
JP4026526B2 (ja) 文字入力処理プログラムおよび文字入力装置
CN110162617B (zh) 提取摘要信息的方法、装置、语言处理引擎和介质
CN107608611A (zh) 一种移动终端、存储装置及快速查找联系人的方法
CN115494964A (zh) 字符输入方法、装置、存储介质及电子设备
Bhatti et al. Mistype resistant keyboard (NexKey)
Proschowsky Adaptive Text Entry for Mobile Devices

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110809

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111011

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120321

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121106

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121127

R150 Certificate of patent or registration of utility model

Ref document number: 5147712

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151207

Year of fee payment: 3