(57)【要約】  コンテキストアウェア入力エンジンを提供する。このようなエンジンの使用を通じて、コンテキストの分析に基づき種々の入力エレメントが決定され得る。種々のコンテキストは、入力エレメントを決定する際に分析されても良い。コンテキストは、例えば、通信受信者、場所、前のユーザ相互作用、使用中のコンピューティング装置、又はそれらの任意の組合せを有しても良い。このようなコンテキストは、入力エレメントをユーザに有利に提供するために分析されても良い。入力エレメントは、例えば、特定言語の特定レイアウトのオンスクリーンキーボード、特定のボタン、音声認識モジュール、又はテキスト選択オプションを有しても良い。１又は複数の入力エレメントは、分析したコンテキストに基づきユーザに提供されても良い。
2014517397.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ使用可能命令を格納する１又は複数のコンピュータ記憶媒体であって、前記コンピュータ使用可能命令は、１又は複数のコンピューティング装置により用いられると、該１又は複数のコンピューティング装置に方法を実行させ、前記方法は、
ユーザ相互作用を分析し、入力エレメントを第１のコンテキストに関連付けるステップと、
第２のコンテキストを分析し、前記入力エレメントを第１のユーザに提供すると決定するステップと、
前記入力エレメントを前記第１のユーザに提供するステップと、
を有する、１又は複数のコンピュータ記憶媒体。
【請求項２】
前記第１のコンテキストは前記第２のコンテキストと等しい、請求項１に記載の１又は複数のコンピュータ記憶媒体。
【請求項３】
前記第１のコンテキストは通信受信者を有する、請求項１に記載の１又は複数のコンピュータ記憶媒体。
【請求項４】
前記入力エレメントはテキスト選択インタフェースを有する、請求項１に記載の１又は複数のコンピュータ記憶媒体。
【請求項５】
前記テキスト選択インタフェースは、辞書からのテキストを有し、前記辞書は前記第１のコンテキストに関連付けられる、請求項４に記載の１又は複数のコンピュータ記憶媒体。
【請求項６】
ユーザから入力を受信する入力装置と、
方法を実行するよう構成される１又は複数のプロセッサであって、前記方法は、第１のコンテキストを分析して前記第１のコンテキストに関連付けられた第１の辞書を決定し、前記入力装置から得たデータを分析して前記第１の辞書から第１の単語を選択し、前記第１の単語を前記ユーザに選択オプションとして提供する、１又は複数のプロセッサと、
前記第１の選択オプションを前記ユーザに提示するよう構成されるディスプレイ装置と、
を有するコンピューティング装置。
【請求項７】
前記第１の辞書は、１又は複数の単語を１又は複数のコンテキストに関連付けるタグを有する、請求項６に記載のコンピューティング装置。
【請求項８】
前記第１の単語はユーザの生成した単語を有し、前記第１のコンテキストは通信受信者を有する、請求項６に記載のコンピューティング装置。
【請求項９】
前記１又は複数のプロセッサは、第２の辞書を決定し、前記入力を分析して前記第２の辞書から第２の単語を選択し、前記第１の単語に第１のランクを割り当て、前記第２の単語に第２のランクを割り当てるよう構成される、請求項６に記載のコンピューティング装置。
【請求項１０】
１又は複数のコンピューティング装置を有する入力エレメント提示システムであって、前記１又は複数のコンピューティング装置は、１又は複数のプロセッサと１又は複数のコンピュータ記憶媒体とを有し、前記入力エレメント提示システムは、
コンテキスト識別コンポーネントと、
コンテキストを入力エレメントに関連付ける関連付けコンポーネントと、
コンテキストの分析に基づき入力エレメントを識別する入力エレメント識別コンポーネントと、
入力エレメントをユーザに提示する提示コンポーネントと、
を有する入力エレメント提示システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテキストアウェア入力エンジンに関する。
【背景技術】
【０００２】
ユーザ入力を得ることは、コンピュータの重要な特徴である。ユーザ入力は、キーボード、マウス、音声認識又はタッチスクリーンのような数々のインターフェースを通じて得られる。幾つかの装置は、ユーザ入力を得ることができる複数のインターフェースを許容する。例えば、タッチスクリーン装置は、同時又は別個の異なるグラフィカルインターフェースの存在を許容する。このようなグラフィカルタッチスクリーンインタ―フェースは、オンスクリーンキーボード及び文字選択フィールドを有する。したがって、コンピューティング装置は、ユーザから入力を得るために異なる入力インターフェースを提供する能力を有し得る。
【発明の概要】
【課題を解決するための手段】
【０００３】
この要約は、詳細な説明で後述する概念の選択を簡単な形式で紹介する。この要約は、請求の範囲の主要な特徴又は基本的特徴を特定するものではなく、請求の範囲の範囲の決定の助けとして用いられるものでもない。
【０００４】
本発明の実施形態は、コンテキストの分析に基づきユーザに入力エレメントを提供することに関連する。分析されるコンテキストは、１又は複数の所望の通信受信者、言語選択、アプリケーション選択、場所及び装置を含むが、これらに限定されない。コンテキストは、１又は複数の入力エレメントに関連付けられる。コンテキストは、入力を得るためにユーザに選択的に提供すべき１又は複数の入力エレメントを決定するために分析されても良い。次に、１又は複数の入力エレメントは、表示するためにユーザに提供されても良い。ユーザは、入力エレメントにより入力を提供しても良く、又は相互作用して入力エレメントが望ましくないと示しても良い。ユーザ相互作用は、入力エレメントとコンテキストとの間の関連を決定するために分析されても良い。このような関連は、１又は複数の入力エレメントをユーザに提供すると決定するために分析されても良い。
【図面の簡単な説明】
【０００５】
本発明は、添付の図面を参照して以下に詳細に説明される。
【図１】本発明の実施形態の実施のための使用に適する例示的なコンピューティング環境のブロック図である。
【図２】ユーザにコンテキストアウェア入力エレメントを提供する方法を示すフロー図である。
【図３】本発明の実施形態と共に用いるのに適するコンテキストを示す図である。
【図４】ユーザにコンテキストアウェア入力エレメントを提供する方法を示す別のフロー図である。
【図５】ユーザにコンテキストアウェア入力エレメントを提供するシステムを示す図である。
【図６】本発明の実施形態を示すスクリーンディスプレイである。
【図７】本発明の実施形態を示す別のスクリーンディスプレイである。
【発明を実施するための形態】
【０００６】
本発明の主題は、法的要件を満たすために特異性をもって説明される。しかしながら、説明自体は、本特許の範囲を限定しない。むしろ、発明者等は、請求される主題が、他の現在の又は将来の技術と関連して、本願明細書に記載のステップと異なるステップ又は同様のステップの組合せを包含する他の方法でも実現され得ると考える。さらに、用語「ステップ」及び／又は「ブロック」は本願明細書では用いられる方法の異なる要素を暗示するために用いられ得るが、これらの用語は、個々のステップの順序が明示的に記載されない限り及びそのような場合を除き、本開示の種々のステップの間の特定の順序を示すと解釈されるべきではない。
【０００７】
本発明の実施形態は、概して、コンテキストの分析に基づきユーザに入力エレメントを提供することを対象とする。本願明細書で用いられるように、用語「コンテキスト」は、概して、コンピューティング装置により検知され得る状況を表す。コンテキストは、電子メール、ＳＭＳ又はインスタントメッセージの所望の通信受信者を有しても良い。コンテキストは、例えば、場所、現在使用中のアプリケーション、前に使用されたアプリケーション、又はアプリケーションとの前のユーザ相互作用も有し得る。さらに、本願明細書で用いられるように、用語「入力エレメント」は、インターフェース、インターフェースの部分、又は入力を受信するインターフェースの構成を意味する。例えば、オンスクリーンキーボードは入力エレメントであり得る。オンスクリーンキーボードの特定のボタンも入力エレメントであり得る。文字選択フィールドは、文字選択フィールド内に単語を含み得るので、入力エレメントの更に別の例であり得る。用語「単語」は、本願明細書で用いられるように、単語、略語、又は任意のテキストを表す。用語「辞書」は、本願明細書で用いられるように、概して、単語のグループを表す。例えば、辞書は、英単語の規定の辞書、受信したユーザ入力を通じて構築された辞書、単語群を特定のコンテキストに関連付ける１又は複数のタグ、又はそれらの任意の組合せを有しても良い。特定辞書は、一般的に、少なくとも部分的に１又は複数のコンテキストに関連付けられた辞書を意味する。一般辞書は、一般的に、１又は複数のコンテキストに特に関連付けられていない辞書を意味する。
【０００８】
本発明の実施形態によると、ユーザ入力が得られる場合、ユーザに特定の入力エレメントを提供することは意味がある。例えば、ユーザは、オンスクリーンキーボードを用いてタッチスクリーンでタイピング中であっても良い。可能性のあるミススペルを検出すると、ユーザに選択すべき単語のリストを提示することは意味がある。また、どんな入力エレメントをユーザに提供するかを決定するときにコンテキストを分析することも意味がある。例えば、特定のコンテキストでは、ユーザは他の単語よりもある単語を意図している可能性が高い場合がある。このような状況では、可能性の低い単語の代わりに、可能性の高い単語をユーザに提示することが有利であり得る。或いは、それらの単語は、両者とも、それらの可能性を反映するためにランク付けを用いて提示され得る。
【０００９】
所与のコンテキストは、所与の入力エレメントに関連付けられても良い。このコンテキストと入力エレメントとの関連付けは、多くの方法で生じても良い。例えば、電子メールアプリケーションを最初に開くと、ユーザは、英語キーボードを提示されても良い。ユーザは、スペイン語キーボードを選択する処置を行っても良い。したがって、電子メールアプリケーションを開くコンテキストは、入力エレメント「スペイン語キーボード」に関連付けられても良い。後に、電子メールアプリケーションのコンテキストを分析して、スペイン語キーボードをユーザに提供すると決定しても良い。電子メールアプリケーションを更に使用すると、ユーザは、電子メールアドレス「mark@live.com」宛の電子メールを作成するときに、スペイン語キーボードから英語キーボードに切り替える場合が多いと決定されても良い。したがって、「mark@live.com」電子メールアドレスは、ユーザに提供すべき適切な入力エレメントを決定するときに有用なコンテキストであると決定されても良い。
【００１０】
所与の状況で分析されるべき複数のコンテキストが存在しても良い。例えば、現在使用中のアプリケーションは、所望の通信受信者と共に、提供すべき適切な入力エレメントを決定するのに分析されても良い。上述の状況では、例えば、電子メールアプリケーションを使用するとき、スペイン語キーボードをデフォルトでユーザに提示すると決定されても良い。しかしながら、ユーザが「mark@live.com」宛にメッセージを作成しているとき、英語キーボードをユーザに提供すると決定されても良い。文書処理アプリケーションのような別のアプリケーションが使用中のとき、作成中の文書の所望の受信者とは無関係に、デフォルトで音声認識インターフェースをユーザに提供すると決定されても良い。したがって、特定の状況で、ユーザに提示すべき適切な入力エレメント又は複数の入力エレメントを決定するために、複数のコンテキストが分析されても良い。
【００１１】
幾つかの実施形態では、適切な入力エレメントは、ＡＰＩの使用を通じて識別されても良い。例えば、アプリケーションは、ユーザから、通信が特定の通信受信者と行われるべきであるという指示を受信しても良い。アプリケーションは、このコンテキストを例えばオペレーティングシステムにより提供されるＡＰＩに提出しても良い。次に、ＡＰＩは、アプリケーションに適切な入力エレメントを提供することにより応答しても良い。例えば、ＡＰＩは、特定の通信受信者への通信を構成するときに用いるために中国語キーボードが適切な入力エレメントであるという指示をアプリケーションに提供しても良い。ＡＰＩは、また、入力エレメントと特定のコンテキストとの関連付けに関する情報を得ても良い。例えば、ＡＰＩは特定の入力エレメントを提示するよう要求されても良い。ＡＰＩは、特定のコンテキストを特定の入力エレメントに関連付けるために、要求が生成されたコンテキストを分析しても良い。後に、ＡＰＩは、所与のコンテキストでユーザに入力エレメントを提供するよう要求されるとき、この情報を用いても良い。このように、複数のアプリケーションは、特定のコンテキストの特定の入力エレメントとの関連付けの利益を享受できる。
【００１２】
したがって、一態様では、本発明の一実施形態は、コンピュータ使用可能命令を格納する１又は複数のコンピュータ記憶媒体であって、前記命令は、１又は複数のコンピューティング装置により用いられると、該１又は複数のコンピューティング装置に方法を実行させる、コンピュータ記憶媒体に係る。方法は、ユーザ相互作用を分析し、入力エレメントを第１のコンテキストに関連付けるステップを有する。方法は、第２のコンテキストを分析し、該入力エレメントを第１のユーザに提供するステップを更に有する。方法は、前記第１のユーザに前記入力エレメントを提供するステップを更に有する。
【００１３】
別の態様では、本発明の一実施形態は、コンピューティング装置に係る。コンピューティング装置は、ユーザから入力を受信する入力装置を有する。コンピューティング装置は、方法を実行するよう構成される１又は複数のプロセッサを更に有する。この方法は、第１のコンテキストを分析し、前記第１のコンテキストに関連する第１の辞書を決定するステップを有する。方法は、前記入力装置から得たデータを分析して、前記第１の辞書から第１の単語を選択するステップを更に有する。方法は、前記第１の単語を前記ユーザに選択オプションとして提供するステップを更に有する。コンピューティング装置は、前記第１の選択オプションを前記ユーザに提示するよう構成されるディスプレイ装置を更に有する。
【００１４】
更なる態様では、本発明の別の実施形態は、入力エレメント提示システムであって、１又は複数のプロセッサと１又は複数のコンピュータ記憶媒体とを備える１又は複数のコンピューティング装置を有する入力エレメント提示システムに係る。入力エレメント提示システムは、コンテキスト識別コンポーネントを有する。入力エレメント提示システムは、１又は複数のコンテキストを１又は複数の入力エレメントに関連付ける関連付けコンポーネントを更に有する。入力エレメント提示システムは、コンテキストの分析に基づき入力エレメントを識別する入力エレメント識別コンポーネントを更に有する。入力エレメント提示システムは、入力エレメントをユーザに提示する提示コンポーネントを更に有する。
【００１５】
本発明の実施形態の概要を要約して記載したが、本発明の実施形態が実施され得る例示的な動作環境は、本発明の種々の態様の一般概念を提供するために以下に説明される。先ず、特に図１を参照すると、本発明の実施形態を実施する例示的な動作環境が示され、概してコンピューティング装置１００として示される。コンピューティングシステム環境１００は、適切なコンピューティング環境の一例であり、本発明の使用又は機能の範囲に関する限定を示唆するものではない。また、コンピューティング環境１００は、図示の１コンポーネントまたはコンポーネントの組合せへの依存性又はそれらに対する要件を有すると解釈されるべきではない。
【００１６】
本発明は、パーソナルデータアシスタント若しくは他のハンドヘルド装置のようなコンピュータ又は他の機械により実行されるプログラムモジュールのようなコンピュータ実行可能命令を含むコンピュータコード又は機械使用可能命令の一般的文脈で説明され得る。概して、プログラムモジュールは、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造、等を含み、特定のタスクを実行し又は特定の抽象データ型を実装するコードを表す。本発明は、ハンドヘルド装置、消費者電子機器、汎用コンピュータ、より特殊なコンピューティング装置等を含む種々のシステム構成で実施され得る。本発明は、タスクが通信ネットワークを通じて接続されるリモート処理装置により実行される分散型コンピューティング環境で実施されても良い。
【００１７】
図１を参照すると、コンピューティング装置１００は、メモリ１１２，１又は複数のプロセッサ１１４、１又は複数の提示コンポーネント１１６、入力／出力（Ｉ／Ｏ）ポート１１８、入力／出力コンポーネント１２０、及び説明のための電源１１２を直接的又は間接的に結合するバス１１０を有する。バス１１０は、（アドレスバス、データバス、又はそれらの組合せのような）１又は複数のバスを表す。図１の種々のブロックは簡単のため線で示されるが、実際には、種々のコンポーネントの描画はそれほど明確ではなく、例えて言えば、線は正確にはグレイでありはっきりしない。例えば、ディスプレイ装置のような提示コンポーネントはＩ／Ｏコンポーネントと考えられても良い。また、プロセッサはメモリを有する。発明者等は、技術の特性により、図１の図は、本発明の１又は複数の実施形態と関連して用いることができる例示的なコンピュ―ティング装置の単に説明であることを繰り返し表明する。「ワークステーション」、「サーバ」、「ラップトップ」、「ハンドヘルド装置」等のようなカテゴリは図１の範囲内に包含されると考えられ「コンピューティング装置」を表すので、これらのカテゴリの間は区別されない。
【００１８】
コンピューティング装置１００は、通常、種々のコンピュータ可読媒体を有する。コンピュータ可読媒体は、コンピューティング装置１００によりアクセス可能な任意の利用可能な媒体であり、揮発性及び不揮発性媒体並びに取り外し可能及び非取り外し可能媒体の両方を含む。例として、限定ではなく、コンピュータ可読媒体は、コンピュータ記憶媒体及び通信媒体を有しても良い。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール又は他のデータのような情報を記憶する方法又は技術で実装される揮発性及び不揮発性、取り外し可能及び非取り外し可能媒体を含む。コンピュータ記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ又は他のメモリ技術、ＣＤ−ＲＯＭ、ＤＶＤ（digital  versatile  disk）又は他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又は他の磁気記憶装置、又は所望の情報を格納するために用いることができコンピューティング装置１００によりアクセスできる任意の他の媒体を含むがこれらに限定されない。通信媒体は、通常、コンピュータ可読命令、データ構造、プログラムモジュール又は搬送波又は他のトランスポート機構のような変調されたデータ信号内の他のデータを具現化しても良く、任意の情報配信媒体を有しても良い。用語「変調データ信号」は、１又は複数の特性セットを有する信号を意味し、又は信号内の情報をエンコードするために変更されても良い。例として限定ではなく、通信媒体は、有線ネットワーク又は直接有線接続のような有線媒体、並びに音響、ＲＦ、赤外線（ＩＲ）のような無線媒体及び他の無線媒体を含む。上述のうちの任意の組合せも、コンピュータ可読媒体の範囲に包含されるべきである。
【００１９】
メモリ１１２は、揮発性及び／又は不揮発性メモリの形式のコンピュータ記憶媒体を有する。メモリは、取り外し可能、取り外し不可能、又はそれらの組合せであっても良い。例示的なハードウェア装置は、固体メモリ、ハードドライブ、光ディスクドライブ、等を有する。コンピューティング装置１００は、メモリ１１２又はＩ／Ｏコンポーネント１２０のような種々のエンティティからデータを読み出す１又は複数のプロセッサを有する。提示コンポーネント１１６は、ユーザ又は他の装置へのデータの指示を提示する。例示的な提示コンポーネントは、ディスプレイ装置、スピーカ、印刷コンポーネント、震動コンポーネント等を有する。
【００２０】
Ｉ／Ｏポートは、コンピューティング装置１００が、一部は内蔵であっても良いＩ／Ｏコンポーネント１２０を含む他の装置に論理的に結合することを可能にする。説明のためのコンポーネントは、マイクロフォン、ジョイスティック、ゲームパッド、パラボラアンテナ、スキャナ、プリンタ、無線装置等を有しても良い。
【００２１】
図２を参照すると、ユーザにコンテキストアウェア入力エレメントを提供する方法２００を示すフロー図を示す。ブロック２０２に示すように、ユーザは、コンピューティング装置にピンインを入力する。コンピューティング装置は、１又は複数のコンテキストを決定しても良い。例えば、ユーザは、友人への電子メールメッセージを作成するためにモバイル装置を用いていても良い。ブロック２０４に示すように、ピンインに対する一致を特定するために、通信受信者に特有の辞書が分析されても良い。ブロック２０６に示すように、ピンインに対する一致が見付かっても良い。例えば、特定の単語は、特定の通信受信者と共に優先的に用いられても良く、このような単語は、その通信受信者に関連付けられても良い。通信受信者とその特定の通信受信者と共に用いられる単語との間の関連付けは、一種の固有辞書である。幾つかの例では、一致が見付からず、このような場合には、ブロック２１０に示すように、一般辞書が分析されても良い。一般辞書は、固有ではなく、又は単に最初よりも専門性が少なくても良い（例えば、通信受信者のグループに固有である）。幾つかの例では、ブロック２０６に示すように、一致が見付かっても良い。このような場合には、ブロック２０８に示すように、ランク付けが、固有辞書からの一致に割り当てられる。ブロック２１０に示すように、一般辞書も、ピンインとの一致を決定するために分析される。ブロック２１２に示すように、ランク付けが、一般辞書からの一致に割り当てられる。通常、固有辞書からの単語はコンテキストに特に関連する可能性があるので、固有辞書に現れる単語のランクは一般辞書にのみ現れる単語のランクよりも高い。ブロック２１４に示すように、単語は、表示のためにユーザに提供される。
【００２２】
例えば、ユーザは、電子メールアプリケーションをインスタンス化し、受信者フィールドを提供されても良い。ユーザは、通信受信者を、例えばユーザ名「Mark」に関連する電子メールアドレスを受信者フィールドに入力しても良い。次に、ブロック２０２で、ユーザは、メッセージフィールドにピンインを入力し始めても良い。Markに関連する固有辞書が存在しても良い。したがって、ブロック２０４で、この固有辞書は、ピンインとの一致を決定するために分析される。ブロック２０６で、ピンインに対する２つの一致が存在すると決定される。ブロック２０８で、２つの一致がランク付けされる。ブロック２１０で、一般辞書は、ピンインとの更なる一致を決定するために分析される。この場合、一般辞書は、Markに固有ではない辞書である。ブロック２１２で、一般辞書からの一致がランク付けされる。この場合、Markに固有の辞書からの一致があるので、一般辞書からの一致は、固有辞書からの一致よりも低くランク付けされる。ブロック２１４に示すように、一致はユーザに提供される。ユーザにとって最も望ましい可能性の高い一致は、コンテキストに固有であるので、高い位置にランク付けされる。
【００２３】
図３を参照すると、本発明の実施形態と共に用いるのに適するコンテキストを示す。一般辞書３００が示される。この一般辞書内に及びそれに混じって、固有辞書がある。固有辞書は、「友人１」固有辞書３０２、「友人３」固有辞書３０４、「母」固有辞書３０６、「従兄弟」固有辞書３０８を有する。これらの固有辞書は、区別され及び一般辞書３００の一部として示されるが、それらの間の重複を含み及び一般辞書３００の範囲外に拡張しても良い。例えば、特定の単語は「母」固有辞書３０６及び「従兄弟」固有辞書３０８に関連付けられても良い。さらに、幾つかの単語は「母」固有辞書３０６に関連付けられるが、一般辞書３００に関連付けられなくても良い。単語とコンテキストとの間の関連付けは、重み付けされても良い。例えば、単語「家」は「母」固有辞書３０６に強く関連付けられるが、「従兄弟」固有辞書３０８には弱く関連付けられるだけでも良い。単語「家」は「友人１」固有辞書３０２には全く関連付けられないが、「友人３」固有辞書３０４には消極的にでも関連付けられても良い。これらの関連付け重みは、どの入力エレメントを提供すべきかを決定するためにコンテキストを分析するのに役立ち得る。これらの関連付け重みは、２以上のコンテキストの間の類似性レベルを決定し、したがってそのようなコンテキスト間の関連付けを生成するのにも有用であり得る。関連付け強度は、種々の方法でアルゴリズム的に決定されても良い。例えば、関連付け強度は、所与のコンテキストにおける使用頻度により、又は確立若しくは推測により決定されても良い。
【００２４】
一般辞書３００は、例えば英語言語の単語を通常用いる規定辞書であっても良い。ユーザは、ＳＭＳアプリケーションを用いて、種々の通信受信者へのメッセージをタイプしても良い。これらのメッセージは、種々の単語を含み得る。これらの単語のうちの特定のものは、他のコンテキストよりも特定のコンテキストでより高い頻度で現れても良い。例えば、ユーザは、彼女の従兄弟と共に単語「Loi」を一般に用いても良い。しかしながら、この単語は、彼女の母と共に用いられることは希であっても良い。したがって、単語「Loi」は、通信受信者として従兄弟のコンテキストと関連付けられ、例えば「従兄弟」固有辞書３０８の一部になり得る。単語「Loi」は、ＳＭＳアプリケーションを用いるコンテキストと関連付けられても良い。後に、通信受信者として「従兄弟」へのメッセージを作成するコンテキストは分析されて、テキスト選択フィールドの入力エレメントとして、単語「Loi」を提供すると決定しても良い。これは、ＳＭＳアプリケーションのコンテキストで生じ、又は電子メールアプリケーションのコンテキストで生じ得る。留意すべきことに、単語「Loi」は、一般辞書３００に存在し、通信受信者として従兄弟のコンテキストと単に関連付けられても良い。或いは、その単語は、一般辞書３００に存在しないで、ユーザがそれを以前に入力に使用した後に追加されても良い。
【００２５】
図４を参照すると、ユーザにコンテキストアウェア入力エレメントを提供する方法４００を示すフロー図を示す。先ず、ブロック４０２に示すように、ユーザ相互作用が分析され、入力エレメントを第１のコンテキストに関連付ける。例えば、ユーザ相互作用は、入力エレメントの選択、例えば中国語オンスクリーンキーボードの選択であっても良い。このユーザ相互作用は、中国の北京での地理タグ付けアプリケーションの使用中に生じても良い。したがって、ブロック４０２に示すように、中国語オンスクリーンキーボードは、地理タグ付けアプリケーションの使用に関連付けられる。留意すべきことに、中国語オンスクリーンキーボードは、中国の北京に関連付けられ、代替で又は追加で地理タグ付けアプリケーションに関連付けられても良い。ブロック４０４に示すように、第２のコンテキストが分析され、入力エレメントを第１のユーザに提供すると決定する。留意すべきことに、第２のコンテキストは、第１のコンテキストと同じ又は異なっても良い。例えば、第２のコンテキストは中国の北京であっても良く、したがって、第１のユーザに中国語オンスクリーンキーボードを提供すると決定される。或いは、場所はカリフォルニア州のサンフランシスコであると決定されても良く、サンフランシスコの中国語地域に居ると決定されても良い。後者の場合、第２のコンテキストは第１のコンテキストと同じであるが、２者の間には関連があり、ブロック４０６に示すように、中国語キーボードをユーザに提供する意味がある。
【００２６】
留意すべきことに、第１のコンテキストが入力エレメントと関連付けられる多数の方法がある。例えば、第１のユーザは、通信受信者として彼の母への電子メールメッセージを作成しているとき、特定の単語を用いても良い。このようなユーザ相互作用は、入力エレメントをコンテキストに関連付けるために分析されても良い。例えば、ユーザは、彼の母への電子メールメッセージを作成するとき、叔母「Sally」の名前をタイプする場合が多い。ブロック４０２に示すように、このユーザ相互作用は分析され、入力エレメント「Sally」を通信受信者としてユーザの母のコンテキストと関連付けても良い。後に、ユーザは、彼の母へのインスタントメッセージの作成中に文字「SA」をタイプし始め得る。ブロック４０４に示すように、この第２のコンテキストは分析され、単語「Sally」を選択オプションとしてユーザに提供すると決定しても良い。したがって、ブロック４０６に示すように、「Sally」は、入力エレメントとしてユーザに提示される。
【００２７】
複数の入力エレメントがユーザに提供されることも考えられる。例えば、上述の例では、ユーザは、彼の母へのメッセージを作成するとき、単語「sailboat（ヨット）」をタイプする場合が多い。ユーザは、彼の友人Billへのメッセージを作成するとき単語「Samir」をタイプしたことがあるが、彼の母へのメッセージを作成するときはその単語を一度もタイプしたことがない。通信受信者「母」に基づき、ユーザは単語「Sally」をタイプする意向がある可能性が高いと決定されても良い。ユーザは、「母」と通信するときに単語「Samir」を以前に用いたことがなく、単語「Samir」をタイプする意向がある可能性が低いので、ユーザは単語「sailboat」をタイプする意向がある可能性が次に高いと決定されても良い。これらの単語の各々は、ユーザの意向の可能性に従ってランク付けされ、それらのランクに従って表示のためにユーザに提示されても良い。
【００２８】
概して、複数種類の入力エレメントが識別され、ユーザに提示されても良い。例えば、ユーザは、通常、電子メールを作成するときに英語キーボードを使用するが、ＳＭＳメッセージを作成するときに中国語キーボードを時々選択しても良い。これに加え、ユーザは、彼の兄弟と通信するときに特定の単語セットを用いても良い。例えば、ユーザは、彼の兄弟と通信するとき、単語「werd」を用いる場合が多い。これらのユーザ相互作用の各々は分析され、コンテキストを入力エレメントに関連付けても良い。後に、ユーザは、彼の兄弟への電子メールメッセージを作成しても良い。このコンテキストは分析され、英語キーボードが提示されても良い。彼の兄弟への電子メールを作成するために電子メールアプリケーションを使用している間、ユーザは入力文字列「we」を入力しても良い。このコンテキストの追加レイヤは分析され、単語「werd」は、テキスト選択フィールド内の入力エレメントとして提示されると決定されても良い。したがって、英語オンスクリーンキーボードと「werd」テキスト選択フィールドの両者が、入力エレメントとして同時に又は一斉に提示されても良い。
【００２９】
留意すべきことに、複数のユーザ相互作用は、入力エレメントをコンテキストに関連付けるために分析されても良い。例えば、ユーザは、最初に電子メールアプリケーションを用いるとき、英語キーボードを選択しても良い。このユーザ相互作用は、ＡＰＩを通じてオペレーティングシステムに提供されても良い。ＡＰＩは、電子メールアプリケーションのコンテキストを、英語キーボードの入力エレメントに関連付けても良い。しかしながら、次回、ユーザが電子メールアプリケーションと相互作用するとき、彼は中国語キーボードを選択しても良い。このユーザ相互作用は、関連付けるためにオペレーティングシステムＡＰＩに提供されても良い。したがって、ユーザに提供すべき適切な入力エレメントを決定する際に分析され得る２つのユーザ相互作用がある。テキストアプリケーションの１００回の使用を通じて、ユーザは、中国語キーボードを８０回選択肢、英語キーボードを２０回選択しても良い。ＡＰＩは、この情報を分析し、最初のＳＭＳアプリケーションを開くとき、ユーザに中国語キーボードを提供すると決定しても良い。ユーザは、特定の通信受信者を示す情報を入力しても良く、この情報はＡＰＩに提供されても良い。この特定の通信受信者に対して作成された２０個の電子メールメッセージのうち、２０個は、英語キーボードを用いて作成されたと決定されても良い。したがって、ＡＰＩは、ＳＭＳアプリケーションに、ユーザは英語キーボードを提供されるべきであると通知しても良い。したがって、複数のユーザ動作は、ユーザに提供すべき最適な入力エレメントを決定するために分析されても良い。
【００３０】
さらに、複数のユーザからのユーザ動作は、コンテキストを入力エレメントに関連付ける際に分析されても良い。例えば、ユーザ動作はウェブサーバへ送信されても良い。特定の例では、携帯電話アプリケーションは、ユーザがメッセージをインターネットに投稿するのを可能にしても良い。各投稿で、携帯電話アプリケーションは、メッセージと携帯電話位置との両方を送信しても良い。このデータを受信するウェブサーバは、メッセージに含まれる特定の単語を特定の場所に関連付けても良い。例えば、第１のユーザは、ロサンゼルスのニューオリンズに居て、メッセージ「At  Cafe  Du  Monde!」を作成するためにアプリケーションを使用しても良い。したがって、ウェブサーバは、単語列「Cafe  Du  Monde」をロサンゼルスのニューオリンズに関連付けても良い。第２のユーザは、フランスのパリにいて、メッセージ「Cafe  Du  Marche  is  the  best  bistro  in  France.」を作成するためにアプリケーションを用いても良い。ウェブサーバは、単語列「Cafe  Du  Monde」をフランスのパリに関連付けても良い。後に、第３のユーザは、ロサンゼルスのニューオリンズに居て、文字列「Cafe  Du  M」を有するメッセージを作成し始めても良い。この文字列は、ウェブサーバへ送信されても良い。ウェブサーバは、この文字列及びロサンゼルスのニューオリンズの場所を分析し、入力エレメント「Monde」を第３のユーザに提供すると決定し得る。
【００３１】
図５を参照すると、本発明の実施形態が用いられ得る例示的な入力エレメント提示システム５００を示すブロック図を提供する。理解されるべきことに、この構成及び本願明細書に記載する他の構成は、例としてのみ説明される。他の構成及び要素（例えば、機械、インタフェース、機能、順序、コンポーネント、及び機能グループ等）は、図示のものに追加して又はそれらの代わりに用いることができ、幾つかの要素は一緒に省略されても良い。さらに、本願明細書に記載の要素の多くは、別個の又は分散したコンポーネントとして、又は他のコンポーネントと関連して、及び任意の適切な組合せ及び位置で実装されても良い機能エンティティである。１又は複数のエンティティにより実行されるとして本願明細書に記載の種々の機能は、ハードウェア、ファームウェア及び／又はソフトウェアにより実行されても良い。例えば、種々の機能は、メモリに格納される命令を実行するプロセッサにより実行されても良い。
【００３２】
入力エレメント提示システム５００は、コンテキスト識別コンポーネント５０２、関連付けコンポーネント５０４、入力エレメント識別コンポーネント５０６、提示コンポーネント５０８３を有しても良い。システムは、単一のコンピューティング装置を有しても良く、又は通信ネットワークを介して一緒に接続される複数のコンピューティング装置を有しても良い。さらに、各コンポーネントは、例えば図１を参照して説明したコンピューティング装置１００のような任意の種類のコンピューティング装置を有しても良い。
【００３３】
一般に、コンテキスト識別コンポーネント５０２は、入力エレメントに関連付けられ得るコンテキストを識別する。例えば、コンテキスト識別コンポーネント５０２は、通信受信者、場所、使用中のアプリケーション、旅先、通信受信者のグループ、等を識別しても良い。入力エレメント識別コンポーネント５０６は、多数の入力エレメントを識別しても良い。例えば、英語入力、スペイン語入力、中国語入力等のために構成されるキーボードがあっても良い。さらに、所望の入力種類に依存して、又はタッチスクリーン装置が用いられる場合には装置が縦向きモードか横向きモードかに依存して、これらのキーボードの各々のための複数の構成があっても良い。単語が入力エレメントとして識別され得る種々の固有又は一般辞書があっても良い。「英語」入力エレメントのような入力エレメントのカテゴリも識別されても良い。このような入力エレメントのカテゴリは、入力エレメントの種類を一緒にグループ分けするために用いられても良い。コンテキスト識別コンポーネント５０２により識別されるようなコンテキストは、関連付けコンポーネント５０４を介して、入力エレメント識別コンポーネント５０６により識別されるような１又は複数の入力エレメントに関連付けられても良い。次に、提示コンポーネント５０８は、１又は複数の入力エレメントを表示のためにユーザに提供するために用いられても良い。
【００３４】
例えば、ユーザは、「共有」機能を有するアプリケーションを用いても良く、ユーザは特定の情報を彼女の友人Maryと共有したいと望むと示しても良い。アプリケーションの「共有」機能は、コンテキスト識別コンポーネント５０２によりコンテキストとして識別されても良い。さらに、友人「Mary」は、コンテキスト識別コンポーネント５０２によりコンテキストとして識別されても良い。次に、ユーザは、「メッセージ」フィールドに進み、英語キーボードを提示されても良い。英語キーボードは、入力エレメント識別コンポーネント５０６により入力エレメントとして識別されても良い。ユーザは、スペイン語キーボードを用いると選択しても良い。スペイン語キーボードは、入力エレメント識別コンポーネント５０６により識別されても良い。関連付けコンポーネント５０４は、スペイン語キーボードを通信受信者としてのMaryのコンテキストと関連付けても良い。関連付けコンポーネント５０４は、スペイン語キーボードをこのアプリケーションの「共有」機能のコンテキストと関連付けても良い。したがって、適切な入力エレメントが決定され得る。例えば、後の時間に、ユーザは、アプリケーションの「共有」機能を用いても良い。この「共有」機能は、コンテキスト識別コンポーネント５０２によりコンテキストとして識別されても良い。このコンテキストは、スペイン語キーボードがユーザに有利に提示され得ることを識別するために、入力エレメント識別コンポーネント５０６により用いられても良い。次に、スペイン語キーボードは、提示コンポーネント５０８を介してユーザに提示されても良い。
【００３５】
図６を参照すると、本発明の実施形態を示す例示的なスクリーンディスプレイを示す図を提供する。スクリーンディスプレイは、メッセージフィールド６０２、ユーザ入力６０４、テキスト選択フィールド６０６、受信者フィールド６０８を有する。例えば、ユーザは、モバイル電子メールアプリケーションに入力し、図６に示すスクリーンに似たスクリーンを提示されても良い。ユーザは、受信者フィールド６０８に通信受信者を示しても良い。この通信受信者情報は、分析され１又は複数の入力エレメントに関連付けられ得るコンテキストを提供する。さらに、このコンテキストは、ユーザに有利に提供べき１又は複数の入力エレメントを識別するために分析されても良い。ユーザは、メッセージを作成する際にユーザ入力６０４を入力しても良い。ユーザ入力６０４及び受信者フィールド６０８内の通信受信者は分析されて、入力エレメント、例えばテキスト選択フィールド６０６に沿って表示される選択肢を提供すると決定しても良い。
【００３６】
例えば、ユーザは、彼の友人と通信することを望み、このタスクを達成するために電子メールアプリケーションをインスタンス化していても良い。電子メールアプリケーションは、図６に示すスクリーンディスプレイに似たスクリーンディスプレイを提示しても良い。受信者フィールド６０８に示すように、ユーザは、通信受信者が友人であると示しても良い。次に、ユーザはメッセージフィールド６０２にデータを入力し始めても良い。所望の通信受信者としての友人のコンテキストは、入力エレメントを決定するときにその友人に関連する固有辞書を用いると決定するために分析されても良い。その固有辞書は、ユーザ入力６０４を用いて、入力エレメントの数を決定するために分析されても良い。この場合、入力エレメント「LOL」、「LOUD」、「LOUIS」、「LAPTOP」は、表示のためにユーザに提示されるべきであると決定されても良い。
【００３７】
これらの単語のうちの幾つかは、通信受信者としてのこの友人のコンテキストに以前に関連付けられていても良く、したがって、ユーザに有利に提供されると決定されていても良い。例えば、ユーザは、特定の友人と通信するときに、又は「友人」カテゴリにタグ付けされた種々の通信受信者と通信するときに、単語「LOL」を用いる場合が多い。同様に、ユーザは、特定の友人と通信するとき、単語「LOUD」を用いる場合が多い。さらに、ユーザは特定の通信受信者と通信するときに単語「LOUIS」を用いたことがないが、ユーザは、その単語を他の通信受信者と一緒に用いたことがあっても良い。しかしながら、「LOUIS」は、テキスト選択フィールド６０６に沿って表示されても良い。最後に、ユーザは、どの通信受信者との通信にも単語「LAPTOP」を使用したことがないが、その単語は、規定の一般辞書に現れても良い。この単語も、テキスト選択フィールド６０６に従って入力エレメントとして組み込まれても良い。したがって、これらの入力エレメントは、テキスト選択フィールド６０６に沿って表示されても良い。ユーザは、単語の残りの部分をタイプしても良く、又は所望の入力を示すために入力エレメントのうちの１つを選択しても良い。
【００３８】
図７を参照すると、本発明の別の実施形態を示す例示的なスクリーンディスプレイを示す別の図を提供する。スクリーンディスプレイは、メッセージフィールド７０２、ユーザ入力７０４、テキスト選択フィールド７０６、受信者フィールド７０８を有する。例えば、ユーザは、モバイル電子メールアプリケーションに入力し、図７に示すスクリーンに似たスクリーンを提示されても良い。ユーザは、受信者フィールド７０８に示すように、通信受信者を示しても良い。この通信受信者は、分析され１又は複数の入力エレメントに関連付けられ得るコンテキストを提供する。さらに、このコンテキストは、ユーザに有利に提供すべき１又は複数の入力エレメントを識別するために分析されても良い。ユーザは、メッセージを作成する際にユーザ入力７０４を入力しても良い。ユーザ入力７０４及び受信者フィールド７０８内の通信受信者は、入力エレメント、例えばテキスト選択フィールド７０６に表示される選択肢を提供すると決定するために分析されても良い。
【００３９】
図７の例では、ユーザは、彼の母と通信することを望み、このタスクを達成するために電子メールアプリケーションをインスタンス化していても良い。電子メールアプリケーションは、図７に示すスクリーンディスプレイに似たスクリーンディスプレイを提示しても良い。受信者フィールド７０８に示すように、ユーザは、通信受信者が彼の母であると示した。次に、ユーザはメッセージフィールド７０２にデータを入力し始めた。所望の通信受信者としての母のコンテキストは、入力エレメントを決定するときに母と共に使用するために固有辞書を用いると決定するために分析されても良い。この固有辞書は、ユーザ入力７０４を用いて、入力エレメントの数を決定するために分析されても良い。この場合、入力エレメント「LOUIS」、「LOUD」、「LOCAL」、「LOW」は、表示のためにユーザに提示されるべきであると決定されても良い。これらの単語のうちの幾つかは、通信受信者としての母のコンテキストと以前に関連付けられていても良い。例えば、ユーザは、彼の母と通信するとき、単語「LOUIS」を用いる場合が多い。代替で、通信受信者「母」は、通信受信者「父」と関連付けられていても良い。また、ユーザは、単語「LOUIS」を「母」と共に用いたことがないが、彼は単語「LOUIS」を「父」と共に用いたことがある。したがって、入力エレメント「LOUIS」はコンテキスト「母」と特に関連付けられていないが、その単語は、（コンテキスト「母」と関連付けられている）コンテキスト「父」と関連付けられているので、表示されても良い。したがって、コンテキストは、入力エレメントを決定するために別のコンテキストと関連付けられても良い。
【００４０】
留意すべきことに、ユーザ入力７０４はユーザ入力６０４と同じであるが、単語「LOL」は図７では入力エレメントとして示されず、図６では示される。これは、ユーザは単語「LOL」を母と共に使用しないと決定されたからである。例えば、前の相互作用で、ユーザはテキスト選択フィールド７０６のオプションとして「LOL」を提示されたが、ユーザは「LOL」を選択しなくても良い。したがって、単語「LOL」はコンテキスト「母」と消極的に関連付けられていても良い。同様に、ユーザは、通信受信者である母への電子メールを作成するコンテキストで、単語「LOL」は提示されるべきではないと示していても良い。この消極的関連付けは、このコンテキストで「LOL」をユーザに提示しないと決定するために分析されても良い。
【００４１】
さらに、単語「LOUD」は、テキスト選択フィールド７０６に現れる。ユーザは通信受信者としての母と通信するときに単語「LOUD」を用いたことがないが、他のユーザ相互作用が分析されて、その単語を提示すると決定しても良い。例えば、ユーザは、コンサート会場の場所に居ても良い。他のユーザは、そのユーザの近くに居て、これらのユーザは通信したことがあっても良い。これらのユーザ相互作用は、ユーザ通信で通常生じるよりも高い可能性で単語「LOUD」を含んでいても良い。これらのユーザ相互作用は、恐らく中央コンピュータシステムで、テキスト選択フィールド７０６に沿ってユーザに単語「LOUD」を提示すると決定するために分析されたことがあっても良い。留意すべきことに、この例では、「LOUD」は、中央サーバから図７し示すコンピューティング装置へ送信されるか、又は中央サーバは、単語「LOUD」がテキスト選択フィールド７０６内のその単語の位置に現れるように、単に単語「LOUD」をランク付けするために用いられる情報を提供されても良い。したがって、第三者ユーザ相互作用は、ユーザに入力エレメントを提供すると決定する際に分析されても良い。
【００４２】
幾つかの実施形態では、複数のコンテキスト及び／又は複数の入力エレメントは、互いに関連付けられても良い。このような実施形態では、入力エレメントは、コンテキストに基づき及び／又はユーザに関連して、互いに対してランク付けされても良い。特定の実施形態では、ユーザ相互作用は分析され、第１の入力エレメントを第１のコンテキストに、第２の入力エレメントを第２のコンテキストに、及び第１のコンテキストを第２のコンテキストに関連付けても良い。したがって、このような実施形態では、第１のコンテキストは分析され、第２の入力エレメントをユーザに提示しても良い。
【００４３】
理解されるように、本発明の実施形態は、コンテキストアウェア入力エンジンを対象とする。本発明は、全ての特徴が説明のためであり限定的ではない特定の実施形態に関して説明された。代替の実施形態は、本発明の範囲から逸脱することなく、本発明の関連する分野の当業者に明らかになるだろう。
【００４４】
以上から、明らかな並びにシステム及び方法に内在する他の利点と共に、本発明は上述の全ての目的及び目標を達成するために良好に適応されることが分かるだろう。特定の特徴及び小結合が有用であり、他の特徴及び小結合を参照することなく用いられ得ることが理解されるだろう。これは、請求の範囲により想定され及び包含される。
【図１】
2014517397.tif 000003
【図２】
2014517397.tif 000004
【図３】
2014517397.tif 000005
【図４】
2014517397.tif 000006
【図５】
2014517397.tif 000007
【図６】
2014517397.tif 000008
【図７】
2014517397.tif 000009
【国際調査報告】
2014517397.tif 000010
2014517397.tif 000011