(57)【要約】ネットワークベースのテキスト入力嗜好を実施するための方法および装置を開示する。例示的な方法は、サーバにて、そのサーバ上に維持されているアカウントに対するユーザからの有効なログイン要求を受信し、そのアカウントと関連したテキスト入力嗜好のセットを、そのサーバ上で識別することを含む。例示的な方法は、サーバ上で第１のネットワークベースのアプリケーションの実行を求めるユーザからの要求をサーバにて受信し、第１のネットワークベースのアプリケーションに関連したユーザ入力テキストをサーバにて受信することをさらに含む。例示的な方法は、テキスト入力嗜好のセットを受信ユーザ入力テキストにサーバによって適用し、テキスト入力嗜好のセットを適用後、受信ユーザ入力テキストを第１のネットワークベースのアプリケーションに提供することをさらに含む。【選択図】図１
2014534505.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータで実施される方法であって、
サーバにて、前記サーバ上に維持されているアカウントに対するユーザからの有効なログイン要求を受信することと、
前記サーバ上で、前記アカウントと関連したテキスト入力嗜好のセットを識別することであって、前記テキスト入力嗜好が複数のネットワークベースのアプリケーションによって使用されるように構成されることと、
前記サーバにて、前記サーバ上で第１のネットワークベースのアプリケーションの実行を求める前記ユーザからの要求を受信することと、
前記サーバ上のユーザから、前記第１のネットワークベースのアプリケーションに関連したユーザ入力テキストを受信することと、
前記サーバにより、前記テキスト入力嗜好のセットを前記の受信したユーザ入力テキストに適用することと
前記テキスト入力嗜好のセットを適用後、前記受信ユーザ入力テキストを前記第１のネットワークベースのアプリケーションに提供することと
を含むコンピュータで実施される方法。
【請求項２】
前記サーバ上で第２のネットワークベースのアプリケーションを実行することを求める前記ユーザからの要求を、前記サーバにて受信することであって、前記第２のネットワークアプリケーションが前記第１のネットワークベースのアプリケーションと異なることと、
前記第２のネットワークベースのアプリケーションと関連したユーザ入力テキストを前記サーバにて受信することと、
前記サーバにより、前記テキスト入力嗜好のセットを前記第２のネットワークベースのアプリケーションと関連した前記受信ユーザ入力テキストに適用することと
前記テキスト入力嗜好のセットを適用後、前記第２のネットワークベースのアプリケーションと関連した前記受信ユーザ入力テキストを、前記第２のネットワークベースのアプリケーションに提供することと
をさらに含む、請求項１に記載のコンピュータで実施される方法。
【請求項３】
前記テキスト入力嗜好のセットがテーブルおよびデータベースの１つに含まれる、請求項１に記載のコンピュータで実施される方法。
【請求項４】
前記テキスト入力嗜好のセットの適用が、
前記受信ユーザ入力テキストと、前記テキスト入力嗜好のセットに含まれる１つまたは複数のユーザ定義スペリング嗜好とを比較することと、
前記受信ユーザ入力テキストに注釈を付けて、前記ユーザ定義スペリング嗜好との比較に基づき、前記受信ユーザ入力テキスト中で、前記ユーザ定義スペリング嗜好にそれぞれ一致する文字列がある１つまたは複数の単語を示すことと
を含む、請求項１に記載のコンピュータで実施される方法。
【請求項５】
前記受信ユーザ入力テキストへの注釈付けが、前記受信ユーザ入力テキストを修正して、それぞれ一致する文字列を示すようにすることを含む、請求項４に記載のコンピュータで実施される方法。
【請求項６】
前記受信ユーザ入力テキストへの注釈付けが、前記ユーザ入力テキストに対応するメタデータを生成することを含み、前記メタデータがそれぞれ一致する文字列を表し、
前記メタデータが、前記ユーザ入力テキストを有する前記第１のネットワークベースのアプリケーションに提供される、請求項４に記載のコンピュータで実施される方法。
【請求項７】
前記テキスト入力嗜好のセットの適用が、
前記受信ユーザ入力テキストと、前記テキスト入力嗜好のセットに含まれる１つまたは複数のユーザ定義略語展開嗜好とを比較することと、
前記受信ユーザ入力テキストを修正して、前記受信ユーザ入力テキスト中、前記ユーザ定義略語展開嗜好との比較に基づいて、前記ユーザ定義略語展開嗜好中にそれぞれ一致する文字列のある１つまたは複数の略語を展開することと
を含む、請求項１に記載のコンピュータで実施される方法。
【請求項８】
前記テキスト入力嗜好のセットの適用が、
前記受信ユーザ入力テキストと、前記テキスト入力嗜好のセットに含まれる１つまたは複数のユーザ定義大文字化嗜好とを比較することと、
前記受信ユーザ入力テキストに注釈を付けて、前記受信ユーザ入力テキスト中、前記ユーザ定義大文字化嗜好との比較に基づいて、前記ユーザ定義大文字化嗜好中にそれぞれ一致する文字列のある１つまたは複数の単語を示すことと
を含む、請求項１に記載のコンピュータで実施される方法。
【請求項９】
前記有効なログイン要求が、第１のコンピューティング装置からデータネットワークを介して受信され、前記コンピュータ実施が
前記サーバにて、前記アカウントに対する前記ユーザからの第２の有効なログイン要求を、第２のコンピューティング装置から受信することと、
前記サーバ上で、前記アカウントに関連した前記テキスト入力嗜好のセットを識別することと、
前記サーバ上で第２のネットワークベースのアプリケーションを実行することを求める前記ユーザからの要求を、前記サーバにて受信することと、
前記第２のネットワークベースのアプリケーションと関連したユーザ入力テキストを、前記第２のコンピューティング装置から前記サーバにて受信することと、
前記テキスト入力嗜好のセットを前記第２のネットワークベースのアプリケーションと関連した前記受信ユーザ入力テキストに、前記サーバにより適用することと、
前記テキスト入力嗜好のセットを適用後、前記第２のネットワークベースのアプリケーションと関連した受信ユーザ入力テキストを、前記第２のネットワークベースのアプリケーションに提供することと
をさらに含む、請求項１に記載のコンピュータで実施される方法。
【請求項１０】
前記第１のネットワークベースのアプリケーションおよび前記第２のネットワークベースのアプリケーションが、同一のネットワークベースのアプリケーションを含む、請求項９に記載のコンピュータで実施される方法。
【請求項１１】
前記サーバがログインサーバおよびアプリケーションサーバを含む複数のネットワークサーバを含み、前記ログインサーバが前記有効なログイン要求を受信するように構成され、前記アプリケーションサーバが前記第１のネットワークベースのアプリケーションの実行を求める要求を受信し、前記ユーザ入力テキストを受信し、かつ前記テキスト入力嗜好のセットを前記ユーザ入力テキストに適用するように構成されている、請求項１に記載のコンピュータで実施される方法。
【請求項１２】
前記テキスト入力嗜好のセットが前記ログインサーバ上に位置している、請求項１１に記載のコンピュータで実施される方法。
【請求項１３】
前記テキスト入力嗜好のセットが前記アプリケーションサーバ上に位置している、請求項１１に記載のコンピュータで実施される方法。
【請求項１４】
コンピュータで実施される方法であって、
第１のコンピューティング装置からサーバに、前記サーバ上に維持されているアカウントに対するユーザからの有効なログイン要求を送信することと、
前記アカウントに関連したテキスト入力嗜好のセットを前記サーバから受信することであって、前記テキスト入力嗜好が複数のアプリケーションによって使用できるように構成されていることと、
第１のアプリケーションの実行を求める前記ユーザからの要求を、前記コンピューティング装置により受信することと、
前記第１のコンピューティング装置により前記ユーザから、前記第１のアプリケーションに関連したユーザ入力テキストを受信することと、
前記第１のコンピューティング装置により、前記テキスト入力嗜好のセットを前記ユーザ入力テキストに適用することと、
前記テキスト入力嗜好のセットを適用後、前記ユーザ入力テキストを前記第１のアプリケーションに提供することと
を含むコンピュータで実施される方法。
【請求項１５】
前記第１のアプリケーションが第１のネットワークベースのアプリケーションであり、前記ユーザ入力テキストを前記第１のアプリケーションに提供することが、前記ユーザ入力テキストを前記サーバに送信することを含む、請求項１４に記載のコンピュータで実施される方法。
【請求項１６】
前記第１のコンピューティング装置から、前記サーバ上で第２のネットワークベースのアプリケーションを実行することを求めるユーザからの要求を前記サーバへ送信することであって、前記第２のネットワークベースのアプリケーションが、前記第１のネットワークベースのアプリケーションと異なることと、
前記第２のネットワークベースのアプリケーションと関連したユーザ入力テキストを、前記第１のコンピューティング装置により受信することと、
前記第１のコンピューティング装置により、前記テキスト入力嗜好のセットを前記第２のネットワークベースのアプリケーションと関連した前記ユーザ入力テキストに適用することと、
前記テキスト入力嗜好のセットを適用した後、前記第２のネットワークベースのアプリケーションと関連した前記ユーザ入力テキストを前記サーバに送信することと
をさらに含む、請求項１５に記載のコンピュータで実施される方法。
【請求項１７】
第２のコンピューティング装置から前記サーバへ、前記アカウントに対する前記ユーザからの第２の有効なログイン要求を送信することと、
前記サーバから、前記アカウントに関連した前記テキスト入力嗜好のセットを受信することと、
前記サーバ上で第２のネットワークベースのアプリケーションを実行することを求める前記ユーザからの要求を前記サーバに送信することと、
前記第２のネットワークベースのアプリケーションと関連した前記ユーザ入力テキストを、前記第２のコンピューティング装置により受信することと、
前記第２のネットワークベースのアプリケーションと関連したユーザ入力テキストに前記テキスト入力嗜好のセットを、前記第２のコンピューティング装置により適用することと、
前記テキスト入力嗜好のセットを適用した後、前記第２のネットワークベースのアプリケーションと関連した前記ユーザ入力テキストを前記サーバに送信することと
をさらに含む、請求項１５に記載のコンピュータで実施される方法。
【請求項１８】
前記アカウントに対する前記ユーザからの第２の有効なログイン要求を第２のコンピューティング装置から前記サーバに送信することと、
前記アカウントに関連したテキスト入力嗜好のセットを前記サーバから受信することと、
第２のアプリケーションの実行を求める前記ユーザからの要求を、前記コンピューティング装置により受信することと、
前記第２のアプリケーションに関連したユーザ入力テキストを、前記第２のコンピューティング装置により受信することと、
前記テキスト入力嗜好のセットを前記第２のアプリケーションに関連した前記ユーザ入力テキストに前記第２のコンピューティング装置により適用することと、
前記テキスト入力嗜好のセットを適用後、前記第２のアプリケーションに関連した前記ユーザ入力テキストを前記第２のアプリケーションに提供することと
をさらに含む、請求項１４に記載のコンピュータで実施される方法。
【請求項１９】
前記第１のアプリケーションおよび前記第２のアプリケーションがそれぞれ、ネットワークベースのアプリケーションおよびローカルにインストールされたアプリケーションの一方を含む、請求項１８に記載のコンピュータで実施される方法。
【請求項２０】
前記テキスト入力嗜好のセットが
１つまたは複数のユーザ定義スペリング嗜好と、
１つまたは複数のユーザ定義略語展開嗜好と、
１つまたは複数のユーザ定義大文字化嗜好と
のうちの少なくとも１つを含む、請求項１４に記載のコンピュータで実施される方法。
【請求項２１】
前記テキスト入力嗜好のセットの適用が、
前記ユーザ入力テキストを、前記テキスト入力嗜好のセットに含まれるユーザ固有の常用語の一覧と比較することと、
前記比較に基づいて、１つまたは複数の自動補完の提案を提供することであって、前記１つまたは複数の自動補完の提案が、前記提供された自動補完の提案の対応する部分に一致する前記ユーザ入力テキストのそれぞれの部分に基づいて決定されることと
を含む、請求項１４に記載のコンピュータで実施される方法。
【請求項２２】
第２のアプリケーションの実行を求める前記ユーザからの要求を前記コンピューティング装置により受信することと、
前記第２のアプリケーションに関連したユーザ入力テキストを前記コンピューティング装置により受信することと、
前記受信ユーザ入力テキストに前記テキスト入力嗜好のセットを、前記コンピューティング装置により適用することと、
前記テキスト入力嗜好のセットを適用後、前記第２のアプリケーションに関連した受信ユーザ入力テキストを前記第２のアプリケーションに提供することと
をさらに含む、請求項１４に記載のコンピュータで実施される方法。
【請求項２３】
前記第１のアプリケーションおよび前記第２のアプリケーションがそれぞれ、ネットワークベースのアプリケーションおよびローカルにインストールしたアプリケーションの一方を含む、請求項２２に記載のコンピュータで実施される方法。
【請求項２４】
少なくとも１つの処理装置と
命令が格納された少なくとも１つの非一時的な機械読取り可能な媒体と
を含むシステムであって、
前記命令が、前記少なくとも１つの処理装置により実行される際に、前記システムが、
前記サーバ上に維持されているアカウントに対するユーザからの有効なログイン要求を受信することと、
前記アカウントと関連したテキスト入力嗜好のセットを前記システムで識別することであって、前記テキスト入力嗜好が、複数のネットワークベースのアプリケーションで使用できるように構成されていることと、
前記サーバ上で第１のネットワークベースのアプリケーションの実行を求める前記ユーザからの要求を受信することと、
前記第１のネットワークベースのアプリケーションに関連したユーザ入力テキストを前記ユーザから受信することと、
前記受信ユーザ入力テキストに前記テキスト入力嗜好のセットを適用することと、
前記テキスト入力嗜好のセットを適用後、前記受信ユーザ入力テキストを前記第１のネットワークベースのアプリケーションに提供することと
を実施する、システム。
【請求項２５】
少なくとも１つの処理装置と、
命令が格納された少なくとも１つの非一時的な機械読取り可能な媒体と
を含むコンピューティング装置であって、
前記命令が、前記少なくとも１つの処理装置により実行される際、前記コンピューティング装置が
サーバに、前記サーバ上に維持されているアカウントに対するユーザからの有効なログイン要求を送信することと、
前記アカウントに関連したテキスト入力嗜好のセットを前記サーバから受信することであって、前記テキスト入力嗜好が複数のアプリケーションで使用できるように構成されていることと、
アプリケーションの実行を求める前記ユーザからの要求を、前記コンピューティング装置により受信することと、
前記アプリケーションに関連したユーザ入力テキストを前記ユーザから受信することと、
前記ユーザ入力テキストに前記テキスト入力嗜好のセットを適用することと、
前記テキスト入力嗜好のセットを適用後、前記ユーザ入力テキストを前記アプリケーションに送信することと
を実施する、コンピューティング装置。
【請求項２６】
前記アプリケーションが、ネットワークベースのアプリケーションおよびローカルにインストールされたアプリケーションの一方を含む、請求項２５に記載のコンピューティング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、「ネットワークベースのカスタム辞書、自動修正およびテキスト入力嗜好」と題した２０１１年１０月６日出願の米国非仮特許出願第１３／２６７，７２３号の優先権を主張する継続出願であり、この出願の全内容が参照により本明細書に援用される。
【０００２】
本文書は、一般に、カスタムユーザ嗜好を実施するためのネットワークベースの手法に関する。
【背景技術】
【０００３】
コンピューティング装置およびかかるコンピューティング装置上で作動するアプリケーションは、進化し続けている。例えば、コンピューティング装置および／またはアプリケーションは、そのコンピューティング装置および／またはアプリケーションを使用する際に、コンピューティング装置のユーザを支援する目的で設計された機能を含むことが多い。例えば、かかる機能としては、カスタムスペリング嗜好（例えば、カスタム辞書）、カスタムテキスト入力嗜好（例えば、カスタム略語展開および／またはカスタム大文字化嗜好）および特定のコンピューティング装置のユーザに自動補完の提案を提供するために使用され得る常用語一覧を挙げることができる。しかしながら、現在のところ、これらの機能は各コンピューティング装置および／または各アプリケーションに固有である。コンピューティング装置のユーザは複数のコンピューティング装置および複数のアプリケーションを使用することが多々あるため、これらのユーザは使用するコンピューティング装置ごとおよび／またはアプリケーションごとに、このようなカスタム嗜好を作成する時間を取らなければならず、かかる手法では不便である。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一般的な態様において、コンピュータで実施される方法は、サーバにて、そのサーバ上に維持されているアカウントに対するユーザからの有効なログイン要求を受信すること、およびそのアカウントと関連したテキスト入力嗜好のセットを、そのサーバ上で識別することを含む。例示的な方法は、そのサーバ上で第１のネットワークベースのアプリケーションを実行することを求めるユーザからの要求を、そのサーバにて受信すること、および第１のネットワークベースのアプリケーションと関連したユーザ入力テキストを、そのサーバにて受信することをさらに含む。例示的な方法は、テキスト入力嗜好のセットを受信ユーザ入力テキストに、そのサーバにより適用すること、およびテキスト入力嗜好のセットを適用した後、第１のネットワークベースのアプリケーションに、受信ユーザ入力テキストを提供することをさらにまた含む。
【０００５】
実施は以下の機能の１つまたは複数を含み得る。例えば、本方法は、第２のネットワークアプリケーションが第１のネットワークベースのアプリケーションと異なる際、第２のネットワークベースのアプリケーションをサーバ上で実行することを求めるユーザからの要求を、サーバにて受信すること、および第２のネットワークベースのアプリケーションに関連したユーザ入力テキストをサーバにて受信することを含み得る。本方法は、テキスト入力嗜好のセットを第２のネットワークベースのアプリケーションに関連した受信ユーザ入力テキストに、サーバにより適用すること、およびテキスト入力嗜好のセットを適用した後、第２のネットワークベースのアプリケーションに、第２のネットワークベースのアプリケーションに関連した受信ユーザ入力テキストを提供することをさらに含み得る。
【０００６】
本方法のテキスト入力嗜好のセットは、テーブルおよびデータベースの一方に含まれてもよい。テキスト入力嗜好のセットの適用は、テキスト入力嗜好のセットに含まれる１つまたは複数のユーザ定義スペリング嗜好を、受信ユーザ入力テキストと比較すること、およびユーザ定義スペリング嗜好との比較に基づいて、受信ユーザ入力テキスト中、ユーザ定義スペリング嗜好にそれぞれ一致する文字列がある１つまたは複数の単語を示すために受信ユーザ入力テキストに注釈を付けることを含み得る。受信ユーザ入力テキストの注釈付けは、それぞれ一致する文字列を表すために、受信ユーザ入力テキストを修正することを含み得る。受信ユーザ入力テキストへの注釈付けは、ユーザ入力テキストに対応するメタデータの生成を含んでもよく、メタデータはそれぞれ一致する文字列を表し、このメタデータはユーザ入力テキストを有する第１のネットワークベースのアプリケーションに提供される。
【０００７】
また、テキスト入力嗜好のセットの適用は、テキスト入力嗜好のセットに含まれる１つまたは複数のユーザ定義略語展開嗜好を、受信ユーザ入力テキストと比較すること、および受信ユーザ入力テキストを修正し、ユーザ定義略語展開嗜好との比較に基づき、受信ユーザ入力テキスト中、ユーザ定義略語展開嗜好にそれぞれ一致する文字列がある１つまたは複数の略語を展開することを含み得る。また、テキスト入力嗜好のセットの適用は、テキスト入力嗜好のセットに含まれる１つまたは複数のユーザ定義大文字化嗜好を、受信ユーザ入力テキストと比較すること、および受信ユーザ入力テキストに注釈を付け、ユーザ定義大文字化嗜好との比較に基づき、受信ユーザ入力テキスト中、ユーザ定義大文字化嗜好にそれぞれ一致する文字列がある１つまたは複数の単語を示すことを含み得る。
【０００８】
有効なログイン要求は、データネットワークを介して第１のコンピューティング装置から受信され得る。本方法は、第２のコンピューティング装置から、サーバにて、アカウントに対するユーザからの第２の有効なログイン要求を受信すること、およびアカウントと関連したテキスト入力嗜好のセットをサーバ上で識別することをさらに含み得る。本方法は、サーバ上で第２のネットワークベースのアプリケーションを実行する要求をユーザから受信すること、および第２のコンピューティング装置から、サーバにて、第２のネットワークベースのアプリケーションと関連したユーザ入力テキストを受信することをさらにまた含み得る。また、本方法は、第２のネットワークベースのアプリケーションと関連した受信ユーザ入力テキストにテキスト入力嗜好のセットをサーバによって適用すること、およびテキスト入力嗜好のセットを適用した後、第２のネットワークベースのアプリケーションと関連した受信ユーザ入力テキストを第２のネットワークベースのアプリケーションに提供することを含み得る。第１のネットワークベースのアプリケーションおよび第２のネットワークベースのアプリケーションは、同一のネットワークベースのアプリケーションであってもよい。
【０００９】
このサーバは、ログインサーバおよびアプリケーションサーバを含む、複数のネットワークサーバを含んでもよく、このログインサーバは有効なログイン要求を受信するように構成され、このアプリケーションサーバは第１のネットワークベースのアプリケーションの実行を求める要求を受信し、ユーザ入力テキストを受信し、テキスト入力嗜好のセットをユーザ入力テキストに適用するように構成される。テキスト入力嗜好のセットは、ログインサーバ上に位置してもよい。テキスト入力嗜好のセットは、アプリケーションサーバ上に位置してもよい。
【００１０】
もう１つの一般的な態様において、コンピュータで実施される方法は、第１のコンピューティング装置からサーバへ、そのサーバ上に維持されているアカウントに対するユーザからの有効なログイン要求を送信すること、およびそのアカウントに関連したテキスト入力嗜好のセットを、そのサーバから受信することを含む。本方法は、サーバ上で第１のネットワークベースのアプリケーションを実行することを求めるユーザからの要求をサーバに送信すること、および第１のネットワークベースのアプリケーションに関連したユーザ入力テキストを、第１のコンピューティング装置により受信することをさらに含む。本方法は、テキスト入力嗜好のセットをユーザ入力テキストに、第１のコンピューティング装置により適用すること、およびテキスト入力嗜好のセットを適用した後、ユーザ入力テキストをサーバに送信することをさらに含む。
【００１１】
実施は、以下の機能の１つまたは複数を含み得る。例えば、本方法は、サーバ上で第２のネットワークベースのアプリケーションを実行することを求めるユーザからの要求を、第１のコンピューティング装置からサーバに送信することを含み得る。第２のネットワークアプリケーションは、第１のネットワークベースのアプリケーションと異なってもよい。本方法は、第２のネットワークベースのアプリケーションと関連したユーザ入力テキストを第１のコンピューティング装置により受信することをさらにまた含み得る。また、本方法は、テキスト入力嗜好のセットを、第２のネットワークベースのアプリケーションと関連したユーザ入力テキストに、第１のコンピューティング装置により適用すること、およびテキスト入力嗜好のセットを適用した後、第２のネットワークベースのアプリケーションと関連したユーザ入力テキストをサーバに送信することも含み得る。
【００１２】
本方法は、アカウントに対するユーザからの第２の有効なログイン要求を、第２のコンピューティング装置からサーバに送信すること、およびそのアカウントに関連したテキスト入力嗜好のセットを、サーバから受信することを含み得る。また、本方法は、サーバ上で第２のネットワークベースのアプリケーションを実行することを求めるユーザからの要求をサーバに送信すること、および第２のネットワークベースのアプリケーションと関連したユーザ入力テキストを、第２のコンピューティング装置により受信することを含み得る。本方法は、テキスト入力嗜好のセットを、第２のネットワークベースのアプリケーションと関連したユーザ入力テキストに、第２のコンピューティング装置により適用すること、およびテキスト入力嗜好のセットを適用した後、第２のネットワークベースのアプリケーションと関連したユーザ入力テキストをサーバに送信することをさらに含み得る。
【００１３】
テキスト入力嗜好のセットは、１つもしくは複数のユーザ定義スペリング嗜好、１つもしくは複数のユーザ定義略語展開嗜好および／または１つもしくは複数のユーザ定義大文字化嗜好を含み得る。テキスト入力嗜好のセットの適用は、テキスト入力嗜好のセットに含まれるユーザ固有の常用語一覧と、ユーザ入力テキストとを比較すること、およびその比較に基づいて、１つまたは複数の自動補完の提案を提供することを含み得る。この１つまたは複数の自動補完の提案は、提供された自動補完の提案の対応する部分に一致するユーザ入力テキストのそれぞれの部分に基づいて決定され得る。
【００１４】
本方法は、ローカルにインストールされたアプリケーションを実行することを求めるユーザからの要求を、コンピューティング装置により受信すること、およびローカルにインストールされたアプリケーションに関連したユーザ入力テキストを、コンピューティング装置により受信することを含み得る。また、本方法は、テキスト入力嗜好のセットを、受信ユーザ入力テキストに、コンピューティング装置により適用すること、およびテキスト入力嗜好のセットを適用した後、受信ユーザ入力テキストを、ローカルにインストールしたアプリケーションに提供することを含み得る。
【００１５】
もう１つの一般的な態様において、システムには、少なくとも１つの処理装置および命令が格納された少なくとも１つの非一時的なマシン読取り可能媒体が含まれる。命令が少なくとも１つの処理装置により実行されると、システムは、サーバ上に維持されているアカウントに対するユーザからの有効なログイン要求を受信し、そのアカウントに関連したテキスト入力嗜好のセットを、システム内で識別することを実施する。命令が実行されると、サーバ上で第１のネットワークベースのアプリケーションを実行することを求めるユーザからの要求を受信し、第１のネットワークベースのアプリケーションに関連したユーザ入力テキストを受信することがさらに実施される。命令が実行されると、テキスト入力嗜好のセットを、受信ユーザ入力テキストに適用し、テキスト入力嗜好のセットを適用した後、受信ユーザ入力テキストを、第１のネットワークベースのアプリケーションに適用することがさらに実施される。
【００１６】
もう１つの一般的な態様において、コンピューティング装置には、少なくとも１つの処理装置および命令が格納された少なくとも１つの非一時的なマシン読取り可能媒体が含まれる。命令が少なくとも１つの処理装置により実行されると、コンピューティング装置は、サーバ上に維持されているアカウントに対するユーザからの有効なログイン要求をサーバに送信し、そのアカウントに関連したテキスト入力嗜好のセットを、サーバから受信することを実施する。命令が実行されると、サーバ上で第１のネットワークベースのアプリケーションを実行することを求めるユーザからの要求をサーバに送信し、第１のネットワークベースのアプリケーションに関連したユーザ入力テキストを受信することがさらに実施される。命令が実行されると、ユーザ入力テキストにテキスト入力嗜好のセットを適用し、テキスト入力嗜好のセットを適用した後、ユーザ入力テキストをサーバに送信することがさらに実施される。
【図面の簡単な説明】
【００１７】
【図１】は、例示的な実施形態に従ったコンピューティングネットワークを示すブロック図である。
【００１８】
【図２】は、図１のコンピューティングネットワークで実施され得る例示的な実施形態に従ったコンピューティング装置のブロック図である。
【００１９】
【図３】は、例示的な実施形態に従ったテキスト入力嗜好を示すブロック図である。
【００２０】
【図４Ａ−Ｂ】は、例示的な実施形態に従って、ネットワークベースのテキスト入力嗜好を実施するための手法を示すブロック図である。
【００２１】
【図５Ａ−Ｃ】は、例示的な実施形態に従って、ネットワークベースのテキスト入力嗜好を実施するための方法を示すフローチャートである。
【００２２】
【図６】は、例示的な実施形態に従って、テキスト入力嗜好を適用するための方法を示すフローチャートである。
【００２３】
【図７Ａ−Ｃ】は、例示的な実施形態に従って、ネットワークベースのテキスト入力嗜好を実施するための方法を示すフローチャートである。
【００２４】
【図８】は、例示的な実施形態に従って、テキスト入力嗜好を適用するための方法を示すフローチャートである。
【００２５】
【図９】は、例示的な実施形態に従って、本明細書に記述する技術を実施するために使用され得るコンピューティング装置およびモバイルコンピューティング装置を示す図である。
【発明を実施するための形態】
【００２６】
図１は、例示的な実施形態に従ったコンピューティングネットワーク１００を示すブロック図である。このコンピューティングネットワーク１００は、テキスト入力嗜好のネットワークベースのアプリケーション（カスタムスペルチェック、カスタム略語展開、カスタム大文字化、および特定のユーザによる常用語を使用した自動補完の提案の提供など）の手法を実施するために使用され得る。かかるテキスト入力嗜好は、本開示の他の図に関係して記述される技術などの本明細書中で記述される技術を使用して適用され得る。コンピューティングネットワーク１００の構成は、説明の目的および例として示されている。本明細書中で記述される技術を実施するための他のコンピューティングネットワークの構成および他の手法も可能であることが理解されるであろう。
【００２７】
図１に示されているように、コンピューティングネットワーク１００は、コンピューティング装置１０５およびコンピューティング装置１１０を含む、複数のコンピューティング装置を含む。図１には２つのコンピューティング装置のみを示しているが、このコンピューティングネットワーク１００は、追加のコンピューティング装置を含み得る。コンピューティングネットワーク１００内で、コンピューティング装置１０５および１１０は、データネットワーク１１５を介して、オンラインサービスプロバイダ１２０と通信し得る。オンラインサービスプロバイダ１２０は、１つまたは複数のコンピューティングサーバを含み得る。オンラインサービスプロバイダ１２０の具体的な構成は、具体的な実施形態に依存してよい。データネットワーク１１５は、私設データネットワークであっても、インターネットなどの公衆データネットワークであってもよい。
【００２８】
図１に示す実施形態で、オンラインサービスプロバイダ１２０は、ログインサーバ１２５およびアプリケーションサーバ１３５を含む。ログインサーバ１２５は、ユーザ認証モジュール１３０を含み、これはユーザからのログイン要求（例えば、データネットワーク１１５を介したコンピューティング装置１０５からのログイン要求）を受信し、そのログイン要求が有効かどうかを判定するように構成し得る。例えば、ユーザ認証モジュール１３０は、受信したログイン要求に含まれているユーザ認証情報を、オンラインサービスプロバイダ１２０によって維持されているユーザアカウントのユーザ認証情報と比較することにより、そのログイン要求が有効かどうかを判定し得る。かかる実施形態では、受信したユーザ認証情報が、所定のユーザアカウントのユーザ認証情報と一致している場合、それらの認証情報を提供したユーザは、オンラインサービスプロバイダ１２０上で対応するアカウントへのアクセスを許可され得る。
【００２９】
また、コンピューティングネットワーク１００のオンラインサービスプロバイダ１２０は、アプリケーションサーバ１３５も含む。図１に示すように、アプリケーションサーバ１３５は、テキスト入力嗜好１４０ならびにネットワークベースのアプリケーション１４５およびネットワークベースのアプリケーション１５０などの複数のネットワークベースのアプリケーションを含み得る。図１には、２つのネットワークベースのアプリケーションのみを示しているが、アプリケーションサーバは、具体的な実施形態に応じて、追加のネットワークベースのアプリケーションを含み得ることが理解されるであろう。ネットワークベースのアプリケーション１４５および１５０は、数多くの形式を取り得る。例えば、ネットワークベースのアプリケーション１５０の中の１４５は、ｅメールアプリケーション、ワードプロセッシングアプリケーション、データベース管理アプリケーションまたは他の数多くのネットワークベースのアプリケーションを含み得る。
【００３０】
他の実施形態では、ログインサーバ１２５およびアプリケーションサーバ１３５は、単一のエンティティとして実施されても、あるいは追加のサーバ装置を使用して実施されてもよい。コンピューティングネットワーク１００は、本明細書中に記述される技術を使用することなどによって、テキスト入力嗜好１４０を、コンピューティング装置１０５および／もしくは１１０のユーザによって入力されたテキスト、例えば、ネットワークベースのアプリケーション１５０中の１４５と関連して、または本明細書中に記述されるようなコンピューティング装置１０５および１１０にローカルにインストールされたアプリケーションと関連して入力されたテキストに適用するために使用されてもよい。
【００３１】
図２は、図１のコンピューティングネットワーク１００におけるコンピューティング装置１０５および１１０として実施され得る例示的な実施形態に従ったコンピューティング装置２００のブロック図である。図２に示されているように、コンピューティング装置２００は、テキスト入力装置２１０、ディスプレイ／ユーザインターフェース（ＵＩ）２２０、プロセッサ２３０、メモリ２４０、ローカルアプリケーション２５０およびブラウザ２６０を含む。図２に示すコンピューティング装置２００の構成は、例として示されており、他の数多くの構成が可能であることが理解されるであろう。
【００３２】
コンピューティング装置２００において、テキスト入力装置２１０は、いくつか例を挙げると、キーボード、タッチスクリーンテキスト入力装置および／または音声認識テキスト入力装置を含み得る。テキスト入力装置２１０は、テキスト入力嗜好を適用するための本明細書に記述される技術を実施する際に、ユーザ入力テキストを受信するために使用され得る。コンピューティング装置２００のディスプレイ／ＵＩ２２０は、ネットワークベースのアプリケーションおよび／またはローカルにインストールされたアプリケーション（例えば、ローカルアプリケーション２５０）など、１つまたは複数のアプリケーションと対話する場合に、ユーザに情報を表示する目的に使用され得る。本明細書中に記述された技術を使用して、本明細書中に記述されたようなテキスト入力嗜好の単一セットは、複数のアプリケーションおよび／または複数のコンピューティング装置にまたがって使用され得るので、ユーザが対話するアプリケーションごとおよびコンピューティング装置ごとに、かかる嗜好を作成し直す必要を除去する。
【００３３】
コンピューティング装置２００において、プロセッサ２３０は、本明細書中に記述される技術を実施する際、メモリ２４０に格納され、ローカルアプリケーション２５０に含まれ、かつ／またはブラウザ２６０に含まれるマシン読取り可能命令を実行するように構成されてもよい。また、具体的な実施形態によっては、ローカルアプリケーション２５０およびブラウザ２６０の命令は、メモリ２４０に格納されてもよいが、他の手法も可能である。
【００３４】
図３は、例示的な実施形態に従ったテキスト入力嗜好３００を示すブロック図である。テキスト入力嗜好３００は、コンピューティング装置２００などのコンピューティング装置に、数多くの方式で格納されてもよい。例えば、テキスト入力嗜好３００は、テーブルおよび／またはデータベースとして、コンピューティング装置２００のメモリ２４０に格納されてもよい。他の実施形態では、テキスト入力嗜好３００は、他の適切な技術を使用して、コンピューティング装置に格納されてもよい。
【００３５】
図３に示すように、テキスト入力嗜好３００は、ユーザ定義スペリング嗜好３１０、ユーザ定義略語展開嗜好３２０、ユーザ定義大文字化嗜好３３０およびユーザ固有の常用語３４０を含んでもよい。例示的な実施形態では、コンピューティング装置２００などのコンピューティング装置、またはオンラインサービスプロバイダ１２０などのサーバは、ユーザがユーザ定義スペリング嗜好３１０、ユーザ定義略語展開嗜好３２０、ユーザ定義大文字化嗜好３３０およびユーザ固有の常用語３４０にアイテムを追加かつ／または削除するために使用されてもよいユーザインターフェースをユーザのコンピューティング装置上に提供するように構成されてもよい。
【００３６】
テキスト入力嗜好３００で、ユーザ定義スペリング嗜好３１０には、標準辞書には掲載されていなくてもよい１つまたは複数の単語または用語が登録されてもよい。これらの単語または用語は、例えば、標準辞書には掲載されていないが、ユーザが適切に綴られているものとして示したい固有名詞、技術的な専門用語またはその他の用語であってもよい。ユーザ定義略語展開嗜好３２０は、略語と、例えば、コンピューティング装置２００のテキスト入力装置２１０を使用して、略語テキストが入力された際に、ユーザがその略語に置換させたいそれぞれのテキストとの一覧を登録することができる。例えば、ユーザは「ｔｙ」または「ＴＹ」というテキストを入力したら、「ｔｈａｎｋ  ｙｏｕ」というテキストに展開すべきであることを表す展開嗜好を定義してもよい。同様に、ユーザ定義大文字化嗜好３３０は、例えば標準文法チェッカーを使った際に、大文字と小文字の使い分けが不適切であるとしてマークされる可能性のあるユーザ定義による大文字化を備える用語の一覧を登録してもよい。例えば、ユーザは自分の名前の全小文字表記または全大文字表記をユーザ定義大文字化嗜好３３０に追加してもよい。常用語３４０には、ユーザの常用語の一覧を登録しておくことができ、登録した用語は、本明細書中に記述された技術を使用するなどして、自動補完の提案として利用してもよい。
【００３７】
図４Ａおよび４Ｂは、コンピューティングネットワーク４００の２つの構成を示すブロック図であり、例示的実施形態に従って、ネットワークベースのテキスト入力嗜好をユーザ入力テキストに実施（適用）するために使用し得る２つの手法を示している。図４Ａおよび４Ｂに示されているように、コンピューティングネットワーク４００は、コンピューティング装置４１０、オンラインサービスプロバイダ４２０およびデータネットワーク４３０を含む。図４Ａに示されているように、コンピューティングネットワーク４００のオンラインサービスプロバイダ４２０は、図１に関して前述した方式などで、複合ログインサーバおよびアプリケーションサーバとして実施されてもよい。
【００３８】
今一度、図４Ａを参照すると、オンラインサービスプロバイダ４２０は、テキスト入力嗜好４５０を適用するために使用され得るテキスト入力フィルター４４０を含む。例示的な実施形態では、テキスト入力嗜好４５０は、図３に示すテキスト入力嗜好３００と類似の方式で実施されてもよい。図５Ａ、５Ｂ、５Ｃおよび６に関して以下でさらに詳述するように、例えば、テキスト入力フィルター４４０は、コンピューティング装置４１０を使用して、ユーザによって入力されるテキストにテキスト入力嗜好４５０を適用するために使用されてもよく、このユーザ入力テキストは、例えば、ネットワークベースのアプリケーション４６０またはネットワークベースのアプリケーション４７０と関連づけられてもよい。他の実施形態では、テキスト入力フィルター４４０は、他のネットワークベースのアプリケーションに関連したテキストまたは他の目的のためのテキストにテキスト入力嗜好４５０を適用してもよい。
【００３９】
ここで図４Ｂを参照すると、コンピューティング装置４１０は、このコンピューティングネットワーク４００の構成において、テキスト入力嗜好４５０を、コンピューティング装置４１０によって受信されるユーザ入力テキストに適用するために使用し得るテキスト入力フィルター４４０を含む。例示的な実施形態では、テキスト入力嗜好４５０は、図３に示すテキスト入力嗜好３００と類似の方式で実施されてもよい。図４Ｂに示す特有の実施形態では、テキスト入力嗜好４５０は、オンラインサービスプロバイダ４３０によって受信される有効なログイン要求への応答として、コンピューティング装置４１０に提供されてもよい。
【００４０】
図７Ａ、７Ｂ、７Ｃ、７Ｄおよび８に関して以下でさらに詳述するように、例えば上述されるように図４Ｂのコンピューティング装置４１０内のテキスト入力フィルター４４０は、コンピューティング装置４１０を使用して、ユーザによって入力されるテキストに、テキスト入力嗜好４５０を適用するために使用されてもよく、このユーザ入力テキストは、いくつか例を挙げると、ネットワークベースのアプリケーション４６０、ローカルにインストールされたアプリケーション４４０またはブラウザ４９０に関連づけられてもよい。他の実施形態では、テキスト入力フィルター４４０は、他のエンティティでの使用または他の目的のためのユーザ入力テキストに、テキスト入力嗜好４５０を適用してもよい。
【００４１】
図５Ａ、５Ｂおよび５Ｃは、例示的な実施形態に従って、ネットワークベースのテキスト入力嗜好を実施するための方法５００、５３５および５６０をそれぞれ示すフローチャートである。方法５００、５３５および５６０は、図２および３に示し、上述した手法を使用して、図１に示すコンピューティングネットワーク１００または図４Ａに示すコンピューティングネットワーク４００に実施されてもよい。そのため、方法５００、５３５および５６０は、適宜、図１、２、３および４Ａをさらに参照しながら記述される。しかしながら、方法５００、５３５および５６０は、他の適切な技術を使用して、他の構成を有するネットワークで実施されてもよいことが理解されるだろう。
【００４２】
ここで図５Ａを参照すると、方法５００は、サーバ上に維持されているアカウントに対するユーザからの有効なログイン要求を、ブロック５０５にて受信することを含む。例えば、かかるログイン要求は、コンピューティング装置１０５から、ネットワーク１１５を介して、オンラインサービスプロバイダ１２０のログインサーバ１２５に送信されてもよい。上述したように、ログインサーバ１２５のユーザ認証モジュール１３０は、ログイン要求を処理し、オンラインサービスプロバイダ１２０により維持されている対応するアカウントへのユーザのアクセスを認証することができる。
【００４３】
ブロック５１０にて、方法５００は、ユーザアカウントに関連したテキスト入力嗜好のセットを識別することを含む。例えば、ネットワーク１００では、ログインサーバ１２５がユーザを認証した後、オンラインサービスプロバイダ１２０は、アプリケーションサーバ１３５に格納されたテキスト入力嗜好１４０を識別してもよい。他の実施形態では、テキスト入力嗜好１４０は、ログインサーバ１２５などの他の場所に格納されてもよく、あるいは例として図４Ａおよび４Ｂに示されているオンラインサービスプロバイダ４２０などの複合ログイン／アプリケーションサーバに格納されてもよい。他の実施形態では、テキスト入力嗜好１４０は他の場所に格納されてもよい。
【００４４】
ブロック５１５にて、方法５００は、サーバ上で第１のネットワークベースのアプリケーションを実行することを求めるユーザからの要求を受信することを含む。例えば、ブロック５１５の要求は、ネットワーク１１５を介して、コンピューティング装置１０５からアプリケーションサーバ１３５に送信してもよい。この要求は、ユーザがネットワークベースのアプリケーション１４５またはネットワークベースのアプリケーション１５０を実行することを希望していることを表すことができる。上述したとおり、かかるネットワークベースのアプリケーションは、コンピューティング装置上でアプリケーションに対応するＵＩを提供するために実行される際、（例えば、データネットワークを通じて）ユーザコンピューティング装置と通信し得る。そのため、ユーザはテキストまたは他の情報を入力するために、提供されたＵＩを使用して、関連するネットワークベースのアプリケーションと対話し得る。
【００４５】
方法５００は、ブロック５２０にて、第１のネットワークベースのアプリケーションに関連したユーザ入力テキストを受信することをさらに含む。例えば、このユーザはネットワークベースのアプリケーション１４５の実行を要求してもよく、このアプリケーションは、例えば、ネットワークベースのｅメールプログラムであってもよい。そのため、このユーザはコンピューティング装置１０５上でネットワークベースのアプリケーション１４５のＵＩを使用して、ｅメールメッセージを作成する目的などのために、ｅメールアプリケーションと関連したテキストを入力し得る。
【００４６】
ブロック５２０にてユーザ入力テキストを受信した後、方法５００は、ブロック５２５にて、本明細書中に記述された技術を使用するなどして、ブロック５１０にて識別されたテキスト入力嗜好のセットを、受信ユーザ入力テキストに適用することを含む。例えば、図４Ａに示す例示的実施形態では、テキスト入力嗜好４５０を、テキスト入力フィルター４４０によってユーザ入力テキストに適用し得る。
【００４７】
ブロック５３０にて、方法５００は、テキスト入力嗜好のセットを適用した後、ブロック５２５にて、受信ユーザ入力テキストを第１のネットワークベースのアプリケーションに提供することを含む。例えば、テキスト入力フィルター４４０は、テキスト入力嗜好４５０を適用した後、ユーザ入力テキストを、ネットワークベースのアプリケーション４６０（またはネットワーク１００内のネットワークベースのアプリケーション１４５）に提供してもよい。その後、第１のネットワークベースのアプリケーションは、特定のネットワークベースのアプリケーションに対して、適宜、受信ユーザ入力テキストを使用してもよい。例えば、ユーザ入力テキストは、ブロック５２５にて加えられた変更または修正のいずれかをテキストに反映させながら、ｅメールメッセージに含めてもよい
【００４８】
図５Ｂに示す方法５３５は、図５Ａに示す方法５００と同時に実施し得る。かかる手法を実施する実施形態では、方法５３５は、ブロック５４０にて、サーバ上で第２のネットワークベースのアプリケーションを実行することを求めるユーザからの要求を受信することを含む。方法５３５では、第２のネットワークアプリケーションは、ブロック５１５の第１のネットワークアプリケーションとは異なる。例えば、図４Ａに示すネットワーク４００では、ブロック５１５の第１のネットワークベースのアプリケーションは、ネットワークベースのアプリケーション４６０（例えば、ｅメールアプリケーション）であってもよく、ブロック５４０の第２のネットワークベースのアプリケーションは、ネットワークベースのアプリケーション４７０（例えば、ワードプロセッシングアプリケーション）であってもよい。
【００４９】
ブロック５４５にて、方法５３５は、ワードプロセッシング文書に含まれるテキストなど、ブロック５４０の第２のネットワークベースのアプリケーションと関連したユーザ入力テキストを受信することを含み得る。ブロック５５０および５５５にて、方法５３５は、方法５００のブロック５２５および５３０に関して上述した方式と類似の方式で、テキスト入力嗜好のセットを、第２のネットワークベースのアプリケーションと関連した受信ユーザ入力テキストに（ブロック５５０にて）適用し、このテキスト入力嗜好を提供した後、ユーザ入力テキストを、第２のネットワークベースのアプリケーションに（ブロック５５５にて）提供することを含み得る。そのため、上記の例では、ブロック５５５のユーザ入力テキストを、ブロック５５０にて加えられた変更または修正のいずれかをテキストに反映しながら、ワードプロセッシング文書に含めてもよい。かかる手法を使用して、同一のテキスト入力嗜好を複数のアプリケーション（例えば、ネットワークベースのアプリケーション）で使用することができるため、アプリケーションごとに別個のテキスト入力嗜好を作成する必要を除去することができる。
【００５０】
また、方法５３５と同様の方式で、図５Ｃに示す方法５６０は、図５Ａに示す方法５００と同時に実施され得る。かかる手法を実施する実施形態では、方法５６０は、ユーザ本人のアカウントに対するユーザからの第２の有効なログイン要求を（例えば、ログインサーバ１２５またはオンラインサーバプロバイダ４２０にて）ブロック５６５にて受信することを含む。かかる手法では、方法５００のブロック５０５の有効なログイン要求は、コンピューティング装置１０５などの、第１のコンピューティング装置から受信してもよく、ブロック５６５の第２の有効なログイン要求は、ネットワーク１００のコンピューティング装置１１０などの第２のコンピューティング装置から受信されてもよい。本明細書中で記述されるように、ブロック５６５の第２の有効なログイン要求の認証後、ユーザには自分のアカウントへのアクセス権が認められてもよい。
【００５１】
方法５６０では、ブロック５７０〜５９０の動作は、方法５００のブロック５１０〜５３０と類似の方式で実施されてもよい。例えば、ブロック５７０にて、テキスト入力嗜好のセットが識別されてもよい。ブロック５７５にて、第２のネットワークベースのアプリケーションの実行を求める要求が、サーバで受信されてもよい。方法５６０では、第２のネットワークベースのアプリケーションは、ブロック５１５の第１のネットワークベースのアプリケーションと同一のネットワークベースのアプリケーションであっても、あるいは異なるネットワークベースのアプリケーションであってもよい。ブロック５８０にて、第２のネットワークベースのアプリケーションと関連したユーザ入力テキストが受信されてもよい。ブロック５８５にて、ブロック５７０で識別されたテキスト入力嗜好のセットが、ブロック５８０で受信したユーザ入力テキストに適用されてもよい。ブロック５９０にて、例えば、方法５００のブロック５３０に関して上述した方式と類似の方式で、テキスト入力嗜好のセットを適用後、ブロック５８５のユーザ入力テキストが、第２のネットワークベースのアプリケーションに適用されてもよい。
【００５２】
図６は、例示的な実施形態に従って、テキスト入力嗜好を適用するための方法６００を示すフローチャートである。方法６００は、図５Ａ、５Ｂおよび５Ｃにそれぞれ示す方法５００、５３５および５６０と同時に実施されてもよい。例えば、方法６００は、方法５００のブロック５２５、方法５３５のブロック５５０および方法５６０のブロック５８５として実施されてもよい。もちろん、これらの方法では、テキスト入力嗜好の適用のために、他の数多くの適切な手法が使用されてもよい。説明のため、方法６００は、方法５００のブロック５２５として実施されるものとして記述される。さらに、方法６００は、図１、２、３、４Ａおよび４Ｂで示される技術および手法を使用して実施されてもよい。例えば、方法６００の動作は、テキスト入力フィルター４４０により実施されてもよい。したがって、方法６００については、適宜、これらの図をさらに参照しながら記述されるものである。しかしながら、方法６００は他の手法および技術を使用しても実施されてもよいことが理解されるであろう。
【００５３】
ブロック６１０にて、方法６００は、ブロック５２０で受信した受信ユーザ入力テキストを、ブロック５１０で識別されたテキスト入力嗜好のセットに含まれる１つまたは複数のユーザ定義スペリング嗜好と比較することを含む。簡単に上述した通り、このユーザ定義スペリング嗜好は、標準辞書に掲載されていなくてもよい１つまたは複数の単語を含んでもよい。いくつか例を挙げると、ユーザ定義スペリング嗜好は、ユーザの名字、特定の職業もしくは技術に関連した用語、および／またはユーザが使用する単語の代替スペリングを含んでもよく、ユーザ定義スペリング嗜好に含まれる単語または用語は、標準辞書に掲載されていなくてもよく、テキスト入力嗜好のセットに含まれていない場合は、ブロック５１５の第１のネットワークベースのアプリケーションによりスペルミスとしてマークされてもよい。もちろん、ユーザ定義スペリング嗜好に含まれてもよい用語としては他の例も可能であり、前述の例は説明の目的のためにのみ示されている。かかる手法では、テキストフィルター４４０は、ユーザがかかるユーザ定義スペリング嗜好に用語を追加し、例えばテキスト入力嗜好４５０にこれらの用語を保存することを可能にするように構成されてもよい。
【００５４】
ブロック６２０にて、方法６００は、受信ユーザ入力テキスト中で、ユーザ定義スペリング嗜好中にそれぞれ一致する文字列がある１つまたは複数の単語を示すように、（例えば、テキストフィルター４４０により）受信ユーザ入力テキストに注釈を付けることを含む。方法６００では、ブロック６２０にての受信ユーザ入力テキストの注釈付けは、ユーザ入力テキストに修正を加え、ユーザ定義スペリング嗜好中にそれぞれ一致する文字列がある１つまたは複数の単語を識別することも含んでもよい。
【００５５】
１つの実施形態では、受信ユーザ入力テキストは、ブロック６２０にて、ユーザ定義スペリング嗜好中に、それぞれ一致する文字列のある単語を表すためのフラグを使用して、修正されてもよい。他の実施形態では、テキストフィルター４４０は、受信ユーザ入力テキストに対して対応するメタデータのセットを生成してもよく、このメタデータは、ユーザ入力テキスト中で、ユーザ定義スペリング嗜好にそれぞれ一致する文字列のある単語を表す。かかる手法では、ブロック５３０にて、ユーザ入力テキストと一緒に、メタデータが第１のネットワークベースのアプリケーションに提供されてもよい。ユーザ定義スペリング嗜好にそれぞれ一致する文字列のある１つまたは複数の単語が、標準のスペルチェックを実行するために、第１のネットワークベースのアプリケーションにより使用され得る標準辞書にそれらの単語に一致する文字列がない場合であっても、スペルミスとして指摘されるべきでないことを表すために、方法５００の第１のネットワークベースのアプリケーションによって、この修正および／またはメタデータを使用してもよい。
【００５６】
ブロック６３０にて、方法６００は、ブロック５２０の受信ユーザ入力テキストを、テキスト入力嗜好のセット４５０に含まれ得る１つまたは複数のユーザ定義略語展開嗜好と比較することを含む。ブロック６４０にて、方法６００は、受信ユーザ入力テキスト中で、ユーザ定義略語展開嗜好中にそれぞれ一致する文字列がある１つまたは複数の略語を展開するように、受信ユーザ入力テキストを修正することを含む。例えば、ユーザは、テキスト「ｂｒ」または「ＢＲ」を「Ｂｅｓｔ  ｒｅｇａｒｄｓ」と展開することを望むことを表す略語展開嗜好をテキスト入力嗜好のセット４５０に追加（定義）していたかもしれない。かかる手法では、ユーザは、テキストフィルター４４０により提供されるインターフェースを使用するか、または他の数多くの適切な機構を使用することにより、略語展開嗜好を追加してもよい。この例では、ブロック６４０にて、テキストフィルター４４０は、かかるユーザ定義略語展開嗜好をユーザ入力テキストに適用してもよく、テキストフィルター４４０は、略語テキストを、受信ユーザ入力テキスト中のそのそれぞれのユーザ定義略語展開嗜好と置換する。
【００５７】
ブロック６５０にて、方法６００は、受信ユーザ入力テキストを、テキスト入力嗜好のセットに含まれ得る１つまたは複数のユーザ定義大文字化嗜好と比較することを含む。例えば、このユーザは、全小文字または全大文字で通信文に署名することを希望してもよい。かかる嗜好は、本明細書中に記述された技術を使用して、ユーザによりテキスト入力嗜好のセットに追加してもよい。
【００５８】
ブロック６６０にて、方法６００は、受信ユーザ入力テキストに（例えば、テキストフィルター４４０により）注釈を付け、受信ユーザ入力テキスト中、ユーザ定義大文字化嗜好中にそれぞれ一致する文字列がある１つまたは複数の単語または用語を示すことを含む。方法６００では、ブロック６６０での受信ユーザ入力テキストへの注釈付けは、ブロック６２０のユーザ定義スペリング嗜好に関して上述したのと類似の方式などで、ユーザ定義大文字化嗜好にそれぞれ一致する文字列のある１つまたは複数の単語を識別するように、ユーザ入力テキストを修正することおよび／またはメタデータを生成することを含む。ユーザ定義大文字化嗜好にそれぞれ一致する文字列のある１つまたは複数の単語は、標準のスペルチェックおよび／または大文字化チェックを実行するために、第１のネットワークベースのアプリケーションにより使用される標準辞書にそれらの単語に一致するものがない場合であっても、大文字と小文字の使い分けが不適切として指摘されるべきでないことを表すために、この修正および／またはメタデータを、方法５００の第１のネットワークベースのアプリケーションにより使用してもよい。
【００５９】
図７Ａ、７Ｂ、７Ｃおよび７Ｄは、例示的な実施形態に従って、ネットワークベースのテキスト入力嗜好を実施するための方法７００、７２０、７３０および７５０をそれぞれ示すフローチャートである。方法７００、７２０、７３０および７５０は、図２および３ならびに上述で示した手法を使用するなどして、図１に示すコンピューティングネットワーク１００または図４Ｂに示すコンピューティングネットワーク４００で実施されてもよい。したがって、方法７００、７２０、７３０および７５０は、適宜、図１、２、３および４Ｂをさらに参照して記述される。しかしながら、方法７００、７２０、７３０および７５０は、他の適切な技術を使用して、他の構成を有するネットワークで実施されてもよいことも理解されるであろう。方法７００、７２０、７３０および７５０は、方法５００、５３５および５６０に対して類似した動作を含む。しかしながら、方法７００、７２０、７３０および７５０（例えば、図４Ｂに示すネットワーク４００）では、テキスト入力嗜好は、オンラインサービスプロバイダサーバ４２０（ネットワーク側）ではなく、コンピューティング装置４１０（例えば、クライアント側）を使用して、テキスト入力フィルター４４０により適用される。
【００６０】
ここで図７Ａを参照すると、方法７００は、ブロック７０２にて、サーバ上に維持されているアカウントに対するユーザからの有効なログイン要求をサーバに送信することを含む。例えば、かかるログイン要求は、コンピューティング装置４１０から、オンラインサービスプロバイダ４２０の複合ログイン／アプリケーションサーバに、ネットワーク４３０を介して送信されてもよい。本明細書中で記述されるように、オンラインサービスプロバイダ４２０のユーザ認証モジュールは、ログイン要求を処理して、オンラインサービスプロバイダ４２０によって維持されている対応するアカウントへのアクセスをユーザに認証してもよい。
【００６１】
ブロック７０４にて、方法７００は、ユーザアカウントと関連したテキスト入力嗜好のセットを受信することを含む。例えば、図４Ｂに示すネットワーク４００では、オンラインサービスプロバイダ４２０がユーザを認証した後、オンラインサービスプロバイダ４２０は、テキスト入力嗜好４５０を識別し、ネットワーク４３０を介して、テキスト入力嗜好４５０を、コンピューティング装置４１０に送信してもよい。他の実施形態では、テキスト入力嗜好４５０は、他の場所に格納されて、他の方法で、コンピューティング装置４１０に提供されてもよい。
【００６２】
ブロック７０６にて、方法７００は、サーバ上で第１のネットワークベースのアプリケーションを実行することを求めるユーザからの要求を、サーバに送信することを含む。例えば、ブロック７０６の要求は、コンピューティング装置４１０から、ネットワーク４３０を介して、オンラインサービスプロバイダ４２０に送信されてもよい。この要求は、ユーザがネットワークベースのアプリケーション４６０の所定のネットワークベースのアプリケーションを実行することを希望していることを表してもよい。上述した通り、かかるネットワークベースのアプリケーションは、コンピューティング装置４１０上でアプリケーションに対応するＵＩを提供するために実行されている際、ユーザコンピューティング装置４１０と通信してもよい。このとき、ユーザは、テキストまたは他の情報を入力するためなどに提供されたＵＩを使用して、関連するネットワークベースのアプリケーションと対話してもよい。
【００６３】
方法７００は、ブロック７０８にて、第１のネットワークベースのアプリケーションに関連したユーザ入力テキストを、コンピューティング装置４１０により、受信することをさらに含む。ブロック７１０にて、方法７００は、コンピューティング装置４１０のテキスト入力フィルター４４０がテキスト入力嗜好４５０を、ブロック７０８のユーザ入力テキストに適用することを含む。ブロック７１２にて、方法７００は、テキスト入力フィルター４４０がテキスト入力嗜好４５０を適用した後、ユーザ入力テキストをオンラインサービスプロバイダ４２０に送信することを含んでもよい。次に、オンラインサービスプロバイダ４２０は、方法５００、５３５および５６０に関して上述した方式と類似の方式で、テキスト入力嗜好４５０が適用されたユーザ入力テキストを使用してもよい。
【００６４】
図７Ｂに示す方法７２０は、図７Ａに示した方法７００と同時に実施されてもよい。かかる手法を実施する実施形態では、方法７２０は、ブロック７２２にて、サーバ上で第２のネットワークベースのアプリケーションを実行することを求めるユーザからの要求をサーバに送信することを含む。方法７２０では、第２のネットワークアプリケーションは、ブロック７０６の第１のネットワークアプリケーションとは異なってもよい。例えば、図５Ｂに関して上述したのと類似の方式で、ブロック７０６の第１のネットワークベースのアプリケーションは、ｅメールアプリケーションであってもよく、ブロック７２２の第２のネットワークベースのアプリケーションは、ワードプロセッシングアプリケーションであってもよい。他の実施形態では、他のネットワークベースのアプリケーションが使用されてもよい。
【００６５】
ブロック７２４にて、方法７２０は、ワードプロセッシング文書に含まれるテキストなどの、ブロック７２２の第２のネットワークベースのアプリケーションと関連したユーザ入力テキストを、コンピューティング装置４１０により受信することを含んでもよい。ブロック７２６および７２８にて、方法７２０は、方法７００のブロック７１０および７１２に関して上述した方式と類似の方式で、テキスト入力嗜好のセット４５０のセットを、第２のネットワークベースのアプリケーションと関連した受信ユーザ入力テキストに（ブロック７２６にて）適用し、テキスト入力嗜好４５０を適用した後、ユーザ入力テキストをオンラインサービスプロバイダ４２０に（ブロック７２８にて）送信することを含んでもよい。次にオンラインサービスプロバイダ４２０は、方法５００、５３５および５６０に関して上述した方式と類似の方式で、適用されたテキスト入力嗜好４５０を含む、第２のネットワークベースのアプリケーションと関連したユーザ入力テキストを使用してもよい。かかる手法は、図５Ｂに関して上述した方式と類似の方式で、複数のアプリケーションに対し単一のテキスト入力嗜好のセットを使用することを可能にしてもよい。
【００６６】
また、図７Ｃに示した方法７３０は、方法７２０と同様の方式で、図７Ａに示す方法７００と同時に実施されてもよい。かかる手法を実施する実施形態では、方法７３０は、ブロック７３２にて、ユーザのアカウントに対する（例えば、別のコンピューティング装置を使用した）ユーザからの第２の有効なログイン要求を送信することを含む。かかる手法では、本方法７００のブロック７０２の有効なログイン要求は、コンピューティング装置４１０から送信されてもよく、ブロック７３２の第第２の有効なログイン要求は、第２の異なるコンピューティング装置（例えば、図５Ｂに関してネットワーク１００のコンピューティング装置１１０に関して記述された方式などで）送信されてもよい。本明細書中で記述されるように、ブロック７３２の第２の有効なログイン要求の認証の後、ユーザは自分のアカウントへのアクセス権を付与されてもよい。
【００６７】
方法７３０では、ブロック７３４〜７４２の動作は、方法７００のブロック７０４〜７１２と類似の方式で実施されてもよい。例えば、ブロック７３４にて、テキスト入力嗜好のセット４５０は、オンラインサービスプロバイダ４２０から、第２のコンピューティング装置により受信されてもよい。ブロック７３６にて、第２のネットワークベースのアプリケーションの実行を求める要求は、第２のコンピューティング装置からオンラインサービスプロバイダ４２０に送信されてもよい。方法７００では、第２のネットワークベースのアプリケーションは、ブロック７０６の第１のネットワークベースのアプリケーションと同一のネットワークベースのアプリケーションであっても、異なるネットワークベースのアプリケーションであってもよい。ブロック７３８にて、第２のネットワークベースのアプリケーションと関連したユーザ入力テキストは、第２のコンピューティング装置により受信されてもよい。
【００６８】
ブロック７４０にて、方法７３０は、第２のコンピューティング装置のテキスト入力フィルターがテキスト入力嗜好４５０をブロック７３８のユーザ入力テキストに適用することを含んでもよい。ブロック７４２にて、方法７００は、テキスト入力フィルターがテキスト入力嗜好４５０を適用した後、ユーザ入力テキストを、第２のコンピューティング装置からオンラインサービスプロバイダ４２０に送信することを含んでもよい。次にオンラインサービスプロバイダ４２０は、方法５００、５３５および５６０に関して上述した方式と類似の方式で適用したテキスト入力嗜好４５０を備えたユーザ入力テキストを使用してもよい。かかる手法では、装置ごとにかかる嗜好を作成し直す必要なしに、複数のコンピューティング装置上で同一のテキスト入力嗜好を使用することが可能になる。
【００６９】
また、方法７２０および７３０と同様の方式で、図７Ｄに示す方法７５０は、図７Ａに示す方法７００と同時に実施されてもよく、図４Ｂに示すネットワーク４００をさらに参照しながら記述される。かかる手法を実施する際、方法７５０は、ブロック７５２にて、コンピューティング装置４１０のローカルアプリケーション４８０の１つなど、ローカルにインストールされたアプリケーションの実行を求めるユーザからの要求を、コンピューティング装置４１０により受信することも含む。ブロック７５４にて、方法７５０は、要求されたローカルにインストールされたアプリケーション４８０と関連したユーザ入力テキストを、コンピューティング装置４１０により受信することを含んでもよい。
【００７０】
ブロック７５６にて、方法７５０は、テキスト入力嗜好７５０を、（例えば、テキスト入力フィルター４４０を使用して）受信ユーザ入力テキストに適用することを含む。ブロック７５８にて、方法７５０は、（テキスト入力嗜好７５０を適用した）ブロック７５６のユーザ入力テキストを要求されたローカルにインストールされたアプリケーション４８０に提供することを含む。かかる手法では、テキスト入力嗜好４５０を適用したユーザ入力テキストが、方法５００、５３５および５６０のネットワークベースのアプリケーションに関して、上述した方式と類似の方式で、ローカルにインストールされたアプリケーション４８０によって使用されてもよい。かかる手法は、同一のテキスト入力嗜好のセットをネットワークベースのアプリケーションとローカルにインストールされたアプリケーションとの両方に使用することを可能にする。
【００７１】
図８は、例示的な実施形態に従って、テキスト入力嗜好を提供するための方法８００を示すフローチャートである。方法８００は、図４Ｂに示すネットワーク４００などで、図７Ａ、７Ｂおよび７Ｃにそれぞれ示す方法７００、７２０および７５０と同時に実施されてもよい。例えば、方法８００の動作は、コンピューティング装置４１０のテキストフィルター４４０により実施されてもよい。もちろん、他のネットワーク構成および手法を使用して、方法８００を実施してもよい
【００７２】
ブロック８１０にて、方法８００は、ユーザ入力テキストを、テキスト入力嗜好のセット４５０に含まれてもよいユーザ固有の常用語一覧と比較することを含む。かかる手法では、テキスト入力フィルター４４０は、ユーザによるテキスト入力を監視し、特定の用語の使用頻度または使用回数などに基づき、ユーザが常用している用語を識別するように構成されてもよい。テキスト入力フィルター４４０はかかる常用語を識別すると、テキスト入力フィルター４４０はその識別した常用語をテキスト入力嗜好４５０に追加するようにさらに構成されてもよい。
【００７３】
ブロック８２０にて、ブロック８１０での比較に基づき、方法８００は、１つまたは複数の自動補完の提案を提供することを含み、この自動補完の提案は、１つまたは複数の常用語の対応する部分（例えば、生じる自動補完の提案）に一致するユーザ入力テキストのそれぞれの部分に基づいて決定される。例を挙げると、ユーザはカリフォルニア州マウンテンビューに暮らしていて、コンピューティング装置４１０などのコンピューティング装置にテキストを入力する際、「Ｍｏｕｎｔａｉｎ  Ｖｉｅｗ」という用語を頻繁に使用するかもしれない。例えば、ユーザはコンピューティング装置４１０のブラウザ４９０を使用して、マウンテンビュー内の場所をインターネットで頻繁に検索するかもしれない。この状況では、テキスト入力フィルター４４０は用語「Ｍｏｕｎｔａｉｎ  Ｖｉｅｗ」を常用語として識別し、その用語をテキスト入力嗜好４５０に追加してもよい。いったんその用語がテキスト入力嗜好４４０に追加されると、方法８００は、ブロック８２０にて、ユーザがその常用語の一部に一致するテキストの入力を開始すると、用語「Ｍｏｕｎｔａｉｎ  Ｖｉｅｗ」をユーザに提示することができる。例えば、自動補完の提案は、ユーザが「Ｍｏ」というテキストを入力した段階で提供されてもよい。かかる手法では、ユーザ入力テキストがテキスト入力嗜好４５０に登録されている複数の常用語のそれぞれの部分と一致していた場合、方法８００は、ブロック８２０にて、自動補完の提案の選択肢としてこれら複数の一致語の一覧を提示してもよい。
【００７４】
図９は汎用コンピュータ装置９００および汎用モバイルコンピュータ装置９５０の例を示す図であり、これら装置は本明細書記述される技術を使用して使用されてもよい。コンピューティング装置９００は、ラップトップ、デスクトップ、ワークステーション、携帯端末、サーバ、ブレードサーバ、メインフレームおよびその他の適切なコンピュータなどの様々な形態のデジタルコンピュータを表すことを意図している。コンピューティング装置９５０は、携帯端末、携帯電話、スマートフォンおよびその他の類似したコンピューティング装置などの様々な形態のモバイル装置を表すことを意図している。ここに示す構成要素、それらの接続および関係、ならびにそれらの機能は、例示のみを目的としており、本文書で記述および／または請求する本発明の実施を限定する意図はない。
【００７５】
コンピューティング装置９００は、プロセッサ９０２、メモリ９０４、記憶装置９０６、メモリ９０４および高速拡張ポート９１０に接続している高速インターフェース９０８、ならびに低速バス９１４および記憶装置９０６に接続している低速インターフェース９１２を含む。構成要素９０２、９０４、９０６、９０８、９１０および９１２の各々は、様々なバスを使用して相互接続され、共通のマザーモードに取り付けるか、または適宜、他の方法で取り付けられてもよい。プロセッサ９０２は、高速インターフェース９０８に連結されたディスプレイ９１６など、外部入出力装置上でＧＵＩに対するグラフィカル情報を表示するために、メモリ９０４または記憶装置９０６に格納された命令も含め、コンピューティング装置９００内で実行するための命令を処理することが可能である。他の実施では、複数のプロセッサおよび／または複数のバスを、複数のメモリまたはメモリの種類と共に、適宜使用してもよい。また、複数のコンピューティング装置９００を接続し、各々の装置が必要な動作の部分（例えば、サーババンク、ブレードサーバのグループまたはマルチプロセッサシステム）を提供してもよい。
【００７６】
メモリ９０４は、コンピューティング装置９００内に情報を格納する。１つの実施では、メモリ９０４は揮発性メモリ装置（単数または複数）である。他の実施では、メモリ９０４は不揮発性メモリ装置（単数または複数）である。また、メモリ９０４は磁気または光ディスクなどの、別の形態のコンピュータ読取り可能媒体であってもよい。
【００７７】
記憶装置９０６は、コンピューティング装置９００のために大容量記憶を提供することが可能である。１つの実施では、記憶装置９０６は、フロッピィディスク装置、ハードディスク装置、光ディスク装置もしくはテープ装置、フラッシュメモリもしくはその他の類似のソリッドステートメモリ装置、またはストレージ・エリア・ネットワークもしくはその他の構成の装置も含む複数の装置の配列などのコンピュータ読取り可能媒体であっても、コンピュータ読取り可能媒体を含んでもよい。コンピュータプログラム製品は、情報担体に有形物として実現されることが可能である。また、コンピュータプログラム製品は、実行時に、上述した方法などの１つまたは複数の方法を実行する命令を含んでもよい。この情報担体は、メモリ９０４、記憶装置９０６またプロセッサ９０２上のメモリなど、コンピュータまたは機械読取り可能な媒体である。
【００７８】
高速制御装置９０８は、コンピューティング装置９００の帯域幅への集中度の高い動作を管理し、低速制御装置９１２は、帯域幅への集中度がより低い動作を管理する。かかる機能の割当ては単なる例示を意味する。１つの実施では、高速制御装置９０８は、（例えば、グラフィックプロセッサまたはアクセラレーターを通じて）メモリ９０４、ディスプレイ９１６および高速拡張ポート９１０に連結され、様々な拡張カード（図示せず）を受け付けてもよい。この実施では、低速制御装置９１２は記憶装置９０６および低速拡張ポート９１４に連結される。この低速拡張ポートは、様々な通信ポート（例えば、ＵＳＢ、Ｂｌｕｅｔｏｏｔｈ、Ｅｔｈｅｒｎｅｔ、無線Ｅｔｈｅｒｎｅｔ）を含んでもよく、キーボード、ポインティングデバイス、スキャナーなどの１つもしくは複数の入出力装置、またはスイッチもしくはルーターなどのネットワーキング装置に、例えばネットワークアダプタを通じて連結されてもよい。
【００７９】
コンピューティング装置９００は、図に示すように、異なる数多くの形態で実施されてもよい。例えば、標準サーバ９２０として実施しても、またはかかるサーバのグループを複数回使用して実施してもよい。また、ラックサーバシステム９２４の一部としても実施されてもよい。加えて、ラップトップコンピュータ９２２などのパーソナルコンピュータにも実施されてもよい。あるいは、コンピューティング装置９００からの構成要素を、装置９５０などのモバイル装置（図示せず）中の他の構成要素と組み合わせてもよい。かかる装置の各々は、コンピューティング装置９００、９５０を１つまたは複数含んでもよく、システム全体を互いに通信する複数のコンピューティング装置９００、９５０で構成してもよい。
【００８０】
コンピューティング装置９５０は、他の構成要素中で、プロセッサ９５２、メモリ９６４、ディスプレイ９５４などの入出力装置、通信インターフェース９６６、および送受信器９６８を含む。また、装置９５０は、マイクロドライブまたは他の装置などの格納装置を提供して追加記憶を提供してもよい。構成要素９５０、９５２、９６４、９５４、９６６および９６８の各々は、様々なバスを使用して相互接続され、複数の構成要素を共通のマザーボードに取り付けてもよく、または適宜、他の方法で取り付けられてもよい。
【００８１】
プロセッサ９５２は、メモリ９６４に格納された命令も含め、コンピューティング装置９５０内の命令を実行することができる。このプロセッサは、個別および複数のアナログおよびデジタルプロセッサを含むチップのチップセットとして実施されてもよい。このプロセッサは、例えば、ユーザインターフェース、装置９５０により実行されるアプリケーション、および装置９５０による無線通信の制御など、装置９５０の他の構成要素のコーディネーションを提供してもよい。
【００８２】
プロセッサ９５２は、ディスプレイ９５４に連結された制御インターフェース９５８およびディスプレイインターフェース９５６を通じてユーザと通信してもよい。ディスプレイ９５４は、例えば、ＴＦＴ  ＬＣＤ（薄膜トランジスタ液晶ディスプレイ）またはＯＬＥＤ（有機発光ダイオード）ディスプレイまたは他の適切なディスプレイ技術であってもよい。ディスプレイインターフェース９５６は、グラフィカル情報およびその他の情報をユーザに提示するためにディスプレイ９５４を駆動するための適切な回路を含んでもよい。制御インターフェース９５８は、ユーザからコマンドを受信し、プロセッサ９５２に投稿するためにそのコマンドを変換してもよい。さらに、外部インターフェース９６２は、他の装置との装置９５０の近隣エリア通信を可能にするために、プロセッサ９５２との通信も提供されてもよい。外部インターフェース９６２は、一部の実施では、例えば有線通信または他の実施では無線通信を提供してもよく、複数のインターフェースを使用してもよい。
【００８３】
メモリ９６４は、コンピューティング装置９５０内に情報を格納する。メモリ９６４は、コンピュータ読取り可能媒体（単数または複数）、揮発性メモリ装置（単数または複数）または不揮発性メモリ装置（単数または複数）の１つまたは複数として実施されることが可能である。また、拡張メモリ９８４が提供されてもよく、拡張インターフェース９８２を通じて、装置９５０に接続されてもよく、例えば、ＳＩＭＭ（シングル・インライン・メモリ・モジュール）カードインターフェースを含んでもよい。かかる拡張メモリ９８４は、装置９５０のために予備の記憶空間を提供してもよく、あるいは装置９５０のためにアプリケーションまたは他の情報を格納してもよい。具体的には、拡張メモリ９８４は、上述のプロセスを実行または補足するための命令を含んでもよく、セキュア情報を含んでもよい。したがって、例えば、拡張メモリ９８４を装置９５０のセキュリティモジュールとして提供してもよく、装置９５０のセキュアな使用を可能にする命令を使用してプログラミングしてもよい。加えて、セキュアアプリケーションを、ハッキングされない方法でＳＩＭＭカード上の識別情報を配置するなどの追加情報と共に、ＳＩＭＭカードを通じて提供してもよい。
【００８４】
このメモリは、後述するように、例えば、フラッシュメモリおよび／またはＮＶＲＡＭメモリを含んでもよい。１つの実施では、コンピュータプログラム製品は情報担体中で有形物として実現される。このコンピュータプログラム製品は、実行時に、上述した方法などの１つまたは複数の方法を実行する命令を含む。この情報担体は、メモリ９６４、拡張メモリ９８４またはプロセッサ９５２上のメモリなどの、例えば、送受信器９６８または外部インターフェース９６２を通じて受信し得るコンピュータまたは機械読取り可能な媒体である。
【００８５】
装置９５０は、通信インターフェース９６６と無線で通信してもよく、必要な場合にはデジタル信号処理回路を含んでもよい。通信インターフェース９６６は、特にＧＳＭボイスコール、ＳＭＳ、ＥＭＳもしくはＭＭＳメッセージング、ＣＤＭＡ、ＴＤＭＡ、ＰＤＣ、ＷＣＤＭＡ、ＣＤＭＡ２０００またはＧＰＲＳなどの様々なモードまたはプロトコルの下での通信を提供してもよい。かかる通信は、例えば、ラジオ周波数トランシーバー９６８を通じて行われてもよい。加えて、Ｂｌｕｅｔｏｏｔｈ、ＷｉＦｉまたはその他のこの種のトランシーバー（図示せず）を使用するなどして、近距離通信も行ってもよい。加えて、ＧＰＳ（全地球測位システム）レシーバーモジュール９８０は、追加のナビゲーションおよびロケーションに関連する無線データを装置９５０に提供してもよく、その無線データは装置９５０上で動作するアプリケーションにより適宜利用されてもよい。
【００８６】
また、装置９５０はオーディオコーデック９６０を使用して、聞き取れるように通信してもよく、ユーザから発声された情報を受信し、それを利用可能なデジタル情報に変換してもよい。同様に、オーディオコーデック９６０は、例えば装置９５０のハンドセットでのスピーカーを通すなどして、ユーザに聞き取り可能であるサウンドを生成してもよい。かかるサウンドは、音声電話の呼び出しからのサウンドを含んでもよく、録音されたサウンド（例えば、音声メッセージ、音楽ファイルなど）を含んでもよく、また、装置９５０上で動作するアプリケーションにより生成されるサウンドを含んでもよい。
【００８７】
コンピューティング装置９５０は、図に示すように、数多くの異なる形態で実施されてもよい。例えば、携帯電話９８０として実施されてもよい。また、スマートフォン９８２、携帯端末または類似のモバイル装置の一部として実施されてもよい。
【００８８】
本明細書に記述したシステムおよび技術の様々な実施は、デジタル電子回路、集積回路、特別に設計されたＡＳＩＣ（アプリケーション固有の集積回路）、コンピュータハードウェア、ファームウェア、ソフトウェアおよび／またはこれらの組合せで実施されることが可能である。これらの様々な実施は、少なくとも１つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能かつ／または解釈可能な１つまたは複数のコンピュータプログラムでの実施を含むことができ、記憶システム、少なくとも１つの入力装置および少なくとも１つの出力装置との間でデータおよび命令を受信かつ送信するために連結された、特殊または汎用な目的のためであってもよい。
【００８９】
これらのコンピュータプログラム（プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても知られる）は、プログラマブルプロセッサ用の機械命令を含み、高レベル手続き型および／もしくはオブジェクト指向プログラミング言語、ならびに／またはアセンブリ／機械言語で実施されることが可能である。本明細書で使用される場合、「機械読取り可能媒体」「コンピュータ読取可能媒体」という用語は、機械読取り可能信号として機械命令を受信する機械読取り可能媒体を含む、プログラマブルプロセッサに機械命令および／またはデータを提供するために使用される任意のコンピュータプログラム製品、機器および／または装置（例えば、磁気ディスク、光ディスク、メモリ、プログラマブル論理装置（ＰＬＤ）を指す。「機械読取り可能信号」という用語は、機械命令および／またはデータをプログラマブルプロセッサに提供するために使用される任意の信号を指す。
【００９０】
ユーザとの対話に備えるために、ここで記述されるシステムおよび技術は、ユーザに情報を表示するためのディスプレイ装置（例えば、ＣＲＴ（陰極線管）またはＬＣＤ（液晶ディスプレイ）モニタ）ならびにユーザがコンピュータに入力を提供する際に使用するキーボードおよびポインティング・デバイス（例えば、マウスまたはトラックボール）を備えたコンピュータ上で実施されることが可能である。他の種類の装置はユーザとの対話にも使用することができる。例えば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック（例えば、視覚フィードバック、聴覚フィードバックまたは触覚フィードバック）とすることができ、ユーザからの入力は聴覚、音声または触覚入力も含む任意の形式で受信することが可能である。
【００９１】
ここに記述されるシステムおよび技術は、バックエンド構成要素を含む（例えば、データサーバとしての）コンピューティング装置、ミドルウェア構成要素（例えば、アプリケーションサーバ）を含むコンピューティング装置、フロントエンド構成要素を含むコンピューティング装置（例えば、ここに記述されたシステムおよび技術を実施して対話するのに使用できるグラフィカルユーザインターフェースまたはウェブブラウザを備えたクライアントコンピュータ）またはかかるバックエンド、ミドルウェアまたはフロントエンド構成要素の任意の組合せで実施されることが可能である。このシステムの構成要素は、デジタルデータ通信の任意の形式または媒体（例えば、通信ネットワーク）により相互接続されることが可能である。通信ネットワークの例としては、ローカルエリアネットワーク（「ＬＡＮ」）、広域ネットワーク（「ＷＡＮ」）およびインターネットが挙げられる。
【００９２】
このコンピューティング装置はクライアントおよびサーバを含むことができる。クライアントおよびサーバは、一般に、互いにリモートであり、通常は通信ネットワークを通じて対話する。クライアントとサーバの関係は、それぞれのコンピュータ上で動作し、互いにクライアントとサーバの関係を持つコンピュータプログラムによって生じる。
【００９３】
数多くの実施形態を記述してきたが、本発明の趣旨および範囲から逸脱することなく、様々な改変が加えられ得ることを理解されるだろう。
【００９４】
加えて、図に示された論理フローは、所望の結果を達成するのに、示した特定の順番も、連続的な順序も必要としない。加えて、記述したフローに他のステップを追加しても、またはステップを削除してもよく、記述したシステムに他の構成要素を追加しても、または削除してもよい。したがって、他の実施形態も以下の特許請求の範囲の範囲内である。
【図１】
2014534505.tif 000003
【図２】
2014534505.tif 000004
【図３】
2014534505.tif 000005
【図４Ａ−Ｂ】
2014534505.tif 000006
【図５Ａ−Ｂ】
2014534505.tif 000007
【図５Ｃ】
2014534505.tif 000008
【図６】
2014534505.tif 000009
【図７Ａ−Ｂ】
2014534505.tif 000010
【図７Ｃ】
2014534505.tif 000011
【図７Ｄ】
2014534505.tif 000012
【図８】
2014534505.tif 000013
【図９】
2014534505.tif 000014
【国際調査報告】
2014534505.tif 000015
2014534505.tif 000016