(57)【特許請求の範囲】
【請求項１】
入力エンジンが実行する方法であって、
編集装置がユーザ入力に応答して表語文字文章の複数の文字から選択した文字を受信するステップであって、
前記複数の文字が出力装置上に表示されているステップと、
文字の数に対応した文脈ウインドサイズを有する文脈ウインドを定義するステップと、
選択された文字が前記文脈ウインド内にあり、且つ前記選択された文字に近接するとともに前記文脈ウインド内にある文字が第１の近接文字であるように前記文脈ウインドを、選択された文字に対して位置付けるステップと、
合成入力を入力装置から受信するステップと、
前記合成入力、前記選択された文字、及び前記第１の近接文字に基づき、データ記憶装置にアクセスすることによって、候補文字を識別するステップと、
前記候補文字の数に基づいて前記文脈ウインドのサイズを調節することによって、調節された文脈ウインドを生成するステップであって、
前記調節されたウインドサイズは、前記文脈ウインド内の増加または減少した総文字数に対応し、
前記選択された文字に近接するとともに前記調節された文脈ウインド内にある文字が第２の近接文字であるステップと、
前記合成入力、前記選択された文字、及び第２の近接文字に基づき、データ記憶装置にアクセスすることによって、１つまたは２つ以上の新しい候補文字を識別するステップと、
前記新しい候補文字を前記出力装置上に表示するステップと、
を含み、
前記前記候補文字の数に基づいた前記文脈ウインドのサイズの調節は、
前記候補文字が第１の閾値数を超えた場合、前記文脈ウインドサイズを増加するステップと、
前記候補文字が第２の閾値数を超えない場合、前記文脈ウインドサイズを減少するステップを含み、前記第２の閾値数が、前記第１の閾値数より小さい方法。
【請求項２】
センテンス・ブレイクが文脈ウインド内にあるか否かを決定するステップと、
センテンス・ブレイクが文脈ウインド内にあることが決定されたならば、センテンス・ブレイクと一致するよう文脈ウインドのエッジを調節するステップと、を含む請求項１に記載の方法。
【請求項３】
前記前記候補文字の数に基づいた前記文脈ウインドのサイズの調節は、前記候補文字が第１の閾値数を超えた場合、前記文脈ウインドサイズを増加するステップを含む請求項１に記載の方法。
【請求項４】
前記前記候補文字の数に基づいた前記文脈ウインドのサイズの調節は、前記候補文字が第２の閾値数を超えない場合、前記文脈ウインドサイズを減少するステップを含む請求項１に記載の方法。
【請求項５】
選択された文字上に文脈ウインドを中心付けるステップを含む請求項１に記載の方法。
【請求項６】
合成入力及び入力セッションに基づいて１つまたは２つ以上の候補文字を識別するステップと、
合成入力、前記選択された文字、及び近接文字に基づく１つまたは２つ以上の候補文字を、合成入力及び入力セッションに基づく１つまたは２つ以上の候補文字と比較するステップと、
を含む請求項１に記載の方法。
【請求項７】
前記比較に基づいて共通文字を決定するステップと、
候補文字の選択として共通文字を提起するステップと、
を含む請求項６に記載の方法。
【請求項８】
前記比較に基づいて候補文字をランキング付けするステップと、
ランクに従って候補文字を提起するステップと、
を含む請求項６に記載の方法。
【請求項９】
文字は漢字を含み、合成入力は、１つまたは２つ以上のピンイン・シラブルを含む請求項１に記載の方法。
【請求項１０】
１つまたは２つ以上の文字が、複数の合成入力及び文脈情報と関連されるようにして、合成入力、文脈情報、及び文字の関連を記憶するデータ記憶装置と、
コンピュータ読取り可能な媒体に記憶され、処理装置によって実行可能な命令を含む入力エンジンと、
を備えたシステムであって、
前記命令は、かかる実行時に、処理装置が、
編集装置がユーザ入力に応答して表語文字文章の複数の文字から選択した文字を受信し、
文字の数に対応した文脈ウインドサイズを有する文脈ウインドを定義し、
選択された文字が前記文脈ウインド内にあり、且つ前記選択された文字に近接するとともに前記文脈ウインド内にある文字が第１の近接文字であるように前記文脈ウインドを、選択された文字に対して位置付け、
合成入力を入力装置から受信し、
前記合成入力、前記選択された文字、及び前記第１の近接文字に基づき、前記データ記憶装置にアクセスすることによって、候補文字を識別し、
前記候補文字の数に基づいて前記文脈ウインドのサイズを調節することによって、前記調節されたウインドサイズが、前記文脈ウインド内の増加または減少した総文字数に対応し、前記選択された文字に近接するとともに前記調節された文脈ウインド内にある文字が第２の近接文字である、調節された文脈ウインドを生成し、
前記合成入力、前記選択された文字、及び第２の近接文字に基づき、前記データ記憶装置にアクセスすることによって、１つまたは２つ以上の新しい候補文字を識別し、
前記新しい候補文字を出力装置上に表示する、
ようにさせ、
入力エンジンは、処理装置によって実行可能な命令を含み、該命令は、かかる実行時に、処理装置が、
前記候補文字が第１の閾値数を超えた場合、前記文脈ウインドサイズを増加し、
前記候補文字が第２の閾値数を超えない場合、前記文脈ウインドサイズを減少する、
ようにさせ、ここに、第１の閾値数は第２の閾値数よりも大きいシステム。
【請求項１１】
入力エンジンは、処理装置によって実行可能な命令を含み、該命令は、かかる実行時に処理装置が、
文脈ウインド内にセンテンス・ブレイクがあるか否かを決定し、そして
センテンス・ブレイクが文脈ウインド内にあるように決定されたならば、センテンス・ブレイクと一致するよう文脈ウインドのエッジを調節する、
ようにさせる請求項１０に記載のシステム。
【請求項１２】
入力エンジンは、選択された文字上に文脈ウインドを中心付ける請求項１０に記載のシステム。
【請求項１３】
入力エンジンは、処理装置によって実行可能な命令を含み、該命令は、かかる実行時に、処理装置が、
合成入力及び入力セッションに基づいて１つまたは２つ以上の候補文字を識別し、そして
合成入力及び隣接文字に基づく１つまたは２つ以上の候補文字を、合成入力、前記選択された文字、及び入力セッションに基づく１つまたは２つ以上の候補文字と比較する、
ようにする請求項１０に記載のシステム。
【請求項１４】
入力エンジンは、処理装置によって実行可能な命令を含み、該命令は、かかる実行時に、処理装置が、
比較に基づいて共通文字を決定し、そして
候補文字の選択として該共通文字を提起する、
ようにする請求項１３に記載のシステム。
【請求項１５】
入力エンジンは、処理装置によって実行可能な命令を含み、該命令は、かかる実行時に、処理装置が、
比較に基づいて候補文字をランク付けし、そして
該ランク付けに従って候補文字を提起する、
ようにする請求項１３に記載のシステム。
【請求項１６】
文字は漢字を含み、そして合成入力は１つまたは２つ以上のピンイン・シラブルを含む請求項１０に記載のシステム。
【請求項１７】
編集装置がユーザ入力に応答して表語文字文章の複数の文字から選択した文字を受信するための手段と、
文字の数に対応した文脈ウインドサイズを有する文脈ウインドを定義するための手段と、
選択された文字が前記文脈ウインド内にあり、且つ前記選択された文字に近接するとともに前記文脈ウインド内にある文字が第１の近接文字であるように前記文脈ウインドを、選択された文字に対して位置付けるための手段と、
合成入力を入力装置から受信するための手段と、
前記合成入力、前記選択された文字、及び前記第１の近接文字に基づき、データ記憶装置にアクセスすることによって、候補文字を識別するための手段と、
前記候補文字の数に基づいて前記文脈ウインドのサイズを調節することによって、調節された文脈ウインドを生成する手段であって、
前記調節されたウインドサイズは、前記文脈ウインド内の増加または減少した総文字数に対応し、
前記選択された文字に近接するとともに前記調節された文脈ウインド内にある文字が第２の近接文字である手段と、
前記合成入力、前記選択された文字、及び第２の近接文字に基づき、データ記憶装置にアクセスすることによって、１つまたは２つ以上の新しい候補文字を識別するための手段と、
前記新しい候補文字を出力装置上に表示するための手段と、
を備え、
前記前記候補文字の数に基づいた前記文脈ウインドのサイズの調節は、
前記候補文字が第１の閾値数を超えた場合、前記文脈ウインドサイズを増加する手段と、
前記候補文字が第２の閾値数を超えない場合、前記文脈ウインドサイズを減少する手段と、
を備え、前記第２の閾値数が、前記第１の閾値数より小さいシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力方法に関する。
【背景技術】
【０００２】
１つまたは２つの文字、例えば象形文字、がおおよそ１つの語または意味に対応する語標の手書き文字を用いる言語は、移動装置のキーパッド上のコンピュータ・キーボードのような標準の入力装置上のキーよりも多い文字を有する。例えば、中国語（Chinese language）は、基本のピンイン文字と５つのトーンとによって限定される数千もの文字を含む。これら１対多数の関連付けのマッピングは、入力装置上に見られない文字及びシンボルのエントリを容易にする入力方法によって履行され得る。従って、西洋式のキーボードが、中国語、日本語、または韓国語の文字を入力するために用いられ得る。
【０００３】
通常の入力方法は、合成入力に基づいて入力予測を行うためにセッションベースの文脈を用いることができる。
【発明の概要】
【課題を解決するための手段】
【０００４】
１つの履行においては、入力方法は、語標の手書き文字（logographic script）の複数の文字から文字を選択し、そして選択された文字に隣接する近接文字を識別する。１つまたは２つ以上の候補文字が、次に、合成入力及び近接文字に基づいて選択される。
【０００５】
もう１つの履行においては、システムは、データ記憶装置と入力エンジンとを含む。データ記憶装置は、合成入力と文字の関連を記憶することができ、それにおいて、１つまたは２つ以上の文字が、複数の合成入力と関連される。入力エンジンは、処理装置に、ユーザ入力に応答して複数の文字から文字を選択させ、選択された文字に隣接する隣接文字を識別させ、そして合成入力及び隣接文字に基づいて１つまたは２つ以上の候補文字を識別させる。
【０００６】
もう１つの履行においては、入力方法は、１つまたは２つ以上の文字に隣接してカーソルを位置付ける。カーソルに隣接する文字が識別され、そして合成入力が受信される。次に、合成入力及び隣接文字に基づいて１つまたは２つ以上の候補文字が選択される。
を含む方法。
【０００７】
ここに開示されたシステム及び方法は、例えば、カーソル位置に基づいて入力文脈の識別を容易にすることができる。１つの例示的な履行においては、入力文脈は、選択のための一層少ない及び／または一層多い候補文字の正確な識別に帰結し得る。もう１つの例示的な履行においては、カーソル位置に基づく入力文脈は、合成入力とは無関係の初期の文脈を提供し、受信された合成入力に基づいて文脈を変更する。しかしながら、このような例示的な利点は実現される必要が無く、もしくは別に実現し得る。
【図面の簡単な説明】
【０００８】
【図１】ここに説明されるシステム及び方法を履行するために用いられ得る例示的なシステムのブロック図である。
【図２】例示的な編集システムのブロック図である。
【図３】語標の手書き文字を編集する例を示す概略図である。
【図４】語標の手書き文字を編集する例を示す概略図である。
【図５】語標の手書き文字を編集する例を示す概略図である。
【図６】語標の手書き文字を編集する例を示す概略図である。
【図７】語標の編集環境におけるディスプレイの例を示す図である。
【図８】漢字のための編集環境の概略図である。
【図９】語標の手書き文字のための候補文字を識別するための例示的なプロセスのフロー図である。
【図１０】語標の手書き文字における選択された文字のための隣接文字を識別するための例示的なプロセスのフロー図である。
【図１１】文脈ウインドのエッジを調節するための例示的なプロセスのフロー図である。
【図１２】文脈ベースの入力エンジンを有する入力セッションを用いるための例示的なプロセスのフロー図である。
【図１３】候補文字を提起するための順番を決定するための例示的なプロセスのフロー図である。
【発明を実施するための形態】
【０００９】
図１は、ここに記載されたシステム及び方法を履行するために用いられ得る例示的なシステム１００のブロック図である。システム１００は、例えば、パーソナル・コンピュータ装置のようなコンピュータ装置、または移動電話、移動通信装置、パーソナル・ディジタル・アシスタント（ＰＤＡ）などのような他の電子装置で履行され得る。
【００１０】
例示的なシステム１００は、処理装置１０２、第１のデータ記憶装置１０４、第２のデータ記憶装置１０６、入力装置１０８、出力装置１１０、及びネットワーク・インターフェース１１２を含む。例えばデータ・バス及びマザーボードを含むバス・システム１１４は、構成要素１０２、１０４、１０６、１０８、１１０及び１１２間のデータ通信を創設して制御するために用いられ得る。しかしながら、例示的なシステムの他のアーキテクチャも用いられ得る。
【００１１】
処理装置１０２は、例えば、１つまたは２つ以上のマイクロプロセッサを含み得る。第１のデータ記憶装置１０４は、例えば、ダイナミック・ランダム・アクセス・メモリのようなランダム・アクセス・メモリ記憶装置、もしくは他の型のコンピュータ読取り可能媒体のメモリ装置を含み得る。第２のデータ記憶装置１０６は、例えば、１つまたは２つ以上のハード・ドライブ、フラッシュ・メモリ、及び／またはリード・オンリ・メモリ、もしくは他の型のコンピュータ読取り可能媒体のメモリ装置を含み得る。
【００１２】
例示的な入力装置１０８は、キーボード、マウス、スタイラスなどを含み得、例示的な出力装置１１０は、ディスプレイ装置、オーディオ装置、等を含み得る。ネットワーク・インターフェース１１２は、例えば、ネットワーク１１６へ及びネットワーク１１６からデータを通信するよう動作可能な結線されたもしくは無線のネットワーク装置を含み得る。ネットワーク１１６は、１つまたは２つ以上のローカル・エリア・ネットワーク（ＬＡＮｓ）及び／またはインターネットのようなワイド・エリア・ネットワーク（ＷＡＮ）を含み得る。
【００１３】
１つの履行において、システム１００は、例えば、漢字（Hanzi characters）のような入力文字またはシンボルのための合成入力を受信し得る。例えば、ユーザは、漢字の識別のための合成入力を入力するために入力装置１０８（例えば、西洋式キーボードのようなキーボード、手書き認識エンジンを有するスタイラス、等）の１つまたは２つ以上を用いることができる。幾つかの例においては、漢字は１つ以上の合成入力から構成され得る。種々の入力方法エンジン（ＩＭＥｓ）が、合成入力を漢字に変換するために利用可能である。ＩＭＥｓの各々は、例えば、ＩＭＥの履行に依存して、同じ漢字を表わす異なった合成入力を有し得る。例えば、同じ漢字は、ピンイン（pinyin）ＩＭＥにおける異なった合成入力（composition inputs）と関連され得る。
【００１４】
１つの履行においては、システム１００は、１つまたは２つ以上のピンイン合成入力を受信し得、該合成入力を漢字に変換し得る。ピンインＩＭＥは、例えば、漢字を表わすために、キーストロークから受信された文字またはピンイン・シラブルの合成を用いることができる。各ピンイン・シラブルは、例えば、西洋式キーボードにおけるキーに対応し得る。ピンインＩＭＥを用いて、ユーザは、漢字の音声を表わす１つまたは２つ以上のピンイン・シラブルを含む合成入力を用いることによって、漢字を入力することができる。
【００１５】
第１のデータ記憶装置１０４及び／または第２のデータ記憶装置１０６は、合成入力及び文字の関連を記憶することができる。ユーザ入力に基づいて、処理装置１０２は、入力によって表わされた１つまたは２つ以上の候補文字を識別するために、データ記憶装置１０４及び／またはデータ記憶装置１０６における情報を用いることができる。１つの履行においては、もし１つ以上の候補文字が識別されるならば、該候補文字が出力装置１１０上に表示される。入力装置１０８を用いて、ユーザは、ユーザが入力することを望む漢字を、候補文字から選択することができる。
【００１６】
１つの履行においては、処理装置１０２は、テキストにおける近接文字及び１つまたは２つ以上の合成入力に基づいて、候補文字を識別することができる。１つの履行においては、近接文字は、隣接文字であるが、他の近接文字も用いることができる。隣接文字は、例えば、候補文字を識別するために用いられ得る文脈情報を提供することができる。例えば、ユーザは、漢字のセンテンスまたはパラグラフにおける文字のような語標の手書き文字（logographic script）の複数の文字から文字を選択することができる。選択に基づいて、処理装置１０２は、選択された文字に隣接する１つまたは２つ以上の文字を識別することができて、ユーザからの合成入力を受信することができる。合成入力及び隣接文字に基づいて、処理装置１０２は、ユーザによる選択のための１つまたは２つ以上の候補文字を識別することができる。
【００１７】
幾つかの履行においては、システム１００へのアクセスを有する遠隔計算システム１１８も語標の手書き文字を編集するために用いられ得る。例えば、システム１００は、ネットワーク１１６を介して語標の手書き文字の編集能力を提供するサーバであって良い。一例においては、ユーザは、遠隔計算システム例えばクライアント・コンピュータを用いて、データ記憶装置１０４及び／またはデータ記憶装置１０６に記憶された語標の手書き文字を編集することができる。システム１００は、例えば、文字を選択し、ネットワーク・インターフェース１１２を介してユーザからの合成入力を受信することができる。処理装置１０２は、例えば、選択された文字に隣接する１つまたは２つ以上の文字２を識別して、受信された合成入力及び隣接文字に基づいて１つまたは２つ以上の候補文字を識別することができる。システム１００は、遠隔計算システムに戻して候補文字を含むデータ通信を送信することができる。
【００１８】
図２は、システム１００において履行され得る編集システム２００のブロック図である。編集システム２００は、編集装置２０２、入力エンジン２０４、文字データ記憶装置２０６、及び合成入力データ記憶装置２０８を含む。１つの履行においては、データ記憶装置２０６及び２０８は、１つまたは２つ以上のデータベースで履行され得るか、もしくは単一のデータ記憶装置としてのデータベースにおけるそれぞれのテーブルで履行され得る。他の履行も用いられ得る。
【００１９】
編集装置２０２及び入力エンジン２０４は、例えば、処理装置１０２によって実行可能な命令によって限定され得る。例えば、システム１００は、編集装置２０２及び入力エンジン２０４に含まれる命令を実行することによって編集システム２００を履行するために用いられ得る。
【００２０】
１つの履行においては、ユーザは、語標の手書き文字を収容するテキストを編集するために編集装置２０２を編集することができる。１つの履行においては、編集装置２０２は、ユーザ入力を受信して編集されるべきテキストを表示するワード処理ソフトウェアであって良く、入力エンジン２０４は、文脈ベースの入力エンジンであって良い。編集装置２０２及び入力エンジン２０４は、データ記憶装置１０４及び／またはデータ記憶装置１０６のようなコンピュータ読取り可能媒体に記憶され得る。
【００２１】
文字データ記憶装置２０６及び合成入力データ記憶装置２０８は、また、例えば、データ記憶装置１０４及び／またはデータ記憶装置１０６に記憶されても良い。文字データ記憶装置２０６は、編集装置２０２において用いられる語標の手書き文字の文字を含む。幾つかの履行においては、文字データ記憶装置２０６は、また、文字間の関係に関する情報をも含む。例えば、文字データ記憶装置２０６は、文字に隣接する複数の文字に依存して該文字に割当てられたスコアまたは確率の値を含み得る。他の文脈的な関係データも用いられ得る。
【００２２】
合成入力データ記憶装置２０８は、文字データ記憶装置２０６に記憶された文字及び合成入力の関連を含む。幾つかの履行においては、合成入力データ記憶装置２０８は、文字データ記憶装置２０６における文字の各々を入力エンジン２０４によって用いられる合成入力にリンクさせ得る。例えば、入力エンジン２０４は、文字データ記憶装置２０６及び合成入力データ記憶装置２０８における情報を用いて、文字データ記憶装置２０６における１つまたは２つ以上の文字を、合成入力データ記憶装置２０８における１つまたは２つ以上の合成入力と関連させる及び／または識別する。他の関連も用いられ得る。
【００２３】
履行においては、入力エンジン２０４は、合成入力に基づく候補文字、及び選択された文字に隣接またはカーソル位置に隣接する文字を識別することができる。編集装置２０２は、例えば、変更されるべきまたは修正されるべき文字の選択のような、語標の手書き文字における文字の選択を受信することができる。１つの履行においては、ユーザは、編集装置２０２において複数の漢字の中の１つの漢字を変更するよう選択することができ、そして編集装置２０２に１つまたは２つ以上の合成入力を提供することができる。選択された文字のような選択情報は、入力エンジン２０４に提供され得る。
【００２４】
編集装置２０２から受信された選択情報に基づいて、入力エンジン２０４は、例えば、編集環境２０２における選択された文字に隣接する文字を識別することができる。隣接文字及び１つまたは２つ以上の合成入力に基づいて、入力エンジン２０４は、データ記憶装置２０６及び２０８にアクセスして、選択される文字の場所に挿入されるべき候補文字を識別するか、または選択された文字を交換することができる。
【００２５】
幾つかの履行においては、入力エンジン２０４は、編集されたテキストにおける文脈ウインドを限定することができる。文脈ウインドは、例えば、隣接文字を識別するために用いられ得る。例えば、文脈ウインドは、選択された文字及び選択された文字に隣接する１つまたは２つ以上の隣接文字を含むように限定され得る。１つの例においては、入力エンジン２０４は、文脈ウインドを選択された文字及び／またはカーソル位置上に中心付けることができ、そして隣接文字として文脈ウインドにおける他の文字を識別することができる。例えば、入力エンジン２０４は、５つの文字であるよう文脈ウインドのサイズを特定することができ、そして選択された文字の右に２つの文字及び選択された文字の左に２つの文字として隣接文字を識別することができる。他の文脈ウインドのサイズ及び定義も用いられ得る。
【００２６】
入力エンジン２０４は、例えば、文脈ウインドの場所及び／またはサイズを動的に調節することができる。幾つかの履行においては、入力エンジン２０４は、文脈ウインド内のセンテンス・ブレイク（センテンスの区切り）を識別することによって文脈ウインドの場所を動的に調節することができる。例えば、入力エンジン２０４は、現在の文脈ウインド内のセンテンス・ブレイクを識別することができる。文脈ウインドにおけるセンテンス・ブレイクの識別された場所に基づいて、入力エンジン２０４は、センテンス・ブレイクと一致するよう文脈ウインドの一方または双方のエッジを調節することができる。他の調節技術も用いられ得る。
【００２７】
システム２００は、また、例えば、識別された候補文字の数に基づいて文脈ウインドの幅を動的に調節することもできる。例えば、入力エンジン２０４は、候補文字の最小数及び候補文字の最大数を特定することができる。幾つかの履行においては、入力エンジン２０４は、候補文字の最小数よりも大きいそして候補文字の最大数よりも小さいように、識別された候補文字の数を制限するよう構成される。もし、候補文字の数が候補文字の最大数を超えたならば、次に、入力エンジン２０４は、例えば、文脈ウインドの幅を増加し得る。同様に、もし、候補文字の数が候補文字の最小数よりも小さいならば、次に、入力エンジン２０４は、例えば、文脈ウインドの幅を減少し得る。
【００２８】
他の履行においては、候補文字の数は、文脈ウインドとは無関係に選択され得る。例えば、入力エンジン２０４は、候補文字の数が候補文字の最大数よりも大きい場合に追加の隣接文字を識別することができ、そして候補文字の数が候補文字の最小数よりも小さい場合により少ない隣接文字を識別することができる。
【００２９】
幾つかの履行においては、入力エンジン２０４は、例えば、合成入力及び現在の入力セッションに基づいて候補文字を識別することができる。例えば、入力セッションは、受容指令を受ける幾つかのまたはすべての以前に入力された文字を含むことができる。入力エンジン２０４は、現在の入力セッションにおける１つまたは２つ以上の以前に識別された候補文字及び／または現在の合成入力に基づいて候補文字のもう１つのセットを識別することができる。
【００３０】
幾つかの履行においては、入力エンジン２０４は、候補文字の２つのセットを比較することができる。候補文字の第１のセットは、例えば、現在の入力セッション及び合成入力に基づいて生成され得る。第２のセットは、隣接文字及び合成入力に基づいて生成され得る。１つの履行においては、入力エンジン２０４は、候補文字のセットから共通の候補文字を識別する。共通の候補文字は、例えば、ユーザ選択のために編集装置２０２において提起され得る。もう１つの履行においては、入力エンジン２０４は、候補文字をランク付けして、該ランクに基づいてユーザ選択のための候補文字を提起する。例えば、入力エンジン２０４は、候補文字の各々に割当てられた確率または精度の値に基づいて候補文字をランク付けすることができる。他のランク付け及び比較技術も用いられ得る。
【００３１】
もう１つの履行においては、入力エンジン２０４は、履歴情報として各入力セッションの後に文脈情報を保持することができる。このような履歴情報は、データ記憶装置２０６及び２０８の一方または双方に保持され得るか、もしくは別の履歴データ記憶装置に保持され得る。履歴情報は、特定のユーザのタイピング履歴に部分的に基づいて候補文字の選択を容易にするために、入力エンジン２０４によってアクセスされ得る。
【００３２】
図３乃至図６は、語標の手書き文字３００における選択された文字を編集する例を示す概略図である。編集システム２００は、語標の手書き文字３００における１つまたは２つ以上の文字を編集することができる。図３に示されるように、カーソル３０２は、語標の手書き文字３００における文字３０４を選択することができる。示された例において、文脈ウインド３０６は、選択された文字３０４上に中心付けられるよう限定される。幾つかの履行においては、処理装置１０２は、隣接文字として文字３０８及び３１０を識別することができる。隣接文字３０８及び３１０並びに合成入力に基づいて、処理装置１０２及び／または入力エンジン２０４は、選択された文字３０４のための候補文字を識別することができる。
【００３３】
図４に示されるように、調節された文脈ウインド４０２は、隣接文字を識別するよう用いられ得る。この例において、文脈ウインド４０２は、文脈ウインド３０６よりも大きい。幾つかの履行において、処理装置１０２及び／または入力エンジン２０４は、文脈ウインド３０６から帰結する候補文字の数が候補文字の最大数よりも大きいか否かを決定することができる。文脈ウインド３０６から帰結する候補文字の数が候補文字の最大数よりも大きいならば、処理装置１０２及び／または入力エンジン２０４は、文脈ウインド４０２に帰結する文脈ウインド３０６のサイズを動的に調節することができる。文脈ウインド４０２に基づいて、処理装置１０２及び／または入力エンジン２０４は、例えば、追加の隣接文字４０４及び４０６を識別することができる。隣接文字３０８、３１０、４０４及び４０６を用いて、処理装置１０２及び／または入力エンジン２０４は、候補文字及び／または追加の候補文字の新しいセットを識別することができる。幾つかの履行においては、より大きい文脈ウインドは、候補文字の数を減少することができる。
【００３４】
処理装置１０２及び／または入力エンジン２０４は、１つの履行においては、文脈ウインド４０２内にセンテンス・ブレイクがあるか否かを決定することができる。この例においては、センテンス・ブレイク４０８（例えば、コンマ文字）は、文脈ウインド４０２に含まれる。処理装置１０２及び／または入力エンジン２０４は、次に、センテンス・ブレイク４０８と一致するように文脈ウインド４０２のエッジを調節することができる。一例の調節された文脈ウインド５０２が図５に示されている。文脈ウインド５０２のエッジは、センテンス・ブレイク４０８と一致するように調節される。このように文字４０６は、隣接文字から除去され、そして文字５０４は、隣接文字の１つとして追加される。センテンス・ブレイクの他の型も、文脈ウインド、例えば、ピリオド、コロン、文節（クローズ）、等を調節するよう用いられ得る。
【００３５】
幾つかの履行においては、処理装置１０２及び／または入力エンジン２０４は、さらに、候補文字の結果の数に基づいて文脈ウインドのサイズを調節することができる。例えば、処理装置１０２及び／または入力エンジン２０４は、文脈ウインド５０２から帰結する候補文字の数が候補文字の最小数よりも小さいか否かを決定することができる。文脈ウインド５０２から帰結する候補文字の数が候補文字の最小数よりも小さいならば、処理装置１０２及び／または入力エンジン２０４は、文脈ウインド５０２のサイズを減少することができる。図６に示すように、処理装置１０２及び／または入力エンジン２０４は、４つの文字のサイズを有する文脈ウインド６０２を生成し、それは、文脈ウインド３０６（３つの文字）のサイズと文脈ウインド５０２（５つの文字）のサイズとの間にある。
【００３６】
幾つかの履行においては、語標の編集システム２００は、また、編集装置２０２におけるカーソルの位置に基づいて候補文字を識別することもできる。図７は、語標の編集環境７００における表示例７０２及び７２２を示す。
【００３７】
第１の例７０２においては、カーソル７０４は、フレーズ（句）７０６の第１及び第２の文字の間に位置付けられ、そして隣接文字７０８が識別される。合成入力７１０、例えば“ｓｈ”、が受信されて入力エンジン２０４に提供される。入力エンジン２０４は、カーソル７０４の場所に挿入されるべき適格な候補文字７１２のリストを識別する。例えば、フレーズ７０６におけるカーソル７０４に隣接している２つの隣接文字７０８が、カーソル７０４のための隣接文字として識別される。合成入力７１０及び２つの隣接文字７０８に基づいて、候補文字７１２のセットが識別される。ユーザは、カーソル７０４の位置に挿入するために候補文字の１つを選択することができる。
【００３８】
第２の例７２２においては、カーソル７２４は、フレーズ７２６の第１及び第２の文字の間に位置付けられ、そして隣接文字７２８が識別される。合成入力７３０、例えば“ｓｈ”、が受信されて、入力エンジン２０４に与えられる。入力エンジン２０４は、カーソル７２４の場所に挿入されるべき適格な候補文字７３２のリストを識別する。例えば、フレーズ７２６におけるカーソル７２４に隣接している２つの隣接文字が隣接文字として識別される。合成入力７３０及び２つの隣接文字７２８に基づいて、候補文字７３２のセットが識別される。ユーザは、カーソル７２４の位置に挿入するために候補文字の１つを選択することができる。
【００３９】
２つの例が示すように、入力エンジン２０４は、同じ合成入力“ｓｈ”のための異なった候補文字のセット７１２及び７３２を識別する。隣接文字７０８によって与えられる文脈情報は、入力エンジン２０４が第１の候補文字のセット７１２を識別するようにし、そして隣接文字７２８によって与えられる文脈情報は、入力エンジン２０４が第２の候補文字のセット７３２を識別するようにする。
【００４０】
１つの履行においては、隣接文字、例えば文字７０８は、１つまたは２つ以上の候補文字、例えば、文字７１２に並んで表示され得る。この履行は、このように、ユーザに文脈情報のしるしを提供する。
【００４１】
もう１つの履行においては、文字の選択は、入力エンジン２０４が、隣接文字として、選択された文字に隣接する文字を選択するようにする。例えば、第１の例７０２において、文字「中」が選択されたならば、文字「測」及び「文」が隣接文字として識別され得る。入力エンジン２０４は、このようにして、合成入力及び識別された隣接文字に基づいて、選択された文字を修正することができる。
【００４２】
図８は、漢字８０２のための編集環境８００の概略図である。履行において、編集システム２００は、２つのセットの候補文字の結合された結果に基づいて候補文字を識別することができる。候補文字の第１のセットは、現在の入力セッションに基づかれるか、または幾つかの他のセクション・アルゴリズムに基づかれるかすることができ、そして候補文字の第２のセットは、隣接文字及び合成入力に基づかれることができる。
【００４３】
図８に示されるように、漢字８０２は、現在の入力セッション中に入力されていた２つの文字８０４及び８０６を含む。現在の入力セッションは、文字入力を表わすセッション矢印８０７によって定義され、及び／またはカーソルの初期配置から編集される。
【００４４】
漢字８０２は、また、入力セッションにおいて現在編集されつつある文字８０８をも含む。合成入力に基づいて、候補文字は、選択された文字８０８のために識別され得る。文脈ウインド８１０は、文字８０６、選択された文字８０８、及び以前から存在する文字８１２を含み得る。文字８０６及び８１２は、このようにして、選択された文字８０８の隣接文字として識別される。
【００４５】
従って、候補文字８１４の第１のセットは、合成入力及び隣接文字８０６及び８１２に基づいて識別される。同様に、候補文字８１６の第２のセットは、現在の入力セッション中に、合成入力及び文字８０４及び８０６に基づいて識別される。
【００４６】
幾つかの履行において、システム２００は、提起されるべき候補文字のセットを識別するために、セット８１４及び８１６を比較することができる。１つの履行において、処理装置１０２及び／または入力エンジン２０４は、セット８１４及び８１６における共通の文字を識別することができ、候補文字として共通の文字を提起することができる。もう１つの履行において、処理装置１０２及び／または入力エンジン２０４は、セット８１４及び８１６における候補文字をランク付けすることができる。ランク付けに従って、処理装置１０２及び／または入力エンジン２０４は、セット８１４及び８１６における候補文字のサブセットを提起することができるか、または整理統合された候補文字の再順番付けされたリストを提起することができるか、または他の相互関係に従ってセット８１４及び８１６から候補文字を提起することができる。
【００４７】
図９は、語標の手書き文字のための候補文字を識別するための例示的プロセス９００のフロー図である。プロセス９００は、例えば、図１のシステム１００及び／または図２のシステム２００のようなシステムにおいて履行され得る。
【００４８】
段階９０２は、語標の手書き文字の複数の文字から１つの文字を選択する。例えば、入力装置１０８は、編集装置２０２において漢字のテキスト（例えば、図３における語標の手書き文字３００におけるテキスト）における文字を選択するよう用いられ得る。
【００４９】
段階９０４は、選択された文字に近接する、例えば隣接する、文字を識別する。例えば、入力エンジン２０４は、編集装置２０２において漢字のテキストにおける選択された文字に隣接する隣接文字を識別することができる。
【００５０】
段階９０６は、合成入力を受信する。例えば、入力エンジン２０４は、入力装置１０８から合成入力（例えば、ピンイン文字の合成）を受信することができる。
【００５１】
段階９０８は、合成入力及び近接、例えば隣接、文字に基づいて１つまたは２つ以上の候補文字を識別する。例えば、入力エンジン２０４は、文字データ記憶装置２０６及び合成入力データ記憶装置２０８を用いて合成入力及び隣接文字に基づいて１つまたは２つ以上の候補文字を識別することができる。
【００５２】
図１０は、語標の手書き文字における選択された文字のための隣接文字を識別するための例示的プロセス１０００のフロー図である。例えば、プロセス１０００は、図３の選択された文字３０４の隣接文字３０８、３１０を識別するよう用いられ得る。プロセス１０００は、例えば、図１のシステム１００及び／または図２のシステム２００のようなシステムにおいて履行され得る。
【００５３】
段階１００２は、文脈ウインドを限定する。例えば、入力エンジン２０４は、文脈ウインドを限定することができる。
【００５４】
段階１００４は、選択された文字に対して文脈ウインドを位置付ける、もしくは中心付ける。例えば、入力エンジン２０４は、文脈ウインド３０６を、選択された文字３０４に中心付けることができる。
【００５５】
段階１００６は、隣接文字として文脈ウインド内の他の文字を識別する。例えば、入力エンジン２０４は、隣接文字として、文字３０８、３１０を識別することができる。
【００５６】
図１１は、文脈ウインドのエッジを調節するための例示的プロセス１１００のフロー図である。例えば、入力エンジン２０４は、センテンス・ブレイクに文脈ウインドのエッジを整列させるために文脈ウインドの位置を調節することができる。プロセス１１００は、例えば、図１のシステム１００及び／または図２のシステム２００のようなシステムにおいて履行され得る。
【００５７】
段階１１０２は、センテンス・ブレイクが文脈ウインド内にあるか否かを決定する。例えば、入力エンジン２０４は、図４における文脈ウインド４０２においてセンテンス・ブレイク４０８を識別することができる。
【００５８】
段階１１０４は、センテンス・ブレイクが文脈ウインド内にあるよう決定される場合に、センテンス・ブレイクと一致するよう文脈ウインドのエッジを調節する。例えば、入力エンジン２０４は、文脈ウインド５０２に帰結するセンテンス・ブレイク４０８と一致するよう、文脈ウインド４０２のエッジを調節することができる。
【００５９】
図１２は、入力エンジン２０４のような文脈ベースの入力エンジンと共に入力セッションを用いるための例示的プロセス１２００のフロー図である。プロセス１２００は、例えば、図１のシステム１００及び／または図２のシステム２００のようなシステムにおいて履行され得る。
【００６０】
段階１２０２は、合成入力及び入力セッションに基づいて１つまたは２つ以上の候補文字を識別する。例えば、入力エンジン２０４は、合成入力及び入力セッションに基づいて１つまたは２つ以上の候補文字を識別することができる。
【００６１】
段階１２０４は、合成入力及び隣接文字に基づく１つまたは２つ以上の候補文字を、合成入力及び入力セッションに基づく１つまたは２つ以上の候補文字と比較する。例えば、入力エンジン２０４は、入力セッションのために識別される候補文字を、合成入力及び隣接文字のために識別される候補文字と比較することができる。候補文字のセット、例えば、図8の候補文字８１４及び８１６は、ユーザへの提起のために候補文字のサブセットを識別するよう比較され得る。
【００６２】
図１３は、候補文字を提起するための順番を決定するための例示的プロセス１３００のフロー図である。プロセス１３００は、例えば、図１のシステム１００及び／または図２のシステム２００のようなシステムで履行され得る。
【００６３】
段階１３０２は、比較に基づいて候補文字をランク付けする。例えば、入力エンジン２０４は、候補文字の割当てられたスコア（例えば、関連（relevance）スコアまたは精度（accuracy）スコア）を比較することにより候補文字をランク付けすることができる。
【００６４】
段階１３０４は、ランク付けに従って候補文字を提起する。例えば、入力エンジン２０４は、ランクに基づく順番で編集装置２０２に候補文字を提起することができる。
【００６５】
種々の履行が説明されてきたけれども、他の履行も用いられることができる。例えば、入力エンジン２０４は、中国文字、日本文字、韓国文字及び／またはインド文字を入力するよう、西洋式キーボードからの合成入力をマッピングすることが可能であり得る。幾つかの例において、説明された幾つかのまたはすべての履行は、Cangjie入力方法、Jiufang入力方法、または他の入力方法のような他の入力方法に適用可能であり得る。
【００６６】
幾つかの例においては、文脈ウインドは、テキストを垂直に表示するよう編集装置２０２が選択されるとき、垂直に定義され得る。例えば、入力エンジンが語標の手書き文字の方向を検出することができる。検出された方向に基づいて、入力エンジン２０４は、選択された文字に整列された（例えば、中心付けられた）垂直または水平の文脈ウインドを定義することができる。垂直の文脈ウインドが定義される場合には、入力エンジン２０４は、選択された文字の上及び下の文字を隣接文字として識別することができる。
【００６７】
幾つかの履行においては、システム２００は、選択された場所に文字を挿入するために手書きの認識装置からの入力を受信することができる。例えば、受信された入力は、所望の文字が書かれる方法で組立てられたストロークの順番の合成であって良い。幾つかの履行においては、入力エンジン２０４は、選択された場所に隣接する文字を識別することができる。受信されたストロークの順番及び隣接文字に基づいて、入力エンジン２０４は、選択された場所に挿入されるべき候補文字を識別することができる。
【００６８】
この特許文書に記載された装置、方法、フロー図、及び構造ブロック図は、コンピュータ処理システムによって実行可能であるプログラム命令を含むプログラム・コードを含むコンピュータ処理システムで履行され得る。他の履行も用いられ得る。さらに、特定の方法及び／またはステップを支持する対応の動作及び開示された構造手段を支持する対応の機能を記載する、この特許文書に記載されたフロー図及び構造ブロック図は、対応のソフトウェア構造及びアルゴリズム、並びにそれらの等価物を履行するためにも用いられる。
【００６９】
この述べられた記載は発明の最良の態様を述べており、そして発明を説明するためのかつ当業者が本発明を行って使用するのを可能とするための例を提供している。この述べられた記載は、述べられた正確な用語に本発明を制限するものではない。従って、本発明は上に述べた例を参照して詳細に説明されてきたけれども、当業者は、本発明の精神から逸脱することなく、その例に対して変更、修正及び変化を行い得る。
【符号の説明】
【００７０】
１００  ・・・システム
１０２  ・・・処理装置
１０４  ・・・第１のデータ記憶装置
１０６  ・・・第２のデータ記憶装置
１０８  ・・・入力装置
１１０  ・・・出力装置
１１２  ・・・ネットワーク・インターフェース
１１４  ・・・バス・システム
１１６  ・・・ネットワーク
１１８  ・・・遠隔計算システム
２００  ・・・編集システム
２０２  ・・・編集装置
２０４  ・・・入力エンジン
２０６  ・・・文字データ記憶装置
２０８  ・・・合成入力データ記憶装置
【図１】
0005462001.tif 000002
【図２】
0005462001.tif 000003
【図３】
0005462001.tif 000004
【図４】
0005462001.tif 000005
【図５】
0005462001.tif 000006
【図６】
0005462001.tif 000007
【図７】
0005462001.tif 000008
【図８】
0005462001.tif 000009
【図９】
0005462001.tif 000010
【図１０】
0005462001.tif 000011
【図１１】
0005462001.tif 000012
【図１２】
0005462001.tif 000013
【図１３】
0005462001.tif 000014