(57)【要約】      （修正有）【課題】テキストフィールド上にエモティコンのセットを提案する方法及びシステムを提供する。【解決手段】実施方法は、セグメントのセットをテキストフィールドから受け取るステップ３０２と、セグメントのセットに関連付けられる目標サブテキストまたは目標意味の少なくとも１つを決定するようセグメントのセットを分析するステップ３０４と、目標サブテキストまたは目標意味の少なくとも１つとの間に関連性を有する候補のエモティコンのセットを識別するステップ３０６と、エントリ選択のために入力カーソルの現在位置に候補のエモティコンのセットを提示するステップ３０８と、候補のエモティコンのセットからの選択されるエモティコンのセットについて、エントリ選択を受け取るステップ３１０と、選択されるエモティコンのセットをテキストフィールドにおける入力カーソルの現在位置に挿入するステップ３１２と、を含む。【選択図】図３
2018077861.tif 000002
【特許請求の範囲】
【請求項１】
セグメントのセットをテキストフィールドから受け取るステップを含み、前記セグメントのセットは前記テキストフィールドにおける入力カーソルの現在位置に対して選択された対象の１つ以上のセグメントを含んでおり、さらに、
前記セグメントのセットに関連付けられる目標サブテキストまたは目標意味の少なくとも１つを決定するよう前記セグメントのセットを分析するステップと、
候補のエモティコンのセットを識別するステップとを含み、前記候補のエモティコンのセットにおける各候補のエモティコンは、前記候補のエモティコンと前記目標サブテキストまたは前記目標意味の少なくとも１つとの間に関連性を有しており、前記候補のエモティコンのセットは、１つ以上の候補のエモティコンを含んでおり、さらに、
エントリ選択のために前記入力カーソルの現在位置に前記候補のエモティコンのセットを提示するステップと、
前記候補のエモティコンのセットからの選択されるエモティコンのセットについて、エントリ選択を受け取るステップとを含み、前記選択されるエモティコンのセットは１つ以上の選択されるエモティコンを含んでおり、さらに、
前記選択されるエモティコンのセットを前記テキストフィールドにおける前記入力カーソルの現在位置に挿入するステップを含む、方法。
【請求項２】
各関連性は、前記目標サブテキストまたは前記目標意味の少なくとも１つとの前記候補のエモティコンの統計的な使用を含む、請求項１に記載の方法。
【請求項３】
前記統計的な使用は単一のユーザまたは複数のユーザによる使用に基づく、請求項２に記載の方法。
【請求項４】
前記選択されるエモティコンのセットについての前記エントリ選択に基づき、前記候補のエモティコンの前記統計的な使用を更新するステップをさらに含む、請求項２に記載の方法。
【請求項５】
前記セグメントのセットを分析するステップは、前記セグメントのセットの意味分析を含む、請求項１に記載の方法。
【請求項６】
エントリ選択のために前記エモティコンのセットを提示するステップは、エントリ選択のために前記入力カーソルの現在位置または現在位置の近くに前記エモティコンを表示するステップを含む、請求項１に記載の方法。
【請求項７】
エントリ選択のために前記候補のエモティコンのセットを提示するステップは、エントリ選択のために物理的な入力装置または仮想入力装置上に前記候補のエモティコンのセットを表示するステップを含み、前記物理的な入力装置および表示された入力インターフェイスは、前記エントリ選択を実行するよう構成される、請求項１に記載の方法。
【請求項８】
前記仮想入力装置は、前記テキストフィールドに近接近して表示される、請求項７に記載の方法。
【請求項９】
対象の各セグメントは、前記入力カーソルの現在位置の前または後に存在する単語、文の断片、文、句、または節の少なくとも１つを含む、請求項１に記載の方法。
【請求項１０】
前記候補のエモティコンのセットを識別するステップはさらに、少なくともユーザプレファレンス、ユーザに関連する情報、または受信者に関連する情報に基づく、請求項１に記載の方法。
【請求項１１】
前記ユーザに関連する情報は、ユーザの興味と、ユーザの民族性と、ユーザの宗教と、ユーザの地理的位置と、ユーザの年齢と、ユーザの関係ステータスと、ユーザの職業とを含む、請求項１０に記載の方法。
【請求項１２】
前記受信者に関連する情報は、ユーザに対する受信者の関係と、受信者の興味と、受信者の民族性と、受信者の宗教と、受信者の地理的位置と、受信者の年齢と、受信者の関係ステータスと、受信者の職業とを含む、請求項１０に記載の方法。
【請求項１３】
システムであって、
プロセッサと、
テキストフィールドと前記テキストフィールドに入力される１つ以上のセグメントとを表示するよう構成される表示モジュールと、
セグメント入力をユーザから受け取り、前記セグメント入力を前記テキストフィールド内に入力カーソルにて入力するよう構成される入力モジュールと、
セグメント分析モジュールとを含み、
前記セグメント分析モジュールは、セグメントのセットを前記テキストフィールドから受け取るよう構成されており、前記セグメントのセットは前記テキストフィールドにおける前記入力カーソルの現在位置に対して選択された対象の１つ以上のセグメントを含んでおり、
前記セグメント分析モジュールは、前記プロセッサを用いて、前記セグメントのセットに関連付けられる目標サブテキストまたは目標意味の少なくとも１つを決定するよう前記セグメントのセットを分析するよう構成されており、前記システムはさらに、
候補のエモティコンのセットを識別するよう構成されるエモティコン検索モジュールを含み、前記候補のエモティコンのセットにおける各候補のエモティコンは、前記候補のエモティコンと前記目標サブテキストまたは前記目標意味の少なくとも１つとの間に関連性を有しており、前記候補のエモティコンのセットは、１つ以上の候補のエモティコンを含んでおり、前記システムはさらに、
エントリ選択のために前記入力カーソルの現在位置に前記表示モジュールを通じて前記候補のエモティコンのセットを提示するよう構成されるエモティコン提案モジュールと、
エモティコン選択モジュールとを含み、
前記エモティコン選択モジュールは、前記候補のエモティコンのセットからの選択されるエモティコンのセットについて、前記入力モジュールからエントリ選択を受け取るよう構成されており、前記選択されるエモティコンのセットは１つ以上の選択されるエモティコンを含んでおり、
前記エモティコン選択モジュールは、前記選択されるエモティコンのセットを前記テキストフィールドにおける前記入力カーソルの現在位置に挿入するよう構成される、システム。
【請求項１４】
前記テキストフィールドへのエントリが可能な１つ以上のエモティコンを含むエモティコンデータストアをさらに含み、前記エモティコン検索モジュールはさらに、前記エモティコンデータストア上の前記候補のエモティコンのセットを識別するよう構成される、請求項１３に記載のシステム。
【請求項１５】
各関連性は、前記目標サブテキストまたは前記目標意味の少なくとも１つとの前記候補のエモティコンの統計的な使用を含む、請求項１３に記載のシステム。
【請求項１６】
前記統計的な使用は単一のユーザまたは複数のユーザによる使用に基づく、請求項１５に記載のシステム。
【請求項１７】
前記エモティコン選択モジュールはさらに、前記選択されるエモティコンのセットについての前記エントリ選択に基づき、前記候補のエモティコンの前記統計的な使用を更新するよう構成される、請求項１５に記載のシステム。
【請求項１８】
前記セグメントのセットを分析することは、前記セグメントのセットの意味分析を含む、請求項１３に記載のシステム。
【請求項１９】
エントリ選択のために前記表示モジュールを通じて前記エモティコンのセットを提示することは、エントリ選択のために前記入力カーソルの現在位置または現在位置の近くに前記エモティコンを表示することを含む、請求項１３に記載のシステム。
【請求項２０】
エントリ選択のために前記表示モジュールを通じて前記候補のエモティコンのセットを提示することは、エントリ選択のために前記入力モジュールを通じて前記候補のエモティコンのセットを表示することを含む、請求項１３に記載のシステム。
【請求項２１】
前記入力モジュールは物理的な入力装置または仮想入力装置を含み、前記物理的な入力装置および仮想入力インターフェイスは、前記エントリ選択を実行するよう構成される、請求項２０に記載のシステム。
【請求項２２】
前記仮想入力装置は、前記テキストフィールドに近接近して表示される、請求項２１に記載のシステム。
【請求項２３】
対象の各セグメントは、前記入力カーソルの現在位置の前または後に存在する単語、文の断片、文、句、または節の少なくとも１つを含む、請求項１３に記載のシステム。
【請求項２４】
前記候補のエモティコンのセットを識別することはさらに、少なくともユーザプレファレンス、ユーザに関連する情報、または受信者に関連する情報に基づく、請求項１３に記載のシステム。
【請求項２５】
前記ユーザに関連する情報は、ユーザの興味と、ユーザの民族性と、ユーザの宗教と、ユーザの地理的位置と、ユーザの年齢と、ユーザの関係ステータスと、ユーザの職業とを含む、請求項２４に記載のシステム。
【請求項２６】
前記受信者に関連する情報は、ユーザに対する受信者の関係と、受信者の興味と、受信者の民族性と、受信者の宗教と、受信者の地理的位置と、受信者の年齢と、受信者の関係ステータスと、受信者の職業とを含む、請求項２４に記載のシステム。
【請求項２７】
セグメントのセットをテキストフィールドから受け取るための手段を含み、前記セグメントのセットは前記テキストフィールドにおける入力カーソルの現在位置に対して選択された対象の１つ以上のセグメントを含んでおり、さらに、
前記セグメントのセットに関連付けられる目標サブテキストまたは目標意味の少なくとも１つを決定するよう前記セグメントのセットを分析するための手段と、
候補のエモティコンのセットを識別するための手段とを含み、前記候補のエモティコンのセットにおける各候補のエモティコンは、前記候補のエモティコンと前記目標サブテキストまたは前記目標意味の少なくとも１つとの間に関連性を有しており、前記候補のエモティコンのセットは、１つ以上の候補のエモティコンを含んでおり、さらに、
エントリ選択のために前記入力カーソルの現在位置に前記候補のエモティコンのセットを提示するための手段と、
前記候補のエモティコンのセットからの選択されるエモティコンのセットについて、エントリ選択を受け取るための手段とを含み、前記選択されるエモティコンのセットは１つ
以上の選択されるエモティコンを含んでおり、さらに、
前記選択されるエモティコンのセットを前記テキストフィールドにおける前記入力カーソルの現在位置に挿入するための手段を含む、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の分野
本願明細書において記載される発明は一般的にエモティコン（emoticon）に関する。より特定的には、本発明は、コンピューティングデバイス上でのさまざまなアクティビティの間にエモティコンを識別および提案するためのシステムおよび方法に関する。
【背景技術】
【０００２】
関連技術の記載
元々、エモティコンは、文字、数および記号のようなコンピュータキーボード上に一般的に見出される文字（例えばＡＳＣＩＩ文字）によって示される顔表現であった。これらの元々のエモティコンは、著者による電子メッセージまたは電子投稿（たとえば電子掲示板）中に配置されると、著者の気分を伝えるか、または当該メッセージもしくは投稿の全体的な感情を伝達する／高めるよう意図されていた。最初は、これらのエモティコンは、幸福、怒り、悲しみおよび無関心といった気分を表すことに制限されていた。しかしながら徐々に、これらの文字ベースのエモティコンキャラクタ（以下、「文字エモティコン」）の使用は、意味とメッセージとを伝達することへと拡大した。
【０００３】
最終的にエモティコンはさらに、タイプ、可用性、および使用において拡大した。今日、エモティコンは、文字エモティコンと、グラフィカルイメージによって示されるエモティコン（以下、「グラフィカルエモティコン」）とを含む。グラフィカルエモティコンの可用性により、ユーザは、文字エモティコンだけでは可能ではなかったより多くの気分、意味およびメッセージを表現することができる。ここで、文字エモティコンおよびグラフィカルエモティコンの両方は、さまざまなデジタルデバイス（たとえばモバイルテレコミュニケーションデバイスおよびタブレット）を通じて利用可能であり、特にインターネットに関するさまざまなコンピューティングアクティビティにおいて用いられている。たとえば、グラフィカルエモティコンは、個人的な電子メールを作成する際、メッセージをインターネット上に投稿する際（たとえばソーシャルネットワーキングサイトまたはウェブフォーラム上）、およびモバイルデバイス同士の間でメッセージ通信を行う際の使用に一般に利用可能である。一般に、ユーザがエモティコンに適用可能なコンピューティングアクティビティを行なう際には、ユーザはメニューまたはライブラリを通じてエモティコンにアクセスし得る。ユーザは、当該メニューまたはライブラリから、コンピューティングアクティビティで使用されるエモティコンをブラウズおよび選択し得る。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
グラフィカルエモティコンの出現により、ユーザが選ぶことができるエモティコンの数は膨大に増加したという問題がある。ほとんどすべての想像可能な事項に利用可能なグラフィカルエモティコンが存在する。エモティコンの数、使用、可用性および多様性の拡大により、エモティコンを適用可能なコンピューティングアクティビティに参加している際に所与のコンテキストについて、ブラウズして適切なエモティコンを選択することは、ユーザにとってかなり時間を浪費することであり得、時に閉口させられることである。
【０００５】
実施の形態の概要
本願明細書において論じられるさまざまな実施の形態は、テキストのセグメントについてエモティコンを識別および提案するためのシステムおよび方法を提供する。いくつかのシステムおよび方法は、コンピューティングデバイス上でのユーザアクティビティの間に用いられ得る。ユーザアクティビティは、インスタントメッセージング、オンラインチャ
ットルームへの参加、電子メールの作成、ウェブブログの投稿、またはウェブフォーラムへの投稿を含むが、これらに限定されない。
【０００６】
例示的な方法は、セグメントのセットをテキストフィールドから受け取るステップと、上記セグメントのセットに関連付けられる目標サブテキストまたは目標意味の少なくとも１つを決定するよう上記セグメントのセットを分析するステップと、候補のエモティコンのセットを識別するステップとを含み、上記候補のエモティコンのセットにおける各候補のエモティコンは、上記候補のエモティコンと上記目標サブテキストまたは上記目標意味の少なくとも１つとの間に関連性を有している。上記方法はさらに、エントリ選択のために入力カーソルの現在位置に上記候補のエモティコンのセットを提示するステップと、上記候補のエモティコンのセットからの選択されるエモティコンのセットについて、エントリ選択を受け取るステップと、上記選択されるエモティコンのセットを上記テキストフィールドにおける上記入力カーソルの現在位置に挿入するステップを含んでもよい。上記セグメントのセットは上記テキストフィールドにおける入力カーソルの現在位置に対して選択された対象の１つ以上のセグメントを含んでもよく、上記候補のエモティコンのセットは、１つ以上の候補のエモティコンを含んでもよく、上記選択されるエモティコンのセットは１つ以上の選択されるエモティコンを含んでもよい。実施の形態に依存して、上記セグメントのセットを分析するステップは、上記セグメントのセットの意味分析を含んでもよい。
【０００７】
いくつかの実施の形態の場合、各関連性は、上記目標サブテキストまたは上記目標意味の少なくとも１つとの上記候補のエモティコンの統計的な使用を含んでもよい。さらに、いくつかの実施の形態の場合、上記方法は、上記選択されるエモティコンのセットについての上記エントリ選択に基づき、上記候補のエモティコンの上記統計的な使用を更新するステップをさらに含んでもよい。実施の形態に依存して、上記統計的な使用は単一のユーザまたは複数のユーザによる使用に基づいてもよい。
【０００８】
エントリ選択のために上記エモティコンのセットを提示するステップは、エントリ選択のために上記入力カーソルの現在位置または現在位置の近くに上記エモティコンを表示するステップを含んでもよい。エントリ選択のために上記候補のエモティコンのセットを提示するステップは、エントリ選択のために物理的な入力装置または仮想入力装置（たとえばオンスクリーンキーボードまたは投影されたキーボード）上に上記候補のエモティコンのセットを表示するステップを含んでもよく、上記物理的な入力装置および表示された入力インターフェイスは、上記エントリ選択を実行するよう構成される。実施の形態に依存して、上記仮想入力装置は、上記テキストフィールドも表示している表示装置によって表示されてもよい。さらに、上記仮想入力装置は、上記テキストフィールドに近接近して表示されてもよい。
【０００９】
いくつかの実施の形態では、上記方法はさらに、構文分析を用いて上記セグメントのセットを識別するステップを含んでもよい。対象の各セグメントは、入力カーソルの現在位置の前または後に存在する単語、文の断片、文、句、または節の少なくとも１つを含んでもよい。
【００１０】
特定の実施の形態では、上記候補のエモティコンのセットを識別するステップはさらに、少なくともユーザプレファレンス、ユーザに関連する情報、または受信者に関連する情報に基づいてもよい。上記ユーザに関連する情報は、ユーザの興味と、ユーザの民族性と、ユーザの宗教と、ユーザの地理的位置と、ユーザの年齢と、ユーザの関係ステータスと、ユーザの職業とを含んでもよい。上記受信者に関連する情報は、ユーザに対する受信者の関係と、受信者の興味と、受信者の民族性と、受信者の宗教と、受信者の地理的位置と、受信者の年齢と、受信者の関係ステータスと、受信者の職業とを含んでもよい。
【００１１】
例示的なシステムは、プロセッサと、表示モジュールと、入力モジュールと、セグメント分析モジュールと、エモティコン検索モジュールと、エモティコン提案モジュールと、エモティコン選択モジュールとを含む。上記表示モジュールは、テキストフィールドと上記テキストフィールドに入力される１つ以上のセグメントとを表示するよう構成されてもよい。
【００１２】
上記入力モジュールは、セグメント入力をユーザから受け取り、上記セグメント入力を上記テキストフィールド内に入力カーソルにて入力するよう構成されてもよい。セグメント分析モジュールは、セグメントのセットを上記テキストフィールドから受け取るよう構成されてもよく、上記セグメントのセットは上記テキストフィールドにおける上記入力カーソルの現在位置に対して選択された対象の１つ以上のセグメントを含む。上記セグメント分析モジュールはさらに、上記プロセッサを用いて、上記セグメントのセットに関連付けられる目標サブテキストまたは目標意味の少なくとも１つを決定するよう上記セグメントのセットを分析するよう構成されてもよい。上記エモティコン検索モジュールは、候補のエモティコンのセットを識別するよう構成されてもよく、上記候補のエモティコンのセットにおける各候補のエモティコンは、上記候補のエモティコンと上記目標サブテキストまたは上記目標意味の少なくとも１つとの間に関連性を有しており、上記候補のエモティコンのセットは、１つ以上の候補のエモティコンを含んでいる。上記エモティコン提案モジュールは、エントリ選択のために上記入力カーソルの現在位置に上記表示モジュールを通じて上記候補のエモティコンのセットを提示するよう構成されてもよい。上記エモティコン選択モジュールは、上記候補のエモティコンのセットからの選択されるエモティコンのセットについて、上記入力モジュールからエントリ選択を受け取るよう構成されてもよく、上記選択されるエモティコンのセットは１つ以上の選択されるエモティコンを含む。上記エモティコン選択モジュールはさらに、上記選択されるエモティコンのセットを上記テキストフィールドにおける上記入力カーソルの現在位置に挿入するよう構成されてもよい。
【００１３】
いくつかの実施の形態では、上記システムは、上記テキストフィールドへのエントリが可能な１つ以上のエモティコンを含むエモティコンデータストアをさらに含み、上記エモティコン検索モジュールはさらに、上記エモティコンデータストア上の候補のエモティコンのセットを識別するよう構成される。
【００１４】
さまざまな実施の形態では、各関連性は、上記目標サブテキストまたは上記目標意味の少なくとも１つとの上記候補のエモティコンの統計的な使用を含んでもよく、上記エモティコン選択モジュールはさらに、上記選択されるエモティコンのセットについての上記エントリ選択に基づき、上記候補のエモティコンの上記統計的な使用を更新するよう構成されてもよい。
【００１５】
いくつかの実施の形態では、エントリ選択のために上記表示モジュールを通じて上記エモティコンのセットを提示することは、エントリ選択のために上記入力カーソルの現在位置または現在位置の近くに上記エモティコンを表示することを含んでもよい。上記入力モジュールは物理的な入力装置または仮想入力装置を含んでもよく、上記物理的な入力装置および仮想入力インターフェイスは、上記エントリ選択を実行するよう構成される。
【００１６】
いくつかの実施の形態の他の特徴および局面は、添付の図面に関連して解釈される、さまざまな実施の形態に従って特徴を例示目的で記載する以下の詳細な説明から明らかになるであろう。
【００１７】
以下の図を参照してさまざまな実施の形態が詳細に記載される。当該図面は、例示目的
にのみ提供されており、単にいくつかの例示的な実施の形態を示す。これらの図面は、さまざまな実施の形態についての読者の理解を促進するために提供されており、実施の形態の広さ、範囲または適用可能性を限定するとは考えられるべきではない。
【図面の簡単な説明】
【００１８】
【図１】さまざまな実施の形態が用いられ得る環境の例を示す図である。
【図２】いくつかの実施の形態に従った例示的なエモティコン提案システムのブロック図である。
【図３】いくつかの実施の形態に従った、エモティコンを識別および提案するための例示的な方法のフローチャートである。
【図４】いくつかの実施の形態に従ったクライアントサーバアーキテクチャを用いる例示的なエモティコン提案システムのブロック図である。
【図５】ある実施の形態を利用するメッセージングアプリケーションのユーザインターフェイスを示す図である。
【図６】ある実施の形態を利用するメッセージングアプリケーションのユーザインターフェイスを示す図である。
【図７】例示的なデジタルデバイスのブロック図である。
【発明を実施するための形態】
【００１９】
実施の形態の詳細な説明
本願明細書において記載される多くの実施の形態は、テキストフィールドへの文字のタイピングを伴う、コンピューティングデバイス上でのさまざまなアクティビティの間に、エモティコンを識別および提案するシステムおよび方法に関する。さまざまなシステムおよび方法が、テキストフィールドに存在するセグメントのコンテキストの分析をするとともにそのコンテキストに基づいてテキストフィールドへのエントリに利用可能な１つ以上の候補のエモティコンを識別することにより、エモティコンを識別し得る。その後、ユーザは候補のエモティコンから１つ以上のエモティコンを選択し得、選択されるエモティコンは、テキストフィールドに入力され得る。随意では、ユーザは、エモティコンの提案を完全に無視するよう選択し、コンピューティングデバイス上の自身のアクティビティを継続し得る。この記載において使用されるように、「セグメント」は、単語、句、文の断片、文または節を示す１つ以上の文字を含み得る。
【００２０】
実施の形態に依存して、テキストフィールドに存在するセグメントのコンテキストの分析は、それらのセグメントの意味解析を必要とし得る、それらのセグメントに関するサブテキストまたは意味を決定することを伴い得る。さらに、本願明細書に記載されるように、特定の候補のエモティコンと特定のサブテキストまたは意味との間の関連性は、特定のサブテキストまたは意味を持つ特定の候補のエモティコンの（過去の）統計的な使用に基づき得る。さまざまな実施の形態では、このようなエモティコンの使用は、特定のサブテキストもしくは意味（たとえば特定のサブテキストもしくは意味における提案されるエモティコンのユーザの選択）との特定のエモティコンのユーザの個人的な使用に基づき得るか、または特定のサブテキストもしくは意味（たとえばユーザのコミュニティによるソーシャルネットワーク上の投稿におけるあるエモティコンの観察された使用）を持つ特定のエモティコンのコミュニティの使用に基づき得る。
【００２１】
図１は、さまざまな実施の形態が用いられ得る環境１００の例を示す。環境１００は、タブレットコンピューティングデバイス１０４と、タブレットコンピューティングデバイス１０４に結合されたローカルのエモティコンデータストア１０２と、スマートフォンコンピューティングデバイス１０８と、スマートフォンコンピューティングデバイス１０８に結合されたローカルのエモティコンデータストア１０６と、デスクトップコンピューティングデバイス１１２と、デスクトップコンピューティングデバイス１１２に結合された
ローカルのエモティコンデータストア１１４と、エモティコン提案サーバ１１６と、エモティコン提案サーバ１１６に結合されたローカルのエモティコンデータストア１１８とを含む。環境１００はさらに通信ネットワーク１１０を含む。通信ネットワーク１１０上で、タブレットコンピューティングデバイス１０４、スマートフォンコンピューティングデバイス１０８、デスクトップコンピューティングデバイス１１２およびエモティコン提案サーバ１１６が通信する。タブレットコンピューティングデバイス１０４、スマートフォンコンピューティングデバイス１０８、デスクトップコンピューティングデバイス１１２、およびエモティコン提案サーバ１１６は、プロセッサおよびメモリを有するデジタルデバイスの例である。さまざまな実施の形態が用いられ得る他の例示的なデジタルデバイスは、ラップトップ、ネットブック、ノートブック、メディアデバイス、音楽デバイス、携帯情報端末（ＰＤＡ）などを含む。例示的なデジタルデバイスが、図７にさらに記載される。
【００２２】
いくつかの実施の形態に従うと、タブレットコンピューティングデバイス１０４、スマートフォンコンピューティングデバイス１０８、およびデスクトップコンピューティングデバイス１１２は、入力のためのエモティコンを識別および提案するためのシステムおよび方法を利用する例示的なデジタルデバイスであり得る。たとえば、このようなコンピューティングデバイスは、ユーザがこのようなコンピューティングデバイス上でインスタントメッセージングアプリケーションを使用している場合、またはユーザがこのようなコンピューティングデバイスを通じてウェブサイトフォーラムにメッセージを投稿している場合に、ある実施の形態を用いてエモティコンを識別および提案し得る。本願明細書において記載されるさまざまな実施の形態に関連して他のデジタルデバイスが用いられ得ることが当業者には理解されるであろう。
【００２３】
いくつかの実施の形態では、エモティコン提案サーバ１１６は、デジタルデバイスにてユーザのためにエモティコンの識別および提案を促進し得る。本願明細書において後述されるように、エモティコン提案サーバ１１６は、セグメントのコンテキストを決定し得るか、決定されたコンテキストに基づいて１つ以上の候補のエモティコンを識別し得るか、デジタルデバイスに１つ以上の候補のエモティコンを提案し得るか、またはそれらの何らかの組合せを行い得る。さまざまな実施の形態の場合、エモティコン提案サーバ１１６は、エモティコン提案サーバ１１６がインターネットサービスにエモティコンの提案機能性を提供する場合、インターネットサービスをホストするサーバ上で動作するサービスであり得る。たとえば、エモティコン提案サーバ１１６は、エモティコン提案サーバ１１６によってサービスが提供されている（すなわちエモティコン提案サーバ１１６によってエモティコンの提案が提供されている）ウェブサイト（たとえばウェブサイトフォーラムまたはソーシャルネットワーキングウェブサイト）をホストしているウェブサーバ上で動作するサービスであり得る。
【００２４】
実施の形態に依存して、エモティコンを識別および提案するためのさまざまな動作およびコンポーネントは、エモティコンの提案を利用するデジタルデバイスに分離され得るか、または２つ以上のデジタルデバイスの間で変動するレベルで分散され得る。たとえば、スマートフォンコンピューティングデバイス１０８上で電子メールを作成する際にエモティコンを識別、提案、および入力するためのシステムまたは方法は、スマートフォンコンピューティングデバイス１０８上に格納および動作される電子メールアプリケーションに完全に埋め込まれ得る。代替的な例においては、ウェブサイトフォーラムのためにメッセージ投稿を準備するようタブレットコンピューティングデバイス１０４を使用している間、エモティコンを識別、提案、および入力するためのシステムまたは方法は、タブレットコンピューティングデバイス１０４を利用して、現在準備されるメッセージのコンテキストを決定し、エモティコン提案サーバ１１６を利用して、現在準備されるメッセージにおいて使用される１つ以上の候補のエモティコンを識別し、次いで、タブレットコンピュー
ティングデバイス１０４を利用して、提案されるエモティコンとして候補のエモティコンを提示し得る。
【００２５】
エモティコン提案サーバ１１６は、デジタルデバイスへのエモティコンの識別および提案の間、リモートのエモティコンデータストア１１８を利用し得る。ある実施の形態の場合、リモートのエモティコンデータストア１１８は、エモティコン提案サーバ１１６による提案に利用可能なエモティコンのライブラリと、当該ライブラリにおけるエモティコンとコンテキスト（たとえばサブテキストおよび意味）との間の関連性とを含み得る。たとえば、リモートのエモティコンデータストア１１８は、「幸せな顔」のエモティコンのライブラリと、「幸せな顔」のエモティコンと幸福なコンテキストとの間の関連性とを含み得る。別の例では、リモートのエモティコンデータストア１１８は、「サンフランシスコ」のエモティコンのライブラリと、「サンフランシスコ」のエモティコンとサンフランシスコの町を明示的または暗黙的に指すコンテキストとの間の関連性とを含み得る。いくつかの実施の形態の場合、リモートのエモティコンデータストア１１８は、所与のエモティコンと所与のコンテキスト（たとえばサブテキストまたは意味）との間の２つ以上の関連性を含み得る。たとえば、リモートのエモティコンデータストア１１８は、「しかめっ面」のエモティコンのライブラリと、「しかめっ面」のエモティコンと悲しいコンテキストとの間の関連性と、「しかめっ面」のエモティコンと不快なコンテキストとの間の関連性とを含み得る。さまざまなエモティコンライブラリおよびエモティコンとコンテキストとの間のさまざまな関連性が、リモートのエモティコンデータストア１１８上に格納され得るということを当業者であれば理解するであろう。
【００２６】
実施の形態に依存して、エモティコンのライブラリは、任意のユーザによってアクセス可能なエモティコンか、（たとえば、プレミアムに基づくか、またはあるグループにのみアクセス可能であるといった）アクセスが制限された限定されたグループのユーザによってアクセス可能なエモティコンか、ユーザがカスタマイズしたエモティコンもしくはユーザがアップロードしたエモティコン、またはユーザのお気に入りであるエモティコンを含み得る。著者の気分または感情を伝える文字エモティコンおよびグラフィカルエモティコンに加えて、さまざまな実施の形態において使用されるエモティコンは、関心事、趣味、地理的な位置、イベント、休日、季節および天候などに関するエモティコンを含み得る。エモティコン提案データストア１１８上に格納されたエモティコンは、文字エモティコン、グラフィカルエモティコン、グラフィカルにアニメーション化されたエモティコン、および音を伴ったエモティコンを含み得る。いくつかの実施の形態の場合、リモートのエモティコンデータストア１１８はさらに、提案に好適なエモティコンを識別する際に実施の形態において利用され得るユーザプレファレンス、ユーザ情報または受信者情報を含み得る。たとえば、リモートのエモティコンデータストア１１８は、任意のユーザに一般に利用可能なエモティコンを提案する前に、ユーザが規定したエモティコンまたはユーザがアップロードしたエモティコンを実施の形態に提案させるユーザプレファレンスを格納し得る。別の例では、リモートのエモティコンデータストア１１８は、実施の形態によってユーザに提案された第１のエモティコンを実施の形態に自動的に挿入させるか、または所与のコンテキストにおいてもっとも使用が高い提案されるエモティコンを実施の形態に自動的に挿入させるユーザプレファレンスを格納し得る。
【００２７】
いくつかの実施の形態では、タブレットコンピューティングデバイス１０４、スマートフォンコンピューティングデバイス１０８およびデスクトップコンピューティングデバイス１１２は各々、別個のローカルのエモティコンデータストアに結合され得る。別個のローカルのエモティコンデータストアは、ユーザがカスタマイズしたエモティコン、ユーザのお気に入りもしくはユーザが好むエモティコン、ローカルのエモティコン上に格納されたエモティコンとコンテキスト（たとえばサブテキストまたは意味）との間の関連性、エモティコンの識別および提案に関してのユーザプレファレンス、ユーザに関連する情報、
または受信者に関連する情報を格納可能である。たとえば、タブレットコンピューティングデバイス１０４は、ローカルのエモティコンデータストア１０２に結合され得、スマートフォンコンピューティングデバイス１０８は、結合されたローカルのエモティコンデータストア１０６に結合され得、デスクトップコンピューティングデバイス１１２は、ローカルのエモティコンデータストア１１４に結合され得る。
【００２８】
さらに、ローカルのエモティコンデータストア１０２、１０６および１１４の各々は、それらのそれぞれのコンピューティングデバイスによって用いられて、以前に提案されたエモティコンまたは以前にユーザによって選択された提案されたエモティコンをローカルにキャッシュし得る。その際、いくつかの実施の形態は、当該提案されたエモティコンについてエモティコン提案サーバ１１６がクエリを受ける回数を制限しつつ、共通して発生するコンテキストについて同じエモティコンを繰り返し提案し得る。いくつかの実施の形態の場合、ローカルのエモティコンデータストア１０２、１０６および１１４にキャッシュされたエモティコンは、失効時間を有し得る。当該失効時間の後、キャッシュされたエモティコンは無効化またはパージされる。ひとたびキャッシュ中のエモティコンアイテムが失効すると、いくつかの実施の形態は、提案されるエモティコンについてエモティコン提案サーバ１１６にクエリを送ることを再開する。
【００２９】
図２は、いくつかの実施の形態に従った例示的なエモティコン提案システム２００のブロック図である。エモティコン提案システム２００は、表示モジュール２０２、入力モジュール２０４、セグメント分析モジュール２０６、エモティコン検索モジュール２０８、エモティコン提案モジュール２１０、エモティコン選択モジュール２１２、およびエモティコンデータストア２１４を含み得る。いくつかの実施の形態では、エモティコン提案システム２００はさらに、エモティコン提案システム２００に含まれるさまざまなモジュールの動作を促進するメモリおよび少なくとも１つのプロセッサを含み得る。
【００３０】
表示モジュール２０２は、テキストフィールドまたはテキストボックスのような入力フィールドを表示し得る。入力フィールドに、ユーザは入力モジュール２０４を使用して、１つ以上のセグメント、文字エモティコンまたはグラフィカルエモティコンを入力し得る。典型的に、セグメントおよびエモティコンは、入力フィールドに入力されると、入力フィールドに現われる。本願明細書において示されるように、「セグメント」は、単語、句、文の断片、文または節を示す１つ以上の文字を含み得る。入力フィールドの一部として、表示モジュール２０２は、ユーザの文字入力が次にどこに入力されるか、またはエモティコンが次にどこに入力されるかを示す入力カーソルを表示し得る。
【００３１】
本願明細書において示されるように、さまざまな実施の形態は、入力フィールド内の入力カーソルの現在位置、入力の現在のセグメント内容、ユーザに関連する情報、受信者に関連する情報、ユーザプレファレンスまたはそれらの何らかの組合せに基づき、エモティコンを提案し得る。一般に、ひとたび１つ以上の候補のエモティコンがユーザへの提案のために（たとえば、入力フィールドのセグメント内容に基づいて）識別されると、候補のエモティコンは表示モジュール２０２を介してユーザに提案され得る。具体的には、表示モジュール２０２は、ユーザの選択のために、入力フィールドにおける入力カーソルの現在位置または当該現在位置の近くに、候補のエモティコンを表示し得る。実施の形態に依存して、表示モジュール２０２は、コールアウトボックスを介して、入力フィールドまたはその入力フィールドの近くに、候補のエモティコンを表示し得る。
【００３２】
いくつかの実施の形態の場合、表示モジュール２０２は、デジタルデバイス（たとえばビデオディスプレイまたはビデオプロジェクタ）の一部を形成し得る。当該デジタルデバイスは、デジタルデバイスからのグラフィカル出力をすべて表示することを担い得る。いくつかの実施の形態では、表示モジュール２０２は、グラフィカルユーザインターフェイ
ス（ＧＵＩ）の一部として、入力フィールドを表示し得る。たとえば、入力フィールドは、デジタルデバイス上で動作するアプリケーションのグラフィカルコンポーネントであり得る（たとえば電子メールクライアントもしくはインスタントメッセージングアプリケーション）か、またはデジタルデバイス上で動作するアプリケーションを通じて閲覧可能もしくは編集可能である文書のグラフィカル表示であり得る（たとえば、ウェブブラウザを通じて示されるウェブページのテキストフィールドもしくはワードプロセッサを通じて示される文書）。当業者であれば、実施の形態同士の間で入力フィールドのタイプとサイズが変動し得るということを理解するであろう。
【００３３】
入力モジュール２０４は、ユーザから文字入力を受け取り得、受け取られたようにこのような文字入力を入力フィールドに入力し得る。文字入力が入力フィールドに入力されると、表示モジュール２０２は、当該文字入力で入力フィールドを更新し得る。さらに、さまざまな実施の形態に従うと、入力モジュール２０４は、提案されるエモティコンについてのエントリ選択を受け取り得る。一般に、選択に際して、選択されるエモティコンは、入力フィールドにおける入力カーソルの現在位置に挿入され得る。実施の形態に依存して、入力モジュールは、デジタルデバイスに外部的に結合されるか、またはデジタルデバイスに物理的に埋め込まれる物理的な入力装置を含み得る。物理的な入力装置の例は、キーボード、トラックパッドまたはコンピュータマウスを含み得るが、これらに限定されない。いくつかの実施の形態では、入力モジュールは、レーザ投射されたキーボードまたはオンスクリーンキーボードのような仮想入力装置を含み得る。仮想入力装置は、表示モジュール２０２を通じてユーザに提供され得る（すなわち表示され得る）。さまざまな実施の形態において、仮想入力装置が使用される際には、このような仮想入力装置は、セグメントが入力される入力フィールドまたはその入力フィールドの近くに表示され得る。
【００３４】
図６にさらに記載されるように、いくつかの実施の形態において、提案されるエモティコンは、入力モジュール２０４を通じてユーザに提示され得る。たとえば、入力モジュール２０４が物理的なキーボードを含む場合、物理的なキーボードは、提案されるエモティコンを当該物理的なキーボードを通じて表示するように構成され得る。いくつかの実施の形態の場合、物理的なキーボードは、埋め込まれたディスプレイ（たとえばＬＣＤボタン）を含むキーもしくはボタンによって、または物理的なキーボードの表面上（たとえばキーボードの頂部）に埋め込まれたディスプレイによって、提案されるエモティコンを表示し得る。実施の形態に依存して、提案されるエモティコンは、物理的なキーボードを通じてカラーまたはグレイスケールで表示され得る。提案されるエモティコンが物理的なキーボードを通じて表示される際、ユーザは、物理的なキーボードのキーまたはボタンを通じて、当該提案されるエモティコンの１つ以上を選択し得る。
【００３５】
別の例では、入力モジュール２０４が、（何らかのタブレットコンピューティングデバイスおよびスマートフォンコンピューティングデバイス上に存在するもののような）オンスクリーンキーボードを含む場合、オンスクリーンキーボードの外観は、オンスクリーンキーボードを通じて、提案されるエモティコンを表示するよう再構成され得る。いくつかの実施の形態の場合、オンスクリーンキーボードの外観は、オンスクリーンキーボードのあるボタンが、提案されるエモティコンボタンに置換されるように再構成され得るか、またはオンスクリーンキーボードが、付加的な提案されるエモティコンボタンで強化されるように再構成され得る。提案されるエモティコンボタンは、ひとたびオンスクリーンキーボードを通じて提示されると、１つ以上の提案されるエモティコンから選択するようユーザによって使用され得る。
【００３６】
セグメント分析モジュール２０６は、入力フィールドに存在する１つ以上のセグメントを分析し、分析されたセグメントについてコンテキストを決定し得る。本願明細書に記載されるように、セグメント分析モジュール２０６によって決定されたコンテキストはその
後、ユーザに提案されるべき候補のエモティコンを識別する際に、利用され得る。さまざまな実施の形態では、セグメント分析モジュール２０６は、入力フィールドにおけるセグメントのコンテキストを決定する際に、入力フィールドから対象のセグメントのみを分析し得る。
【００３７】
いくつかの実施の形態では、セグメント分析モジュール２０６はまず、入力フィールドにおける対象のセグメントを識別し、次いで、コンテキストを決定するよう対象のそれらのセグメントを分析する。一般に、対象のセグメントは、入力フィールドにおける入力カーソルの現在位置に関連して識別される。さらにいくつかの実施の形態の場合、セグメント分析モジュール２０６は、対象のセグメントを識別する際に、入力フィールドに現在存在するセグメントの構文分析を行ない得る。
【００３８】
実施の形態に依存して、セグメント分析モジュール２０６は、対象のセグメント識別プロセスをガイドする条件付きまたは非条件付きのルールに基づいて、対象のセグメントを識別し得る。対象のセグメントを識別するための例示的なルールは、対象のセグメントとして、入力フィールドにおける入力カーソルの現在位置の直前の文の断片または文を識別することを含み得る。対象のセグメントを識別するための別の例示的なルールは、対象のセグメントとして、入力フィールドにおける入力カーソルの現在位置の直後の文の断片または文を識別することを含み得る。いくつかの実施の形態の場合、ルールは、対象のセグメントを決定するよう、セグメント分析モジュール２０６によって行なわれた構文分析に関連して利用され得る。
【００３９】
１つより多い対象のセグメントが識別される場合、セグメント分析モジュール２０６は、対象のセグメントの各々のコンテキストを分析し得るか、または（たとえば、対象のあるセグメントが他のセグメントより重要性が高くなる重み付けシステムに基づいて）もっとも重要でない対象のセグメント以外のコンテキストを分析し得る。さらに１つ以上のルールは、２つ以上の対象のセグメントが識別される場合、対象のセグメントのうちどれを分析すべきかを決定し得る。
【００４０】
セグメント分析モジュール２０６は、対象のセグメントからの２つ以上のコンテキストを決定し得る。このような場合、エモティコン提案システム２００は、決定されたコンテキストのすべてに関連付けられる候補のエモティコンを検索し得るか、または（たとえばルールに基づいて決定された）もっとも重要なコンテキストのうち１つ以上にマッチする候補のエモティコンのみを検索し得る。
【００４１】
対象の１つ以上のセグメントのコンテキストを決定するよう、セグメント分析モジュール２０６は、入力フィールドに存在する対象のセグメントを意味分析し得る。当業者であれば、このセグメントの意味分析は、当該技術において公知の１つ以上の技術に従って行なわれ得るということを理解するであろう。対象の１つ以上のセグメントのコンテキストを分析する場合、セグメント分析モジュール２０６は、対象のセグメントについてのサブテキストまたは意味を決定し得る。対象のセグメントについて識別されたサブテキストまたは意味に基づいて、エモティコン提案システム２００は、提案のために１つ以上の候補のエモティコンを識別し得る。対象のセグメントのサブテキストは、当該対象のセグメントについて気分または感情を識別し得る。対象のセグメントについての例示的なサブテキストは、幸福、悲しみ、無関心、怒り、憤慨、悔恨または興奮を含み得るがこれらに限定されない。対象のセグメントについての意味は、対象のセグメントについての明示的な意味を識別し得る。たとえば、対象のセグメントが「新しい仕事をゲットした！」と記載する場合、セグメント分析モジュール２０６は対象のセグメントについての意味を「新しい仕事」として識別し得る。
【００４２】
なお、いくつかの実施の形態の場合、セグメント分析モジュール２０６は、入力モジュール２０４を使用してユーザが文字またはエモティコンを加えるかまたは入力フィールドから文字またはエモティコンを取り除く際に、リアルタイムまたはほぼリアルタイムで対象のセグメントを識別および分析し得る。
【００４３】
エモティコン検索モジュール２０８は、対象のセグメントの識別されたコンテキスト（たとえばサブテキストまたは意味）に基づいて、１つ以上の候補のエモティコンを検索し得る。いくつかの実施の形態では、エモティコン検索モジュール２０８は、エモティコン提案システム２００によって識別された１つ以上のコンテキストに関連したエモティコンを求めて、エモティコンデータストア２１４を検索し得る。本願明細書に記載されるように、エモティコンデータストア２１４は、入力フィールドへの入力に利用可能なエモティコンと、エモティコンと１つ以上のコンテキストとの間の関連性とを含み得る。
【００４４】
本願明細書において示されるように、所与のエモティコンと所与のコンテキストとの間の関連性は、当該所与のコンテキストとの所与のエモティコンの統計的な使用を含み得る。所与のエモティコンと所与のコンテキストとの間の関連性の強さは、このような統計的な使用に基づき得る。さらに、統計的な使用は、所与の内容との所与のエモティコンのユーザ自身の使用に基づき得るか、またはユーザのコミュニティによる所与の内容との所与のエモティコンの使用（たとえばソーシャルネットワーキングウェブサイト上の所与のコンテキストにおける所与のエモティコンの使用）に基づき得る。
【００４５】
一般に、所与のコンテキストとの所与のエモティコンの使用が多くなるほど、当該所与のエモティコンと所与のコンテキストとの間の関連性が強くなる。いくつかの実施の形態の場合、エモティコンとコンテキストとの間の関連性の強さは、当該コンテキストについてのエモティコンを提案することにおける信頼性を示し得る。関連性の強さも、もっとも高い強さからもっとも低いの強さまで１つ以上の候補のエモティコンに優先順位を付けて提示するよう使用され得る。
【００４６】
いくつかの実施の形態では、エモティコン検索エンジンモジュール２０８による１つ以上の候補のエモティコンの検索は、エモティコンとコンテキストとの間の関連性の強さを考慮し得る。たとえば、エモティコン検索エンジンモジュール２０８は、エモティコンと目標コンテキストとの間の関連性の強さが所定のしきい値に合致または超える場合、単にエモティコンを候補のエモティコンとして識別し得る。さらに、エモティコン検索エンジンモジュール２０８は、あるエモティコンと目標コンテキストとの間の関連性の強さが、他の潜在的な候補のエモティコンに対するしきい値に合致または越える場合に、単に当該エモティコンを候補のエモティコンとして識別し得る。
【００４７】
本願明細書において示されたように、さまざまな実施の形態において、エモティコン検索モジュール２０８は、ユーザプレファレンス、ユーザに関連する情報、受信者に関連する情報、またはそれらの何らかの組合せを用いることによって、候補のエモティコンの検索をさらに狭め得る。ユーザプレファレンスの例は、他のタイプのエモティコンの前に、ユーザがカスタマイズしたエモティコンを提案するプレファレンスと、あるカテゴリのエモティコンを無視するプレファレンス（たとえば、ユーザに関して年齢が適切であるエモティコンのみを提案する）とを含み得るがこれらに限定されない。受信者に関連する情報の例は、ユーザの興味、ユーザの民族性、ユーザの宗教、ユーザの地理的位置、ユーザの年齢、ユーザの関係ステータス、およびユーザの職業を含み得るがこれらに限定されない。ユーザに関連する情報の例は、ユーザに対する受信者の関係と、受信者の興味と、受信者の民族性と、受信者の宗教と、受信者の地理的位置と、受信者の年齢と、受信者の関係ステータスと、受信者の職業とを含み得るがこれらに限定されない。ある実施の形態では、１つ以上の候補のエモティコンを検索する際、エモティコン検索モジュール２０８は、
さらに、文字エモティコンまたはグラフィカルエモティコンを受け取ることにおいて入力フィールドの制限を考慮し、それにしたがって候補のエモティコンを検索し得る。
【００４８】
エモティコン提案モジュール２１０は、対象のセグメントの識別されたコンテキストに基づいて特定された１つ以上の候補のエモティコンを受け取り、選択のためにユーザに当該１つ以上の候補のエモティコンを提示し得る。本願明細書に示されるように、いくつかの実施の形態において、エモティコン提案モジュール２１０は、エントリ選択のために１つ以上の候補のエモティコンを入力フィールドにおける入力カーソルの現在位置またはその現在位置の近くに表示するよう表示モジュール２０２を使用し得る。さらに本願明細書において示されるように、さまざまな実施の形態において、エモティコン提案モジュール２１０は、物理的な入力装置または仮想入力装置を通じて、エントリ選択のために１つ以上の候補のエモティコンを表示するよう入力モジュール２０２を使用し得る。
【００４９】
エモティコン選択モジュール２１２は、ユーザに提案される１つ以上の候補のエモティコンについてエントリ選択をユーザから受け取り得る。特定の実施の形態において、エモティコン選択モジュール２１２は、入力モジュール２０４を通じて１つ以上の候補のエモティコンについてエントリ選択を受け取り得、エモティコン選択モジュール２１２は、入力フィールドに１つ以上の選択されるエモティコンを入力し得る。本願明細書において示されるように、エモティコン選択モジュール２１２は、入力カーソルの現在位置に、１つ以上の選択されるエモティコンを入力し得る。いくつかの実施の形態の場合、エモティコン選択モジュール２１２は、入力フィールド内のセグメントまたは対象のセグメントを１つ以上の選択されるエモティコンに置換することによって、入力フィールドに１つ以上の選択されるエモティコンを入力し得る。さらに、いくつかの実施の形態は、モジュール２１２があるガイドラインに基づいて、提案されるエモティコンを自動選択するように（たとえばユーザプレファレンスを使用して）ユーザがエモティコン選択モジュール２１２を設定することを可能にする。たとえばユーザは、エモティコンの提案がなされると、第１の提案されたエモティコンが選択されるように、エモティコン選択モジュール２１２を構成し得る。
【００５０】
いくつかの実施の形態では、エモティコンとコンテキストとの間の関連性がこのようなコンテキストとのこのようなエモティコンの統計的な使用を含む場合、エモティコン選択モジュール２１２は、ユーザから受け取られたエントリ選択に基づいて、統計的使用情報を更新し得る。特に、エモティコン選択モジュール２１２は、所与のコンテキストについての１つ以上の候補のエモティコンのエントリ選択を受け取り、選択された候補のエモティコンとそれらの使用のそれぞれのコンテキストとの間で、格納された統計的使用情報を更新し得る。実施の形態に依存して、エモティコン選択モジュール２１２は、エモティコンデータストア２１４上の統計的使用情報を更新し得る。
【００５１】
エモティコンデータストア２１４は、エモティコン提案システム２００による提案に利用可能なエモティコンのライブラリと、ライブラリにおけるエモティコンとコンテキスト（たとえばサブテキストおよび意味）との間の関連性とを含み得る。エモティコン検索モジュール２０８は、１つ以上の特定のコンテキストに関連付けられる１つ以上の候補のエモティコンを検索する場合、エモティコンデータストア２１４にアクセスし得る。本願明細書において示されるように、いくつかの実施の形態の場合、エモティコンデータストア２１４は、所与のエモティコンと所与のコンテキスト（たとえばサブテキストまたは意味）との間の２つ以上の関連性を含み得る。さらに、所与のエモティコンと所与のコンテキストとの間の関連性は、所与のコンテキストとの所与のエモティコンの統計的な使用を含み得る。このような統計的な使用は、エモティコンとコンテキストとの間の関連性の強さを反映し得る。
【００５２】
エモティコンデータストア２１４上に格納されたエモティコンは、文字エモティコン、グラフィカルエモティコン、グラフィカルにアニメーション化されたエモティコン、および音を伴ったエモティコンを含み得る。いくつかの実施の形態の場合、エモティコンデータストア２１４はさらに、提案に好適なエモティコンを識別する際に、実施の形態において用いられ得るユーザプレファレンス、ユーザ情報、または受信者情報を含み得る。たとえば、エモティコンデータストア２１４は、任意のユーザに一般に利用可能なエモティコンを提案する前に、ユーザが規定したエモティコンまたはユーザがアップロードしたエモティコンを実施の形態に提案させるユーザプレファレンスを格納し得る。別の例では、エモティコンデータストア２１４は、実施の形態によってユーザに提案された第１のエモティコンを実施の形態に自動的に挿入させるユーザプレファレンスか、または所与のコンテキストにおいてもっとも高い使用を有する提案されるエモティコンを実施の形態に自動的に挿入させるユーザプレファレンスを格納し得る。
【００５３】
当業者は、さまざまなエモティコンライブラリおよびエモティコンとコンテキストとの間のさまざまな関連性は、エモティコンデータストア２１４上に格納され得るということを理解するであろう。
【００５４】
「モジュール」は、ソフトウェア、ハードウェア、ファームウェアおよび／または回路網を含み得るということが理解されるであろう。一例では、プロセッサによって実行可能な命令を含む１つ以上のソフトウェアプログラムが、本願明細書において記載されたモジュールの機能の１つ以上を実行し得る。別の例では、回路網が、同じまたは同様の機能を実行し得る。代替的な実施の形態は、より多い、より少ない、または機能的に等価なモジュールを含み得、これも本実施の形態の範囲内である。たとえば、さまざまなモジュールの機能は、異なって組み合わせられるまたは分割され得る。たとえば、さまざまなモジュールの機能は、エモティコン提案サーバに存在する１つ以上のモジュールの間で分散され得、１つ以上のモジュールがエモティコン提案クライアントに存在する。
【００５５】
図３は、いくつかの実施の形態に従った、エモティコンを識別および提案するための例示的な方法３００のフローチャートである。ステップ３０２において、セグメント分析モジュール２０６は、表示モジュール２０２を通じて表示され得る入力フィールドから１つ以上のセグメントを受け取り得る。本願明細書において示されるように、１つ以上のセグメントを受け取る際、セグメント分析モジュール２０６は、コンテキスト分析の目的のために、対象のセグメントを識別し得る。
【００５６】
ステップ３０４では、セグメント分析モジュール２０６は、セグメントの１つ以上の目標サブテキストまたは１つ以上の目標意味を決定するよう１つ以上のセグメントを分析し得る。セグメントの目標サブテキストおよび目標意味は、セグメントに関連した１つ以上のコンテキストを提供する。実施の形態に依存して、セグメント分析モジュール２０６は、セグメント分析モジュール２０６によって対象のセグメントとして識別されたセグメントのみを分析し得る。
【００５７】
ステップ３０６では、エモティコン検索モジュール２０８は、１つ以上の目標コンテキストとの関連性を有する１つ以上の候補のエモティコンか、またはセグメント分析モジュール２０６によって決定され得た１つ以上の目標意味を識別し得る。いくつかの実施の形態では、エモティコン検索モジュール２０８は、目標サブテキストまたは目標意味と関連性とを有する、エモティコンデータストア２１４中の１つ以上の候補のエモティコンを識別し得る。本願明細書において示されるように、各関連性の強さは、所与のコンテキストとの所与のエモティコンの統計的な使用に基づき得、エモティコン検索モジュール２０８が１つ以上の候補のエモティコンを識別する際には、このような強さが考慮に入れられ得る。
【００５８】
ステップ３０８では、エモティコン提案モジュール２１０は、入力フィールドにおける入力カーソルの現在位置に、エントリ選択のためにユーザに１つ以上の候補のエモティコンを提示し得る。本願明細書に記載されるように、入力フィールドおよびその中の入力カーソルは、表示モジュール２０２を通じてユーザに表示され得る。いくつかの実施の形態の場合、エモティコン提案モジュール２１０は、表示モジュール２０２を使用して、エントリ選択のためにユーザに１つ以上の候補のエモティコンを提示し得、入力フィールドにおける入力カーソルの現在位置またはその現在位置の近くに候補のエモティコンを表示し得る。さらに、エモティコン提案モジュール２１０は、入力モジュール２０４の１つ以上の入力装置を通じてエントリ選択のためにユーザに１つ以上の候補のエモティコンを提示し得る。たとえば、エモティコン提案モジュール２１０は、ディスプレイを有する物理的なキーボードのような物理的な入力装置を通じてまたはオンスクリーンキーボードのような仮想入力装置を通じて、ユーザに１つ以上の候補のエモティコンを提示し得る。
【００５９】
ステップ３１０では、エモティコン選択モジュール２１２は、１つ以上の候補のエモティコンからの１つ以上の選択したエモティコンについて、ユーザからエントリ選択を受け取り得る。いくつかの実施の形態の場合、エモティコン選択モジュール２１２は、入力モジュール２０４からエントリ選択を受け取り得る。さらに、エントリ選択を受け取る際に、エモティコン選択モジュール２１２は、１つ以上の候補のエモティコンについて、エントリ選択に基づき、エモティコンデータストア２１４上で統計的使用情報を更新し得、これにより、候補のエモティコンと特定のコンテキストとの間の関連性を強くするまたは弱くする。
【００６０】
ステップ３１２では、エントリ選択に基づき、エモティコン選択モジュール２１２は、テキストフィールドにおける入力カーソルの現在位置に、エモティコン選択モジュール２１２によって受け取られた１つ以上の候補のエモティコンを挿入し得る。本願明細書において示されるように、いくつかの実施の形態において、入力フィールドへの候補のエモティコンのエントリは、入力フィールドにおける１つ以上のセグメントを、選択されるエモティコンに置換することを伴い得る。
【００６１】
図４は、いくつかの実施の形態に従った、クライアントサーバアーキテクチャを使用する例示的なエモティコン提案システム４００のブロック図である。エモティコン提案システム４００は、エモティコン提案クライアント４０２およびエモティコン提案サーバ４２０を含み得る。いくつかの実施の形態では、エモティコン提案クライアント４０２は、図７に記載されるデジタルデバイスまたは図１に記載されるコンピューティングデバイス（すなわちタブレットコンピューティングデバイス１０４、スマートフォンコンピューティングデバイス１０８およびデスクトップコンピューティングデバイス１１２）と同様であり得、エモティコン提案サーバ４２０は、図７に記載されるデジタルデバイスまたは図１に記載されたエモティコン提案サーバ１１６と同様であり得る。エモティコン提案クライアント４０２およびエモティコン提案サーバ４２０は、通信ネットワーク４１８上で互いに通信し得る。
【００６２】
エモティコン提案クライアント４０２は、表示モジュール４０４、入力モジュール４０６、セグメント分析モジュール４０８、エモティコン検索モジュール４１０、ローカルのエモティコンデータストア４１２、エモティコン提案モジュール４１４、およびエモティコン選択モジュール４１６を含み得る。エモティコン提案サーバ４２０は、エモティコン検索エンジン４２２と、リモートのエモティコンデータストア４２４とを含み得る。
【００６３】
エモティコン提案クライアント４０２では、表示モジュール４０４は、ユーザが入力モジュール４０６を使用して、１つ以上のセグメント、文字エモティコンまたはグラフィカ
ルエモティコンを入力し得る入力フィールドを表示し得る。典型的には、セグメントおよびエモティコンは、入力フィールドに入力されると、入力フィールドに現われる。当該入力フィールドにより、表示モジュール４０４は、入力フィールドに入力カーソルを表示し得る。入力フィールドでは、入力カーソルは、ユーザの文字入力が次にどこに入力されるか、またはエモティコンが次にどこに入力されるかを示す。
【００６４】
さまざまな実施の形態は、たとえば、入力フィールドにおける入力カーソルの現在位置、入力の現在のセグメント内容、ユーザに関連する情報、受信者に関連する情報、ユーザプレファレンス、またはそれらの何らかの組合せを含む多くの要因に基づき、エモティコンを提案し得る。ひとたび識別された候補のエモティコンは、表示モジュール４０４を介してユーザに提案され得る。具体的には、表示モジュール４０４は、ユーザの選択のために、入力フィールドにおける入力カーソルの現在位置またはその現在位置の近くに候補のエモティコンを表示し得る。実施の形態に依存して、表示モジュール４０４は、コールアウトボックスを介して、入力フィールドまたはその入力フィールドの近くに候補のエモティコンを表示し得る。
【００６５】
表示モジュール４０４によって、デジタルデバイスは、デジタルデバイスからのすべてのグラフィカル出力を表示し得る。いくつかの実施の形態では、表示モジュール４０４は、グラフィカルユーザインターフェイス（ＧＵＩ）の一部として、入力フィールドを表示し得る。実施の形態に依存して、入力フィールドは、デジタルデバイス上で動作するアプリケーションのグラフィカルコンポーネントか、またはデジタルデバイス上で動作するアプリケーションを通じて閲覧可能もしくは編集可能である文書のグラフィカル表現であり得る。入力フィールドは、実施の形態ごとに、タイプおよびサイズが変動し得るということが当業者によって理解されるであろう。
【００６６】
入力モジュール４０６は、ユーザから文字入力を受け取り、受け取られた文字入力を入力フィールドに入力し得る。文字入力が入力フィールドに入力されると、表示モジュール４０４は、当該文字入力で入力フィールドを更新し得る。さらに、入力モジュール４０６は、さまざまな実施の形態に従って提案されるエモティコンについてエントリ選択をさらに受け取り得る。一般に、選択の際、選択されるエモティコンは、入力フィールドにおける入力カーソルの現在位置に挿入され得る。本願明細書において示されるように、入力モジュールは、デジタルデバイスに外部から結合されるかもしくはデジタルデバイスに物理的に埋め込まれた物理的な入力装置か、または表示モジュール４０４によってユーザに提供され得るオンスクリーンキーボードのような仮想入力装置を含み得る。さまざまな実施の形態において、仮想入力装置が使用される場合、このような仮想入力装置は、セグメントが入力される入力フィールドまたはその入力フィールドの近くに表示され得る。
【００６７】
いくつかの実施の形態の場合、提案されるエモティコンは、入力モジュール４０６を通じてユーザに提示され得る。たとえば、入力モジュール４０６が物理的なキーボードを含む場合、物理的なキーボードは、物理的なキーボードを通じて、提案されるエモティコンを表示するように構成され得る。いくつかの実施の形態の場合、物理的なキーボードは、埋め込まれたディスプレイ（たとえばＬＣＤボタン）を含むキーまたはボタンによってか、または物理的なキーボードの表面（たとえばキーボードの頂部）上に埋め込まれたディスプレイによって、提案されるエモティコンを表示し得る。提案されるエモティコンは、物理的なキーボードを通じてカラーまたはグレイスケールで表示され得る。提案されるエモティコンが物理的なキーボードを通じて表示される際、ユーザは、物理的なキーボードのキーまたはボタンを通じて、それらの提案されるエモティコンの１つ以上を選択し得る。
【００６８】
いくつかの実施の形態では、入力モジュール４０６がオンスクリーンキーボードを含む
場合、オンスクリーンキーボードの外観は、提案されるエモティコンをオンスクリーンキーボードを通じて表示するよう再構成され得る。たとえば、オンスクリーンキーボードの外観は、オンスクリーンキーボードのあるボタンが提案されるエモティコンボタンに置換されるように、またはオンスクリーンキーボードが付加的な提案されるエモティコンボタンで増強されるように、再構成され得る。提案されるエモティコンボタンは、ひとたびオンスクリーンキーボードを通じて提示されると、１つ以上の提案されるエモティコンから選択するようユーザによって使用され得る。
【００６９】
セグメント分析モジュール４０８は、入力フィールドに存在する１つ以上のセグメントを分析し得、分析されたセグメントについてコンテキストを決定し得る。本願明細書に記載されるように、セグメント分析モジュール４０８によって決定されたコンテキストは、ユーザに提案される候補のエモティコンを識別する際に、その後用いられ得る。さまざまな実施の形態では、入力フィールドにおけるセグメントのコンテキストを決定する際に、セグメント分析モジュール４０８はまず、入力フィールドにおける対象のセグメントを識別し、その後、それらの対象のセグメントのみを分析し得る。
【００７０】
いくつかの実施の形態では、セグメント分析モジュール４０８は、対象のセグメントを識別する際、入力フィールドに現在存在するセグメントの構文分析を行い得る。さらに、セグメント分析モジュール４０８は、対象のセグメント識別プロセスをガイドする条件付きまたは非条件付きルールに基づき、対象のセグメントを識別し得る。
【００７１】
対象の１つ以上のセグメントのコンテキストを決定するよう、セグメント分析モジュール４０８は、入力フィールドに存在する対象のセグメントを意味分析し得る。対象の１つ以上のセグメントのコンテキストを分析する際、セグメント分析モジュール４０８は、対象のセグメントのサブテキストまたは意味を決定し得る。対象のセグメントのサブテキストは、当該対象のセグメントについて気分または感情を識別し得る。対象のセグメントについて識別されたサブテキストまたは意味に基づき、エモティコン提案システム４００は、提案のために１つ以上の候補のエモティコンを識別し得る。
【００７２】
なお、いくつかの実施の形態の場合、セグメント分析モジュール４０８は、ユーザが入力モジュール４０８を使用して文字またはエモティコンを入力フィールドに加えるか、または入力フィールドから文字またはエモティコンを取り除く際に、リアルタイムもしくはほぼリアルタイムで、対象のセグメントを識別および分析し得る。
【００７３】
エモティコン検索モジュール４１０は、対象のセグメントの識別されたコンテキスト（たとえばサブテキストまたは意味）に基づき、１つ以上の候補のエモティコンを検索し得る。いくつかの実施の形態では、１つ以上の特定のコンテキストに関連付けられる１つ以上の候補のエモティコンを検索する際、エモティコン検索モジュール４１０は、ローカルのエモティコンデータストア４１２にアクセスし得る。
【００７４】
実施の形態に依存して、ローカルのエモティコンデータストア４１２は、ユーザがカスタマイズしたエモティコン、ユーザのお気に入りもしくはユーザが好むエモティコン、ローカルのエモティコン上に格納されたエモティコンとコンテキスト（たとえばサブテキストまたは意味）との間の関連性、エモティコンの識別および提案に関してのユーザプレファレンス、ユーザに関連する情報、または受信者に関連する情報を格納し得る。さらに、ローカルのエモティコンデータストア４１２は、以前に提案されるエモティコンまたは以前にユーザが選択した提案されるエモティコンをローカルにキャッシュするよう用いられ得る。
【００７５】
いくつかの実施の形態では、エモティコン検索モジュール４１０は、エモティコン提案
サーバ４２０を用いて、候補のエモティコンを検索してエモティコン提案クライアント４０２に提供する。たとえば、エモティコン提案サーバ４２０は、リモートのエモティコンデータストア４２４上の候補のエモティコンを検索し、得られた候補のエモティコンをエモティコン提案クライアント４０２上のエモティコン検索モジュール４１０に提供し得る。エモティコン提案サーバ４２０は、エモティコン検索エンジン４２２を使用して、リモートのエモティコンデータストア４２４上の候補のエモティコンを検索すること、リモートのエモティコンデータストア４２４から候補のエモティコンを抽出すること、およびエモティコン検索モジュール４１０に候補のエモティコンを提供することとを行う。
【００７６】
リモートのエモティコンデータストア４２４は、エモティコン提案クライアント４０２への提案に利用可能であるエモティコンのライブラリを含み得る。リモートのエモティコンデータストア４２４はさらに、ライブラリにおけるエモティコンとコンテキストとの間の関連性を含み得る。ある実施の形態の場合、上記関連性は、コンテキストとの、ライブラリにおけるエモティコンのうち所与のエモティコンの統計的な使用を含む。一般に、このような統計的な使用は、エモティコンとコンテキストとの間の関連性の強さを反映し得る。
【００７７】
本願明細書に示されるように、リモートのエモティコンデータストア４２４上に格納されたエモティコンは、文字エモティコン、グラフィカルエモティコン、グラフィカルにアニメーション化されたエモティコン、および音を伴ったエモティコンを含み得る。いくつかの実施の形態の場合、リモートのエモティコンデータストア４２４はさらに、提案に好適なエモティコンを識別する際に、実施の形態において用いられ得るユーザプレファレンス、ユーザ情報、または受信者情報を含み得る。当業者は、さまざまなエモティコンライブラリおよびエモティコンとコンテキストとの間のさまざまな関連性は、リモートのエモティコンデータストア４２４上に格納され得るということを理解するであろう。
【００７８】
エモティコン提案モジュール４１４は、対象のセグメントの識別されたコンテキストに基づいて特定された１つ以上の候補のエモティコンを受け取り、選択のためにユーザに当該１つ以上の候補のエモティコンを提示し得る。本願明細書に示されるように、いくつかの実施の形態において、エモティコン提案モジュール４１４は、エントリ選択のために１つ以上の候補のエモティコンを、入力フィールドにおける入力カーソルの現在位置またはその現在位置の近くに表示するよう表示モジュール４１４を使用し得る。本願明細書において示されるように、さまざまな実施の形態では、エモティコン提案モジュール４１４は、物理的な入力装置または仮想入力装置を通じて、エントリ選択のために１つ以上の候補のエモティコンを表示するよう入力モジュール４０６を使用し得る。
【００７９】
エモティコン選択モジュール４１６は、ユーザに提案された１つ以上の候補のエモティコンについてエントリ選択をユーザから受け取り得る。特定の実施の形態において、エモティコン選択モジュール４１６は、入力モジュール４０４を通じて１つ以上の候補のエモティコンについてエントリ選択を受け取り得、エモティコン選択モジュール４１６は、入力フィールドに１つ以上の選択されるエモティコンを入力し得る。エモティコン選択モジュール４１６は、入力カーソルの現在位置に、１つ以上の選択されるエモティコンを入力し得る。さらに、エモティコン選択モジュール４１６は、入力フィールド内のセグメントまたは対象のセグメントを１つ以上の選択されるエモティコンに置換することによって、入力フィールドに１つ以上の選択されるエモティコンを入力し得る。いくつかの実施の形態では、モジュール４１６があるガイドラインに基づいて、提案されるエモティコンを自動選択するように、エモティコン選択モジュール４１６を（たとえばユーザプレファレンスを使用して）ユーザが設定することを可能にする。たとえば、ユーザは、エモティコンの提案がなされると、第１の提案されたエモティコンが選択されるように、エモティコン選択モジュール４１６を構成し得る。
【００８０】
いくつかの実施の形態では、エモティコンとコンテキストとの間の関連性がこのようなコンテキストとのこのようなエモティコンの統計的な使用を含む場合、エモティコン選択モジュール４１６は、ユーザから受け取られたエントリ選択に基づいて、統計的使用情報を更新し得る。特に、エモティコン選択モジュール４１６は、所与のコンテキストについての１つ以上の候補のエモティコンのエントリ選択を受け取り、選択された候補のエモティコンとそれらの使用のそれぞれのコンテキストの間で、格納された統計的使用情報を更新し得る。
【００８１】
実施の形態に依存して、エモティコン選択モジュール４１６は、ローカルのエモティコンデータストア４１２上またはリモートのエモティコンデータストア４２４上の統計的使用情報を更新し得る。たとえば、エモティコン選択モジュール４１６を通じて選択された１つ以上の候補のエモティコンがエモティコン提案サーバ４２０から提供された場合、それらの候補のエモティコンについての統計的使用情報は、リモートのエモティコンデータストア４２４上で更新されることになる。別の例では、エモティコン選択モジュール４１６を通じて選択された１つ以上の候補のエモティコンがローカルのエモティコンデータストア４１２から提供された場合、それらの候補のエモティコンについての統計的使用情報は、ローカルのエモティコンデータストア４１２上で更新されることになる。
【００８２】
図５は、メッセージングアプリケーションのユーザインターフェイス５００を示す。当該メッセージングアプリケーションはある実施の形態を利用する。いくつかの実施の形態では、ユーザは、ユーザインターフェイス５００を用いて、オンラインチャット上で他のユーザから受け取られたメッセージを受け取ってレビューするとともに、オンラインチャット上で他のユーザへのメッセージを作成および送信し得る。メッセージングアプリケーションは、インスタントメッセージングシステム上のクライアントであり得、メッセージングアプリケーションは、スマートフォンコンピューティングデバイスまたはラップトップといった、ユーザにローカルなデジタルデバイス上で動作している。インスタントメッセージングシステムは、サーバのような別のデジタルデバイス上で動作し得、メッセージングアプリケーションはインスタントメッセージングシステムとインターフェイス接続する。実施の形態に依存して、メッセージングアプリケーションは、スタンドアロンアプリケーションとしてか、またはウェブブラウザを通じて動作するアプレット、プラグインもしくはスクリプトとしてデジタルデバイス上で動作し得る。
【００８３】
メッセージングアプリケーションのユーザインターフェイス５００は、会話ペイン５０２、メッセージ入力フィールド５０４、および送信ボタン５１４を含み得る。いくつかの実施の形態については、会話ペイン５０２は、オンラインチャットに提出されたメッセージを含み得る。そのため、会話ペイン５０２は、他人からオンラインチャットに提出されたメッセージと、ユーザインターフェイス５００を通じてユーザによって提出されたメッセージとを含み得る。ユーザは、メッセージ入力フィールド５０４を使用して、オンラインチャットへメッセージを提出し得る。特に、ユーザは、オンラインチャットにメッセージを提出することをユーザが所望がする場合に、メッセージ入力フィールド５０４へメッセージを入力し、送信ボタン５１４を押し得る。
【００８４】
メッセージ入力フィールド５０４は、オンラインチャットへの提出のためにユーザによって準備されたメッセージを含み得、当該メッセージを受け取るように構成され得る。メッセージ入力フィールド５０４は、ユーザから１つ以上のセグメントを受け取り得るか、または、いくつかの実施の形態に従って入力された１つ以上のエモティコンを受け取り得る。メッセージ入力フィールド５０４はさらに入力カーソル５１６を含み得る。
【００８５】
ユーザがメッセージ入力フィールド５０４におけるメッセージを準備する際、さまざま
な実施の形態は、入力カーソル５１６の現在位置での入力のためにエモティコンを提案し得る。たとえば、ユーザがメッセージ入力フィールド５０４に「とても楽しかった」と書いた場合、実施の形態は、「とても楽し」を記載する対象のセグメント５１２の実施の形態の分析に基づき、入力フィールド５０４へのエントリのために「笑顔」のグラフィカルエモティコン５１０を提案し得る。実施の形態は、「笑顔」のグラフィカルエモティコン５１０と、対象のセグメント５１２のコンテキストとの間の関連性に基づいて、「笑顔」のグラフィカルエモティコン５１０を提案し得る。ひとたびユーザが「笑顔」のグラフィカルエモティコン５１０を選択すると、実施の形態は、メッセージ入力フィールド５０４に「笑顔」のグラフィカルエモティコン５１０を入力し得る。
【００８６】
同様に、ユーザが「ありがとう、あなたの町を案内してくれて」とメッセージ入力フィールド５０４に書く場合、実施の形態は、対象のセグメント５１４のコンテキスト分析に基づいて、複数のグラフィカルエモティコン５０６を提案し得る。本願明細書において示されるように、実施の形態は、入力カーソル５１６の現在位置またはその現在位置の近くに位置決めされたコールアウトボックス５０８にグラフィカルエモティコン５０６を表示することによって、提案されたグラフィカルエモティコン５０６を提示し得る。「あなたの町」と記載する対象のセグメント５１４の分析に基づいて、実施の形態は、町に関するグラフィカルエモティコン５０６を提案し得る。
【００８７】
図６は、メッセージングアプリケーションのユーザインターフェイス６００を示す。当該メッセージングアプリケーションはある実施の形態を利用する。図５と同様に、ユーザは、ユーザインターフェイス６００を用いて、オンラインチャット上で他のユーザから受け取られたメッセージを受け取ってレビューするとともに、オンラインチャット上で他のユーザへのメッセージを作成および送信し得る。メッセージングアプリケーションは、インスタントメッセージングシステム上のクライアントであり得、メッセージングアプリケーションは、スマートフォンコンピューティングデバイスまたはラップトップといった、ユーザにローカルなデジタルデバイス上で動作している。インスタントメッセージングシステムは、サーバのような別のデジタルデバイス上で動作し得、メッセージングアプリケーションはインスタントメッセージングシステムとインターフェイス接続する。実施の形態に依存して、メッセージングアプリケーションは、スタンドアロンアプリケーションとしてか、またはウェブブラウザを通じて動作するアプレット、プラグインもしくはスクリプトとしてデジタルデバイス上で動作し得る。
【００８８】
メッセージングアプリケーションのユーザインターフェイス６００は、会話ペイン６０２、メッセージ入力フィールド６０４、オンスクリーンキーボード６０６、および送信ボタン６１６を含み得る。いくつかの実施の形態の場合、会話ペイン６０２は、ユーザインターフェイス６００を通じてユーザによって提出されたメッセージを含む、オンラインチャットに提出されたメッセージを含み得る。ユーザは、メッセージ入力フィールド６０４を使用して、オンラインチャットへメッセージを提出し得る。具体的には、ユーザは、オンラインチャットにメッセージを提出することをユーザが所望がする場合に、オンスクリーンキーボード６０６を用いてメッセージ入力フィールド６０４へメッセージを入力し、送信ボタン６１６を押し得る。
【００８９】
メッセージ入力フィールド６０４は、オンラインチャットへの提出のためにユーザによって準備されたメッセージを含み得、当該メッセージを受け取るように構成され得る。メッセージ入力フィールド６０４は、ユーザからオンスクリーンキーボード６０６を通じて１つ以上のセグメントを受け取り得るか、またはオンスクリーンキーボード６０６を通じて選択される１つ以上のエモティコンを受け取り得る。メッセージ入力フィールド６０４はさらに入力カーソル６１０を含み得る。
【００９０】
オンスクリーンキーボード６０６は、ＱＷＥＲＴＹキーボードと、（たとえば使用されていない場合に）視界からオンスクリーンキーボード６０６を隠すボタン６２４と、エモティコンメニュー６２２とを含み得る。エモティコンメニュー６２２を通じて、ユーザは、入力カーソル６１０の現在位置にて、メッセージ入力フィールド６０４へのエントリのために１つ以上のエモティコンを選択し得る。エモティコンメニュー６２２は、デフォルトのエモティコンライブラリまたは実施の形態によって提案されるエモティコンのセレクションからのエモティコンを含み得る。左の選択ボタン６１８および右の選択ボタン６２０により、ユーザは、エモティコンメニュー６２２を通じてエントリ選択に利用可能であるエモティコンをスクロールおよびブラウズすることが可能になる。
【００９１】
ユーザがメッセージ入力フィールド６０４においてメッセージを準備する際、さまざまな実施の形態が、入力カーソル６１０の現在位置へのエントリのためにエモティコンを提案し得る。たとえば、ユーザがメッセージ入力フィールド６０４に「思いもしなかった、あのフットボール」と書いた場合、実施の形態は、「フットボール」を記載する対象のセグメント６１２の実施の形態の分析に基づき、入力フィールド６０４へのエントリのために「フットボール」のグラフィカルエモティコン６１４を提案し得る。実施の形態は、「フットボール」のグラフィカルエモティコン６１４と、対象のセグメント５１２のコンテキストとの間の関連性に基づいて、「フットボール」のグラフィカルエモティコン６１４を提案し得る。ひとたびユーザが「フットボール」のグラフィカルエモティコン６１４を選択すると、実施の形態は、メッセージ入力フィールド６０４に「フットボール」のグラフィカルエモティコン６１４を入力し得る。
【００９２】
同様に、ユーザがメッセージ入力フィールド６０４に「５０ヤードのフィールドゴール」と書くと、実施の形態は、対象のセグメント６０８のコンテキスト分析に基づき、複数の「フィールドゴール」のグラフィカルエモティコンを提案し得る。特に、実施の形態は、オンスクリーンキーボード６０６の一部として表示され得るエモティコンメニュー６２２にグラフィカルエモティコンを表示することによって、エントリ選択のために「フィールドゴール」のグラフィカルエモティコンを提示し得る。
【００９３】
図７は、例示的なデジタルデバイス７００のブロック図である。デジタルデバイス７００は、通信可能にバス７１４に結合されたプロセッサ７０２、メモリシステム７０４、ストレージシステム７０６、通信ネットワークインターフェイス７０８、Ｉ／Ｏインターフェイス７１０、および表示インターフェイス７１２を含む。プロセッサ７０２は、実行可能な命令（たとえばプログラム）を実行するように構成される。いくつかの実施の形態では、プロセッサ７０２は、実行可能な命令を処理することができる回路網または任意のプロセッサを含む。
【００９４】
メモリシステム７０４は、データを格納するように構成される任意のメモリである。メモリシステム７０４のいくつかの例は、ＲＡＭまたはＲＯＭのようなストレージデバイスである。メモリシステム７０４は、ＲＡＭキャッシュを含み得る。さまざまな実施の形態では、データはメモリシステム７０４内に格納される。メモリシステム７０４内のデータは、消去されるかまたはストレージシステム７０６に最終的に転送され得る。
【００９５】
ストレージシステム７０６は、データを抽出および格納するように構成された任意の一時的でないストレージである。ストレージシステム７０６のいくつかの例は、フラッシュドライブ、ハードドライブ、光学ドライブおよび／または磁気テープである。いくつかの実施の形態では、デジタルデバイス７００は、ＲＡＭの形態にあるメモリシステム７０４と、フラッシュデータの形態にあるストレージシステム７０６とを含む。メモリシステム７０４およびストレージシステム７０６の両方は、プロセッサ７０２を含むコンピュータプロセッサによって実行可能である命令またはプログラムを格納し得るコンピュータ可読
媒体を含む。
【００９６】
通信ネットワークインターフェイス（ｃｏｍ．ネットワークインターフェイス）７０８は、リンク７１６を介してネットワーク（たとえば通信ネットワーク１１０）に結合され得る。通信ネットワークインターフェイス７０８は、たとえばイーサネット（登録商標）接続、シリアル接続、パラレル接続、またはＡＴＡ接続上の通信をサポートし得る。通信ネットワークインターフェイス７０８はさらに、無線通信（たとえば８０２．１１  ａｌｂ／ｇｉｎ、ＷｉＭａｘ）をサポートし得る。通信ネットワークインターフェイス７０８は、多くの有線規格および無線規格をサポートし得るということは当業者に明らかであろう。
【００９７】
随意の入出力（Ｉ／Ｏ）インターフェイス７１０は、ユーザから入力を受け取るとともにデータを出力する任意の装置である。随意の表示インターフェイス７１２は、ディスプレイにグラフィックスおよびデータを出力するように構成される任意の装置である。一例では、表示インターフェイス７１２は、グラフィックスアダプタである。すべてのデジタルデバイス７００が、Ｉ／Ｏインターフェイス７１０または表示インターフェイス７１２のいずれかを含むわけではないということが理解されるであろう。
【００９８】
デジタルデバイス７００のハードウェア要素は、図７に示されたものに限定されないということが当業者によって理解されるであろう。デジタルデバイス７００は、示されたものよりも多いまたは少ないハードウェア要素を含んでもよい。さらに、ハードウェア要素は、機能性を共有してもよく、それでも、本願明細書で記載されるさまざまな実施の形態の内にある。一例では、エンコーディングおよび／またはデコーディングが、プロセッサ７０２および／またはＧＰＵ（Le., Nvidia）に配置されるコプロセッサによって行なわ
れてもよい。
【００９９】
上記の機能およびコンポーネントは、コンピュータ可読媒体のような記憶媒体上に格納される命令で構成され得る。命令は、プロセッサによって抽出および実行され得る。命令のいくつかの例は、ソフトウェア、プログラムコードおよびファームウェアである。記憶媒体のいくつかの例は、メモリデバイス、テープ、ディスク、集積回路およびサーバである。命令は、プロセッサによって実行された際には、プロセッサに指示していくつかの実施の形態に従って動作させる動作状態である。当業者は、命令、プロセッサおよび記憶媒体に精通している。
【０１００】
さまざまな実施の形態が、例として本願明細書において記載されている。さまざまな修正例がなされ得るとともに、他の実施の形態が本発明のより広い範囲から逸脱することなく使用され得るということは当業者に明らかであろう。したがって、例示的な実施の形態に対するこれらおよび他の変形例は、本発明によってカバーされるように意図される。
【図１】
2018077861.tif 000003
【図２】
2018077861.tif 000004
【図３】
2018077861.tif 000005
【図４】
2018077861.tif 000006
【図５】
2018077861.tif 000007
【図６】
2018077861.tif 000008
【図７】
2018077861.tif 000009
【手続補正書】
【提出日】平成29年12月26日(2017.12.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータによって実現される方法であって、
テキストフィールドにおける入力カーソルの現在位置に対して選択された対象の１つ以上のセグメントのセットを受け取ることを含み、前記対象の１つ以上のセグメントは、単語、文の断片、文、句、および節のうちの少なくとも１つを含んでおり、前記方法はさらに、
前記対象の１つ以上のセグメントのコンテキストを決定するために意味解析を実行することを含み、前記コンテキストは、前記対象の１つ以上のセグメントに関連付けられるサブテキストおよび意味のうちの少なくとも１つを含んでおり、前記方法はさらに、
候補のエモティコンのセットを、前記候補のエモティコンと前記コンテキストとの間の関連性に基づいて、前記テキストフィールドへの挿入のために識別することと、
エントリ選択のために前記候補のエモティコンのセットを提示することと、
前記候補のエモティコンのセットからの１つ以上の候補のエモティコンのエントリ選択を受け取ることと、
選択された前記１つ以上の候補のエモティコンを前記テキストフィールドに挿入することとを含む、方法。
【請求項２】
前記コンテキストは前記サブテキストを含み、前記サブテキストは、前記対象の１つ以上のセグメントについての気分および感情のうちの少なくとも１つを含む、請求項１に記載の方法。
【請求項３】
前記関連性は、前記コンテキストにおける前記候補のエモティコンの統計的な使用に基づく、請求項１または２に記載の方法。
【請求項４】
前記統計的な使用は、個々のユーザおよびユーザのコミュニティの少なくとも一方による前記候補のエモティコンの過去の使用に基づく、請求項３に記載の方法。
【請求項５】
前記１つ以上の候補のエモティコンの前記エントリ選択に従って前記統計的な使用を更新することをさらに含む、請求項３または４に記載の方法。
【請求項６】
前記候補のエモティコンのセットを識別することは、前記コンテキストにおける前記候補のエモティコンの統計的な使用に基づいて、エモティコンと前記コンテキストとの間の関連性の強さを決定することと、前記関連性の強さがしきい値を越える場合、前記候補のエモティコンのセットに前記エモティコンを加えることとを含む、請求項１〜５のいずれか１項に記載の方法。
【請求項７】
前記候補のエモティコンのセットを識別することは、ローカルデータストア、リモートデータストアおよびその組合せからなる群から選択される少なくとも１つのデータストアにアクセスすることを含む、請求項１〜６のいずれか１項に記載の方法。
【請求項８】
以前に提案されたエモティコンと以前にユーザによって選択されたエモティコンとのうちの少なくとも１つを前記少なくとも１つのデータストアに格納することをさらに含む、請求項７に記載の方法。
【請求項９】
前記少なくとも１つのデータストアは、ユーザがカスタマイズしたエモティコンと、ユーザのお気に入りのエモティコンと、ユーザが好むエモティコンと、エモティコンとコンテキストとの間の関連性と、エモティコンを識別および提案することに関するユーザプレファレンスと、ユーザに関連する情報と、受信者に関連する情報とからなる群から選択される情報を格納する、請求項７または８に記載の方法。
【請求項１０】
前記候補のエモティコンのセットは、文字エモティコンと、グラフィカルエモティコンと、グラフィカルにアニメーション化されたエモティコンと、音を伴ったエモティコンとからなる群から選択される少なくとも１つのエモティコンを含む、請求項１〜９のいずれか１項に記載の方法。
【請求項１１】
前記候補のエモティコンのセットを識別することは、ユーザプレファレンス、ユーザに関連する情報、および受信者に関連する情報のうちの少なくとも１つを利用することを含む、請求項１〜１０のいずれか１項に記載の方法。
【請求項１２】
前記候補のエモティコンのセットを提示することは、（ｉ）前記入力カーソルにおいて前記候補のエモティコンのセットを表示することと、（ｉｉ）オンスクリーンキーボードにおいて前記候補のエモティコンのセットを表示することとのうちの少なくとも一方を含む、請求項１〜１１のいずれか１項に記載の方法。
【請求項１３】
選択された前記１つ以上の候補のエモティコンを前記テキストフィールドに挿入することは、選択された前記１つ以上の候補のエモティコンに少なくとも１つのセグメントを置換することを含む、請求項１〜１０のいずれか１項に記載の方法。
【請求項１４】
選択された前記１つ以上のエモティコンを前記テキストフィールドに挿入することは、選択された前記１つ以上のエモティコンを前記テキストフィールドにおいて前記入力カーソルの現在位置に挿入することを含む、請求項１〜１３のいずれか１項に記載の方法。
【請求項１５】
システムであって、
命令を格納している一時的でないコンピュータ読取可能媒体と、
動作を実行するよう前記命令を実行するように構成される少なくとも１つのプロセッサとを含み、前記動作は、
テキストフィールドにおける入力カーソルの現在位置に対して選択された対象の１つ以上のセグメントのセットを受け取ることを含み、前記対象の１つ以上のセグメントは、単語、文の断片、文、句、および節のうちの少なくとも１つを含んでおり、前記動作はさらに、
前記対象の１つ以上のセグメントのコンテキストを決定するために意味解析を実行することを含み、前記コンテキストは、前記対象の１つ以上のセグメントに関連付けられるサブテキストおよび意味のうちの少なくとも１つを含んでおり、前記動作はさらに、
候補のエモティコンのセットを、前記候補のエモティコンと前記コンテキストとの間の関連性に基づいて、前記テキストフィールドへの挿入のために識別することと、
エントリ選択のために前記候補のエモティコンのセットを提示することと、
前記候補のエモティコンのセットから１つ以上の候補のエモティコンのエントリ選択を受け取ることと、
選択された前記１つ以上の候補のエモティコンを前記テキストフィールドに挿入することとを含む、システム。
【請求項１６】
前記コンテキストは前記サブテキストを含み、前記サブテキストは、前記対象の１つ以上のセグメントについての気分および感情のうちの少なくとも１つを含む、請求項１５に記載のシステム。
【請求項１７】
前記関連性は、前記コンテキストにおける前記候補のエモティコンの統計的な使用に基づく、請求項１５または１６に記載のシステム。
【請求項１８】
前記統計的な使用は、個々のユーザおよびユーザのコミュニティの少なくとも一方による前記候補のエモティコンの過去の使用に基づく、請求項１７に記載のシステム。
【請求項１９】
前記動作は、前記１つ以上の候補のエモティコンの前記エントリ選択に従って前記統計的な使用を更新することをさらに含む、請求項１７または１８に記載のシステム。
【請求項２０】
前記候補のエモティコンのセットを識別することは、前記コンテキストにおける前記候補のエモティコンの統計的な使用に基づいて、エモティコンと前記コンテキストとの間の関連性の強さを決定することと、前記関連性の強さがしきい値を越える場合、前記候補のエモティコンのセットに前記エモティコンを加えることとを含む、請求項１５〜１９のいずれか１項に記載のシステム。
【請求項２１】
前記候補のエモティコンのセットを識別することは、ローカルデータストア、リモートデータストアおよびその組合せからなる群から選択される少なくとも１つのデータストアにアクセスすることを含む、請求項１５〜２０のいずれか１項に記載のシステム。
【請求項２２】
前記動作は、以前に提案されたエモティコンと以前にユーザによって選択されたエモティコンとのうちの少なくとも１つを前記少なくとも１つのデータストアに格納することをさらに含む、請求項２１に記載のシステム。
【請求項２３】
前記少なくとも１つのデータストアは、ユーザがカスタマイズしたエモティコンと、ユーザのお気に入りのエモティコンと、ユーザが好むエモティコンと、エモティコンとコンテキストとの間の関連性と、エモティコンを識別および提案することに関するユーザプレファレンスと、ユーザに関連する情報と、受信者に関連する情報とからなる群から選択される情報を格納する、請求項２１または２２に記載のシステム。
【請求項２４】
前記候補のエモティコンのセットは、文字エモティコンと、グラフィカルエモティコンと、グラフィカルにアニメーション化されたエモティコンと、音を伴ったエモティコンとからなる群から選択される少なくとも１つのエモティコンを含む、請求項１５〜２３のいずれか１項に記載のシステム。
【請求項２５】
前記候補のエモティコンのセットを識別することは、ユーザプレファレンス、ユーザに関連する情報、および受信者に関連する情報のうちの少なくとも１つを利用することを含む、請求項１５〜２４のいずれか１項に記載のシステム。
【請求項２６】
前記候補のエモティコンのセットを提示することは、（ｉ）前記入力カーソルにおいて前記候補のエモティコンのセットを表示することと、（ｉｉ）オンスクリーンキーボードにおいて前記候補のエモティコンのセットを表示することとのうちの少なくとも一方を含む、請求項１５〜２５のいずれか１項に記載のシステム。
【請求項２７】
選択された前記１つ以上の候補のエモティコンを前記テキストフィールドに挿入することは、選択された前記１つ以上の候補のエモティコンに少なくとも１つのセグメントを置換することを含む、請求項１５〜２６のいずれか１項に記載のシステム。
【請求項２８】
選択された前記１つ以上のエモティコンを前記テキストフィールドに挿入することは、選択された前記１つ以上のエモティコンを前記テキストフィールドにおいて前記入力カーソルの現在位置に挿入することを含む、請求項１５〜２７のいずれか１項に記載のシステム。
【請求項２９】
データ処理装置に動作を実行させるコンピュータプログラムであって、前記動作は、
テキストフィールドにおける入力カーソルの現在位置に対して選択された対象の１つ以上のセグメントのセットを受け取ることを含み、前記対象の１つ以上のセグメントは、単語、文の断片、文、句、および節のうちの少なくとも１つを含んでおり、前記動作はさらに、
前記対象の１つ以上のセグメントのコンテキストを決定するために意味解析を実行することを含み、前記コンテキストは、前記対象の１つ以上のセグメントに関連付けられるサブテキストおよび意味のうちの少なくとも１つを含んでおり、前記動作はさらに、
候補のエモティコンのセットを、前記候補のエモティコンと前記コンテキストとの間の関連性に基づいて、前記テキストフィールドへの挿入のために識別することと、
エントリ選択のために前記候補のエモティコンのセットを提示することと、
前記候補のエモティコンのセットから１つ以上の候補のエモティコンのエントリ選択を受け取ることと、
選択された前記１つ以上の候補のエモティコンを前記テキストフィールドに挿入することとを含む、コンピュータプログラム。
【請求項３０】
前記候補のエモティコンのセットを識別することは、前記コンテキストにおける前記候補のエモティコンの統計的な使用に基づいて、エモティコンと前記コンテキストとの間の関連性の強さを決定することと、前記関連性の強さがしきい値を越える場合、前記候補のエモティコンのセットに前記エモティコンを加えることとを含む、請求項２９に記載のコンピュータプログラム。
【外国語明細書】
2018077861000001.pdf