(57)【特許請求の範囲】
【請求項１】
ディスプレイと、
混合状態論理(blended state logic)を含んだプロセッサー実行電子メッセージングクライアントとを含み、前記混合状態論理が、
ローカルアイテム数(count)を決定するステップであって、前記ローカルアイテム数が、前記ユーザーデバイスのローカル記憶装置に記憶された、コンテナー(container)に含まれており特定の状態を有する電子メッセージの数を表す、ステップと、
前記ユーザーデバイスが電子メッセージングサーバーに接続されているかどうかを決定するステップと、
前記ユーザーデバイスが前記電子メッセージングサーバーに接続されていないことの決定に応答して、
リモートアイテム数と前記ローカルアイテム数の最後の既知の差(a last known difference)を表す量(amount)を前記ローカル記憶装置からロードするステップであって、前記リモートアイテム数が、前記電子メッセージングサーバーにアクセスすることができるリモートストアに記憶された、前記コンテナーに含まれており前記特定の状態(particular state)を有する電子メッセージの数を表す、ステップと、
前記コンテナーに対する混合アイテム数(blended item count)を前記ディスプレイに提示するステップであって、前記コンテナーに対する前記混合アイテム数が前記ローカルアイテム数(local item count)と前記量の合計である、ステップと
によって、電子メッセージの前記コンテナーに関連する混合状態を前記ディスプレイに提示するように構成される、ユーザーデバイス。
【請求項２】
前記混合状態論理が、
前記ユーザーデバイスが前記電子メッセージングサーバーに接続されていること、および前記ローカル記憶装置と前記リモートストアの間の同期化(synchronization)が未だ実施(performed)されていないことの決定に応答して、
前記電子メッセージングサーバーから新しいリモートアイテム数(remote item count)を得るステップと、
前記新しいリモートアイテム数と前記ローカルアイテム数の差を決定することによって新しい量(amount)を計算するステップと、
前記コンテナーに対する新しい混合アイテム数を前記ディスプレイに提示するステップであって、前記コンテナーに対する前記新しい混合アイテム数が前記ローカルアイテム数と前記新しい量の合計である、ステップと
によって、電子メッセージの前記コンテナーに関連する前記混合状態を前記ディスプレイに提示するようにさらに構成される、請求項１に記載のユーザーデバイス。
【請求項３】
前記混合状態論理が、
前記ユーザーデバイスが前記電子メッセージングサーバーに接続されていること、および前記ローカル記憶装置と前記リモートストアの間の同期化が実施されたことの決定に応答して、
前記同期化によってもたらされる新しいリモートアイテム数および新しいローカルアイテム数を得るステップと、
前記新しいリモートアイテム数と前記新しいローカルアイテム数の差を決定することによって新しい量を計算するステップと、
前記コンテナーに対する新しい混合アイテム数を前記ディスプレイに提示するステップであって、前記コンテナーに対する前記新しい混合アイテム数が前記新しいローカルアイテム数と前記新しい量の合計である、ステップと
によって電子メッセージの前記コンテナーに関連する前記混合状態を前記ディスプレイに提示するようにさらに構成される、請求項１に記載のユーザーデバイス。
【請求項４】
前記混合状態論理が、
前記ユーザーデバイスのユーザーが、前記特定の状態を有する、前記コンテナー中の電子メッセージの総数(total number)を変化させるアクションを特定の電子メッセージに対して実施したことの決定に応答して、
前記特定の電子メッセージが前記ローカル記憶装置に記憶されているかどうかを決定するステップと、
前記特定の電子メッセージが前記ローカル記憶装置に記憶されていることの決定に応答して、前記変化を考慮する(account for)ために前記ローカル数を増分(incrementing)または減分する(decrementing)ステップと
によって電子メッセージの前記コンテナーに関連する前記混合状態を前記ディスプレイに提示する(present)ようにさらに構成される、請求項１に記載のユーザーデバイス。
【請求項５】
前記混合状態論理が、
特定の電子メッセージが前記ローカル記憶装置に記憶されていないことの決定に応答して、変化を考慮するために前記量を増分または減分するステップ
によって電子メッセージの前記コンテナーに関連する前記混合状態を前記ディスプレイに提示するようにさらに構成される、請求項１に記載のユーザーデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本願発明の一実施例は、例えば、ローカルに記憶された電子メッセージとリモートに記憶された電子メッセージを混合提示するためのシステムおよび方法に関する。
【背景技術】
【０００２】
[0001]多くの近代の電子メールクライアントは、電子メールメッセージおよび他のデータへの高速オフラインアクセスのためのローカルキャッシュを提供する。このようなローカルキャッシュは、電子メールサーバー上に同じく記憶されるユーザーのメールボックスの完全なコピーを含むことができる。過去１０年間以上にわたって、メールボックス・ストレージ・クオータは、指数関数的に増加しており、現在では数ギガバイトのサイズになっている。大半のユーザーにとって、極端に古いデータに対するオフラインアクセスを提供するユーティリティはほとんど存在していないか、あるいは全く存在していない。さらに、メールボックスは非常に大きくなっているため、電子メールサーバーからのメールボックスデータのダウンロードがますます厄介になっており、かつ、性能に重大な影響を及ぼすことなく、このようなデータ上でローカルに動作させることがますます困難になっている。また、電子メールクライアントがインストールされるデバイスが限られたストレージフットプリントを有している場合（多くの近代の移動デバイスの場合と同様に）、ローカルキャッシュは、許容不可能な量の利用可能記憶空間を占有することになる。
【０００３】
[0002]いくつかの移動電子メールクライアントは、電子メールサーバー上で利用可能なユーザーの電子メールの部分集合のみをダウンロードし、かつ、ローカルに記憶することによって上記問題に対処するべく試行している。このような部分集合は、ローリング・タイム・ウィンドウによって定義することができる。例えば過去の７日間の間に受け取った電子メールのみを任意の所与の時間にローカルキャッシュに維持することができる。特定の実施態様では、タイム・ウィンドウのサイズを固定することができ、一方、他の実施態様では、ユーザーがタイム・ウィンドウのサイズを構成することができる。
【０００４】
[0003]このような移動電子メールクライアントは、受け取った最も新しい電子メールのみをダウンロードすることによってローカルキャッシュの記憶要件を限定することができるが、これらの電子メールクライアントは、アフォーダンス、すなわち電子メールサーバー上にのみ存在しているより古い電子メールメッセージの状態に関する任意の情報をユーザーに提供していない。通常、このようなより古い電子メールメッセージは、タイム・ウィンドウを広くすることによって（構成可能タイム・ウィンドウをサポートしている実施態様の場合）、もしくはこのようなより古い電子メールに対する探索を実行することによって、またはより多くのアイテムを増分的にダウンロードすることによってのみアクセスすることができる。いずれの場合においても、より古い電子メールのコピーをローカルキャッシュに記憶しなければならず、したがってユーザーの移動デバイス上の記憶空間を余計に占有している。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本願発明の一実施例は、例えば、ローカルに記憶された電子メッセージとリモートに記憶された電子メッセージを混合提示するためのシステムおよび方法に関する。
【課題を解決するための手段】
【０００６】
[0004]本明細書に組み込まれ、本明細書の一部をなしている添付の図面は、本発明の実施形態を示したものであり、説明と共に本発明の原理を説明し、かつ、関連する１つまたは複数の分野の技術者による本発明の構築および使用を可能にするためのさらなる働きをしている。
【図面の簡単な説明】
【０００７】
【図１】[0005]ある実施形態による、ローカルに記憶された電子メッセージとリモートに記憶された電子メッセージの混合提示を提供するあるシステム例のブロック図である。
【図２】[0006]ある実施形態による、ローカルに記憶された電子メッセージとリモートに記憶された電子メッセージを混合方式で提示するために使用することができる表示領域を示すブロック図である。
【図３】[0007]ある実施形態による、ローカルに記憶された電子メッセージとリモートに記憶された電子メッセージの混合提示を提供するための方法の流れ図である。
【図４】[0008]ある実施形態による、ローカルに記憶された電子メッセージとリモートに記憶された電子メッセージのコンテナーに関連する混合状態を提示するための方法の流れ図である。
【図５】[0009]ある実施形態による、ローカルに記憶された電子メッセージとリモートに記憶された電子メッセージのコンテナーに関連する混合状態を提示するための他の方法の流れ図である。
【図６】[0010]ある実施形態による、ローカルに記憶された電子メッセージとリモートに記憶された電子メッセージの混合探索を実施するための方法の流れ図である。
【図７】[0011]ある実施形態による、ローカルに記憶された電子メッセージとリモートに記憶された電子メッセージの混合探索を実施するための他の方法の流れ図である。
【図８】[0012]様々な実施形態を実施するために使用することができる、プロセッサーをベースとするあるシステム例のブロック図である。
【０００８】
[0013]本発明の特徴および利点は、図面に関連してなされる、以下に示されている詳細な説明からより明らかになるものと思われ、図面において、同様の参照文字は、すべての図面を通して対応する要素を識別している。図面において、同様の参照番号は、概して、全く同じ要素、機能的に同様の要素、および／または構造的に同様の要素を表している。ある要素が最初に出現する図面は、対応する参照番号の一番左側の１つまたは複数の桁によって示されている。
【発明を実施するための形態】
【０００９】
Ｉ．前置き
[0014]以下の詳細な説明では、本発明の例示的実施形態を示す添付の図面を参照する。しかしながら、本発明の範囲はこれらの実施形態に限定されず、これらの実施形態に代わって特許請求の範囲によって定義されている。したがって図面に示されている実施形態の修正バージョンなどの添付の図面に示されていない実施形態は、依然として本発明に包含されているものとする。
【００１０】
[0015]本明細書における「一実施形態」、「ある実施形態」、「ある実施形態例」、等々の参照は、説明されている実施形態が特定の特徴、構造または特性を含むことができることを示しているが、すべての実施形態が必ずしもその特定の特徴、構造または特性を含んでいなければならないわけではない。さらに、このような語句は、必ずしも同じ実施形態を意味しているわけではない。さらに、特定の特徴、構造または特性がある実施形態に関連して説明されている場合、それは、明確に説明されている、いないにかかわらず、このような特徴、構造または特性を他の実施形態と関連して実施するための、関連する１つまたは複数の分野の技術者の知識の範囲内に委ねられる。
【００１１】
[0016]本明細書において説明されている実施形態は、リモートストア内の利用可能な電子メッセージの部分集合のコピーをユーザーデバイスのローカルストアにダウンロードする。そうすることにより、ユーザーデバイスのユーザーは、ユーザーデバイスがオフライン状態であっても、自分の電子メッセージの部分集合にアクセスすることができる。ユーザーデバイスがオンライン状態にある場合、本明細書において説明されている実施形態は、ローカルストアに既にキャッシュされている電子メッセージに関する情報、ならびにリモートストアにのみ記憶されている電子メッセージに関する情報をユーザーが同時に見ることができるよう、電子メッセージの混合提示を提供する。このような電子メッセージに関する情報は、常にユーザーに提示することができ、したがってこのような電子メッセージに関する情報およびこのような電子メッセージの内容を異なるストアから得ることができるとしても、すべての電子メッセージが単一の統合されたリポジトリーの一部である印象がユーザーに与えられる。さらに、ユーザーデバイスがオンライン状態にある場合、ユーザーは、このようなリモート記憶されている電子メッセージをローカルストアにコピーする必要なく、リモート記憶されている電子メッセージに関する情報および／またはリモート記憶されている電子メッセージの内容を見ることができる。
【００１２】
[0017]本明細書において説明されている実施形態は、リモートストア内の利用可能なユーザーの電子メッセージの部分集合のみをダウンロードし、かつ、ローカルに記憶するため、これらの実施形態は、電子メッセージをダウンロードするために必要なネットワーク帯域幅の量、ローカルに記憶されている電子メッセージとリモートストアとを同期させるために必要な処理能力の量、およびローカルストアによって占有される記憶空間の量を低減する。
【００１３】
[0018]さらに、本明細書において説明されている実施形態は、ユーザーのリモート記憶されている電子メッセージの部分集合のみをダウンロードし、かつ、ローカルに記憶する従来の電子メッセージングクライアントに優る改善を示すが、それは、上記背景技術の節で説明したように、このような従来の電子メッセージングクライアントは、リモートストアのみに存在している電子メッセージに関する情報、またはリモートストアのみに存在している電子メッセージへのアクセスをユーザーに提供しないためである。リモートストアのみに存在している電子メッセージへのアクセスを獲得する代わりに、このような従来の電子メッセージングクライアントは、このようなより古い電子メールに対する探索を実行するために、あるいはより多くの電子メッセージを増分的にダウンロードするために、ローカルキャッシュされる電子メッセージを決定するために使用されるタイム・ウィンドウを広くするようにユーザーに要求することができる。いずれの場合においても、リモート記憶されている電子メッセージは、それをローカルストアにコピーすることによってユーザーデバイス上でのみ見ることができ、したがって記憶空間を占有する。一方、上で言及したように、本明細書において説明されている実施形態によれば、ユーザーは、このようなリモート記憶されている電子メッセージをローカルストアにダウンロードする必要なく、リモート記憶されている電子メッセージに関する情報および／またはリモート記憶されている電子メッセージの内容を見ることができる。
【００１４】
[0019]また、本明細書において説明されている実施形態は、コンテナーに記憶されている電子メッセージのうちのいくつかがユーザーデバイスのローカルストアにキャッシュされ、また、コンテナーに記憶されている電子メッセージのうちのいくつかはリモートストアにのみ利用することができるシナリオで、電子メッセージのコンテナーに関連する混合状態をユーザーデバイスのユーザーに提示することも可能である。混合状態は、例えばコンテナー中の、特定の状態（例えばコンテナーに含まれている、含まれていない、読まれている、読まれていない、フラグが立っている、立っていない、等々）を有する電子メッセージの数を表すアイテム数を含むことができる。
【００１５】
[0020]一般的に言えば、混合状態がコンテナーに対するアイテム数を含むある実施形態では、アイテム数は、ローカルアイテム数とデルタ量の和を取ることによって決定することができる。ローカルアイテム数は、コンテナーに含まれており特定の状態を有する、ユーザーデバイスのローカルストアに記憶された電子メッセージの数を表す。デルタ量は、リモートアイテム数とローカルアイテム数の最後の既知の差を表し、リモートアイテム数は、コンテナーに含まれており特定の状態を有する、リモートストアに記憶されている電子メッセージの数を表す。この方法でコンテナーに対するアイテム数を決定することにより、本明細書において説明されている実施形態は、ユーザーデバイスがオフライン状態にある間に、ユーザーがローカルアイテム数のみを変更する何らかのアクションを取る場合でも、コンテナー全体のための更新されたアイテム数をユーザーに提示することができる。さらに、この方法でコンテナーに対するアイテム数を決定することにより、本明細書において説明されている実施形態は、同期化プロセスの間、コンテナー全体のための更新されたアイテム数をユーザーに提示することができ、このような更新されたアイテム数は、このような同期化プロセスによってもたらされるローカルアイテム数に対する変化を反映する。
【００１６】
[0021]さらに、本明細書において説明されている実施形態は、ユーザーデバイスが電子メッセージングサーバーに接続されていることが決定されると、ユーザーデバイスのユーザーによる、ユーザーデバイスのローカルストアに記憶されているキャッシュされた電子メッセージ、ならびに電子メッセージングサーバーへのアクセスが可能なリモートストアに記憶されている電子メッセージの探索の実行を可能にすることも可能である。ローカルストアおよびリモートストアに対する探索によって得られる探索結果は、同じＧＵＩ内に提示することができる。探索結果で識別される、ローカルストアにキャッシュされている電子メッセージの内容を見ることをユーザーが要求すると、その電子メッセージの内容がローカルストアから取得される。探索結果で識別される、リモートストア内でのみ利用することができる電子メッセージの内容を見ることをユーザーが要求すると、その電子メッセージの内容がリモートストアから取得されるが、ローカルストアにキャッシュされない。
ＩＩ．電子メッセージの混合提示のためのシステム例
[0022]図１は、ある実施形態によるローカルに記憶された電子メッセージとリモートに記憶された電子メッセージの混合提示を提供する、あるシステム例１００のブロック図である。本明細書において使用されているように、「電子メッセージ」という用語には、電子形態（すなわち信号として）送信することができる任意のタイプのメッセージまたは情報のアイテムを広義に表すことが意図されている。電子メッセージの例には、それらに限定されないが、電子メールメッセージ、テキストメッセージ、マイクロブログポスト、カレンダーエントリー、タスク、ノート、コンタクト、等々がある。
【００１７】
[0023]図１に示されているように、システム１００は、少なくとも１つの電子メッセージングサーバー１０２、およびネットワーク１０４を介して電子メッセージングサーバー１０２に通信接続することができる少なくとも１つのユーザーデバイス１０６を含む。
【００１８】
[0024]電子メッセージングサーバー１０２には、他の電子メッセージングサーバーを含む様々な他の実体から電子通信を受け取り、かつ、様々な他の実体へ電子通信を送るように構成される、プロセッサーをベースとする電子デバイスを表すことが意図されている。電子メッセージングサーバー１０２は、そのユーザーによる、電子メッセージングサーバー１０２によって受け取られた電子メッセージへのアクセス、および電子メッセージングサーバー１０２を介した他のユーザーデバイスへの電子メッセージの送信を可能にするために、ユーザーデバイス（ユーザーデバイス１０６など）上にインストールされる電子メッセージングクライアントと対話するようにさらに構成される。電子メッセージングサーバーによって受け取られ、かつ、送られる電子メッセージのコピーは、リモートストア１３２に記憶することができる。リモートストア１３２には、電子メッセージのコピーを記憶するのに適した任意の記憶装置またはシステムを広義に表すことが意図されている。
【００１９】
[0025]一実施形態では、電子メッセージングサーバー１０２は、複数のユーザー毎に電子通信の個別のリポジトリーを管理し、個々のこのようなリポジトリーは、リモートストア１３２に記憶することができる。これらの複数のユーザーの各々は、適切な電子メッセージングクライアントを使用して電子メッセージングサーバー１０２と対話することにより、自分のリポジトリーの少なくとも一部にアクセスすることができる。電子通信が電子メールを含むある実施形態では、このようなリポジトリーは、ユーザー電子メールメールボックスを含むことができる。当分野で知られているように、ユーザー電子メールメールボックスは、任意の数のサブ−メールボックスをさらに含むことができる。
【００２０】
[0026]ネットワーク１０４には、電子メッセージングサーバー１０２およびユーザーデバイス１０６などの電子デバイス間の通信を容易にするために適した任意のタイプのネットワークまたはネットワークの組合せを表すことが意図されている。ネットワーク１０４は、例えば、それらに限定されないが、広域ネットワーク、ローカル・エリア・ネットワーク、専用網、公衆網、パケット網、回線交換網、有線ネットワークおよび／または無線ネットワークを含むことができる。
【００２１】
[0027]ユーザーデバイス１０６には、ユーザーデバイス１０６上にインストールされる１つまたは複数のソフトウェアコンポーネントを実行することができる、プロセッサーをベースとする電子デバイスを表すことが意図されている。非制限の一例にすぎないが、ユーザーデバイス１０６は、パーソナルコンピューター、ラップトップコンピューター、タブレットコンピューター、スマートフォン、スマートテレビジョン、ゲーミングコンソール、パーソナル・メディア・プレーヤー、パーソナル・ディジタル・アシスタント、組込みデバイス、等々を備えることができる。
【００２２】
[0028]図１にさらに示されているように、ユーザーデバイス１０６は、ユーザーデバイス１０６上にインストールされる電子メッセージングクライアント１１０を含む。電子メッセージングクライアント１１０は、ユーザーデバイス１０６によって実行されると、電子メッセージングサーバー１０２と対話して、ユーザーによる草稿、送り、受取り、吟味、編成を可能にし、さもなければ電子メッセージの管理を可能にするソフトウェアを含む。電子メッセージが電子メールメッセージを含むある実施形態では、電子メッセージングクライアント１１０は、Ｗａｓｈｉｎｇｔｏｎ州ＲｅｄｍｏｎｄのＭｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎによって発行された、あるバージョンのＭＩＣＲＯＳＯＦＴ（登録商標）ＯＵＴＬＯＯＫ（登録商標）などの電子メールクライアントを含むことができる。しかしながらこの例は、それらに限定されないことが意図されている。
【００２３】
[0029]また、ユーザーデバイス１０６は、インストールされたソフトウェアコンポーネントがユーザーデバイス１０６のユーザーによる観察のために図形内容をレンダリングすることができるディスプレイ１１２を含む。例えば電子メッセージングクライアント１１０は、グラフィカル・ユーザー・インターフェース（ＧＵＩ）１３２がディスプレイ１１２にレンダリングされるように構成される。ＧＵＩ１３２は、ユーザーが電子メッセージングクライアント１１０の様々な機能および特徴を呼び出すことができる手段を含む。
【００２４】
[0030]ユーザーデバイス１０６は、本明細書においてはローカルキャッシュと呼ぶこともできるローカルストア１１４をさらに含む。ローカルストア１１４には、ユーザーデバイス１０６上に電子メッセージを記憶するのに適した任意のタイプの記憶装置またはシステムを広義に表すことが意図されている。電子メッセージングクライアント１１０は、リモートストア１３２内の、電子メッセージングクライアント１１０が利用することができる電子メッセージのコピーを獲得し、かつ、このようなコピーをローカルストア１１４に記憶するために、ネットワーク１０４を介して電子メッセージングサーバー１０２と周期的に対話するように構成される。例えば電子メッセージが電子メールを含むある実施形態では、電子メッセージングクライアント１００は、リモートストア１３２に記憶されているユーザーメールボックスから電子メールのコピーを獲得し、かつ、このようなコピーされた電子メールをローカルストア１１４に記憶するために、ネットワーク１０４を介して電子メッセージングサーバー１０２と周期的に対話することができる。電子メッセージのコピーがローカルストア１１４に記憶されると、電子メッセージングクライアント１１０は、ユーザーデバイス１０６を電子メッセージングサーバー１０２に接続することができなくても、電子メッセージおよびその電子メッセージに関する情報をユーザーデバイス１０６のユーザーによるアクセスが可能にすることができる。
【００２５】
[0031]ある実施形態では、電子メッセージングクライアント１１０および／または電子メッセージングサーバー１０２は、ローカルストア１１４に記憶するために、リモートストア１３２内の、電子メッセージングクライアント１１０が利用することができる電子メッセージの部分集合のみをダウンロードすることができるように構成される。例えば電子メッセージングサーバー１０４が電子メールサーバーを含むある実施形態では、リモートストア１３２は、ユーザーの電子メールメールボックスの完全なコピーを記憶することができ、また、電子メッセージングクライアント１１０は、そのメールボックス内の電子メールメッセージの部分集合のみのコピーを周期的にダウンロードし、かつ、ローカルに記憶するように動作することができる。
【００２６】
[0032]様々な手法を使用して、ダウンロードされ、かつ、ローカルストア１１４に記憶される電子メッセージの部分集合を決定することができる。一実施形態では、ローリング・タイム・ウィンドウ（本明細書においては「同期化ウィンドウ」とも呼ばれる）が利用される。このような手法によれば、ローリング・タイム・ウィンドウ内で受取られた電子メッセージのみがダウンロードされ、かつ、ローカルストア１１４に記憶される。タイム・ウィンドウは、時間（例えば過去７日間、過去３ヶ月、等々）と共に前方へシフトするため、「ローリング」と言われる。タイム・ウィンドウがシフトすると、もはやタイム・ウィンドウ内ではない電子メッセージは、「エイジアウト」し、ローカルストア１１４から除去される。様々な時間分解能を使用して、タイム・ウィンドウをシフトさせる時期を決定することができる。例えば一実施形態では、時間分解能は１日である。
【００２７】
[0033]実施態様に応じて、ローリング・タイム・ウィンドウの長さをユーザーによる構成が可能な長さにすることができ、あるいはユーザーによる構成が不可能な長さにすることができる。例えば一実施形態では、ユーザーは、電子メッセージングクライアント１１０と対話し、それにより、それぞれ異なる長さを有する複数の定義済みローリング・タイム・ウィンドウのうちの１つを選択することができる。特定の実施態様では、ユーザーは、１ヶ月、３ヶ月、６ヶ月および１２ヶ月のタイム・ウィンドウの間で選択することができる。特定の実施態様では、ユーザーは、タイム・ウィンドウを使用しないことを選択することができ、その場合、リモートストア１３２に記憶されているすべての電子メッセージのコピーがダウンロードされ、かつ、ローカルストア１１４に記憶されることになる。しかしながら、その動作モードは、本明細書において説明されている、電子メッセージの混合提示を取り扱う実施形態には必ずしも適切ではない。
【００２８】
[0034]上で示したローリング・タイム・ウィンドウの説明は、ダウンロードし、かつ、ローカルストア１１４に記憶するために、リモートストア１３２内の電子メッセージの部分集合を選択することができる１つの方法を示したものにすぎないことに留意されたい。他の方法を使用することも可能である。さらに、使用される方法は、電子メッセージのタイプに応じて変更することも可能である（例えば電子メッセージがカレンダーデータを表している場合、ローリング・タイム・ウィンドウを使用することはできない）。
【００２９】
[0035]上で説明したように、電子メッセージングクライアント１１０は、リモートストア１３２内の利用可能なユーザーの電子メッセージの少なくともいくつかをダウンロードし、かつ、ローカルストア１１４に記憶するため、電子メッセージングクライアント１１０は、ユーザーデバイス１０６を電子メッセージングサーバー１０２に接続することができない場合であっても、ユーザーによる、ローカルストア１１４に記憶されているすべての電子メッセージの内容に関する情報の獲得および吟味を可能にすることができる。さらに、電子メッセージングクライアント１１０は、リモートストア１３２内の利用可能なユーザーの電子メッセージの部分集合のみをダウンロードし、かつ、ローカルストア１１４に記憶することができるため、電子メッセージングクライアント１１０は、リモートストア１３２内の利用可能なユーザーの電子メッセージのすべてがローカルストア１１４にコピーされるある実施態様と比較すると、電子メッセージをダウンロードするためにネットワーク１０４上で必要な帯域幅の量、ローカルに記憶されている電子メッセージとリモートストア１３２とを同期させるために必要なユーザーデバイス１０６の処理能力の量、およびローカルストア１１４によって占有される記憶空間の量を低減することができる。
【００３０】
[0036]同じく図１に示されているように、電子メッセージングクライアント１１０は、混合提示論理１２２、混合状態論理１２４および混合探索論理１２６を含む。ある実施形態では、これらの構成要素の各々は、電子メッセージングクライアント１１０によって呼び出されるか、あるいは電子メッセージングクライアント１１０の一部を形成しているソフトウェアモジュールを備えている。
【００３１】
[0037]混合提示論理１２２は、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されていることを決定するように動作する。混合提示論理１２２は、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されていることの決定に応答して、ローカルストア１１４に既にキャッシュされている電子メッセージに関する情報、ならびにリモートストア１３２にのみ記憶されている電子メッセージに関する情報をユーザーが同時に見ることができるよう、ＧＵＩ１３２を介して電子メッセージの混合提示を提供するように動作する。このような電子メッセージに関する情報は、常にユーザーに提示することができ、したがってこのような電子メッセージに関する情報およびこのような電子メッセージの内容を異なるストアから得ることができるとしても、すべての電子メッセージが単一の統合されたリポジトリーの一部である印象がユーザーに与えられる。さらに、混合提示論理１２２は、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されている場合、このようなリモート記憶されている電子メッセージをローカルストア１１４にコピーする必要なく、リモートストア１３２に記憶されている電子メッセージに関する情報および／またはリモートストア１３２に記憶されている電子メッセージの内容をユーザーが見ることができるように動作する。混合提示論理１２２の動作方法に関するさらなる詳細は、以下の節ＩＩ．Ａ．に示されている。
【００３２】
[0038]混合状態論理１２４は、コンテナーに記憶されている電子メッセージのうちのいくつかがローカルストア１１４にキャッシュされ、また、コンテナーに記憶されている電子メッセージのうちのいくつかはリモートストア１３２内でのみ利用することができるシナリオで、電子メッセージのコンテナーに関連する混合状態をユーザーデバイス１０６のユーザーに提示するように動作する。混合状態は、例えばコンテナー中の、特定の状態（例えばコンテナーに含まれている、含まれていない、読まれている、読まれていない、フラグが立っている、立っていない、等々）を有する電子メッセージの数を表すアイテム数を含むことができる。
【００３３】
[0039]一般的に言えば、混合状態がコンテナーに対するアイテム数を含むある実施形態では、混合状態論理１２４は、ローカルアイテム数とデルタ量の和を取ることによってアイテム数を決定することができる。ローカルアイテム数は、コンテナーに含まれており特定の状態を有する、ローカルストア１１４に記憶されている電子メッセージの数を表す。デルタ量は、リモートアイテム数とローカルアイテム数の最後の既知の差を表し、リモートアイテム数は、コンテナーに含まれており特定の状態を有する、リモートストア１３２に記憶されている電子メッセージの数を表す。この方法でコンテナーに対するアイテム数を決定することにより、混合状態論理１２４は、ユーザーデバイス１０６がオフライン状態にある間に、ユーザーがローカルアイテム数のみを変更する何らかのアクションを取る場合でも、コンテナー全体のための更新されたアイテム数をユーザーに提示することができる。さらに、この方法でコンテナーに対するアイテム数を決定することにより、混合状態論理１２４は、同期化プロセスの間、コンテナー全体に対する更新されたアイテム数をユーザーに提示することができ、このような更新されたアイテム数は、このような同期化プロセスによってもたらされるローカルアイテム数に対する変化を反映する。混合状態論理１２４の動作方法に関するさらなる詳細は、以下の節ＩＩ．Ｂ．に示されている。
【００３４】
[0040]混合探索論理１２６は、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されていることが決定されると、ユーザーデバイス１０６のユーザーによる、ローカルストア１１４に記憶されているキャッシュされた電子メッセージ、ならびにリモートストア１３２に記憶されている電子メッセージの探索の実行を可能にするように動作する。ローカルストア１１４およびリモートストア１３２に対する探索によって得られる探索結果は、いずれもＧＵＩ１３２内に提示することができる。探索結果で識別される、ローカルストア１１４にキャッシュされている電子メッセージの内容を見ることをユーザーが要求すると、混合探索論理１２６は、その電子メッセージの内容をローカルストア１１４から取得することができる。探索結果で識別される、リモートストア１３２内でのみ利用することができる電子メッセージの内容を見ることをユーザーが要求すると、混合探索論理１２６は、電子メッセージングサーバー１０２との対話を介してリモートストア１３２からその電子メッセージの内容を取得することができるが、混合探索論理１２６は、その内容をローカルストア１１４にキャッシュしない。混合探索論理１２６の動作方法に関するさらなる詳細は、以下の節ＩＩ．Ｃ．に示されている。
Ａ．混合提示技法例
[0041]図２は、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されていることが決定されると、混合提示論理１２２がＧＵＩ３１２を介して電子メッセージの混合提示を提供するように動作する方法を例証することが意図されたブロック図２００である。
【００３５】
[0042]図２には、混合提示論理１２２によって管理されるＧＵＩ１３２の表示領域２０２が概略的に示されている。表示領域２０２は、例えば、ユーザーの電子メッセージに関する情報が提示されるＧＵＩ１３２内の窓すなわち観察ペインを含むことができる。このような情報は、電子メッセージに関する情報の任意のアイテムを幅広く含むことができる。例えば電子メッセージが電子メールメッセージを含むある実施形態では、このような情報は、それらに限定されないが、電子メールメッセージの送信側、電子メールメッセージの主題、電子メールメッセージが送られた日および／または時間、電子メールメッセージが受け取られた日および／または時間、電子メールメッセージに関する状態情報（例えば読まれている、読まれていない、フラグが立っている、立っていない）、等々を含むことができる。
【００３６】
[0043]表示領域２０２に表示される電子メッセージに関する情報は、実施態様に応じて様々な方法で編成することができる。例えばこのような情報は、表またはリストの形態で提示することができ、個々の電子メッセージに関する情報は、表の対応する行に表示され、あるいはリスト中の対応するアイテムとして表示される。他の実施態様によれば、電子メッセージに関する情報は、対応する電子メッセージを示すアイコンに関連して提示することができる。さらに他の提示方法を使用することも可能である。
【００３７】
[0044]電子メッセージに関する情報は、１つまたは複数のシステム定義基準および／またはユーザー定義基準に従って分類し、あるいは編成することができる。例えば電子メッセージに関する情報は、電子メッセージを受け取った日時に基づいて分類することができる。電子メッセージがリストとして提示されるある実施形態では、このような分類基準を使用することにより、リストの最初に出現する、受け取った最も新しい電子メッセージに関する情報、およびリストの最後に出現する、受け取った最も古い電子メッセージに関する情報が得られる。しかしながらこれは単なる一例にすぎず、広範囲にわたる様々な基準を使用して電子メッセージに関する情報を分類し、あるいは編成することができる。
【００３８】
[0045]電子メッセージがサブ−メールボックスおよび／またはサブ−フォルダーを含むことができる電子メールメールボックス内に分類された電子メールメッセージを含むある実施形態では、その電子メールメッセージに関する情報が表示窓２０２に表示される電子メールメッセージは、特定のメールボックス、サブ−メールボックスまたはサブ−フォルダーに記憶されている電子メールメッセージを含むことができる。
【００３９】
[0046]図２にさらに示されているように、表示領域２０２の第１の部分２０４は、同期化窓内に存在している電子メッセージに関する情報を提示するために使用される。上で説明したように、このような同期化窓を利用して、リモートストア１３２からローカルストア１１４にコピーされる電子メッセージを決定することができる。その電子メッセージに関する情報が表示領域２０２の第１の部分２０４に表示される電子メッセージは、ローカルストア１１４に記憶されるため、ある実施形態では、混合提示論理１２２は、表示領域２０２の第１の部分２０４に表示される電子メッセージ情報を、リモートストア１３２からではなく、ローカルストア１１４から得る。このようなデータは、図２に示されている、「オフライン」利用可能、と言うことができる。
【００４０】
[0047]同じく図２に示されているように、表示領域２０２の第２の部分２０６は、同期化窓の外側に存在している電子メッセージに関する情報を提示するために使用され、したがってローカルストア１１４に記憶されない。その電子メッセージに関する情報が表示領域２０２の第２の部分２０６に表示される電子メッセージは、ローカルストア１１４に記憶されないため、ある実施形態では、混合提示論理１２２は、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されていることが決定されると、表示領域２０２の第２の部分２０６に表示される電子メッセージ情報を、電子メッセージングサーバー１０２内での対話を介してリモートストア１３２から得る。このようなデータは、図２に示されている、「オフライン」利用可能、と言うことはできない。
【００４１】
[0048]ローカルストア１１４にローカルキャッシュされている電子メッセージに関する情報、およびリモートストア１３２にリモート記憶されている電子メッセージに関する情報を、図２に示されている同じ表示領域２０２に同時に提示することにより、混合提示論理１２２は、混合提示論理１２２がこのような電子メッセージに関する情報およびこのような電子メッセージの内容を異なるストアから得ることができるとしても、すべての電子メッセージが単一の統合されたリポジトリーの一部である印象をユーザーに提供することができる。言い換えると、混合提示論理１２２は、混合提示論理１２２が電子メッセージおよびこれらの電子メッセージに関する情報のいくつかをローカルストア１１４から得ることができるとしても、リモートストア１３２に記憶されている電子メッセージのすべてに対するアクセスを有している、という意識をユーザーに提供することができる。
【００４２】
[0049]この混合効果を達成するために、混合提示論理１２２は、ローカルに記憶される電子メッセージおよびリモート記憶される電子メッセージをユーザーが容易に決定することができないよう、ローカル記憶およびリモート記憶されている電子メッセージに関する情報を本質的に同じ形態および／または方法で提示することができる。しかしながら、ある代替実施形態では、ローカルに記憶されている電子メッセージをリモート記憶されている電子メッセージから区別するために使用することができる何らかの種類の視覚表示を提供することができる。
【００４３】
[0050]特定の実施形態では、その電子メッセージに関する情報が表示領域２０２に提示される電子メッセージ毎に、ユーザーがこのような電子メッセージの内容をＧＵＩ１３２内に表示することができる手段が同じく提示される。例えばその手段は、ユーザーによって対話されると、その電子メッセージの内容がＧＵＩ１３２内に表示される個々の電子メッセージに関する情報に関連して提示されるコンポーネントを含むことができる。例えば個々の電子メッセージに関する情報がリスト中のアイテムとして表示されるある実施形態では、ユーザーは、リスト中の対応するアイテムをクリックオンすることによって電子メッセージの内容を見ることができる。さらに他のユーザー・インターフェース・コンポーネントを利用して、その電子メッセージに関する情報が表示領域２０２に提示される電子メッセージの内容の選択的一覧を容易にすることも可能である。
【００４４】
[0051]図２に示されている実施形態例にさらによれば、電子メッセージを見るためにユーザーが選択すると、混合提示論理１２２は、その電子メッセージの内容を取得し、かつ、このような内容をＧＵＩ１３２内に表示することができる。選択された電子メッセージのコピーがローカルストア１１４に記憶されている場合、混合提示論理１２２は、その電子メッセージの内容をローカルストア１１４から得ることができる。しかしながら、選択された電子メッセージのコピーがローカルストア１１４に記憶されていない場合（つまり選択された電子メッセージが同期化窓の外側である場合）、混合提示論理１２２は、電子メッセージングサーバー１０２との対話を介して、リモートストア１３２からその電子メッセージの内容を得ることができる。この後者の場合、混合提示論理１２２は、提示プロセスの一環として、リモート記憶されている電子メッセージのコピーをローカルストア１１４に記憶しない。つまり、リモート記憶されている電子メッセージの内容をユーザーデバイス１０６のメモリーに一時的にバッファーし、その表示を容易にすることは可能であるが、リモート記憶されている電子メッセージの内容を見るために使用されるＧＵＩ１３２の一部をユーザーが閉じると、このようなバッファーされたデータを廃棄することができる。当然、特定の状況では（例えば性能の理由から）、混合提示論理１２２は、リモート記憶されている電子メッセージのコピーをローカルストア１１４に記憶することができる。
【００４５】
[0052]一実施形態では、混合提示論理１２２は、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されていることが決定されたとしても、最初は、同期化窓内に存在している電子メッセージに関する情報のみを表示領域２０２に提示することができる。このようなある実施形態にさらによれば、混合提示論理１２２は、上で説明した混合方式で、同期化窓の外側に存在している電子メッセージに関する情報を同じく表示領域２０２に表示させるためにユーザーが対話することができるコンポーネントをＧＵＩ１３２内に提供することができる。このような対話コンポーネントは、その機能の視覚表示を含むことができ、あるいはその機能の視覚表示を付随させることができる。例えばこのような対話コンポーネントは、「より多くのメッセージがサーバー上に存在しています。ここをクリックしてそれらを見て下さい。」、「ここをクリックしてより多くのメッセージを見て下さい。」、等々を記述したテキストを含むことができ、あるいはそれらを付随させることができる。しかしながらこれらは単なる例にすぎず、限定することは一切意図されていない。
【００４６】
[0053]表示領域２０２の描写は、実例として提供されたものにすぎないことに留意されたい。表示領域２０２は、実施態様に応じて任意のサイズまたは形状にすることができる。さらに、表示領域２０２全体をＧＵＩ１３２および／またはディスプレイ１１２内で一度に見ることができなくてもよく、また、スクローリングまたは当分野で知られている他の同様の機構を使用して、表示領域２０２の選択された部分を見ることも可能である。
【００４７】
[0054]さらに、図２は、同期化窓内に含まれている電子メッセージに関する情報は、同期化窓内に存在していない電子メッセージに関する情報とは別の連続したユニットとして提示されることを示しているように思われるが、このような情報を表示領域２０２全体にわたって混合することができることは全く可能である。例えば情報がリストとして提示されるある実施形態では、その電子メッセージに関する情報がリスト中に提示される第１の電子メッセージは、同期化窓の外側に存在していてもよく、その電子メッセージに関する情報がリスト中に提示される第２の電子メッセージは、同期化窓の内側に存在していてもよく、また、その電子情報に関する情報がリスト中に提示される第３の電子情報は同期化窓の外側に存在していてもよい。言い換えると、表示領域２０２の部分２０４および２０６は、混合する、すなわち混ぜ合わせることができる。これは、例えばこのような情報が分類される方法または他の理由によって生じることがある。
【００４８】
[0055]図３は、ある実施形態による、ローカルに記憶された電子メッセージとリモートに記憶された電子メッセージの混合提示を提供するための方法の流れ図３００を示したものである。流れ図３００の方法は、例えば、図１のシステム１００を参照して上で説明した混合提示論理１２２によって実施することができる。しかしながらこの方法は、その実施形態に限定されず、全く別の構成要素またはシステムによって実施することも可能である。
【００４９】
[0056]図３に示されているように、流れ図３００の方法はステップ３０２で始まり、１つまたは複数の第１の電子メッセージに関する情報が、ユーザーデバイスのディスプレイにレンダリングされたＧＵＩ内に表示され、１つまたは複数の第１の電子メッセージの内容がユーザーデバイスのローカルストアに記憶される。例えばこのステップは、同期化窓内の電子メッセージに関する情報の、ユーザーデバイス１０６のディスプレイ１１２にレンダリングされたＧＵＩ１３２への表示を必然的に伴うことができ、このような電子メッセージは、ユーザーデバイス１０６のローカルストア１１４に記憶される。
【００５０】
[0057]ステップ３０４で、ユーザーデバイスが電子メッセージングサーバーに接続されているかどうかに関する決定がなされる。例えばこのステップは、ユーザーデバイス１０６が電子メッセージングサーバー１０６に接続されているかどうかの決定を必然的に伴うことができる。それらに限定されないが、ユーザーデバイス１０６と電子メッセージングサーバー１０２の間のメッセージの交換の要求、またはユーザーデバイス１０６がネットワーク１０４への動作接続を有していることの単純な決定を始めとする様々な方法を使用して、このような接続が存在しているかどうかを決定することができる。
【００５１】
[0058]ステップ３０６で、ユーザーデバイスが電子メッセージングサーバーに接続されていることの少なくとも決定に応答して、１つまたは複数の第１の電子メッセージに関する情報と同時に、１つまたは複数の第２の電子メッセージに関する情報がＧＵＩ内に表示され、１つまたは複数の第２の電子メッセージの内容が、ローカルストアではなく、電子メッセージングサーバーにアクセスすることができるリモートストアに記憶される。例えばこのステップは、少なくともユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されていることの決定に応答して、同期化窓内に記憶されていない電子メッセージに関する情報の、ユーザーデバイス１０６のディスプレイ１１２にレンダリングされたＧＵＩ１３２への表示を必然的に伴うことができ、このような電子メッセージは、ローカルストア１１４ではなく、電子メッセージングサーバー１０２にアクセスすることができるリモートストア１３２に記憶される。
【００５２】
[0059]一実施形態では、流れ図３００の方法は、１つまたは複数の第１の電子メッセージに関する情報と同時に、１つまたは複数の第２の電子メッセージに関する情報をＧＵＩ内に表示させるためにユーザーが対話することができるユーザー・インターフェース・コンポーネントをＧＵＩ内に提供するステップをさらに含むことができる。このようなある実施形態にさらによれば、ステップ３０６は、少なくとも、ユーザーデバイスが電子メッセージングサーバーに接続されていること、およびユーザーがユーザー・インターフェース・コンポーネントと対話したことの決定に応答して実施することができる。図２を参照して上で説明したように、このようなユーザー・インターフェース・コンポーネントは、その機能の視覚表示を含むことができ、あるいはその機能の視覚表示を付随させることができる。例えばこのような対話コンポーネントは、「より多くのメッセージがサーバー上に存在しています。ここをクリックしてそれらを見て下さい。」、「ここをクリックしてより多くのメッセージを見て下さい。」、等々を記述したテキストを含むことができ、あるいはそのようなテキストを付随させることができる。
【００５３】
[0060]他の実施形態では、流れ図３００の方法は、１つまたは複数の第１の電子メッセージのうちの選択された電子メッセージの内容をＧＵＩ内に表示させるためにユーザーが対話することができるユーザー・インターフェース・コンポーネントをＧＵＩ内に提供するステップと、次に、ユーザーがユーザー・インターフェース・コンポーネントと対話したことの決定に応答して、ＧＵＩ内に表示するために、１つまたは複数の第１の電子メッセージのうちの選択された電子メッセージの内容をローカルストアから得るステップとを含むことも可能である。
【００５４】
[0061]さらに他の実施形態では、流れ図３００の方法は、１つまたは複数の第２の電子メッセージのうちの選択された電子メッセージの内容をＧＵＩ内に表示するためにユーザーが対話することができるユーザー・インターフェース・コンポーネントをＧＵＩ内に提供するステップと、次に、ユーザーがユーザー・インターフェース・コンポーネントと対話したことの決定に応答して、１つまたは複数の第２の電子メッセージのうちの選択された電子メッセージの内容のコピーをローカルストアに保存することなくＧＵＩ内に表示するために、１つまたは複数の第２の電子通信のうちの選択された電子通信の内容をリモートストアから得るステップとを含むことも可能である。
Ｂ．混合状態情報を提示するための技法例
[0062]図４は、混合状態論理１２４が、コンテナーに記憶されている電子メッセージのうちのいくつかがローカルストア１１４にキャッシュされ、また、コンテナーに記憶されている電子メッセージのうちのいくつかがリモートストア１３２内でのみ利用可能であるシナリオで、ユーザーデバイス１０６のユーザーに電子メッセージのコンテナーに関連する混合状態を提示するように動作することができるプロセスの流れ図４００を示したものである。コンテナーは、例えばユーザーの電子メッセージのすべて、または部分集合を記憶するために使用されるフォルダーを含むことができる。流れ図４００の方法は、電子メッセージングクライアント１１０が起動された後、混合状態が最初にユーザーに提示される方法に的が絞られている。流れ図４００の方法では、混合状態は、コンテナー中の、特定の状態を有する電子メッセージの数を表すアイテム数を含む。このような特定の状態は、例えば、それらに限定されないが、コンテナーに含まれている、含まれていない、読まれている、読まれていない、フラグが立っている、立っていない、等々を含むことができる。
【００５５】
[0063]次に、実例による説明を目的としたものにすぎないが、流れ図４００の方法について、図１を参照して上で説明したシステム１００の様々な構成要素を参照して説明する。しかしながら、この方法は他の構成要素またはシステムによっても実施することができることは、１つまたは複数の関連分野の技術者には理解されよう。
【００５６】
[0064]図４に示されているように、流れ図４００の方法はステップ４０２で始まり、電子メッセージングクライアント１１０が起動される。このステップは、実施態様に応じて様々な方法で開始することができる。例えばこのステップは、ユーザーデバイス１０６のユーザーがユーザーデバイス１０６のオペレーティングシステムまたはユーザーデバイス１０６の何らかの他の構成要素との対話を介して電子メッセージングクライアント１１０を起動すると、開始することができる。
【００５７】
[0065]ステップ４０２の後、制御はステップ４０４へ進行し、ステップ４０４の間、混合状態論理１２４は、コンテナーに関連する１つまたは複数のローカルアイテム数をロードし、このようなローカルアイテム数がユーザーデバイス１０６のローカルストレージ（例えばローカルストア１１４）に記憶される。この方法によれば、ローカルアイテム数は、ローカルストア１１４に記憶されている、コンテナーに含まれており特定の状態を有する電子メッセージの数の表現を含む。ローカルアイテム数は、異なるタイプの状態に対して維持することができる。例えば所与のコンテナーの場合、ローカルストア１１４に記憶されている、コンテナー中の電子メッセージの数、ローカルストア１１４に記憶されている、コンテナー中の、読まれている、あるいは読まれていない電子メッセージの数、ローカルストア１１４に記憶されている、フラグが立っている、あるいは立っていない電子メッセージの数、等々を表すローカルアイテム数を維持することができる。
【００５８】
[0066]ステップ４０４の後、制御はステップ４０６へ進行し、ステップ４０６の間、混合状態論理１２６は、コンテナーに関連する１つまたは複数のデルタ量をロードし、このようなデルタ量がユーザーデバイス１０６のローカルストレージ（例えばローカルストア１１４）に記憶される。この方法によれば、デルタ量は、コンテナーに対するリモートアイテム数とローカルアイテム数の最後の既知の差を表し、リモートアイテム数は、コンテナーに含まれており特定の状態を有する、リモートストア１３２に記憶されている電子メッセージの数を表す。
【００５９】
[0067]ステップ４０６の後、制御はステップ４０８へ進行し、ステップ４０８の間、混合状態論理１２４は、ステップ４０４の間にロードされた個々のローカルアイテム数と、ステップ４０６の間にロードされた対応するデルタ量とを合計することにより、コンテナーに対するアイテム数を計算する。例えばこのステップは、コンテナーに含まれている、ローカルストア１１４に記憶されているアイテムの総数を規定するローカルアイテム数と、コンテナーに含まれている、リモートストア１３２に記憶されているアイテムの総数と、ローカルアイテム数の最後の既知の差を規定するデルタ量との加算を必然的に伴うことができる。他の例として、このステップは、コンテナーに含まれている、ローカルストア１１４に記憶されている、読まれていないアイテムの総数を規定するローカルアイテム数と、コンテナーに含まれている、リモートストア１３２に記憶されている、読まれていないアイテムの総数と、ローカルアイテム数の最後の既知の差を規定するデルタ量との加算を必然的に伴うことも可能である。
【００６０】
[0068]また、ステップ４０８の間、混合状態論理１２４は、このようにして計算されたアイテム数をＧＵＩ１３２に提示し、したがってユーザーデバイス１０６のユーザーは、それらのアイテム数を見ることができる。このステップは、所定の位置にアイテム数を表示し、あるいはこのようなアイテム数が、それらが計算されたコンテナーに対応していることを示す方法（例えばコンテナーのアイコン表示の隣、コンテナー中の電子メッセージに関する情報を表示するナビゲーションペインの状態バーの中、等々）でアイテム数を表示するステップを含むことができる。
【００６１】
[0069]ステップ４０８の後、制御は決定ステップ４１０へ進行し、決定ステップ４１０の間、混合状態論理１２４は、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されているか否かを決定する。それらに限定されないが、ユーザーデバイス１０６と電子メッセージングサーバー１０２の間のメッセージの交換の要求、またはユーザーデバイス１０６がネットワーク１０４への動作接続を有していることの単純な決定を始めとする様々な方法を使用して、このような接続が存在しているかどうかを決定することができる。
【００６２】
[0070]図４に示されているように、決定ステップ４０６の間に、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されていないことが決定されると、制御はステップ４０８に戻り、ステップ４０８の間、混合状態論理１２６は、コンテナーに対するローカルアイテム数と、ステップ４０６の間に得られた対応するデルタ量との合計として、コンテナーに対するアイテム数を引き続いて示す。ユーザーデバイス１０６がオフラインである間、ステップ４０４の間にロードされたローカルアイテム数は、図５の流れ図５００を参照して以下で説明されるように、ユーザーデバイス１０６のユーザーによる任意の回数のアクションの実施の結果として更新することができることに留意されたい。したがってステップ４０８の間、表示される、コンテナーに対するアイテム数は、ユーザーデバイス１０６がオフラインである間、コンテナーに対する最新のローカルアイテム数（ユーザーのオフラインアクティビティによって影響されるため）と、ステップ４０６の間に得られた対応するデルタ量との合計である。特定の実施形態では、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されていないこと、および特定のコンテナーに対するデルタ量がゼロより大きい（ローカルストア１１４にキャッシュされていない、利用可能な電子メッセージがリモートストア１３２に存在していることを示す）ことを混合状態論理１２４が決定すると、混合状態論理１２４は、リモートストア１３２内で追加電子メッセージを利用することができることをユーザーに知らせるインディケータを提示することができることに留意されたい。例えばこのようなインディケータは、単なる一例にすぎないが、ＧＵＩ１３２にレンダリングされた、「より多くのアイテムがあります。サーバーに接続してそれらを見て下さい」を示すテキストを含むことができる。このようなある実施形態にさらによれば、特定のコンテナーに対するデルタ量がゼロである（ローカルストア１１４にキャッシュされている、利用可能なすべての電子メッセージがリモートストア１３２に存在していることを示す）場合、このようなインディケータを提示しなくてもよい。
【００６３】
[0071]しかしながら、決定ステップ４１０の間に、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されていることが決定されると、制御はステップ４１２へ進行し、ステップ４１２の間、ローカルストア１１４に記憶されている電子メッセージの状態と、リモートストア１３２に記憶されている電子メッセージの状態とを同期させることが意図された同期化プロセスが開始される。このような同期化プロセスが実施されるのは、ユーザーデバイス１０６がオフラインであった間に、あるいは電子メッセージングクライアント１１０が走っていなかった間に、ローカルストア１１４および／またはリモートストア１３２に記憶されている電子メッセージの状態が変化した可能性がある（したがって非同期化状態になっている可能性がある）ためである。例えばユーザーデバイス１０６がオフラインであった間に、あるいは電子メッセージングクライアント１１０が走っていなかった間に、ユーザーがローカルストア１１４に記憶されている１つまたは複数の電子メッセージの状態を変更したかもしれない。他の例として、ユーザーデバイス１０６がオフラインであった間に、あるいは電子メッセージングクライアント１１０が走っていなかった間に、電子メッセージングサーバー１０２が、電子メッセージングクライアント１１０が利用することができる、リモートストア１３２に記憶されている１つまたは複数の電子メッセージの状態を変更したかもしれない。このような同期化プロセスを使用して、同期化窓の外側へ通過した電子メッセージをローカルストア１１４から除去することも可能である。
【００６４】
[0072]同期化プロセスが実施されている間、混合状態論理１２４は、コンテナーに対するローカルアイテム数と、ステップ４０６の間に得られた対応するデルタ量との合計として、コンテナーに対するアイテム数を引き続いて表示することができる。同期化プロセスが実施されている間、このような同期化プロセスによって（例えば新しい電子メッセージをローカルストア１１４に追加することによって）ローカルアイテム数が変化することがある。したがって同期化を実施している間、表示される、コンテナーに対するアイテム数は、コンテナーに対する最新のローカルアイテム数（同期化プロセスによって影響されるため）と、ステップ４０６の間に得られた対応するデルタ量との合計である。
【００６５】
[0073]決定ステップ４１４に示されているように、ステップ４１２の間に開始された同期化プロセスが完了したことが決定されると、制御はステップ４１６へ進行する。ステップ４１６の間、混合状態論理１２４は、同期化プロセスの結果としてこのようなアイテム数が変化している可能性があるため、コンテナーに対する新しいリモートアイテム数および新しいローカルアイテム数を得る。ステップ４１６の間、混合状態論理１２４は、個々の新しいリモートアイテム数と個々の対応する新しいローカルアイテム数の差を決定することによって、コンテナーに対する新しいデルタ量を同じく計算する。このステップの間、混合状態論理１２４は、新たに計算されたデルタ量を同じくユーザーデバイス１０６のローカルストレージに記憶し、それによりその前に計算されたデルタ量を新たに計算されたデルタ量に置き換える。
【００６６】
[0074]ステップ４１６の後、制御はステップ４１８へ進行し、ステップ４１８の間、混合状態論理１２４は、ステップ４１６の間に得られた個々のローカルアイテム数と、そのステップの間に計算された対応するデルタ量とを合計することによって、コンテナーに対するアイテム数を計算する。ステップ４１８の間、混合状態論理１２４は、このようにして計算されたアイテム数を同じくＧＵＩ１３２に提示し、したがってユーザーデバイス１０６のユーザーはそれらを見ることができる。
【００６７】
[0075]図５は、混合状態論理１２４が、コンテナーに記憶されている電子メッセージのうちのいくつかがローカルストア１１４にキャッシュされ、また、コンテナーに記憶されている電子メッセージのうちのいくつかがリモートストア１３２内でのみ利用可能であるシナリオで、ユーザーデバイス１０６のユーザーに電子メッセージのコンテナーに関連する混合状態を提示するように動作することができる追加プロセスの流れ図５００を示したものである。流れ図５００の方法は、ユーザーが電子メッセージングクライアント１１０を介して電子メッセージの状態を変更するアクションを実施した後に混合状態が提示される方法に的が絞られている。流れ図４００の場合と同様、混合状態は、コンテナー中の、特定の状態を有する電子メッセージの数を表すアイテム数を含む。
【００６８】
[0076]次に、実例による説明を目的としたものにすぎないが、流れ図５００の方法について、図１を参照して上で説明したシステム１００の様々な構成要素を参照して説明する。しかしながら、この方法は他の構成要素またはシステムによっても実施することができることは、１つまたは複数の関連分野の技術者には理解されよう。
【００６９】
[0077]図５に示されているように、流れ図５００の方法はステップ５０２で始まり、ユーザーは、電子メッセージングクライアント１１０を利用して、コンテナー中の、特定の状態を有する電子メッセージの総数が変化するよう、コンテナーに存在している１つまたは複数の電子メッセージに対するアクションを実施する。このようなアクションは、例えば電子メッセージをコンテナーに追加すること、電子メッセージをコンテナーから削除し、あるいは除去すること、コンテナー中の読まれていない電子メッセージを読むこと、コンテナー中のフラグが立っていない電子メッセージにフラグを立てること、等々を含むことができる。
【００７０】
[0078]決定ステップ５０４で、ステップ５０２のアクションがなされたことの決定に応答して、混合状態論理１２４は、このようなアクションが実施された１つまたは複数の電子メッセージがローカルストア１１４に記憶されているかどうかを決定する。アクションが実施された電子メッセージがローカルストア１１４に記憶されている場合、混合状態論理１２４は、ステップ５０６に示されているように、コンテナーに対する関連するローカルアイテム数を増分または減分する。したがって例えばユーザーが電子メッセージをコンテナーから削除し、その削除された電子メッセージがローカルストア１１４にキャッシュされている場合、混合状態論理１２４は、そのコンテナーに対するローカルアイテム数を１だけ減分する。他の例として、ユーザーがコンテナー中の読まれていない電子メッセージを読み、その読まれた電子メッセージがローカルストア１１４にキャッシュされている場合、混合状態論理１２４は、そのコンテナーに対するローカル未読アイテム数を１だけ減分する。さらに、混合状態論理１２４は、そのコンテナーに対するローカル既読アイテム数を１だけ増分することも可能である。
【００７１】
[0079]しかしながら、混合状態論理１２４が、決定ステップ５０４の間に、ステップ５０２のアクションが実施された１つまたは複数の電子メッセージがローカルストア１１４に記憶されていない（つまりそれらはリモートストア１３２にのみ記憶されている）ことを決定すると、混合状態論理１２４は、ステップ５０８に示されているように、コンテナーに対する関連するデルタ量を増分または減分する。したがって例えばユーザーが電子メッセージをコンテナーから削除し、その削除された電子メッセージがローカルストア１１４にキャッシュされていない場合、混合状態論理１２４は、コンテナー中のリモート記憶されているアイテムの総数と、コンテナーに対するローカルアイテム数の差を表すデルタ量を１だけ減分する。他の例として、ユーザーがコンテナー中の読まれていない電子メッセージを読み、その読まれた電子メッセージがローカルストア１１４にキャッシュされていない場合、混合状態論理１２４は、コンテナー中のリモート記憶されている未読アイテムの総数と、コンテナーに対するローカル未読アイテム数の差を表すデルタ量を１だけ減分する。さらに、混合状態論理１２４は、コンテナー中のリモート記憶されている既読アイテムの総数と、コンテナーに対するローカル既読アイテム数の差を表すデルタ量を１だけ増分することも可能である。
【００７２】
[0080]ステップ５０６または５０８の後、制御はステップ５１０へ進行し、ステップ５１０の間、混合状態論理１２４は、コンテナーに対するローカルアイテム数と、対応するデルタ量とを合計することにより、コンテナーに対するアイテム数を計算する。ステップ５１０の間、混合状態論理１２４は、このようにして計算されたアイテム数を同じくＧＵＩ１３２に提示し、したがってユーザーデバイス１０６のユーザーはそれらを見ることができる。
【００７３】
[0081]ステップ５１０の後、制御はステップ５１２へ進行し、ステップ５１２の間、ローカルストア１１４に記憶されている電子メッセージの状態と、リモートストア１３２に記憶されている電子メッセージの状態とを同期させることが意図された同期化プロセスが開始される。電子メッセージングクライアント１１０は、特定の事象、等々が生じると、それに応答して、システム定義スケジュールまたはユーザー定義スケジュールに従ってこのような同期化プロセスを開始することができる。このような同期化プロセスが必要である理由は、その前の同期化が生じた以降に、ローカルストア１１４および／またはリモートストア１３２に記憶されている電子メッセージの状態が変化した可能性がある（したがって非同期化状態になっている可能性がある）ためである。例えばその前の同期化が生じた以降に、ユーザーがローカルストア１１４に記憶されている１つまたは複数の電子メッセージの状態を変更したかもしれない。他の例として、その前の同期化が生じた以降に、電子メッセージングサーバー１０２が、電子メッセージングクライアント１１０が利用することができる、リモートストア１３２に記憶されている１つまたは複数の電子メッセージの状態を変更したかもしれない。このような同期化プロセスを使用して、同期化窓の外側へ通過した電子メッセージをローカルストア１１４から除去することも可能である。
【００７４】
[0082]同期化プロセスが実施されている間、混合状態論理１２４は、コンテナーに対するローカルアイテム数と、対応するデルタ量との合計として、コンテナーに対するアイテム数を引き続いて表示することができる。同期化プロセスが実施されている間、このような同期化プロセスによって（例えば新しい電子メッセージをローカルストア１１４に追加することによって）ローカルアイテム数が変化することがある。したがって同期化を実施している間、表示される、コンテナーに対するアイテム数は、コンテナーに対する最新のローカルアイテム数（同期化プロセスによって影響されるため）と、対応するデルタ量との合計である。
【００７５】
[0083]決定ステップ５１４に示されているように、ステップ５１２の間に開始された同期化プロセスが完了したことが決定されると、制御はステップ５１６へ進行する。
[0084]ステップ５１６の間、混合状態論理１２４は、同期化プロセスの結果としてこのようなアイテム数が変化している可能性があるため、コンテナーに対する新しいリモートアイテム数および新しいローカルアイテム数を得る。ステップ５１６の間、混合状態論理１２４は、個々の新しいリモートアイテム数と個々の対応する新しいローカルアイテム数の差を決定することによって、コンテナーに対する新しいデルタ量を同じく計算する。このステップの間、混合状態論理１２４は、新たに計算されたデルタ量を同じくユーザーデバイス１０６のローカルストレージに記憶し、それによりその前に計算されたデルタ量を新たに計算されたデルタ量に置き換える。
【００７６】
[0085]ステップ５１６の後、制御はステップ５１８へ進行し、ステップ５１８の間、混合状態論理１２４は、ステップ５１６の間に得られた個々のローカルアイテム数と、同じステップの間に計算された対応するデルタ量とを合計することによって、コンテナーに対するアイテム数を計算する。ステップ５１８の間、混合状態論理１２４は、このようにして計算されたアイテム数を同じくＧＵＩ１３２に提示し、したがってユーザーデバイス１０６のユーザーはそれらを見ることができる。
【００７７】
[0086]次に、流れ図４００および５００の上記方法を利用して、混合状態情報をユーザーに提示することができる方法の実例による説明を補助するために、単純な教示例について説明する。これらの例の目的のために、電子メッセージは電子メールであり、関連するコンテナーは、「Ｍａｉｌｂｏｘ」と呼ばれるフォルダーであり、また、表示されるアイテム数はＭａｉｌｂｏｘアイテム数であることが仮定されている。
【００７８】
[0087]さらに、電子メッセージングクライアント１１０を起動する前（したがって流れ図４００の方法をトリガーする前）は、Ｍａｉｌｂｏｘに対するローカルアイテム数は５０であり、また、Ｍａｉｌｂｏｘアイテムに対するデルタ量は１５０である（つまりＭａｉｌｂｏｘアイテムに対するデルタ量を計算すると、２００個のリモート記憶されたアイテムおよび５０個のローカルに記憶されたアイテムがＭａｉｌｂｏｘに存在することになる）ことが仮定されている。
【００７９】
[0088]ここで、流れ図４００のステップ４０２に従って電子メッセージングクライアントが起動し、また、ステップ４０４に従って、上で示したように混合状態論理１２４がＭａｉｌｂｏｘに対するローカルアイテム数をロードし、かつ、ステップ４０６に従って、上で示したようにＭａｉｌｂｏｘアイテムに対するデルタ量をロードすると仮定する。次に、ステップ４０８の間、混合状態論理１２４は、Ｍａｉｌｂｏｘに対するローカルアイテム数（５０）と、Ｍａｉｌｂｏｘアイテムに対するデルタ量（１５０）との合計としてＭａｉｌｂｏｘに対するアイテム数を計算し、アイテム数２００を得る。混合状態論理１２４は、次に、さらにステップ４０８に従って、このアイテム数をＧＵＩ１３２を介してユーザーに提示する。
【００８０】
[0089]流れ図４００および５００の方法を利用して、混合状態情報をユーザーに提示することができる方法を実例でさらに説明するために、ユーザーデバイス１０６がオフライン状態にある間、ユーザーは５個の新しい電子メールをＭａｉｌｂｏｘに追加すると仮定する。このアクションによってＭａｉｌｂｏｘの状態が変化するため、このアクションは、流れ図５００のステップ５０２をトリガーすることになる。さらに、このアクションには、ローカルに記憶されている電子メールが必要であるため、このアクションにより、ステップ５０６に従ってＭａｉｌｂｏｘに対するローカルアイテム数が５だけ増分される（ローカルアイテム数が５５個になる）。次に、ステップ５１０の間、Ｍａｉｌｂｏｘに対するアイテム数が２０５（ローカルアイテム数５５＋デルタ量１５０）として示される。したがってそれは、あたかも、オフラインでなされた、ローカルストア１１４に記憶されている電子メールの状態だけではなく、Ｍａｉｌｂｏｘ全体の状態に影響を及ぼしたユーザー自身のアクションとしてユーザーに出現することになる。
【００８１】
[0090]流れ図４００および５００の方法を利用して、混合状態情報をユーザーに提示することができる方法を実例でさらに説明するために、ユーザーデバイス１０６がオフラインである間、電子メッセージングサーバー１０２は、ユーザーに代わって２０個の新しい電子メールをＭａｉｌｂｏｘに受け取り、かつ、それらをリモートストア１３２に記憶し、また、Ｍａｉｌｂｏｘ内の、ローリング・タイム・ウィンドウの外側であり、したがってリモートストア１３２にのみ記憶された４０個のより古い電子メールを削除すると仮定する。これによりＭａｉｌｂｏｘに対するリモートアイテム数１８０が得られる。同じく、上で説明したようにユーザーデバイス１０６がオフライン状態にある間に、Ｍａｉｌｂｏｘに５個の新しい電子メールを追加した後に、ユーザーがユーザーデバイス１０６の電力を停止すると仮定する。後に、ユーザーは、ユーザーデバイス１０６に再度電力を供給し、電子メッセージングクライアント１１０を起動して、流れ図４００のステップ４０２をトリガーする。
【００８２】
[0091]この場合、ステップ４０４の間、混合状態論理１２４は、Ｉｎｂｏｘに対するローカルアイテム数（ローカルアイテム数＝５５）をロードし、ステップ４０６の間、混合状態論理１２４は、Ｍａｉｌｂｏｘアイテムに対するデルタ量（デルタ量＝１５０）をロードし、また、ステップ４０８の間、混合状態論理１２４は、Ｍａｉｌｂｏｘに対するアイテム数を２０５（５５＋１５０）として提示する。次に、決定ステップ４１０では、混合状態論理１２４は、ユーザーデバイス１０６が現在は電子メッセージングサーバー１０２に接続されていることを決定するため、制御はステップ４１２へ進行する。
【００８３】
[0092]ステップ４１２で同期化が開始される。同期化の結果、Ｍａｉｌｂｏｘ内の２０個の新しい電子メールがローカルストア１１４にダウンロードされ、それによりＭａｉｌｂｏｘローカルアイテム数が５５から７５へ増分される。同期化が実施されている間、混合状態論理１２４は、ローカルアイテム数（現在は７５）と、Ｍａｉｌｂｏｘアイテムに対するデルタ量（１５０）との合計として２２５に等しいＩｎｂｏｘアイテム数を引き続いて表示する。同期化プロセスの間、ローカルにＭａｉｌｂｏｘ内に作成された５個の電子メールがリモートストア１３２にアップロードされ、リモートアイテム数が１８０から１８５に増加する。
【００８４】
[0093]ステップ４１６の間、混合状態論理１２４は、同期化後ローカルアイテム数およびリモートアイテム数を得る。この場合、同期化後は、Ｉｎｂｏｘに対するローカルアイテム数は７５になり、Ｉｎｂｏｘに対するリモートアイテム数は１８５になる。したがってステップ４１６の間、混合状態論理１２４は、Ｉｎｂｏｘアイテムに対するデルタ量１１０を計算することになる。次に、ステップ４１８の間、混合状態論理１２４は、Ｉｎｂｏｘに対するローカルアイテム数（７５）と、Ｉｎｂｏｘアイテムに対するデルタ量（１１０）との合計である１８５としてＩｎｂｏｘアイテム数を表示する。
Ｃ．混合探索を実施するための技法例
[0094]図６は、ある実施形態による、混合探索論理１２６がローカルに記憶された電子メッセージとリモートに記憶された電子メッセージの混合探索を実施するように動作することができる第１の方法の流れ図６００を示したものである。以下、実例による説明を目的としたものにすぎないが、流れ図６００の方法について、図１を参照して上で説明したシステム１００の様々な構成要素を参照して説明する。しかしながら、この方法は他の構成要素またはシステムによっても実施することができることは、１つまたは複数の関連分野の技術者には理解されよう。
【００８５】
[0095]図６に示されているように、流れ図６００の方法はステップ６０２で始まり、ステップ６０２の間、ユーザーは、問合せをユーザーデバイス１０６に入力し、かつ、探索を開始する。このような問合せの実行を委ねることができ、また、このような探索を開始することができる方法は、実施態様に応じて様々である。例えば一実施形態では、ＧＵＩ１３２は、ユーザーが問合せをタイプするために使用することができるテキスト・エントリー・ボックス、およびユーザーが探索を開始するために起動することができる探索ボタンを提供する。しかしながら、これは一例にすぎず、よく知られている様々なユーザー入力機構を使用して問合せの実行を委ね、かつ、探索を開始することができる。
【００８６】
[0096]ステップ６０４で、混合探索論理１２６は、ステップ６０２の間に委ねられた問合せに基づいて、ローカルストア１１４に記憶されている電子メッセージに対するローカルの探索を実行する。混合探索論理１２６は、よく知られている任意の様々な探索アルゴリズムを利用して、ローカルストア１１４に記憶されている電子メッセージの中から、ステップ６０２に間に入力された問合せと一致する電子メッセージとして識別すべき電子メッセージを決定することができる。ローカルストア１１４に記憶されている何らかの電子メッセージが問合せと一致することを混合探索論理１２６が決定すると、混合探索論理１２６は、これらの電子メッセージに関する情報をＧＵＩ１３２内に提示する。提示される情報は、電子メッセージに関する情報の任意のアイテムを幅広く含むことができる。例えば電子メッセージが電子メールメッセージを含むある実施形態では、このような情報は、それらに限定されないが、電子メールメッセージの送信側、電子メールメッセージの主題、電子メールメッセージが送られた日および／または時間、電子メールメッセージが受け取られた日および／または時間、電子メールメッセージに関する状態情報（例えば読まれている、読まれていない、フラグが立っている、立っていない）、等々を含むことができる。
【００８７】
[0097]特定の実施形態では、その電子メッセージに関する情報がステップ６０４の間に実施されたローカル探索の結果として提示される、一致する電子メッセージ毎に、ユーザーがこのような電子メッセージの内容をＧＵＩ１３２内に表示することができる手段が同じく提示される。例えばこの手段は、ユーザーによって対話されると、その電子メッセージの内容がＧＵＩ１３２内に表示される個々の電子メッセージに関する情報と関連して提示されるコンポーネントを含むことができる。このような実施形態にさらによれば、電子メッセージを見るためにユーザーが選択すると、混合探索論理１２６は、その電子メッセージの内容をローカルストア１１４から取得し、かつ、このような内容をＧＵＩ１３２内に表示することができる。
【００８８】
[0098]ステップ６０４の後、制御は決定ステップ６０６へ進行し、決定ステップ６０６の間、混合探索論理１２６は、ローカルストア１１４にキャッシュされていない、リモートストア１３２内で利用することができる電子メッセージが存在しているかどうかを決定する。この決定がなされる方法は、実施態様に応じて変更することができる。例えば一実施形態では、混合探索論理１２６は、リモートストア１３２内で利用することができる電子メッセージの部分集合のみがローカルストア１１４にキャッシュされることになる、時間をベースとする同期化窓が使用されていることを決定することにより、ローカルストア１１４にキャッシュされていない、リモートストア１３２内で利用することができる電子メッセージが存在していることを決定する。しかしながら他の技法を使用することも可能である。
【００８９】
[0099]混合探索論理１２６が、決定ステップ６０６の間、リモートストア１３２内で利用することができる電子メッセージが存在せず、ローカルストア１１４にも同じくキャッシュされていないことを決定すると、流れ図６００の方法は終了する。しかしながら混合探索論理１２６が、決定ステップ６０６の間、ローカルストア１１４にキャッシュされていない、リモートストア１３２内で利用することができる電子メッセージが存在していることを決定すると、制御は決定ステップ６０８へ進行する。
【００９０】
[0100]決定ステップ６０８の間、混合探索論理１２６は、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されているか否かを決定する。それらに限定されないが、ユーザーデバイス１０６と電子メッセージングサーバー１０２の間のメッセージの交換の要求、またはユーザーデバイス１０６がネットワーク１０４への動作接続を有していることの単純な決定を始めとする様々な方法を使用して、このような接続が存在しているかどうかを決定することができる。
【００９１】
[0101]混合探索論理１２６が、決定ステップ６０８の間、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されていないことを決定すると、流れ図６００の方法は終了する。しかしながら混合探索論理１２６が、決定ステップ６０８の間、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されていることを決定すると、制御はステップ６１０へ進行する。
【００９２】
[0102]ステップ６１０の間、混合探索論理は、ユーザーによって起動されると、電子メッセージングサーバー１０２が、ステップ６０２の間に委ねられた問合せに基づいて、リモートストア１３２に記憶されている利用可能な電子メッセージに対する探索を実行し、かつ、一致するすべての電子メッセージを識別するリストを戻すことになるユーザー・インターフェース・コンポーネントをＧＵＩ１３２内に表示する。このようなユーザー・インターフェース・コンポーネントは、その機能の視覚表示を含むことができ、あるいはその機能の視覚表示を付随させることができる。例えばユーザー・インターフェース・コンポーネントは、「サーバーに対する探索を続けて下さい。」、「ローカルアイテムのみが探索されました。したがって探索結果は不完全である可能性があり、−サーバーに対する探索を続けて下さい。」、等々を記述したテキストを含むことができ、あるいはそのようなテキストを付随させることができる。しかしながらこれらは例にすぎず、限定することは意図されていない。
【００９３】
[0103]ユーザーが、ステップ６１０の間、ＧＵＩ１３２に提示されたユーザー・インターフェース・コンポーネントを起動しない場合、流れ図６００の方法は終了する。しかしながらユーザーが、ステップ６１２に示されているように、ＧＵＩ１３２に提示されたユーザー・インターフェース・コンポーネントを起動すると、制御はステップ６１４へ進行する。
【００９４】
[0104]ステップ６１４の間、電子メッセージングサーバー１０２は、ステップ６０２の間に委ねられた問合せに基づいて、リモートストア１３２に記憶されている利用可能な電子メッセージに対する探索を実行し、かつ、一致するすべての電子メッセージを識別するリストを戻す。混合探索論理１２６は、一致する電子メッセージに関する情報をＧＵＩ１３２内に提示する。提示される情報は、電子メッセージに関する情報の任意のアイテムを幅広く含むことができる。
【００９５】
[0105]特定の実施形態では、その電子メッセージに関する情報がステップ６１４の間に実施されたリモート探索の結果として提示される、一致する電子メッセージ毎に、ユーザーがこのような電子メッセージの内容をＧＵＩ１３２内に表示することができる手段が同じく提示される。例えばこの手段は、ユーザーによって対話されると、その電子メッセージの内容がＧＵＩ１３２内に表示される個々の電子メッセージに関する情報と関連して提示されるコンポーネントを含むことができる。
【００９６】
[0106]このような実施形態にさらによれば、電子メッセージを見るためにユーザーが選択すると、混合探索論理１２６は、その電子メッセージの内容を取得し、かつ、このような内容をＧＵＩ１３２内に表示することができる。選択された電子メッセージのコピーがローカルストア１１４に記憶されている場合、混合探索論理１２６は、その電子メッセージの内容をローカルストア１１４から得ることができる。しかしながら、選択された電子メッセージのコピーがローカルストア１１４に記憶されていない場合（つまり選択された電子メッセージが同期化窓の外側である場合）、混合探索論理１２６は、電子メッセージングサーバー１０２との対話を介して、リモートストア１３２からその電子メッセージの内容を得ることができる。この後者の場合、混合探索論理１２６は、提示プロセスの一環として、リモート記憶されている電子メッセージのコピーをローカルストア１１４に記憶しない。つまり、リモート記憶されている電子メッセージの内容をユーザーデバイス１０６のメモリーに一時的にバッファーし、その表示を容易にすることは可能であるが、リモート記憶されている電子メッセージの内容を見るために使用されるＧＵＩ１３２の一部をユーザーが閉じると、このようなバッファーされたデータを廃棄することができる。
【００９７】
[0107]図７は、ある実施形態による、ローカルに記憶された電子メッセージとリモートに記憶された電子メッセージの混合探索を実施するための第２の方法の流れ図７００を示したものである。流れ図７００の方法は、流れ図６００の方法の変形形態と見なすことができ、本明細書においては、混合探索の様々な代替実施態様を使用することができることを実例で示すために説明されている。以下、実例による説明を目的としたものにすぎないが、流れ図７００の方法について、図１を参照して上で説明したシステム１００の様々な構成要素を参照して説明する。しかしながら、この方法は他の構成要素またはシステムによっても実施することができることは、１つまたは複数の関連分野の技術者には理解されよう。
【００９８】
[0108]図７に示されているように、流れ図７００の方法はステップ７０２で始まり、ステップ７０２の間、ユーザーは、問合せをユーザーデバイス１０６に入力し、かつ、探索を開始する。このような問合せの実行を委ねることができ、また、このような探索を開始することができる方法は、実施態様に応じて様々である。
【００９９】
[0109]ステップ７０４で、混合探索論理１２６は、ステップ６０２の間に委ねられた問合せに基づいて、ローカルストア１１４に記憶されている電子メッセージに対するローカルの探索を実行する。ステップ７０４の間に実行される探索は、所定の数の一致メッセージしか出力しないよう、上限が設けられ（ｃａｐ）、この所定の数は、探索によって識別することができる一致メッセージの総数未満であってもよい。
【０１００】
[0110]ステップ７０４の間、混合探索論理１２６は、上限付きのローカル探索の結果として識別されたすべての電子メッセージに関する情報をＧＵＩ１３２内に提示する。提示される情報は、電子メッセージに関する情報の任意のアイテムを幅広く含むことができる。特定の実施形態では、その電子メッセージに関する情報が、ステップ７０４の間に実施された、上限付きのローカル探索の結果として提示される、一致する電子メッセージ毎に、ユーザーがこのような電子メッセージの内容をＧＵＩ１３２内に表示することができる手段が同じく提示される。例えばこの手段は、ユーザーによって対話されると、その電子メッセージの内容がＧＵＩ１３２内に表示される個々の電子メッセージに関する情報と関連して提示されるコンポーネントを含むことができる。このような実施形態にさらによれば、電子メッセージを見るためにユーザーが選択すると、混合探索論理１２６は、その電子メッセージの内容をローカルストア１１４から取得し、かつ、このような内容をＧＵＩ１３２内に表示することができる。
【０１０１】
[0111]流れ図７００の方法によれば、混合探索論理１２６は、同じく、ステップ７０４の一環として、利用可能なより多くの探索結果が存在している可能性があることを示す指示をＧＵＩ１３２を介してユーザーに提供し、かつ、ユーザーが追加探索を起動することができるコンポーネントを提示する。例えば混合探索論理１２６は、「より多くの」という語を含んでいるか、あるいはこの後が付随しているユーザー・インターフェース・コンポーネントを提示することができ、ユーザーは、このユーザー・インターフェース・コンポーネントをクリックして追加探索結果を得ることができる。しかしながらこれは単なる一例にすぎず、広範囲にわたる様々な他の指示およびユーザー・インターフェース・コンポーネントを使用することができる。ユーザーがユーザー・インターフェース・コンポーネントを起動しない場合、流れ図７００の方法は終了する。しかしながら、ステップ７０６に示されているように、ユーザーがユーザー・インターフェース・コンポーネントを起動すると、制御は決定ステップ７０８へ進行する。
【０１０２】
[0112]決定ステップ７０８の間、混合探索論理１２６は、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されているか否かを決定する。それらに限定されないが、ユーザーデバイス１０６と電子メッセージングサーバー１０２の間のメッセージの交換の要求、またはユーザーデバイス１０６がネットワーク１０４への動作接続を有していることの単純な決定を始めとする様々な方法を使用して、このような接続が存在しているかどうかを決定することができる。
【０１０３】
[0113]混合探索論理１２６が、決定ステップ７０８の間、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されていないことを決定すると、制御はステップ７１０へ進行する。ステップ７１０の間、混合探索論理１２６は、ステップ６０２の間に委ねられた問合せに基づいて、ローカルストア１１４に記憶されている電子メッセージに対する、上限なしの探索を実行する。ステップ７０４の間に実行される探索は、一致することが決定されたすべてのメッセージを出力するよう、上限が設けられていない。
【０１０４】
[0114]ステップ７１０の間、混合探索論理１２６は、上限付きのローカル探索の結果として識別されたすべての電子メッセージに関する情報をＧＵＩ１３２内に提示する。提示される情報は、電子メッセージに関する情報の任意のアイテムを幅広く含むことができる。
【０１０５】
[0115]特定の実施形態では、その電子メッセージに関する情報が、ステップ７１０の間に実施された上限なしのローカル探索の結果として提示される、一致する電子メッセージ毎に、ユーザーがこのような電子メッセージの内容をＧＵＩ１３２内に表示することができる手段が同じく提示される。例えばこの手段は、ユーザーによって対話されると、その電子メッセージの内容がＧＵＩ１３２内に表示される個々の電子メッセージに関する情報と関連して提示されるコンポーネントを含むことができる。このような実施形態にさらによれば、電子メッセージを見るためにユーザーが選択すると、混合探索論理１２６は、その電子メッセージの内容をローカルストア１１４から取得し、かつ、このような内容をＧＵＩ１３２内に表示することができる。
【０１０６】
[0116]ステップ７１０の後、制御は決定ステップ７１２へ進行し、決定ステップ７１２の間、混合探索論理１２６は、ローカルストア１１４にキャッシュされていない、リモートストア１３２内で利用することができる電子メッセージが存在しているかどうかを決定する。この決定がなされる方法は、実施態様に応じて変更することができる。例えば一実施形態では、混合探索論理１２６は、リモートストア１３２内で利用することができる電子メッセージの部分集合のみがローカルストア１１４にキャッシュされることになる、時間をベースとする同期化窓が使用されていることを決定することにより、ローカルストア１１４にキャッシュされていない、リモートストア１３２内で利用することができる電子メッセージが存在していることを決定する。しかしながら他の技法を使用することも可能である。
【０１０７】
[0117]混合探索論理１２６が、決定ステップ７１２の間、リモートストア１３２内で利用することができる電子メッセージが存在せず、ローカルストア１１４にも同じくキャッシュされていないことを決定すると、流れ図７００の方法は終了する。しかしながら混合探索論理１２６が、決定ステップ７１２の間、ローカルストア１１４にキャッシュされていない、リモートストア１３２内で利用することができる電子メッセージが存在していることを決定すると、制御はステップ７１４へ進行し、ステップ７１４の間、混合探索論理１２６は、ＧＵＩ１３２を介して、上限なしのローカル探索の結果が不完全である可能性があることを知らせる指示または警告をユーザーに提供する。
【０１０８】
[0118]上で言及したように、決定ステップ７０８の間、混合探索論理１２６は、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されているか否かを決定する。混合探索論理１２６が、決定ステップ７０８の間、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されていることを決定すると、制御は決定ステップ７１６へ進行する。
【０１０９】
[0119]決定ステップ７１６の間、混合探索論理１２６は、ローカルストア１１４にキャッシュされていない、リモートストア１３２内で利用することができる電子メッセージが存在しているかどうかを決定する。混合探索論理１２６が、決定ステップ７１６の間、リモートストア１３２内で利用することができる電子メッセージが存在せず、ローカルストア１１４にも同じくキャッシュされていないことを決定すると、制御は決定ステップ７１８へ進行する。
【０１１０】
[0120]決定ステップ７１８の間、混合探索論理１２６は、ユーザーデバイス１０６に関してローカルに記憶されている探索インデックスが期限切れであるかどうかを決定する。探索インデックスが期限切れではないことを混合探索論理７１８が決定すると、制御は、既に説明したステップ７１０へ進行する。
【０１１１】
[0121]混合探索論理１２６が、決定ステップ７１６の間、ローカルストア１１４にキャッシュされていない、リモートストア１３２内で利用することができる電子メッセージが存在していることを決定するか、あるいは混合探索論理１２６が、決定ステップ７１８の間、探索インデックスが期限切れであることを決定すると、制御はステップ７２０へ進行する。ステップ７２０の間、電子メッセージングサーバー１０２は、ステップ７０２の間に委ねられた問合せに基づいて、リモートストア１３２に記憶されている利用可能な電子メッセージに対する、上限なしの探索を実行し、かつ、一致するすべての電子メッセージを識別するリストを戻す。混合探索論理１２６は、一致する電子メッセージに関する情報をＧＵＩ１３２内に提示する。提示される情報は、電子メッセージに関する情報の任意のアイテムを幅広く含むことができる。
【０１１２】
[0122]特定の実施形態では、その電子メッセージに関する情報がステップ７２０の間に実施されたリモート探索の結果として提示される、一致する電子メッセージ毎に、ユーザーがこのような電子メッセージの内容をＧＵＩ１３２内に表示することができる手段が同じく提示される。例えばこの手段は、ユーザーによって対話されると、その電子メッセージの内容がＧＵＩ１３２内に表示される個々の電子メッセージに関する情報と関連して提示されるコンポーネントを含むことができる。
【０１１３】
[0123]このような実施形態にさらによれば、電子メッセージを見るためにユーザーが選択すると、混合探索論理１２６は、その電子メッセージの内容を取得し、かつ、このような内容をＧＵＩ１３２内に表示することができる。選択された電子メッセージのコピーがローカルストア１１４に記憶されている場合、混合探索論理１２６は、その電子メッセージの内容をローカルストア１１４から得ることができる。しかしながら、選択された電子メッセージのコピーがローカルストア１１４に記憶されていない場合（つまり選択された電子メッセージが同期化窓の外側である場合）、混合探索論理１２６は、電子メッセージングサーバー１０２との対話を介して、リモートストア１３２からその電子メッセージの内容を得ることができる。この後者の場合、混合探索論理１２６は、提示プロセスの一環として、リモート記憶されている電子メッセージのコピーをローカルストア１１４に記憶しない。つまり、リモート記憶されている電子メッセージの内容をユーザーデバイス１０６のメモリーに一時的にバッファーし、その表示を容易にすることは可能であるが、リモート記憶されている電子メッセージの内容を見るために使用されるＧＵＩ１３２の一部をユーザーが閉じると、このようなバッファーされたデータを廃棄することができる。
【０１１４】
[0124]ある代替実施形態によれば、ユーザーは、問合せをユーザーデバイス１０６に入力し、かつ、探索を開始する。ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されていることを混合探索論理１２６が決定すると、電子メッセージングサーバー１０２は、問合せに基づいて、リモートストア１３２に記憶されている利用可能な電子メッセージに対する、上限なしの探索を実行し、かつ、ユーザーからのさらなる入力を全く必要とすることなく、一致するすべての電子メッセージを識別するリストを戻す。一致する電子メッセージに関する情報は、ローカルにキャッシュされている、一致する電子メッセージの内容にローカルストア１１４からアクセスすることができ、一方、ローカルにキャッシュされていない、一致する電子メッセージの内容には、リモートストア１３２からアクセスすることができるよう、混合ビューを使用してＧＵＩ１３２内に提示することができる。
【０１１５】
[0125]さらに他の実施形態によれば、ユーザーは、問合せをユーザーデバイス１０６に入力し、かつ、探索を開始する。混合探索論理１２６は、ローカルストア１１４に記憶されている電子メッセージに対する探索を実行し、また、ユーザーデバイス１０６が電子メッセージングサーバー１０２に接続されている場合は、リモートストア１３２内で利用することができる電子メッセージに対する、上限なしの探索を同じく自動的に実施する。このようなある実施形態によれば、混合探索論理１２６は、最初にローカル探索（リモート探索より速やかに結果を得ることができる）の結果をユーザーに提示し、次に、リモート探索の結果が戻されると、リモートストア１３２内で利用することができるすべての一致する電子メッセージの全混合ビューを提示することができる。このすべては、問合せを委ねることなく、また、探索を開始することなく、ユーザーからの追加入力を全く必要とすることなく実施することができる。
ＩＩＩ．プロセッサーをベースとするシステム実施態様例
[0126]図８は、本明細書において説明されている様々な実施形態を実施するために使用することができる、プロセッサーをベースとするあるコンピューターシステム８００例を示したものである。例えばシステム８００を使用して、電子メッセージングサーバー１０２およびユーザーデバイス１０６のいずれか、または両方、ならびにそれらの様々なサブ−コンポーネントを実施することができる。本明細書において提供されるシステム８００の説明は、実例による説明を目的として提供されたものであり、制限することは意図されていない。実施形態は、関連する１つまたは複数の分野の技術者に知られているように、他のタイプのコンピューターシステムで実施することも可能である。
【０１１６】
[0127]図７に示されているように、システム８００は、処理装置８０２、システムメモリー８０４、およびシステムメモリー８０４を含む様々なシステム構成要素を処理装置８０２に結合するバス８０６を含む。処理装置８０２は、１つまたは複数のプロセッサーすなわち処理コアを備えることができる。バス８０６は、メモリーバスまたはメモリーコントローラー、周辺バス、アクセレレーテッド・グラフィックス・ポートおよびプロセッサー、または任意の様々なバスアーキテクチャーを使用したローカルバスを始めとする任意のいくつかのタイプのバス構造のうちの１つまたは複数を表している。システムメモリー８０４は、リード・オンリー・メモリー（ＲＯＭ）８０８およびランダム・アクセス・メモリー（ＲＡＭ）８１０を含む。基本入力／出力システム８１２（ＢＩＯＳ）はＲＯＭ８０８に記憶されている。
【０１１７】
[0128]また、システム８００は、ハード・ディスクから読み出し、かつ、ハード・ディスクに書き込むためのハード・ディスク・ドライブ８１４、取外し可能磁気ディスク８１８から読み出し、あるいは取外し可能磁気ディスク８１８に書き込むための磁気ディスク・ドライブ８１６、およびＣＤ  ＲＯＭ、ＤＶＤ  ＲＯＭ、ＢＬＵ−ＲＡＹ（登録商標）ディスクまたは他の光媒体などの取外し可能光ディスク８２２から読み出し、あるいは取外し可能光ディスク８２２に書き込むための光ディスク・ドライブ８２０のうちの１つまたは複数を有している。ハード・ディスク・ドライブ８１４、磁気ディスク・ドライブ８１６および光ディスク・ドライブ８２０は、それぞれハード・ディスク・ドライブ・インターフェース８２４、磁気ディスク・ドライブ・インターフェース８２６および光ドライブ・インターフェース８２８によってバス８０６に接続されている。これらのドライブおよび関連するそれらのコンピューター可読媒体は、コンピューター可読命令、データ構造、プログラムモジュールおよびコンピューターのための他のデータの不揮発性記憶装置を提供している。ハード・ディスク、取外し可能磁気ディスクおよび取外し可能光ディスクが説明されているが、フラッシュ・メモリー・カード、ディジタル・ビデオ・ディスク、ランダム・アクセス・メモリー（ＲＡＭ）、リード・オンリー・メモリー（ＲＯＭ）、等々などの他のタイプのコンピューター可読媒体を使用してデータを記憶することも可能である。
【０１１８】
[0129]多くのプログラムモジュールをハード・ディスク、磁気ディスク、光ディスク、ＲＯＭまたはＲＡＭに記憶することができる。これらのプログラムモジュールは、オペレーティングシステム８３０、１つまたは複数のアプリケーションプログラム８３２、他のプログラムモジュール８３４およびプログラムデータ８３６を含む。様々な実施形態によれば、プログラムモジュールは、本明細書のどこか他のところで説明した電子メッセージングサーバー１０２およびユーザーデバイス１０６、ならびにそれらの任意のサブ−コンポーネントの任意の、またはすべての機能および特徴を実施するために、処理装置８０２によって実行することができるコンピュータープログラム論理を含むことができる。また、プログラムモジュールは、処理装置８０２によって実行されると、図２〜７を参照して示し、あるいは説明した任意のステップまたは操作を実施するコンピュータープログラム論理を含むことも可能である。
【０１１９】
[0130]ユーザーは、キーボード８３８および位置決めデバイス８４０などの入力デバイスを介してコマンドおよび情報をシステム８００に入力することができる。他の入力デバイス（図示せず）は、マイクロホン、ジョイスティック、ゲームコントローラー、スキャナー、等々を含むことができる。一実施形態では、ディスプレイ８４４と共にタッチスクリーンが提供され、それによりユーザーは、タッチスクリーン上の１つまたは複数のポイントに接触（例えば指またはスタイラスによる接触）を印加することによってユーザー入力を提供することができる。これらおよび他の入力デバイスは、しばしば、バス８０６に結合されるシリアル・ポート・インターフェース８４２を介して処理装置８０２に接続されるが、パラレルポート、ゲームポートまたはユニバーサル・シリアル・バス（ＵＳＢ）などの他のインターフェースによる接続も可能である。
【０１２０】
[0131]また、ディスプレイ８４４も、ビデオアダプター８４６などのインターフェースを介してバス８０６に接続されている。ディスプレイ８４４に加えて、システム８００は、スピーカーおよびプリンターなどの他の周辺出力デバイス（図示せず）を含むことも可能である。
【０１２１】
[0132]システム８００は、ネットワークインターフェースすなわちアダプター８５０、モデム８５２、またはネットワークを介して通信を確立するための他の手段を介してネットワーク８４８（例えばローカル・エリア・ネットワークまたはインターネットなどの広域ネットワーク）に接続されている。内部または外部に置くことができるモデム８５２は、シリアル・ポート・インターフェース８４２を介してバス８０６に接続されている。
【０１２２】
[0133]本明細書において使用されているように、「コンピュータープログラム媒体」および「コンピューター可読媒体」という用語は、一般に、システムメモリー８０４を実施するために使用されるＲＯＭ８０８およびＲＡＭ８１０、ハード・ディスク・ドライブ８１４に結合されたハード・ディスク、取外し可能磁気ディスク８１８、取外し可能光ディスク８２２、ならびにフラッシュ・メモリー・カード、ディジタル・ビデオ・ディスク、等々などの他の媒体などの非一時的媒体を表すために使用されている。
【０１２３】
[0134]上で言及したように、コンピュータープログラムおよびモジュール（アプリケーションプログラム８３２および他のプログラムモジュール８３４を含む）は、ＲＯＭ８０８、ＲＡＭ８１０、ハード・ディスク、磁気ディスクまたは光ディスクに記憶することができる。このようなコンピュータープログラムは、ネットワークインターフェース８５０またはシリアル・ポート・インターフェース８４２を介して受け取ることも可能である。このようなコンピュータープログラムは、処理装置８０２によって実行されると、システム８００をイネーブルして、本明細書において説明されている実施形態の特徴を実施することができる。したがってこのようなコンピュータープログラムは、システム８００のコントローラーを表している。
【０１２４】
[0135]また、実施形態は、任意のコンピューター可読媒体に記憶されたソフトウェアを備えたコンピュータープログラム製品を同じく対象としている。このようなフトウェアは、１つまたは複数のデータ処理デバイス内で実行されると、１つまたは複数のデータ処理デバイスを本明細書において説明されているように動作させることになる。実施形態は、現在知られている、または将来的に知られる任意のコンピューター使用可能媒体またはコンピューター可読媒体を使用することができる。コンピューター可読媒体の例には、それらに限定されないが、ＲＯＭ、ＲＡＭ、ハード・ドライブ、フロッピー（登録商標）ディスク、ＣＤ  ＲＯＭ、ＤＶＤ  ＲＯＭ、ジップディスク、テープ、磁気記憶装置、光記憶装置、ＭＥＭＳをベースとする記憶装置、ナノ技術をベースとする記憶装置、等々などの記憶装置がある。
【０１２５】
[0136]代替実施態様では、電子メッセージングサーバー１０２およびユーザーデバイス１０６、ならびにそれらの任意のサブ−コンポーネントの各々は、ハードウェア論理／電気回路機構またはファームウェアとして実施することができる。他の実施形態によれば、これらの構成要素のうちの１つまたは複数は、システム・オン・チップ（ＳｏＣ）の中で実施することができる。ＳｏＣは、その機能を実施するための、プロセッサー（例えばマイクロコントローラー、マイクロプロセッサー、ディジタル信号プロセッサー（ＤＳＰ）、等々）、メモリー、１つまたは複数の通信インターフェース、および／または他の回路および／または埋設ファームウェアのうちの１つまたは複数を含んだ集積回路チップを含むことができる。
ＩＶ．結論
[0137]以上、様々な実施形態について説明したが、それらは、制限するためではなく、単なる例として示されたものにすぎないことを理解されたい。本発明の精神および範囲を逸脱することなく、形態および詳細に様々な変更を加えることができることは、１つまたは複数の関連分野の技術者には明らかであろう。したがって本発明の広さおよび範囲は、上で説明した何らかの例示的実施形態によって制限されるのではなく、以下の特許請求の範囲およびそれらの等価物によってのみ定義されるものとする。
【図１】
0006279486.tif 000002
【図２】
0006279486.tif 000003
【図３】
0006279486.tif 000004
【図４】
0006279486.tif 000005
【図５】
0006279486.tif 000006
【図６】
0006279486.tif 000007
【図７】
0006279486.tif 000008
【図８】
0006279486.tif 000009