(57)【要約】ユーザが携帯電子メールアカウントのコンテンツをユーザの正規の電子メールアカウントのコンテンツに対応するように更新するのを可能にするシステムおよび方法であって、ここで、正規の電子メールアカウントの別々の部分のみが、各更新動作に伴う階層に従って携帯電子メールアカウントに漸進的にキャッシュされる。各更新動作により正規の電子メールアカウントの一部のみを更新することによって、サービスプロバイダは、携帯電子メールアカウントを維持するのに必要なメモリ記憶域の量および通信経費の額を最小限に抑える一方で、ユーザが自分にとって重要な情報にアクセスするのを可能にすることができる。
2004535632.tif 000002
【特許請求の範囲】
【請求項１】
1組のデータ項目に関する情報をキャッシュするための方法であって、以下の段階を含む方法：
第1の取込み動作で、少なくとも1つのデータ項目に対応する第1の階層レベルの情報のみを取込んでメモリに記憶する段階；および
第1の取込み動作とは別の第2の取込み動作で、上記少なくとも1つのデータ項目に対応する第2の階層レベルの情報のみを取込んでメモリに記憶する段階。
【請求項２】
データ項目が電子データファイルである、情報をキャッシュするための請求項1記載の方法。
【請求項３】
電子データファイルが電子メールメッセージ・データファイルである、情報をキャッシュするための請求項2記載の方法。
【請求項４】
第1のレベルの階層情報が、少なくとも1つの各データ項目を一意に識別する少なくとも1つの識別子である、情報をキャッシュするための請求項1記載の方法。
【請求項５】
第2のレベルの階層情報が、少なくとも1つの各データ項目のメタデータである、情報をキャッシュするための請求項4記載の方法。
【請求項６】
メタデータが、少なくとも1つのデータ項目のタイトル、少なくとも1つのデータ項目の主題、少なくとも1つのデータ項目の著者、および少なくとも1つのデータ項目のサイズから成る群から選択された1つまたは複数のデータを含む、情報をキャッシュするための請求項5記載の方法。
【請求項７】
第2のレベルの階層情報が、少なくとも1つの各データ項目のコンテンツである、情報をキャッシュするための請求項4記載の方法。
【請求項８】
第2のレベルの階層情報が、少なくとも1つの各データ項目の添付ファイルである、情報をキャッシュするための請求項4記載の方法。
【請求項９】
第1および第2の取込み動作とは別の第3の取込み動作で、少なくとも1つのデータ項目に対応する第3の階層レベルの情報のみを取込んでメモリに記憶する段階をさらに含む、情報をキャッシュするための請求項1記載の方法。
【請求項１０】
第3のレベルの階層情報が、少なくとも1つの各データ項目のコンテンツである、情報をキャッシュするための請求項9記載の方法。
【請求項１１】
第3のレベルの階層情報が、少なくとも1つの各データ項目の添付ファイルである、情報をキャッシュするための請求項9記載の方法。
【請求項１２】
第1、第2、および第3の取込み動作とは別の第4の取込み動作で、少なくとも1つのデータ項目に対応する第4の階層レベルの情報のみを取込んでメモリに記憶する段階をさらに含む、情報をキャッシュするための請求項9記載の方法。
【請求項１３】
第4のレベルの階層情報が、少なくとも1つの各データ項目の添付ファイルである、情報をキャッシュするための請求項9記載の方法。
【請求項１４】
第1のトリガを受信したことに応答して、第1の取込み動作が開始され、
第1のトリガとは異なる第2のトリガを受信したことに応答して、第2の取込み動作が開始される、情報をキャッシュするための請求項1記載の方法。
【請求項１５】
第1のトリガと第2のトリガの少なくとも一方が、1組のデータ項目から情報を取込む際のユーザの好みを予想する予想インジケータである、情報をキャッシュするための請求項14記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の分野
本発明は、ある位置において、別の位置に持続的に記憶されているデータ・セットのキャッシュされた表現を漸進的に作成するシステムおよび方法に関する。特に、本発明は、キャッシュのサイズ、キャッシュが更新される頻度、またはその両方を最小限に抑えるように、データ・セットのキャッシュされた表現を階層順に従って定期的に更新する方法およびシステムに関する。
【背景技術】
【０００２】
発明の背景
電子メールは、一般に使用されかつ広く受け入れられた通信手段になっている。その結果、個人が1日に100件を超える電子メールメッセージを送受信することも珍しくない。このため、多数の電子メールアカウントに必要なメモリのサイズが急速に大型化している。たとえば、メールボックスのサイズが日常的に50Mバイトを超え、かつ1つまたは複数の添付ファイルを有する単一のメッセージが5Mバイト以上のデータを含むことが多いような、法人ユーザも存在する。消費者も電子メール（または電子データファイルをルーティングする他の技術）を用いて音楽ファイルおよびその他のマルチメディアファイルを交換しており、このようなファイルは多メガバイトのデータを含むことが多い。
【０００３】
電子メールの使用度が増大し続けるのにつれて、様々な場所から電子メールアカウントにアクセスする必要も増大する。たとえば、多くのユーザは現在、携帯電子通信装置を用いて電子メールメッセージを送受信している。このような携帯通信装置には、無線電話、パーソナル・デジタル・アシスタント、専用携帯電子メールメッセージ装置、および場合によってはラップトップコンピュータが含まれ、この装置によって、ユーザは従来、固定パーソナルコンピュータやネットワーク・ワークステーションに接続せずにほぼあらゆる場所から好都合に電子メールアカウントにアクセスすることができる。
【０００４】
しかし、このような携帯通信装置を用いて1つまたは複数の既存の電子メールアカウントから電子メールを取込む場合、ユーザは通常、装置に固有の新しい電子メールアカウントをサービスプロバイダによって確立しなければならない。次いでサービスプロバイダは、ユーザの既存の電子メールアカウント（すなわち、ユーザの「正規の」電子メールアカウント）のコンテンツを構成する電子メール・ファイルを取込み、これらのコンテンツをユーザの電子メールアカウントまたは携帯電子装置用のアカウント（すなわち、ユーザの「携帯」電子メールアカウント）に記憶する。ユーザはその後、この同期した携帯電子メールアカウントに携帯通信装置からアクセスすることができる。
【０００５】
同様に、多くのユーザは現在、アグリゲート（aggregate）電子メールアカウントを用いて様々な他の既存の電子メールアカウントに同時にアクセスしている。この場合も、アグリゲート電子メールアカウントのサービスプロバイダは、ユーザの既存の正規の電子メールアカウントのコンテンツを取込み、ユーザのアグリゲート電子メールアカウントにおいてこれらのコンテンツに同期しなければならない。
【０００６】
しかし、マルチティア・ウェブ・サービス・アーキテクチャ（たとえば、記憶域、ネットワーキング、フロントエンド・サーバ、およびアプリケーション・サーバで構成されたアーキテクチャ）を用いた場合、この同期プロセスでは通常、リソースの点で通常最も高価である記憶ティアで基本的なシステムをスケーリングする必要がある。したがって、この同期サービスの費用対効果を大きくするために、サービスプロバイダは一般に、（a）ユーザが利用できる記憶メモリの量を厳しく制限してユーザの携帯電子メールアカウントを維持する（たとえば、2メガバイト〜5メガバイトが一般的である）か、または（b）しきい値量を超える量の記憶メモリを使用する権利に対してユーザに割増料金を課している（たとえば、記憶メモリが100メガバイトを超えるたびに10ドル〜20ドル/月）。
【０００７】
利用可能な記憶域の量を厳しく制限すると、すべてのメールボックスまたはメッセージを携帯電子メールアカウントにコピーできないうちに記憶メモリ制限を超えてしまうため、ユーザは、特定のメールボックスまたはメールボックス内の特定のメッセージへのアクセスを拒否されることがある。一方、ユーザが追加のメモリ記憶域について割増料金を課される場合、ユーザは通常、そのような記憶域の直接的なコストをカバーし、かつ/またはサービスプロバイダの利ざやを与えるのに十分な額を支払うことを望まない。したがって、これらの手法はどちらも、携帯電子メールアカウントを維持するのに十分な手法ではない。
【発明の開示】
【０００８】
発明の概要
したがって、ユーザが携帯電子メールアカウントを用いてユーザの1つまたは複数の正規の電子メールアカウントのコンテンツをより効率的に取込んで調べるのを可能にする電子メールサービスが必要である。本発明は、好都合には、ユーザが携帯電子メールアカウントのコンテンツを、ユーザの正規の電子メールアカウントに対応するように更新できるようにする方法であって、正規の電子メールアカウントの別々の部分のみが、各更新動作によって階層に従って携帯電子メールアカウントに漸進的にキャッシュされるシステムおよび方法を提供する。各更新動作によって正規の電子メールアカウントの一部のみを更新することによって、サービスプロバイダは、携帯電子メールアカウントを維持するのに必要なメモリ記憶域の量および通信経費の額を最小限に抑え、しかもユーザがユーザにとって重要な情報にアクセスするのを可能にすることができる。
【０００９】
さらに、本発明の方法およびシステムによれば、漸進的な各更新段階が特定のトリガに応答して行われる。本発明によれば、トリガは、ユーザからの更新動作を求める特定の要求であってよい。トリガは、ユーザが更新動作を開始することを望んでいると予想されたときに作成される予想インジケータであってもよい。たとえば、ユーザは、ユーザの仕事上の上司から各電子メールメッセージのコンテンツ全体を取込んでキャッシュする更新手順を日常的に開始することができる。本発明の方法およびシステムは次いで、ユーザがすべての将来的電子メールメッセージのコンテンツ全体を上司から取込んでキャッシュする更新手順を開始することを望んでいることを、ユーザの上記の日常的な習慣を使用して予想することができる。したがって、電子メールサービスがユーザの正規のメールボックス内に上司からの電子メールメッセージを検出すると、本発明は予想インジケータを作成し、メッセージのコンテンツを取込んでキャッシュする更新動作を開始する。
【００１０】
詳細な説明
当技術分野でよく知られているように、電子メールアカウントは従来、電子メッセージを構成するデータファイルを送信し、検索し、記憶するようにプログラムされたプログラム可能なコンピュータによって維持されている。この種のコンピュータは、たとえば、電子メールアカウント・サーバによって実現することができる。図1は、外部の電子メールアカウントから電子メール・データファイルを取込んでキャッシュすることのできるこのようなプログラム可能なコンピュータシステム101の一例を示している。コンピュータシステム101は、処理ユニット103と、システム・メモリ105と、システム・メモリ105を含む様々なシステム構成要素を処理ユニット103に結合するシステム・バス107とを含んでいる。システム・メモリ105は、読取り専用メモリ（ROM）109およびランダム・アクセス・メモリ（RAM）111を含みうる。
【００１１】
立上げ時などに、コンピュータシステム101内の要素間で情報を転送するのを助けるルーチンを含む基本入出力システム113（BIOS）を、読取り専用メモリ（ROM）109に記憶することができる。コンピュータシステム101をパーソナルコンピュータによって実現する場合、コンピュータシステム101は、ハードディスク（図示せず）からの読取りおよびハードディスクへの書込みを行うハードディスクドライブ115と、取外し可能な磁気ディスク（図示せず）からの読取りおよびハードディスクへの書込みを行う磁気ディスクドライブ117と、CD-ROMやその他の光学媒体のような取外し可能な光学ディスク（図示せず）からの読取りおよび光学ディスクへの書込みを行う光学ディスクドライブ119とをさらに含んでよい。
【００１２】
ROM109、ハードディスクドライブ115、磁気ディスクドライブ117、および光学ディスクドライブ119上に、いくつかのプログラム・モジュールを記憶することができる。ユーザは、キーボード、ポインティング・デバイス、タッチ・スクリーン、マイクロフォン、ジョイスティック、その他の適切なインタフェース装置などの入力装置123によってコンピュータシステム101にコマンドおよび情報を入力することができる。もちろん、コンピュータシステム101は、当技術分野で知られているような様々な異なる入力装置123を使用してよい。情報をコンピュータシステム101からユーザに伝えるモニタやその他の種類の表示装置のような出力装置125も含まれている。当業者には理解されるように、スピーカやプリンタのような様々な出力装置125をさらにコンピュータシステム101に含めることができる。
【００１３】
コンピュータシステム101は、電子メールアカウントにアクセスするために、好ましくはリモートコンピュータ127のような1つまたは複数のリモートコンピュータとの論理接続を用いてネットワーク化環境で動作することができる。コンピュータシステム101は、ローカル・エリア・ネットワーク（LAN）129やインターネットなどのワイド・エリア・ネットワーク（WAN）131を通じてリモートコンピュータ127に接続することができる。コンピュータシステム101は、ネットワーキング環境で使用される際、無線トランシーバ、モデム、イーサネット接続、そのような他の任意のインタフェースなどのインタフェース133を通じてネットワークに接続することができる。インタフェース133は、図1に内部インタフェースとして示されているが、当技術分野でよく知られているように外部インタフェースであってもよい。もちろん、この図に示されているネットワーク接続が例示的なものであり、他のコンピュータとの通信リンクを確立して電子メールアカウントにアクセスする他の手段を使用できることが理解されよう。
【００１４】
本発明の一態様による電子メール検索/キャッシングシステムを図2に示す。以下に詳しく論じるように、検索/キャッシングシステム201は、階層順に従ってリモートコンピュータ127によって維持されている電子メールアカウントから電子メールメッセージ・データファイルの様々な部分を漸進的に取込んでキャッシュする。キャッシングシステム201は、システム201の様々な構成要素間の情報の交換を制御する制御ユニット203と、入力ユニット205とを含んでいる。入力ユニット205は、リモートコンピュータ127に維持されている電子メールアカウントのユーザから直接情報を受信すると共に、検索/キャッシングシステム201と協働する他のソフトウェア・アプリケーションから情報を受信する。キャッシングシステム201は、後述のように入力ユニット205を通じて与えられる情報におけるトリガ・イベントを認識したことに応答してトリガを作成するトリガ・ユニット207をさらに含んでいる。
【００１５】
検索/キャッシングシステム201は、検索/キャッシング・ユニット209およびキャッシュ211も有している。検索/キャッシング・ユニット209は、トリガ・ユニット207からトリガを受信したことに応答して、リモートコンピュータ127に維持されている1つまたは複数の電子メールアカウントから情報を取込む。検索/キャッシング・ユニット209は次いで、取込んだ情報をキャッシュ211に記憶する。検索/キャッシングシステム201は、キャッシュされた情報をユーザまたはキャッシングシステム201と協働する他のソフトウェア・アプリケーションに出力するための出力ユニット213を含んでもよい。さらに、検索/キャッシングシステム201は通知エンジン215を含んでよい。以下に詳しく論じるように、通知エンジン215は、データをリモートコンピュータ127からキャッシュ211に取込む更新動作を定期的に開始する。
【００１６】
当業者には理解されるように、図2に示されているコンピュータシステム101などのコンピュータシステム上で実施されるソフトウェアを用いて検索/キャッシングシステム201の1つまたは複数の構成要素を実現することができる。たとえば、入力ユニット205、出力ユニット213、トリガ・ユニット207、検索/キャッシング・ユニット209、および通知エンジン215をソフトウェア・サブルーチンによって実現することができる。この場合、制御ユニット203は、それぞれの異なるユニット205〜209、213、および215を実現する様々なソフトウェア・サブルーチンを呼び出す制御ソフトウェア・ルーチンであってよい。もちろん、当業者には、1つまたは複数のユニット203〜211を電子回路によって実現できることが理解されよう。この場合、キャッシュ211は、RAM111、ハードディスクドライブ115、磁気ディスクドライブ117、または光学ディスクドライブ119のような任意の適切な種類のメモリ記憶装置上で実施することができる。
【００１７】
本発明のいくつかの好ましい態様によれば、検索/キャッシングシステム201はリード・スルー・キャッシュとして動作する。したがって、ユーザが検索/キャッシングシステム201にデータを要求すると、検索/キャッシングシステム201はまず、それ自体のキャッシュ211に要求されたデータがあるかどうかを検査する。キャッシュ211が要求されたデータをまだ含んでいない場合、要求はリモートコンピュータ127に「読み過ごし（read-through）」される。すなわち、キャッシュ211が要求されたデータを含んでいない場合、検索/キャッシングシステム201は、要求されたデータをリモートコンピュータ217から検索し、そのデータをユーザに与える。検索/キャッシングシステム201はまた、ユーザによる将来的アクセスに備えて、リモートコンピュータ217から検索されたデータによってキャッシュ211のコンテンツを更新する。
【００１８】
本発明のいくつかの態様によれば、検索/キャッシングシステム201は、リモートコンピュータ127上に維持されている電子メールアカウント（たとえば、ユーザの正規の電子メールアカウント）内の電子メールメッセージ・データファイルからの別々のカテゴリのデータによってキャッシュ211のコンテンツを漸進的に更新する。さらに、本発明のいくつかの態様によれば、検索/キャッシングシステム201は、階層順に従ってキャッシュ211のコンテンツを漸進的に更新する。
【００１９】
たとえば、本発明のいくつかの好ましい態様による検索/キャッシングシステム201は、電子メールメッセージ内に含まれる情報を、4つの別々のレベルまたはティアを有する階層に分類することができる。最も高いレベルの情報は、リモート電子メールアカウント内の各メッセージを一意に識別する識別子であってよい。この態様では、検索/キャッシングシステム201は、最も高いレベルの更新手順の間、キャッシュ211内の固有の識別子のみをリモート電子メールアカウント内の各メッセージで更新する。たとえば、ユーザの正規の電子メールアカウントがポスト・オフィス・プロトコルのバージョン3（従来POP3という略語で呼ばれている）を使用している場合、キャッシングシステム201は、POP3プロトコルによって使用されるUIDL識別子のみを更新手順中に更新することができる。
【００２０】
したがって、電子メールアカウントがキャッシュ211で識別されていないメッセージを含んでいる場合、検索/キャッシングシステム201は最も高いレベルの更新手順の間、このメッセージに対応する識別子をキャッシュ211に付加する。同様に、電子メールアカウントから除去されたメッセージの既存の識別子がキャッシュ211に含まれていると検索/キャッシングシステム201が最も高いレベルの更新手順の間に判定した場合、検索/キャッシングシステム201はこの識別子を（この識別子に対応する電子メールメッセージ・コンテンツと一緒に）キャッシュ211から除去する。検索/キャッシングシステム201はその後、電子メールアカウント内の各メッセージの識別子によって、識別子をキーとして用いて、リモート電子メールアカウント内の特定の各電子メールメッセージに関連する他の階層レベルのデータを取込んで記憶する。
【００２１】
本発明のいくつかの好ましい態様によれば、最も高いレベルの更新手順（すなわち、キャッシュ211内の識別子を電子メールアカウント内のいくつかまたはすべてのメッセージに対応するように更新するプロセス）は各更新動作ごとに実行される。たとえば、ユーザの正規の電子メールアカウントがPOP3プロトコルを使用している場合、各更新手順は、キャッシュされている識別子が新しい識別子になるようにキャッシュ211内の識別子を更新する。しかし、本発明の他の好ましい態様では、更新手順は、特にトリガによって促されたときにのみ識別子の最も高いレベルの更新を行うことができる。たとえば、本発明のいくつかの態様では、ユーザは、キャッシュ211内の識別子を更新せずに、識別子がすでにキャッシュ211に記憶されている電子メールメッセージから、より低い階層レベルのコンテンツ（たとえば、以下に詳しく説明される、メタデータ、メッセージ・テキスト、または添付ファイル）のみを検索/キャッシングシステム201が取込むよう要求することができる。
【００２２】
電子メールメッセージの次に高い情報レベルまたはティアはメッセージのメタデータである。メタデータはたとえば、電子メールメッセージのタイトル、主題、著者、およびサイズを含んでよい。この類別では、更新手順の次のレベルすなわち2番目に高いレベルの場合、検索/キャッシングシステム201は、更新動作の間、リモート電子メールアカウント内のすべてのメッセージのメタデータのみを取込んでキャッシュすることができる。あるいは、検索/キャッシングシステム201は、更新動作の間、2番目に高いレベルの更新において1つまたは複数の特定の電子メールメッセージのみのメタデータを取込んでキャッシュすることができる。
【００２３】
電子メールメッセージ・データファイルの情報をさらに、メッセージのテキスト全体に対応する第3のティアに類別することができる。したがって、3番目に高いレベルの更新手順では、検索/キャッシングシステム201は、更新動作の間、電子メールメッセージのコンテンツをユーザの正規の電子メールアカウントにキャッシュすることができる。あるいは、3番目に高いレベルの更新手順では、検索/キャッシングシステム201は、更新動作の間、特に指定された電子メールメッセージのみのコンテンツを取込んでキャッシュすることができる。
【００２４】
電子メールメッセージ・データファイルの第4の情報カテゴリには、メッセージに付加される文書処理ファイルやスプレッドシート・ファイルのような、メッセージの添付ファイルを含めることができる。したがって、この4番目に高いレベルの更新では、検索/キャッシングシステム201は、更新動作の間、ユーザの正規の電子メールアカウント内の各電子メールメッセージ・データファイルに付加された添付ファイルを取込んでキャッシュすることができる。あるいは、この4番目に高いレベルの更新では、検索/キャッシングシステム201は、更新動作の間、ユーザの正規の電子メールアカウント内の特定の電子メールメッセージのみの添付ファイルを取込んでキャッシュすることができる。
【００２５】
当業者には理解されるように、データの階層類別および対応する更新レベルは例示的なものに過ぎない。実際、電子メールアカウント（またはファイル・ロケーション・ディレクトリのような他の任意の種類の電子データファイル・リポジトリ（repository)）に含まれる情報は、都合に応じて任意の数の異なる群に類別することができる。任意の好都合なカテゴリに従って各電子メールメッセージの一部のみを取込んでキャッシュすることによって、検索/キャッシングシステム201は、各メッセージのうち、ユーザの必要な分だけ取込んでキャッシュするだけでよい。これによって、ユーザにとって重要ではない情報はキャッシュされないため、システム201は、ユーザの携帯電子メールアカウントをユーザの正規の電子メールアカウントで更新するのに必要なメモリの量を最小限に抑えることができる。
【００２６】
本発明のさらに他の態様によれば、検索/キャッシングシステム201はまた、電子メールアカウントによってキャッシュ211を漸進的に更新する。すなわち、本発明のこれらの態様は、更新動作を開始するトリガが発生したときにのみ更新動作を実行することにより、ユーザの携帯電子メールアカウントまたはアグリゲート電子メールアカウントをユーザの正規の電子メールアカウントで更新するのに必要な更新動作の数を最小限に抑える。
【００２７】
キャッシュ211をリモートコンピュータ127上の電子メールアカウントによって漸進的に更新する方法について、図3を参照して詳しく説明する。段階301で、トリガ・ユニット207が更新動作を開始するトリガを発生させたときに更新動作が開始する。より具体的には、トリガ・ユニット207は、トリガ・ユニット207にトリガを発生させるような、たとえばユーザによるトリガリング・イベントを表す入力データを入力ユニット205から受信する。本発明の様々な態様によれば、トリガは要求されたトリガであっても、予想トリガであってもよい。さらに、後述のように、トリガは更新動作の特定の更新レベルを指定するか、または特定の更新レベルに関連付けることができる。
【００２８】
様々な入力データがトリガリング・イベントを構成することができる。そのようなトリガリング・イベントの1つは、ユーザの携帯電子メールアカウントがユーザの正規のPOP3電子メールアカウントへのアクセスを要求したときに起こる。この要求に応答して、トリガ・ユニット207は、キャッシュを最も高いレベルの情報（すなわち、ユーザの正規の電子メールアカウント内の各電子メールメッセージ・データファイルの識別子）で更新する更新動作を始めるトリガを発生する。検索/キャッシングシステム201は次いで、キャッシュ211内の識別子をユーザの正規の電子メールアカウント内のメッセージに対応するように更新する。このトリガは、ユーザの電子メールアカウント内の1つまたは複数のメッセージの他の更新レベルを更新動作に含めることを指定することもできる。たとえば、ユーザの正規の電子メールアカウントを、ユーザの携帯電子メールアカウントに、表示される最新のメッセージを与えるように構成することができる。この機構では、トリガは、更新動作によって、ユーザの正規の電子メールアカウント内の10件の最新のメッセージに関する2番目に高いレベルの階層情報が更新される（たとえば、メタデータを更新する）ことも指定する。
【００２９】
また他のトリガリング・イベントを、ユーザが自分の正規の電子メールアカウント内の次の10件の最新のメッセージを見たいときに生じさせることができる。たとえば、ユーザは、自分の携帯電子メールアカウントのディスプレイ・インタフェースをスクロール・ダウンし、携帯電子メールアカウントにユーザの正規の電子メールアカウント内の次の10件の最新のメッセージのメタデータを要求するよう促すことができる。キャッシュ211がまだこれらのコンテンツを含んでいない場合、トリガ・ユニット207は、ユーザの正規の電子メールアカウント内の次の10件の最新のメッセージに関する2番目に高いレベルの階層情報を更新する更新動作を指定するトリガを発生する。検索/キャッシングシステム201は、このトリガに基づいて、キャッシュ211内のこれらのメッセージのメタデータをユーザの正規の電子メールアカウント内のこれらのメッセージのメタデータで更新する。
【００３０】
さらに他のトリガリング・イベントを、ユーザがユーザの携帯電子メールアカウント内に表示された特定のメッセージのコンテンツを見ることを要求したときに生じさせることができる。キャッシュ211がまだこれらのコンテンツを含んでいない場合、トリガ・ユニット207は、要求において識別された特定の電子メールメッセージの3番目に高いレベルの階層情報を更新する更新動作を指定するトリガを発生する。検索/キャッシングシステム201は、このトリガに応答して、キャッシュ211内のこのメッセージのコンテンツをユーザの正規の電子メールアカウント内のこのメッセージのコンテンツで更新する。
【００３１】
またさらに他のトリガリング・イベントを、ユーザがユーザの携帯電子メールアカウント内に表示された特定のメッセージの添付ファイルを見ることを要求したときに生じさせることができる。キャッシュ211がまだこの添付ファイルを含んでいない場合、トリガ・ユニット207は、要求において識別された特定の電子メールメッセージの4番目に高いレベルの階層情報を更新する更新動作を指定するトリガを発生する。検索/キャッシングシステム201は、このトリガに応答して、キャッシュ211内のこのメッセージの添付ファイルをユーザの正規の電子メールアカウント内のこのメッセージの添付ファイルで更新する。
【００３２】
トリガ・ユニット207はユーザ以外の供給源からのデータに応答してトリガを発生するように構成できることに留意されたい。たとえば、前述のように、本発明の様々な態様には、定期的に更新動作を開始する通知エンジン215を含めてよい。これらの態様では、通知エンジンは定期的に更新手順を開始してキャッシュのバックグラウンド更新を実行する（すなわち、ユーザの介入なしに更新手順を実行する）。たとえば、好都合なことに、通知エンジン215を用いて、検索/キャッシングシステム201に、キャッシュ211をユーザの電子メールアカウント内の新しいメッセージの識別子およびメタデータを含むように定期的に更新させることができる。これによって、ユーザは、ユーザの電子メールアカウントが最初にユーザの正規の電子メールアカウントにアクセスするときの更新動作の実行の遅延を回避することができる。
【００３３】
さらに、本発明の様々な態様では、通知エンジン215は、このような定期的な更新手順中に取込まれた情報を認識し、ユーザの正規の電子メールアカウントからのより低いレベルの階層情報の更新をトリガすることができる。たとえば、ユーザは、キャッシュ211の定期的な更新によって電子メールメッセージの識別子およびメタデータが特定の個人（たとえば、ユーザの配偶者）から取込まれたときにそのことを認識し、次いでそのメッセージからより低いレベルの階層情報を取込むように通知エンジン215を構成することができる。この認識機能は、場合によってはフィルタリングと呼ばれ、当業者に公知である。キャッシュ211の更新によって、事前に設定されたパラメータ（たとえば、特定の著者からのメッセージ、特定の時間に受信されたメッセージ、高優先順位とマーク付けされたメッセージなど）に対応するメッセージの識別子およびメタデータが取込まれたことを通知エンジン215が認識すると、通知エンジン215は、トリガ・ユニット207に、このメッセージの指定されたレベルの階層情報を受信するように促す。
【００３４】
もちろん、当業者には、それぞれの異なる種類のメッセージのそれぞれの異なるレベルの階層情報を取込むように通知エンジン215を構成できることが理解されよう。たとえば、通知エンジン215は、ユーザの配偶者からのメッセージのメッセージ・テキストのみを取込むが、高優先順位とマーク付けされたメッセージ（たとえば、「緊急」とマーク付けされたメッセージ）から（添付ファイルを含む）すべてのレベルの階層情報を取込むように設定することができる。さらに、本発明の様々な態様は、ユーザが検討すべき電子メールメッセージを受信したというリアルタイム・メッセージをユーザに与える通知エンジン215を含んでよい。
【００３５】
トリガ・ユニット207は、ユーザからの更新動作を求める特定の要求だけでなく、予想トリガリング情報に応答してトリガを発生することもできる（すなわち、トリガ・ユニット207が予想トリガを発生する）。たとえば、ユーザは、特定の人（たとえば、ユーザの仕事上の上司）によるすべての電子メールメッセージのテキスト全体を取込んでキャッシュすることを求める要求をシステム201に日常的に送信することができる。このパターンから、トリガ・ユニット207は、ユーザが特定の人によるすべての将来的電子メールメッセージのテキスト全体の取込みを望んでいることを示す予想インジケータを作成することができる。したがって、通知エンジン217の動作によって、ユーザの正規の電子メールアカウントがこの特定の人から新しいメッセージを受信したことを示すメタデータが取込まれた場合、トリガ・ユニット207を、新しいメッセージのコンテンツをキャッシュ211に取込む更新動作を指定する予想トリガを発生するように構成することができる。
【００３６】
他の例では、ユーザがユーザの正規の電子メールアカウント内の連続的ないくつかの（たとえば、5つの）未読メッセージのコンテンツを見ることを要求した場合、トリガ・ユニット207は、ユーザが単にすべてのアカウントの未読メッセージのコンテンツを順次検討するに過ぎないことを認識することができる。トリガ・ユニット207を、システム201に、キャッシュ211をユーザの正規の電子メールアカウント上の次の5つの未読メッセージのコンテンツと同期させるトリガを発生するように構成することができる。
【００３７】
トリガ・ユニット207がトリガを発行した後、検索/キャッシング・ユニット201はトリガの指定に応じて更新動作を開始する。まず段階303で、検索/キャッシング・ユニット209は、トリガによって要求された情報のレベルを識別する。前述のように、トリガは特定のレベルの情報を要求するか、または単に、次に高いレベルの情報を取込んでキャッシュすることを要求することができる。段階305で、検索/キャッシング・ユニット209は、情報を取込むべきメッセージを識別する。たとえば、トリガは、メールボックス内のすべての電子メールメッセージから情報、1つまたは複数の特性を共有するメッセージのみ（たとえば、特定の日付に受信されたすべてのメッセージ）、または特定の電子メールメッセージを取込んでキャッシュすることを指定することができる。もちろん、当業者には、段階303と段階305の順序を逆にできることが理解されよう。
【００３８】
次いで段階307で、検索/キャッシング・ユニット209は、やはりトリガ内に指定された指定の電子メールメッセージに指定された情報を取込み、取込まれた情報をキャッシュ211にキャッシュする。ユーザは、キャッシュ211から、出力ユニット213を用いて情報にアクセスしそれを見ることができる。
【００３９】
次に、本発明の特定の一態様について、図4を参照してさらに詳しく説明する。この図に示されているように、段階401で、ユーザは、本発明の一態様による検索/キャッシングシステム201を用いてユーザの正規の電子メールアカウントに含まれている情報にアクセスするプロセスを開始する。まず段階403で、システム201はユーザの正規の電子メールアカウントの名前を表示する。次に段階405で、ユーザはこの正規の電子メールアカウント内の情報へのアクセスを求める要求を入力することができる。ユーザが段階405で正規の電子メールアカウントへのアクセスを求める要求を入力しなかった場合、ユーザは、段階407でアクセス・プロセスからサインアウトする指示を入力することができる。この指示を受信すると、段階409で従来のサインアウト・プロセスが実行され、段階411で、正規の電子メールアカウントにアクセスするプロセスが終了する。
【００４０】
しかし、ユーザが段階405で自分の正規の電子メールアカウントにアクセスするコマンドを送信した場合、検索/キャッシングシステム201は、キャッシュ211が、キャッシュ211にすでに記憶されているメッセージ識別子に対応する1つまたは複数のメッセージ・ヘッダを含んでいるかどうかを、段階413で判定する。すなわち、キャッシングシステム201は、すでにキャッシュ211に記憶されているメッセージ識別子（たとえば、最も高いレベルの階層情報）がもしあれば、それらの少なくともいくつかを検討し、キャッシュ211がこれらの識別子に対応する1つまたは複数のメッセージ・ヘッダ（たとえば、電子メールアカウントの2番目に高いレベルの階層情報）も含んでいるかどうかを判定する。たとえば、ユーザは通常、自分の正規の電子メールアカウント内の最初のN件の電子メールメッセージ（たとえば、10件）を見る。キャッシングシステム201は次いで、キャッシュ211内の最初のN個の固有の識別子を識別し、キャッシュ211がこれらの識別子のそれぞれのメッセージ・ヘッダも記憶しているかどうかを判定する。キャッシュ211がこれらのメッセージ・ヘッダを含んでいる場合、これらのヘッダは段階415で表示される。
【００４１】
一方、キャッシュ211が最初のN個の識別子の各々に対応するメッセージ・ヘッダを含んでいない場合、トリガ・ユニット207は、検索/キャッシング・ユニット209に、キャッシュ211が対応するメッセージ・ヘッダをまだ有していないキャッシュ211内の少なくとも最初のN個の識別子によって識別された電子メールメッセージに対応するメッセージ・ヘッダでキャッシュ211を更新するよう指示するトリガを発行する。次いで段階417で、検索/キャッシングシステム201は、キャッシュ211内の最初のN個の固有の識別子の各々に関連する電子メールメッセージを取込み、取込まれた各メッセージのメッセージ・ヘッダを解析し、メッセージ・ヘッダをキャッシュ211に記憶する。キャッシングシステム201が最初のN個の識別子の各々のメッセージ・ヘッダをキャッシュ211に記憶した後、システム201は段階415でこれらのヘッダを表示する。
【００４２】
次に段階419で、ユーザは、ユーザの正規の電子メールアカウント内の特定のメッセージの読取りを求める要求を入力することができる。ユーザがこのような要求を入力した場合、検索/キャッシングシステム201はまず段階421で、ユーザが表示したいものとして選択したメッセージの本文またはテキストがすでにキャッシュ211に記憶されているかどうかを判定する。メッセージの本文がすでにキャッシュ211に記憶されている場合、キャッシングシステム201は段階423でメッセージの本文を表示する。しかし、キャッシュ211が、選択された電子メールメッセージに対応するメッセージ本文を含んでいない場合、トリガ・ユニット207は、検索/キャッシング・ユニット209に、選択されたメッセージのメッセージ本文をユーザの正規の電子メールアカウントから取込むよう指示するトリガを発行する。検索/キャッシング・ユニット209は、キャッシュ211に記憶されている選択されたメッセージの識別子を用いて、段階425で、メッセージ本文を取込んでキャッシュ211に記憶する。次いで段階423で、取込まれたメッセージ本文がユーザに表示される。
【００４３】
ユーザが段階419で読み取るべきメッセージを選択しなかった場合、ユーザは、段階427で、ユーザの正規の電子メールアカウントのメッセージをさらに見ることを求める要求を送信することができる。この要求に応答して、検索/キャッシングシステム201は段階413に戻り、キャッシュ211内の次のN個の識別子に対応するヘッダを表示する（必要に応じて、取込む）。たとえば、ユーザが通常、Nが10になるように10件のメッセージを一度に見て、かつユーザがキャッシュ211内の最初の10個の識別子（すなわち、メッセージ1〜10のヘッダ）に対応するメッセージ・ヘッダをすでに見ている場合、段階427でさらにメッセージを見ることを求める要求を出すと、検索/キャッシングシステム201は、段階413〜417でキャッシュ211に記憶されている次の10個の識別子（すなわち、メッセージ11〜20のヘッダ）に対応するヘッダを表示する（必要に応じて、取込む）。
【００４４】
しかし、ユーザが段階427でさらにメッセージを検討することを求める要求を入力しなかった場合、ユーザはその代わりに、段階429でユーザの正規の電子メールアカウントを検査することを求める要求を送信することができる。ユーザがこの要求を行った場合、トリガ207は、検索/キャッシング・ユニット209をトリガし、このユニット209にキャッシュ211内のメッセージ識別子を更新するように指示する。したがって、段階431で、検索/キャッシング・ユニット209は、キャッシュ211に記憶されているメッセージ識別子を、現在ユーザの正規の電子メールアカウント内にあるメッセージと比較する。電子メールアカウントが、キャッシュ211内に対応する識別子を有さない新しいメッセージを受信した場合、検索/キャッシングシステム201は、これらの新しいメッセージの識別子を含むようキャッシュ211を更新する。同様に、ユーザの正規の電子メールアカウントからメッセージが削除された場合、更新プロセス中に、対応する識別子（および関連するヘッダ・本文情報）をキャッシュ211から削除することができる。
【００４５】
次に段階433で、ユーザの正規の電子メールアカウントは新しいメッセージを受信していない（すなわち、ユーザの正規の電子メールアカウントは対応する識別子をすでにキャッシュ211内に有している）と検索/キャッシングシステム201が判定した場合、キャッシングシステム201は段階413に戻り、すでにキャッシュ211内に記憶されているメッセージ（たとえば、現在のN個のメッセージ識別子によって識別されるメッセージ）のヘッダを表示する。しかし、段階433で、ユーザの正規の電子メールアカウントが、対応する識別子をまだキャッシュ211内に有していない新しいメッセージを受信した、とキャッシングシステム201が判定した場合、キャッシュ211は段階435で、これらの新しいメッセージの各々のヘッダを取込んで記憶するように更新される。
【００４６】
上の説明から理解されるように、検索/キャッシング・ユニット209は、キャッシュ211に維持されているユーザの携帯電子メールアカウント内の受信者をユーザの正規の電子メールアカウントからの情報で漸進的に更新するのを可能にする。さらに、更新手順は、ユーザによって必要とされる程度にのみ行うことができる。これによって、検索/キャッシング・ユニット209は、2つの電子メールアカウントを更新するのに必要なキャッシュ211の量を最小限に抑えることができる。さらに、これらの動作はトリガに応答してのみ行うことができるので、検索/キャッシング・ユニット209は、更新動作の数を最小限に抑えることができる。さらに、必要な記憶メモリを最小限に抑えることによって、情報を、磁気ディスクドライブや光学ディスクドライブのような低速の大型読取り/書込みメモリではなく高速の半導体RAMメモリにキャッシュすることができる。これによって、ユーザがキャッシュに記憶されている情報にアクセスできる速度が著しく向上する。
【００４７】
本発明のキャッシング方法およびシステムでは、したがって、各検索/キャッシング動作において電子メールメッセージの関連情報の一部のみを漸進的に得てキャッシュすることによって、ユーザが必要とする情報を得るのに必要な記憶メモリの量およびネットワーク通信経費の額が最小限に抑えられる。
【００４８】
本発明の上述の態様は主として、電子メールアカウントからメッセージ情報を効率的に取込んでキャッシュすることに関して説明したが、当業者には、表現が異なる位置に維持される任意のデータ・セットに本発明を使用できることが理解されることに留意されたい。したがって、本発明は、あらゆる種類の電子ファイルに関する情報をキャッシュするのに使用することができ、電子メールメッセージ・ファイルに限定されない。
【００４９】
たとえば、異なる記憶位置に維持されているデータファイル用の、Windows Explorerで使用されているようなファイル・ディレクトリを、本発明を用いて漸進的および階層的に更新することができる。本発明をこのように使用すると、たとえば、ユーザがクライアントコンピュータを用いて、リモート・サーバ・コンピュータに維持されているデータファイルにアクセスしこのデータファイルを操作する場合に有益である。したがって、本発明を用いて、上述のように、データファイルに関連するそれぞれの異なる階層レベルの情報（たとえば、識別子、メタデータ、ファイル・コンテンツ、テキスト・コンテンツ、画像コンテンツなど）をユーザのクライアント・マシン上のローカル・メモリに漸進的に取込むことができる。
【００５０】
この機構では、ユーザは、ディレクトリの、文書処理ファイルを含む部分を選択的にのみ検討することができる。さらに、本発明の検索/キャッシングシステム201を、電子ファイルが持続的に記憶されるリモートコンピュータ127に動作命令を送信するように構成することができる。したがって、ユーザは、ディレクトリ・リスト全体を検討するのではなく、ファイル・ディレクトリの情報の一部のみを含むファイル・ディレクトリ構造を見て調べ、電子ファイル自体のコンテンツのような追加の情報を取込んでユーザのクライアントコンピュータに記憶する必要なしに、印刷、ファックス、転送、共用、削除のような、個々のファイルに対する有用なトランザクションを実行することができる。
【００５１】
以上、本発明について特定の例示的な態様を介して説明した。上記の説明から本発明の多数の特徴および利点が明らかであろう。したがって、添付の特許請求の範囲は本発明のすべてのそのような特徴および利点に及ぶことが意図されている。さらに、当業者には多数の修正および変更が容易に考えられるので、本明細書は、図示し説明した厳密な機構および動作に本発明を制限することを意図したものではない。たとえば、本発明は、本明細書で説明した装置および方法の1つまたは複数の要素を任意の組合せまたは副組合せとして含んでよい。したがって、本明細書（本発明の図面、特許請求の範囲、および要約書を含む）における1つまたは複数の要素を任意の組合せまたは下位組合せとして組み込んだ、本発明を定義する任意の数の他の組合せがある。したがって、すべての適切な修正および均等物は、添付の特許請求の範囲に含まれるとみなすことができる。
【図面の簡単な説明】
【００５２】
【図１】本発明の様々な態様を実施する可能なある電算装置を示す。
【図２】本発明の態様によるキャッシング装置の概略的な態様を示す。
【図３】本発明の態様による電子メールアカウント用のキャッシュを更新する方法を示す。
【図４】本発明の一態様に関する動作方法を示す。
【図１】
2004535632.tif 000003
【図２】
2004535632.tif 000004
【図３】
2004535632.tif 000005
【図４】
2004535632.tif 000006
【国際公開パンフレット】
2004535632.tif 000007
2004535632.tif 000008
2004535632.tif 000009
2004535632.tif 000010
2004535632.tif 000011
2004535632.tif 000012
2004535632.tif 000013
2004535632.tif 000014
2004535632.tif 000015
2004535632.tif 000016
2004535632.tif 000017
2004535632.tif 000018
2004535632.tif 000019
2004535632.tif 000020
2004535632.tif 000021
2004535632.tif 000022
2004535632.tif 000023
2004535632.tif 000024
2004535632.tif 000025
2004535632.tif 000026
2004535632.tif 000027
2004535632.tif 000028
2004535632.tif 000029
2004535632.tif 000030
2004535632.tif 000031
2004535632.tif 000032
2004535632.tif 000033
【国際公開パンフレット（コレクトバージョン）】
2004535632.tif 000034
2004535632.tif 000035
2004535632.tif 000036
2004535632.tif 000037
2004535632.tif 000038
2004535632.tif 000039
2004535632.tif 000040
2004535632.tif 000041
2004535632.tif 000042
2004535632.tif 000043
2004535632.tif 000044
2004535632.tif 000045
2004535632.tif 000046
2004535632.tif 000047
2004535632.tif 000048
2004535632.tif 000049
2004535632.tif 000050
2004535632.tif 000051
2004535632.tif 000052
2004535632.tif 000053
2004535632.tif 000054
2004535632.tif 000055
2004535632.tif 000056
2004535632.tif 000057
2004535632.tif 000058
2004535632.tif 000059
2004535632.tif 000060
【国際調査報告】
2004535632.tif 000061
2004535632.tif 000062