(57)【要約】【課題】  コンピュータファイルおよびオブジェクトの検索を改良すること。【解決手段】  索引データベースの検索または別の検索方法が実行されて、索引データベースに選択した識別情報が格納された選択したコンピュータオブジェクトが予備結果リストとして識別される。選択したコンピュータオブジェクトが、予備検索結果のその選択したコンピュータオブジェクトとの関連付けを有する他のコンピュータオブジェクトと対応される。検索結果が返される。統合検索結果は、予備検索結果と、コンピュータオブジェクトとの関連付けを有する他のコンピュータオブジェクトとを含む。関連付けは、関連付けシステムによって判定することができる。関連付けは、ユーザ対話またはオブジェクト間のその他の対話に基づくコンピュータファイル間の関係を表す。オブジェクト間の関連付けは、それらの間の類似性およびそれらの重要性を含む。【選択図】  図２
2004303250.tif 000002
【特許請求の範囲】
【請求項１】
索引付けおよび検索システム用のソフトウェアを記録するコンピュータ読取可能な媒体であって、
索引データベースの検索を実行して、前記索引データベースに識別情報が格納された１つまたは複数の選択されたコンピュータオブジェクトを予備結果リストと識別するソフトウェアと、
前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトを、前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトとの関連付けを有する１つまたは複数の他のコンピュータオブジェクトに対応付けさせるソフトウェアと、
前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトとの関連付けを有する１つまたは複数の他のコンピュータオブジェクトを含む前記予備検索結果リストを含む統合検索結果を返すソフトウェアと
を備えたことを特徴とする媒体。
【請求項２】
前記関連付けは、前記索引付けおよび検索システムによる検索以外の関連の対話に基づくコンピュータオブジェクト間の関係を含むことを特徴とする請求項１に記載の媒体。
【請求項３】
前記関連付けは、コンピュータ上のユーザ活動に基づいて自動的に判別されることを特徴とする請求項１に記載の媒体。
【請求項４】
前記統合検索結果は、第１情報レベルおよび第２情報レベルを含み、前記第１情報レベルは、前記予備検索結果リストに対応し、前記第２情報レベルは、前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトとの関連付けを有する前記１つまたは複数の他のコンピュータオブジェクトに対応することを特徴とする請求項１に記載の媒体。
【請求項５】
前記統合検索結果は、前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトとの関連付けを有する前記１つまたは複数の他のコンピュータオブジェクトと共に、前記予備検索結果リストを単一の情報レベルでリストに載せることを特徴とする請求項１に記載の媒体。
【請求項６】
前記１つまたは複数の選択されたコンピュータオブジェクトは、選択されたコンピュータまたはネットワークサイト上に格納されたコンピュータファイルを含むことを特徴とする請求項１に記載の媒体。
【請求項７】
前記１つまたは複数の選択されたコンピュータオブジェクトは、リンクされたファイルのネットワークサイトに対応するコンピュータファイルを含むことを特徴とする請求項１に記載の媒体。
【請求項８】
索引データベースの検索を実行して、前記索引データベースに識別情報が格納された１つまたは複数の選択されたコンピュータオブジェクトを予備検索結果リストとして識別するステップと、
前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトを、前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトとの関連付けを有する１つまたは複数の他のコンピュータオブジェクトに対応付けさせるステップであって、前記関連付けは、前記索引付けおよび検索システムによる検索以外の関連の対話に基づくコンピュータオブジェクト間の関係を含むステップと、
前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトとの関連付けを有する１つまたは複数の他のコンピュータオブジェクトを含む前記予備検索結果リストを含む統合検索結果を返すステップと
を備えたことを特徴とする索引付けおよび検索方法。
【請求項９】
前記関連付けは、コンピュータ上のユーザ活動に基づいて自動的に判別されることを特徴とする請求項８に記載の方法。
【請求項１０】
前記統合検索結果は、第１情報レベルおよび第２情報レベルを含み、前記第１情報レベルは、前記予備検索結果リストに対応し、前記第２情報レベルは、前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトとの関連付けを有する前記１つまたは複数の他のコンピュータオブジェクトに対応することを特徴とする請求項８に記載の方法。
【請求項１１】
前記統合検索結果は、前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトとの関連付けを有する前記１つまたは複数の他のコンピュータオブジェクトと共に、前記予備検索結果リストを単一の情報レベルでリストに載せることを特徴とする請求項８に記載の方法。
【請求項１２】
前記１つまたは複数の選択されたコンピュータオブジェクトは、選択されたコンピュータまたはネットワークサイト上に格納されたコンピュータファイルを含むことを特徴とする請求項８に記載の方法。
【請求項１３】
索引付けおよび検索システムによる検索結果のレンダリングを行ったコンピュータのディスプレイであって、
前記索引付けおよび検索システムの索引データベースに識別情報が格納された１つまたは複数の選択されたコンピュータオブジェクトを含む第１検索結果構成要素と、
前記第１検索結果構成要素の前記１つまたは複数の選択されたコンピュータオブジェクトとの関連付けを有する１つまたは複数の他のコンピュータオブジェクトを含む第２検索結果構成要素と
を備えたことを特徴とするディスプレイ。
【請求項１４】
前記第１検索結果構成要素および第２検索結果構成要素は、それぞれ第１情報レベルおよび第２情報レベルとしてレンダリングが行われることを特徴とする請求項１３に記載のディスプレイ。
【請求項１５】
前記第１検索結果構成要素および第２検索結果構成要素は、単一の統合情報レベルとしてレンダリングが行われることを特徴とする請求項１３に記載のディスプレイ。
【請求項１６】
前記１つまたは複数の選択されたコンピュータオブジェクトは、選択されたコンピュータまたはネットワークサイト上に格納されたコンピュータファイルを含むことを特徴とする請求項１３に記載のディスプレイ。
【請求項１７】
索引付けおよび検索システム用のソフトウェアを記録するコンピュータ読取可能な媒体であって、
索引データベースの検索を実行して、前記索引データベースに識別情報が格納された１つまたは複数の選択されたコンピュータオブジェクトを予備結果リストと識別するソフトウェアと、
前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトを、前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトとの関連付けを有する１つまたは複数の他のコンピュータオブジェクトに対応付けさせるソフトウェアと、
前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトとの関連付けを有する１つまたは複数の他のコンピュータオブジェクトを含む検索結果を返すソフトウェアと
を備えたことを特徴とする媒体。
【請求項１８】
検索システム用のソフトウェアを記録するコンピュータ読取可能な媒体であって、
複数のコンピュータオブジェクトの検索を実行して、指定の特性を有する１つまたは複数の選択されたコンピュータオブジェクトを予備結果リストと識別するソフトウェアと、
前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトを、前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトとの関連付けを有する１つまたは複数の他のコンピュータオブジェクトに対応付けさせるソフトウェアと、
前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトとの関連付けを有する１つまたは複数の他のコンピュータオブジェクトを含む前記予備検索結果リストを含む統合検索結果を返すソフトウェアと
を備えたことを特徴とする媒体。
【請求項１９】
前記関連付けは、前記索引付けおよび検索システムによる検索以外の関連の対話に基づくコンピュータオブジェクト間の関係を含むことを特徴とする請求項１８に記載の媒体。
【請求項２０】
前記関連付けは、コンピュータ上のユーザ活動に基づいて自動的に判別されることを特徴とする請求項１８に記載の媒体。
【請求項２１】
前記統合検索結果は、第１情報レベルおよび第２情報レベルを含み、前記第１情報レベルは、前記予備検索結果リストに対応し、前記第２情報レベルは、前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトとの関連付けを有する前記１つまたは複数の他のコンピュータオブジェクトに対応することを特徴とする請求項１８に記載の媒体。
【請求項２２】
前記統合検索結果は、前記予備検索結果リストの前記１つまたは複数の選択されたコンピュータオブジェクトとの関連付けを有する前記１つまたは複数の他のコンピュータオブジェクトと共に、前記予備検索結果リストを単一の情報レベルでリストに載せることを特徴とする請求項１８に記載の媒体。
【請求項２３】
前記１つまたは複数の選択されたコンピュータオブジェクトは、選択されたコンピュータまたはネットワークサイト上に格納されたコンピュータファイルを含むことを特徴とする請求項１８に記載の媒体。
【請求項２４】
前記１つまたは複数の選択されたコンピュータオブジェクトは、リンクされたファイルのネットワークサイトに対応するコンピュータファイルを含むことを特徴とする請求項１８に記載の媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイルまたはその他オブジェクトのコンピュータ検索に関し、詳細には、選択したテキスト検索結果との関連付けを有するコンピュータオブジェクトを含む検索結果を提供するコンピュータ検索に関する。
【背景技術】
【０００２】
従来のコンピュータテキスト索引付けおよび検索システムは、ユーザが選択する検索語句に従ってコンピュータファイルの索引付けおよび検索を実現する。このコンピュータファイルは、特定のコンピュータまたはネットワーク上に格納されたファイル、またはリンクされたファイルのうちネットワークアクセス可能なサイト（例えばウェブサイト）に対応するファイルなど、どんなコンピュータファイルの組でもよい。
【０００３】
テキスト索引付けおよび検索システムには、通常、１組のファイルから１つまたは複数の選択された語句を識別して取り出し、選択された語句を索引データベース内のレコードに格納またはマッピングするインデクサが含まれる。選択したファイルを検索するユーザは、ユーザがアクセス可能なコンピュータディスプレイ上に表示される検索フォーム内に、１つまたは複数の検索語句を入力する。ユーザが検索および照会を開始すると、１つまたは複数の検索語句が検索エンジンに送られる。検索エンジンは、その１つまたは複数の検索語句を含むレコードを求めて索引データベースを検索し、少なくとも部分的には検索基準を満たすファイルを特定する結果リストを返す。これによりユーザは、識別されたファイルにアクセスすることができる。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来のテキスト索引付けおよび検索システムには、コンピュータファイルおよびオブジェクトのテキストベースの検索に限られるという問題がある。テキストベースの検索は、ファイル名やファイル内のテキストを含む様々なデータフィールドに関係付けることができるが、こうした検索は、コンピュータファイルおよびオブジェクトの間のすべての関係および関連付け（ａｓｓｏｃｉａｔｉｏｎｓ）を反映することができない。
【課題を解決するための手段】
【０００５】
本発明は、コンピュータファイルおよびオブジェクトの検索を改良する。一実施形態では、索引データベースの検索または異なる検索方法を実行して、選択された識別情報が索引データベースに格納された１つまたは複数の選択されたコンピュータオブジェクトを予備結果リストとして識別する。加えて、予備検索結果の１つまたは複数の選択されたコンピュータオブジェクトを、予備検索結果のその選択されたコンピュータオブジェクトとの関連付けを有する１つまたは複数の他のコンピュータオブジェクトと対応させる。
【０００６】
次いで統合検索結果を返す。統合検索結果は、予備検索結果と、予備検索結果の選択されたコンピュータオブジェクトとの関連付けを有する１つまたは複数の他のコンピュータオブジェクトとを含む。関連付けは、関連付けシステムによって判定することができる。この関連付けは、ユーザ対話またはオブジェクト間のその他の対話に基づくコンピュータファイル間の関係を表す。オブジェクト間の関連付けは、オブジェクト間の類似性およびオブジェクトの重要性を含むことができる。
【０００７】
本発明のさらなる目的および利点は、添付の図面を参照しながら行われる本発明の好ましい実施例の詳細な説明から明らかとなるであろう。
【発明を実施するための最良の形態】
【０００８】
図１は、コンピュータファイル１０２の索引付けおよび検索を実現する従来技術のテキスト索引付けおよび検索システム１００を示すブロック図である。コンピュータファイル１０２の検索を使用し、ユーザの選択した検索語句に従ってファイル１０２を識別し、またはそれにアクセスすることができる。コンピュータファイル１０２は、例えば特定のコンピュータまたはネットワーク上に格納されたファイルや、ネットワークアクセス可能なサイト（例えばウェブサイト）に対応するファイルなど、どんなコンピュータファイルの組でもよい。例示のため、以下の図１の説明では、リンクされたファイルのうち１つまたは複数のネットワークアクセス可能なサイト（例えばウェブサイト）に対応するファイル１０２を参照する。
【０００９】
インデクサ１０４は、ファイル１０２から１つまたは複数の選択した語句を識別して取り出し、それを索引データベース１０６内のレコードに格納またはマッピングする。各ファイルについて、インデクサ１０４によって識別して取り出される１つまたは複数の選択される語句には、タイトル、ネットワークアドレス、ファイル名、ファイルの説明、指定のキーワード、ファイルテキスト、ファイル内のリンクなど、あるいはファイルを識別する識別子と共に格納されるその他の任意の情報のうちいずれかまたはすべてを含めることができる。
【００１０】
１つまたは複数の選択したファイルを検索するユーザは、ユーザがアクセス可能なコンピュータディスプレイ（図示せず）上に表示される検索フォーム１０８内に、１つまたは複数の検索語句またはその他の検索基準を入力する。ユーザが検索を開始すると、１つまたは複数の検索語句を伴う検索および照会が検索エンジン１１０に送られる。検索エンジン１１０は、検索語句のうち１つまたは複数を含むレコードを求めて索引データベース１０６を検索し、少なくとも部分的に検索基準を満たすファイルをリストに載せる結果リスト１１２を返す。
【００１１】
一部のシステムでは、結果リスト１１２は、リストに載せるファイルに関する関連性ランキング（ｒｅｌｅｖａｎｃｅ  ｒａｎｋｉｎｇ）を含むことができる。関連性ランキングにより、ユーザにとって関連性が最も高いファイルを識別するよう試みられる。関連性ランキングは、本技術分野で周知のように、様々な方式で計算することができ、様々なアルゴリズムに従って計算することができる。その後ユーザは、１つまたは複数の所望のファイルにアクセスすることができる。
【００１２】
図２は、本発明によるコンピュータファイルまたはオブジェクト２０２の索引付けおよび検索を実装する索引付けおよび検索システム２００を示すブロック図である。コンピュータファイル２０２の検索を使用し、ユーザの選択した検索基準に従ってファイル２０２を識別し、またはそれにアクセスすることができる。コンピュータファイル２０２はどんなコンピュータファイルの組でもよい。例えばファイルは、例えばスクリプト（ウェブサーバスクリプトなど）によって要求されたときに、またはデータベース照会の結果として、動的に生成することができ、並びに特定のコンピュータまたはネットワーク上に格納することができ、あるいはこれに替えて例えばリンクされたファイルのネットワークアクセス可能な１つまたは複数のサイト（例えばウェブサイト）に対応するファイルでよい。例示として、以下の図２の説明では、コンピュータまたはネットワーク上に格納されたファイル２０２を参照する。
【００１３】
インデクサ２０４は、ファイル２０２から、１つまたは複数の選択した語句を識別して取り出し、それを索引データベース２０６内のレコードに格納またはマッピングする。各ファイルについて、インデクサ２０４によって識別して取り出される１つまたは複数の選択語句には、タイトル、ネットワークアドレス、ファイル名、ファイルの説明、指定のキーワード、ファイルテキスト、ファイル内のリンクなど、並びにファイルを識別する識別子と共に格納されるその他の任意の情報のうちいずれか、またはすべてを含めることができる。
【００１４】
１つまたは複数の選択したファイルを検索するユーザは、ユーザがアクセス可能なコンピュータディスプレイ（図示せず）上に表示される検索フォーム２０８内に、１つまたは複数の検索語句またはその他検索基準を入力する。ユーザが検索を開始すると、１つまたは複数の検索語句またはその他検索基準を含む検索および照会が検索エンジン２１０に送られる。検索エンジン２１０は、検索語句のうち１つまたは複数を含むレコードを求めて索引データベース２０６を検索し、検索基準を少なくとも部分的に満たすファイルをリストに載せる予備結果リスト２１２を返す。実施形態によっては、本技術分野で周知のように、予備結果リスト２１２が、リストに載せるファイルに関する関連性ランキングを含むことができるものがある。例えば最初のセットは、「指定の時間間隔内に作成されたファイルを見つけよ」や「先週自分と通信した人を見つけよ」や「過去４カ月の晴れの日を見つけよ」といった照会のすべての種類によって生成することができる。
【００１５】
予備結果リスト２１２中のファイルは、そのファイルとの関連付けを有する他のコンピュータオブジェクト（例えばファイル、パーソナルコンタクトなど）と対応付けられる。関連付けは、ユーザコンピュータ活動、コンピュータオブジェクト（例えばファイル、コンタクトなど）、およびその他のイベントの間の関連付けを自動的に判定する自動関連付けシステム２１６によって識別され判定される。関連付けシステム２１６によって判定される関連付けは、コンピュータファイル（全般的にオブジェクトと呼ぶ）間の関係を表し、その関係は、ユーザ対話またはオブジェクト間のその他の対話に基づく。
【００１６】
以下に説明するように、オブジェクト間の関連付けには、オブジェクト間の類似性およびオブジェクトの重要性を含まれる。オブジェクトの重要性およびオブジェクト間の類似性は、ユーザコンピュータのオブジェクトとの対話から判定することができる。ユーザコンピュータの対話は、従来のデスクトップコンピュータまたはラップトップコンピュータ上で、あるいはハンドヘルドコンピュータ、デジタル携帯電話などのユーザが操作する任意のその他のコンピューティング装置上で行うことができる。説明を容易にするために、こうしたタイプの装置を本明細書では全般的にコンピュータと呼ぶ。関連付けシステム２１６は、そのような１つまたは複数のコンピュータ上に格納され、それによって実行されるソフトウェアとして実装することができる。
【００１７】
統合（ｉｎｔｅｇｒａｔｅｄ）結果リスト２１８は、検索基準を少なくとも部分的に満たすファイルをリストに載せ、予備結果リスト２１２中のファイルとの関連付けを有する他のコンピュータオブジェクト（例えば、ファイル、コンタクトなど）もリストに載せる。実施形態によっては、本技術分野で周知のように、統合結果リスト２１８が、関連性ランキングに従って検索基準を満たすファイルを順序付けることができるものがある。その後ユーザは、１つまたは複数の所望のファイルにアクセスすることができる。
【００１８】
図３に、予備結果リスト２１２（図２）で識別されたファイル３０２がトップレベルリスト３０４を形成する統合結果リスト３００を一実施形態として示す。トップレベルリスト３０４中の各ファイル３０２について、状況関連オブジェクト（ｃｏｎｔｅｘｔ−ａｓｓｏｃｉａｔｅｄ  ｏｂｊｅｃｔ）３０６が存在するならば、それが低レベルリスト３０８としてリストされる。図４に、予備結果リスト２１２（図２）中で識別されるファイル４０２が、状況関連オブジェクト４０４が存在するならばそれとマージされて全般的に１レベルのリストが形成される統合結果リスト４００を別の実施形態として示す。本技術分野で周知のように、ファイル４０２および状況関連オブジェクト４０４の順序付けは、関連性ランキングに基づいて行うことができる。
【００１９】
図５は、コンピュータファイルまたはオブジェクトの索引付けおよび検索を実現する、コンピュータに実装された索引付けおよび検索方法５００のフローチャートである。コンピュータファイルの検索を使用して、ユーザの選択した検索語句に従ってファイルを識別し、またはそれにアクセスすることができる。あるいはまた、検索語句は、例えばユーザのコンピュータとの対話を監視し、最も頻繁にアクセスし、または最近アクセスしたコンタクト、ファイルなどに関する照会を自動的に生成するシステム内の他のオペレーションの結果でもよい。
【００２０】
コンピュータファイルは、どんなコンピュータファイルの組でもよい。例えば、ファイルは、スクリプト（ウェブサーバスクリプトなど）によって要求されたときに、またはデータベース照会の結果として動的に生成し、または特定のコンピュータまたはネットワーク上に格納することができ、並びに例えばリンクされたファイルのネットワークアクセス可能な１つまたは複数のサイト（例えばウェブサイト）に対応するファイルとすることができる。例示として、以下の図５の説明では、コンピュータまたはネットワーク上に格納されたファイルを参照する。
【００２１】
ステップ５０２では、コンピュータファイルから、１つまたは複数の選択した語句または情報を識別して取り出し、索引データベース（例えば図２の索引データベース２０６）内のレコードにオブジェクトおよび語句を格納またはマッピングする。各ファイルについて、識別して取り出す１つまたは複数の選択語句には、タイトル、ネットワークアドレス、ファイル名、ファイルの説明、指定のキーワード、ファイルテキスト、ファイル内のリンクなど、あるいはファイルを識別する識別子と共に格納されるその他の任意の情報のうちいずれかまたはすべてを含めることができる。
【００２２】
ステップ５０４では、１つまたは複数のコンピュータファイルまたはオブジェクトを識別するために照会を開始する。例えば、１つまたは複数の選択したファイルを検索するユーザは、検索フォーム（例えば図２の検索フォーム２０８）内に１つまたは複数の検索語句またはその他の検索基準を入力することができる。別の例として、照会は、例えばユーザのコンピュータとの対話を監視し、最も頻繁にアクセスし、または最近アクセスしたコンタクト、ファイルなどに関する照会を自動的に生成するシステム内の他のオペレーションの結果でよい。
【００２３】
ステップ５０６では、ユーザが、１つまたは複数の検索語句またはその他の検索基準を対象とする検索を開始する。
【００２４】
ステップ５０８では、１つまたは複数の検索語句を含むレコードを求めて索引データベースを検索する。
【００２５】
ステップ５１０では、検索基準を少なくとも部分的に満たすファイルを示す予備結果リスト（例えば図２の予備結果リスト２１２）を返す。実施形態によっては、本技術分野で周知のように、予備結果リストが、リストに載せるファイルに関する関連性ランキングを含むことがある。
【００２６】
ステップ５１２では、予備結果リストで示されるファイルを、そのファイルとの関連付けを有する他のコンピュータオブジェクト（例えばファイル、パーソナルコンタクトなど）と対応させる。この関連付けは、コンピュータファイル（全般的にオブジェクトと呼ぶ）間の関係を表し、その関係は、ユーザ対話またはオブジェクト間のその他の対話に基づく。例えば、関連付けは関連付けシステム２１６（図２）で判定することができる。
【００２７】
ステップ５１４では、検索基準を少なくとも部分的に満たすファイルを識別し、検索基準を満たすファイルとの関連付けを有するその他のコンピュータオブジェクト（例えばファイル、コンタクトなど）をも識別する統合結果リストを返す。
【００２８】
ステップ５１６では、ユーザは、統合結果リスト内のオブジェクトのうち１つまたは複数にアクセスする。
【００２９】
図６は、本発明によるコンピュータファイルまたはオブジェクト６０２の検索を実現するインデックスレス検索システム６００を示すブロック図である。コンピュータファイル６０２の検索を使用して、ユーザの選択した検索基準に従ってファイル６０２を識別し、またはそれにアクセスすることができる。コンピュータファイル６０２はどんなコンピュータファイルの組でもよい。例えばこのファイルは、例えばスクリプト（ウェブサーバスクリプトなど）によって要求されたときに、またはデータベース照会の結果として動的に生成し、または特定のコンピュータまたはネットワーク上に格納することができ、並びにリンクされたファイルのネットワークアクセス可能な１つまたは複数のサイト（例えばウェブサイト）に対応するファイルでよい。例示として、以下の図６の説明では、コンピュータまたはネットワーク上に格納されたファイル６０２を参照する。
【００３０】
１つまたは複数の選択したファイルを検索するユーザは、ユーザがアクセス可能なコンピュータディスプレイ（図示せず）上に表示される検索フォーム６０８内に、１つまたは複数の検索語句またはその他の検索基準を入力する。ユーザは検索を開始し、それによって１つまたは複数の検索語句またはその他の基準を伴う検索および照会が検索エンジン６１０に送られる。検索エンジン６１０は、検索語句またはその他の基準のうち１つまたは複数を求めてファイル６０２を検索し、検索基準を少なくとも部分的に満たすファイルリストに載せる予備結果リスト６１２を返す。
【００３１】
各ファイルについて、１つまたは複数の選択される基準には、タイトル、ネットワークアドレス、ファイル名、ファイルの説明、指定のキーワード、ファイルテキスト、ファイル内のリンクなど、あるいはまたファイルを識別する識別子と共に格納されるその他の任意の情報のうちいずれかまたはすべてを含めることができる。実施形態によっては、本技術分野で周知のように、予備結果リスト６１２が、リストに載せるファイルに関する関連性ランキングを含むものがある。例えば、最初のセットは、「指定の時間間隔内に作成されたファイルを見つけよ」や「先週自分と通信した人を見つけよ」や「過去４カ月の晴れた日を見つけよ」といった照会のすべての種類によって生成することができる。
【００３２】
予備結果リスト６１２中のファイルは、そのファイルとの関連付けを有する他のコンピュータオブジェクト（例えばファイル、パーソナルコンタクトなど）と対応付けされる。この関連付けは、ユーザコンピュータ活動、コンピュータオブジェクト（例えばファイル、コンタクトなど）、およびその他のイベントの間の関連付けを自動的に判定する自動関連付けシステム６１６によって、識別され判定される。関連付けシステム６１６によって判定される関連付けは、コンピュータファイル（全般的にオブジェクトと呼ぶ）間の関係を表し、その関係は、ユーザ対話またはオブジェクト間のその他の対話に基づく。
【００３３】
統合結果リスト６１８は、検索基準を少なくとも部分的に満たすファイルをリストに載せ、予備結果リスト６１２中のファイルとの関連付けを有する他のコンピュータオブジェクト（例えば、ファイル、コンタクトなど）もリストに載せる。実施形態によっては、本技術分野で周知のように、統合結果リスト６１８は、関連性ランキングに従って検索基準を満たすファイルを順序付けることができる。その後ユーザは、１つまたは複数の所望のファイルにアクセスすることができる。
【００３４】
図７は、ユーザコンピュータ活動、コンピュータオブジェクト（例えばファイル、コンタクトなど）、およびその他のイベントの間の関連付けを自動的に判定する自動関連付けシステム２１６の機能ブロック図である。関連付けにより、関連付けシステム２１６が、例えば使用またはユーザ活動によって互いに関係付けられるコンピュータファイル、コンタクト、および情報（全般的にオブジェクトと呼ぶ）を識別することが可能となる。
【００３５】
以下に説明するように、オブジェクト間の関連付けには、オブジェクト間の類似性およびオブジェクトの重要性が含まれる。オブジェクトの重要性およびオブジェクト間の類似性は、ユーザコンピュータのオブジェクトとの対話から判定することができる。ユーザコンピュータの対話は、従来のデスクトップコンピュータまたはラップトップコンピュータ上で、あるいはまたハンドヘルドコンピュータ、デジタル携帯電話などのユーザが操作する任意のその他のコンピューティング装置上で行うことができる。説明を容易にするために、こうしたタイプの装置を本明細書では全般的にコンピュータと呼ぶ。関連付けシステム２１６は、そのような１つまたは複数のコンピュータ上に格納され、それによって実行されるソフトウェアとして実装することができる。
【００３６】
しかし、コンピュータの直接的なユーザ操作の結果、様々なオブジェクト間の関連付けが得られるだけでなく、サブネットワーク間の相互作用（例えば、サンフランシスコで電力がダウンしたとき、ボストンでのインターネットは６０％低速になる）、天候パターン（例えば、大気圧が所与の値より下に降下したときシアトルでは曇りとなる）、株式市場の価格変動（ＣＣＣ  社の株価が２％下がった次の日にＡＡＡ  社およびＢＢＢ  社の株価が下がる）などに基づいても得ることができることが理解されよう。さらに、関連付けは、（人物のファイル、Ｅメールメッセージのファイルなど）様々なタイプのオブジェクトを関連付けることができる。
【００３７】
関連付けシステム２１６には、ユーザのコンピュータ操作、コンピュータの動作、ユーザと（アプリケーション、ファイル、通信、人々など）様々なコンピュータオブジェクトとの間の対話、およびその他のイベントに関するデータを収集するデータ収集システム７０２が含まれる。例えば、データ収集システム７０２は、コンピュータシステムイベント（例えば、アプリケーションまたはその他のソフトウェア要素の操作、コンピュータファイルに対する様々な操作、コンピュータデータまたはその他のオブジェクトの共有など）、コンピュータ通信（例えば、Ｅメール通信、インスタントメッセージング通信など）、外部データ（例えば、ニュース、イベントなど）、および人々（例えば、名前、Ｅメールエイリアスなど）に関するデータを収集することができる。
【００３８】
一実施形態では、データ収集システム７０２はシステム活動（ａｃｔｉｖｉｔｙ）モニタ７０４を含むことができ、例えばシステム活動モニタ７０４は、ユーザが操作するコンピュータ（図示せず）上のユーザ活動を監視する。システム活動モニタ７０４は、他のアプリケーションまたはオペレーティングシステムから、検索および照会、文書またはその他のファイルのオープンまたは修正などユーザのコンピュータ活動の情報の提供を受けるコンピュータプログラムとして実装することができる。例えば、オブジェクトは、多数のプロパティを公開するかもしれないが、ユーザによって実行される検索およびその検索結果によって、どのプロパティがそのユーザにとって最も重要であるかを示すことができる。こうした活動ごとに、システム活動モニタ７０４は、コンピュータシステムデータベース７０６に格納される情報のレコード（「メタデータ」と呼ぶこともある）を作成し、または追加する。
【００３９】
例えば、システム活動モニタ７０４には、すべてのユーザのコンピュータとの対話、または少なくとも指定のユーザのコンピュータとの対話に関する単一のエントリポイントを提供する汎用入力活動モニタが含まれる。このような汎用入力を実装する場合、システム活動モニタ７０４は、入力方法データ（例えばテキスト、音声、マウスなど）、入力言語データ（英語、中国語など）、入力モードデータ（例えばディクテーションまたは入力コマンド）、入力アシスタンスデータ（例えば入力ワード保管、コマンド推測など）、入力フィードバックデータ（例えば、コンピュータが、追加の情報、コンピュータによる誤った推測の訂正などを必要とするかどうか）などのうちいずれかまたはすべてを判定し、メタデータとしてコンピュータシステムデータベース７０６に格納することができる。例えば、ユーザがウェブブラウザ中の画像をコピーまたは格納する場合、システム活動モニタ７０４は、ソースページのネットワークアドレス（例えばユニフォームリソースロケータ、ＵＲＬ）、ならびにイメージ自体のＵＲＬをメタデータとしてコンピュータシステムデータベース７０６に格納することができる。
【００４０】
コンピュータシステムデータベース７０６は、コンピュータ上に格納されたコンピュータファイルおよびコンピュータ上で実行された活動についての情報（例えば「メタデータ」）を格納する。メタデータには、コンピュータにより生成された文書にとって一般的な従来の情報が含まれ、これにはいつファイルが作成されたか、誰がそれを作成したか、および修正履歴が含まれる。さらに、一部のタイプのコンピュータファイルタイプは、他のファイルタイプに適用することができない特定のメタデータフィールドを有する可能性がある。例えば、フォトファイルタイプに関するメタデータフィールドは、イメージのサイズ、どこで画像を撮影したか、誰が撮影したか、誰が写っているかなどを含むことができる。一実施形態では、新しいメタデータフィールドをデータベースシステム７０６に追加して、新しいファイルタイプを収容することができ、または既存のファイルタイプについての新しい情報を格納することができる。
【００４１】
表１Ａに、システム活動モニタ７０４によって得ることができ、コンピュータシステムデータベース７０６に格納される例示的な情報を列挙する。コンピュータユーザが対話する可能性のある様々なコンピュータファイルおよびコンピュータ情報（オブジェクトと総称する）に関して、システム活動モニタ７０４は、オブジェクトの作成者／創作者（ｃｒｅａｔｏｒ／ａｕｔｈｏｒ）、オブジェクトのタイプ、（使用可能である場合）オブジェクトへのポインタ、活動化イベント、オブジェクトサイズなどのうちいずれか、またはすべてに関するデータを収集することができる。例えば、システム活動モニタ７０４は、コンピュータユーザが対話するオブジェクトについての情報を得ることができ、そのオブジェクトがコンピュータシステムデータベース７０６にリストされる他のオブジェクトに対して新しいかまたは一意であるかどうかを（例えば一意なオブジェクト識別子に基づいて）判定し、オブジェクトの固有オブジェクト識別子に関連してコンピュータシステムデータベース７０６に活動情報（ａｃｔｉｖｉｔｙ）を収集し、または格納する。
【００４２】
【表１】
2004303250.tif 000003
【００４３】
コンピュータユーザが対話するオブジェクトは、他の人々、他の人々との通信、コンピュータファイル、ネットワークまたはウェブアイテム、コンピュータシステム通知、ならびにコンピュータ上で動作し、またはコンピュータがアクセス可能なアプリケーションと関連付けることができる。システム活動モニタ７０４は、列挙されたような種類の例示的な情報ごとに、コンピュータシステムデータベース７０６内に取得し、格納することができる。
【００４４】
関連付けシステム２１６は、データ収集システム７０２によって得られ、またはコンピュータシステムデータベース７０６に格納されたオブジェクトまたはメタデータの間の１つまたは複数の関係を判定する関係処理システム７０８を含む。例示的な一実施形態では、関係処理システム７０８に、少なくとも１対のコンピュータファイルまたはオブジェクト間の類似性または関連付けの程度を判定する類似性／関連付けシステム７１０が含まれる。類似性または関連付けの程度は、例えば０から１の間の数値として表すことができる。ただし１は、オブジェクトの一致であり、０は完全に無関係であることを示す。関連付けシステム７１０は、所与のターゲットファイルおよびその他のファイルの集合について、それらの間の類似性ランキングを返す１つまたは複数のプログラムとして実装することができる。
【００４５】
様々な種類の文書、ファイル、またはオブジェクトが様々な種類の類似性を有する可能性があることが理解されよう。例えば、２つの写真は同じように見える可能性があり、同様の時間に撮影された可能性があり、類似の人、場所、または出来事である可能性があり、同一のカラーである可能性があり、同一の人々に送信され、または一緒にプリントされた可能性があり、同一の写真の各部分である可能性がある（一方を他方から切断した可能性がある）などである。表１Ｂに、関連付けシステム７１０が識別し、コンピュータシステムデータベース７０６に格納することができる例示的な関連付けまたは類似性を列挙する。上述のように、関連付けまたは類似性は、共有コンテンツを有し、類似の時間または類似のコンピュータ位置（例えば、コンピュータ、ディレクトリなど）で発生し、共通の人に送信され、またはその人から受信され、一緒にリンクされるオブジェクトまたはファイルに関係付けることができる。
【００４６】
【表２−１】
2004303250.tif 000004
【００４７】
【表２−２】
2004303250.tif 000005
【００４８】
一実施形態では、ある種の類似性を無視し、ある種の類似性を他よりも重く重み付けするように関連付けシステム７１０に指示することができる。さらに、関連付けシステム７１０によって追跡および識別される関連付けまたは類似性は拡張することが可能である。
【００４９】
加えて、ユーザが対話するオブジェクトは、ユーザにとっての重要性または意義が様々であってよい。例えば、ユーザが長期間オープンしたままにし、編集している文書は、短期間だけオープンされる文書よりも重要性が高いとみなすことができる。同様に、頻繁にアクセスされオープンされる写真は、１度だけしかオープンされない写真よりも重要性が高いとみなすことができる。表１Ｃに、例示される因子を列挙するが、関連付けシステム７１０は、例えばオブジェクトの相対的重要性をこの因子によって判定し、コンピュータシステムデータベース７０６に格納することができる。上述のように、重要性因子は、ユーザ対話の期間、対話の頻度、対話の新しさ（ｒｅｃｅｎｃｙ）、ユーザ応答の即時性、コピー、複製、およびバックアップの量、ならびにオブジェクトが共有される範囲と関係付けることができる。
【００５０】
【表３】
2004303250.tif 000006
【００５１】
関係処理システム７０８は、任意の大規模な１組のオブジェクトまたはファイルおよびグループについての類似性／関連付けシステム７１０によって判定された類似性または関連付けの程度を使用し、それらを指定の数のサブグループにグループまたは「塊（ｃｈｕｎｋｓ）」にする分類システム７１２をさらに含むことができる。例えば、２１６枚の写真が与えられた場合、分類（ｃｈｕｎｋｉｎｇ）システム７１２は、例えば撮影された日付、写真に誰が写っているかなどの１つまたは複数の基準に基づいて、それを任意の数のサブグループまたは塊に分割することができる。分類システム７１２によって使用される基準は、例えばユーザが事前定義または指定することができ、一実施形態では、同一のアイテムをいくつかの塊に配置することができる（例えば、ボブとスーの画像をボブ塊ならびにスー塊に配置することができる）。分類システム７１２は、コンピュータ上に格納された１つまたは複数のプログラムとして実装することができる。
【００５２】
関連付けユーザインターフェースシステム７１６は、システム活動モニタ７０４によってコンピュータシステムデータベース７０６に格納された情報、ならびに類似性／関連付けシステム７１０および分類システム７１２によって判定された情報を使用して、コンピュータシステムファイル、コンピュータ情報、およびその他の情報の間の関連付けを示す視覚化情報（ｖｉｓｕａｌｉｚａｔｉｏｎ）７１８を表示する。視覚化情報７１８は、ある場合にはデータフィルタ７２２が適用されるデータベース照会７２０の結果に基づくことがある。加えて、ユーザインターフェースシステム７１６は、以下により詳細に説明するように、アプリケーション／システム通知７２４を提供することができる。
【００５３】
したがって、関連付けシステム２１６は本来の人間的な記憶（ｉｎｎａｔｅ  ｈｕｍａｎ  ｍｅｍｏｒｙ）を収容するが、これは、関連付けによって機能し、その結果、イベントはしばしば、その他のイベントに関係して生じるものとして記憶される。一方、従来型コンピュータファイルシステムでは、ユーザは、任意の脈略のないファイル構造（ｏｕｔ−ｏｆ−ｃｏｎｔｅｘｔ  ｆｉｌｉｎｇ  ｓｔｒｕｃｔｕｒｅ）を使用し、および記憶することを余儀なくされる。多数のユーザが対話する著しい数のコンピュータファイルおよびオブジェクトの場合、従来の脈略のないファイル構造では、ユーザが、過去に作業または閲覧したコンピュータ情報を見つけてアクセスすることは困難、または不可能ということができる。関連付けシステム２１６により、ユーザは検索可能メタデータを閲覧して割り当て、選択したメタデータに合致する文書、オブジェクト、またはファイルを取り出すことが可能となる。
【００５４】
図８は、データ収集システム７０２の一実施形態の詳細なブロック図である。ユーザコンピュータ活動を監視するシステム活動モニタ７０４に加えて、例えば、データ収集システム７０２は、イベントハンドラ８０２を含む、後述のいずれかまたはすべても含むことができるが、１つまたは複数のアプリケーション８０４（他のソフトウェアサービスを含む）はアプリケーションイベントについてのメタデータ情報をデータ収集システム７０２にイベントハンドラ８０２を介して送信し、アプリケーションイベントについてのメタデータ情報をデータ収集システム７０２からイベントハンドラ８０２を介して受信する。アプリケーション８０４は、コンピュータの基礎であるオペレーティングシステムから分離することができ、あるいはオペレーティングシステムによって提供されるサービスまたは機能とすることができる。
【００５５】
データ収集コンテナ８０６は、システム活動モニタ７０４、イベントハンドラ８０２、およびその他の任意のデータ収集モジュールを制御するように動作し、具体的には、文書間のコピーおよびペースト、着信／発信メッセージ、共用ファイルのオープンなどのシステム活動に関するデータ収集を制御するように動作する。加えて、データ収集コンテナ８０６は、１つまたは複数の別々のコンピュータ情報源８０８（例えばパブリックサーバ）から、コンピュータの操作または使用に特に関係するデータ以外の一般データ（天候、ニュースなど）を取得または受信するように動作することができる。
【００５６】
自動関連付けシステム２１６と共にコンピュータ上で動作するアプリケーション８０４は、イベントハンドラ８０２に登録して、拡張文書管理機能を受け取ることができる。具体的には、データ収集コンテナ８０６は、文書間のコピーおよびペースト、Ｅメールメッセージへの文書の添付などのアプリケーション間イベントについてのデータまたは情報の収集を可能とし、それによってオブジェクト間の関係を関係処理システム７０８によって判定または導出することを可能にするアプリケーション間統合をサポートする。さらに、アプリケーション８０４は、データ収集システム７０２と直接対話して、システム活動モニタ７０４にとって容易に入手できない状況（ｃｏｎｔｅｘｔ）情報を提供することができる。例えば、Ｅメール添付が別々のファイルとしてディスクに保存される場合、Ｅメールアプリケーション８０４は、このファイルと元のＥメールメッセージの間の（さらにはメッセージ送信側との）リンクを作成することができる。制御システム活動モニタ７０４およびイベントハンドラ８０２により、必要な最小量の処理で、高い効率および高い粒度レベルでデータを収集することが可能となる。加えて、一実施形態でのデータ収集システム７０２は、将来開発する可能性のある追加のデータコレクタのインストールが可能となるように拡張することができる。
【００５７】
一実施形態では、ユーザは、データが収集されることについて、および何のために使用されるかについて通知されない。ユーザは、以下に説明するように、データ収集を選択的に使用可能または使用不能にし、またはオブジェクトの重要性およびその関連付けの重みを明示して調節するための１つまたは複数の制御機能を与えられる。他の実施形態では、どのようにデータを使用するかに基づいてデータを収集する方式を自動的に変更することができる。一般にデータは個々のユーザおよびコンピュータのレベルで収集されるが、複数のユーザおよびそのコンピュータからのデータを組み合わせることができることが理解されよう。そのような共用データが実装される場合、システム２１６は、データ、オブジェクト、およびセッションについての一意の識別子、通信用のｔｏフィールドおよびｆｒｏｍフィールドの一貫した処理、共用セッションにおけるコンピュータ間のイベント識別子の複写、およびプライバシーなどを提供する。
【００５８】
図９は、関係処理システム７０８の一実施形態の詳細なブロック図である。例えば関連付けシステム７１０および分類システム７１２に加えて、関係処理システム７０８は、様々な他の構成要素のいずれかまたはすべてを含むことができる。データベース７０６にアクセスし、およびインターフェースすることに関連して、関係処理システム７０８は、一時的にメタデータを格納するキャッシュ９０２を含むことができ、それによって、各関連付けの判定についてデータをデータベース７０６から取り出さなければならない場合よりも、２次関連付けなどの関連付けを容易に判定することができる。データベース７０６中の情報には、データベースインターフェースモジュール９０４を介してアクセスすることができ、様々なソースからデータベース７０６にデータを追加する作法を統一および標準化することができ、検索および照会エンジン９０６により、データベース７０６内のデータへのアクセスが提供される。
【００５９】
関連付けシステム７１０は、人々の間の社会的関係および様々なオブジェクト間の日付ベースの関係に関する例示的な実装を参照しながら以下に説明するように、２つのオブジェクト間の直接的関係または間接的関係を判定することができ、または選択された基準に従って関係測定を行うことができる。同様に重要性計算器９１０は、オブジェクトの重要性を、ユーザのオブジェクトとの対話の履歴に基づいて計算することができる。
【００６０】
例えば、重要性計算器９１０は、ターゲットオブジェクトと１つまたは複数の他のオブジェクトとの間の重要性ランキングを返すことができる。重要性は、６と１の間の数として表すことができる。ただし１は絶対的重要性であり、６は完全に重要でないことになる。重要性は、新しさ、編集の回数、頻繁に接触するユーザからの文書の送信または受信、期間、読取り順序、頻度などのいくつかの計算によって判定することができる。（関連付けシステム７１０からの）類似性または関連付けの範囲、（重要性計算器９１０からの）重要性、および状況を組み合わせて、オブジェクトの間の関連付けの範囲などを判定することができる。
【００６１】
重要性および関連付けのランキングはイベントの状況に従って変動する可能性があることが理解されよう。重要性ランキングは、特定の状況のターゲットファイルに関して提供することができる。特定の状況には、ファイルあるいは他のファイルまたはプロジェクトの集合、１日の特定の時間、特定のアプリケーションまたはサービスなどが含まれる。例えば、ユーザは、ユーザの家屋建設プロジェクトの状況では、ユーザの建築家からＥメールを受信する可能性がある。状況は、システム中のオブジェクトまたは１組のオブジェクトである。これは、１つまたは複数のファイル、アプリケーション、人、１日の中の時間などでよい。
【００６２】
一実施形態では、関係処理システム７０８は、現データベース照会に応答して追加のメタデータを生成するのではなく、データベース７０６からのメタデータに作用するバックグラウンドアナライザ９１２を含むことができる。例えば、バックグラウンドアナライザ９１２は、グラフィックファイルに対して顔認識を適用することができ、事前定義された顔を認識したときにメタデータタグを適用することができる。同様に、パターン認識モジュール９１４は、ユーザ活動から、自明でない反復的ユーザタスクを識別するように探索（ｓｅｅｋ）することができる。データプリフェッチャ（ｄａｔａ  ｐｒｅ−ｆｅｔｃｈｅｒ）９１６は、データベース７０６またはキャッシュ９０２からの現タスクに関するメタデータの「スマート」プリフェッチングを実現することができる。
【００６３】
追加のデータ分析を提供することに関連して、関係処理システム７０８は、以下の構成要素のうちいずれかまたはすべてをさらに含むことができる。マッピングモジュール９１８により、関係に基づくデータの空間的表現（例えば２次元）が提供され、次いで空間的表現を使用して、グラフィカル関係マップまたは視覚化情報のレンダリングおよびナビゲーションを行うことができるが、グラフィカル関係マップまたは視覚化情報の１つは社会的マップの実施形態を参照して以下に説明する。クラスタリングまたは「分類」モジュール７１２は、事前定義した基準に従って所与の１組のデータオブジェクトを複数のクラスタ、すなわち「塊」またはサブグループにグループ化するように機能する。
【００６４】
分類モジュール７１２は、各データオブジェクトが１つのサブグループだけに関連付けられる厳格な分類、またはデータオブジェクトを複数のサブグループと関連付けることができるあいまいな分類を選択的に適用することができる。加えて、関係処理システム７０８は、ユーザの現タスク状況および関係の種別に基づくデータオブジェクトのフィルタリング、現タスク状況および関係の種別に基づくオブジェクトのソート、ユーザの現状況および記録されたパターンに基づく１組のデータオブジェクトを生成または発見するための予測／自動化を実現するモジュール（図示せず）と、例えば人に関するデータオブジェクト（Ｅメール、文書、ミーティング、写真など）の検索など、選択したものに関係するデータオブジェクトを検索する関係検索（ｓｅａｒｃｈ−ｂｙ−ｒｅｌａｔｉｏｎｓｈｉｐ）モジュールとを含むことができる。
【００６５】
図１０は、以下の構成要素のいずれかまたはすべてを含むことができる関連付けユーザインターフェースシステム７１６の一実施形態の詳細なブロック図である。視覚化情報マネージャ１００２は、以下でより詳細に説明するように、データのセットについてコンピュータディスプレイ画面上にレンダリングすることができる視覚化情報（例えばグラフィカル）を提供することができる。ある実施形態では、新しい視覚化情報を視覚化情報マネージャ１００２に追加することができ、視覚化情報は各アプリケーションの状況で存在することができる。視覚化情報マネージャ１００２によって提供することのできる視覚化情報の例には、オブジェクトのスタック（例えば写真）、データマップ（例えば、以下で説明する人々の間の社会的関係のマップ）、階層、カレンダーなどが含まれる。検査マネージャ１００４は、スタックビューイングコーン、ドロップダウンメニュー、オペレーティングシステムの左側情報ペインなど特定の状況での特定のアイテムについての関連情報を取得および表示するための標準方式または標準フォーマットを提供することができる。
【００６６】
ユーザが作業中の状況を追跡するタスク指向ワークスペースを提供するように状況マネージャ１００６を備えることができる。状況は、ユーザが実行中の特定のタスクに関連するオブジェクト、ツール、アプリケーション、およびデータのすべての組である。ある実施形態では、状況を即座に再呼出しすることができ、他の人々と一緒に共有することもできる。例えば、パーティの計画についてのＥメールの集合を状況とすることができる。
【００６７】
通知マネージャ１００８は、何かが発生したことを示すシステム／アプリケーション通知７２４（図７）をユーザに提供することができる。ある実施形態では、アプリケーションからの通知が、通知マネージャ１００８を介してユーザに提供される。通知マネージャ１００８は、システム／アプリケーション通知に優先順位を付け、次いで視覚化情報マネージャ１００２を介してそれを提供する。ある実施形態では、履歴マネージャ１０１０が、コンピュータ上で何が発生したかを（例えば単一レコード内に）記録する。以下により詳細に説明するが、履歴マネージャ１０１０は、何が行われたかを判定し、いつ、どのようにそれをアンドゥするかを決定することができる便利な深さのあるアンドゥのユーティリティとして機能することができる。履歴マネージャ１０１０は、ＵＮＤＯ、ＢＡＣＫ、およびバージョン管理などの操作を特徴とする。履歴マネージャ１０１０にはまた、ニュースの見出しや天気などの外部イベントを入れることもできる。
【００６８】
履歴マネージャ１０１０は、ユーザコンピュータ活動の深さの表現を構築し、格納し、索引付けする。一実施形態では、履歴マネージャ１０１０は、関連付けシステム７００の低いレベルを実装したものであり、それはユーザコンピュータ活動履歴であっても、アプリケーション履歴であっても、さらには外部履歴（ニュースイベントなど）であっても、すべての履歴に対して１つの機構を提供する。
【００６９】
図１１は、ユーザコンピュータ活動履歴、アプリケーション履歴などが最低限のキーストロークから週全体に相当する作業まで様々なレベルで表される連続的でスケーラブルなユニバーサルタイムライン１１０２を含む履歴マネージャ９１０の一実施形態のブロック図である。ユーザは、ほぼどんな時間スケールでも履歴を閲覧し、照会し、操作することができる。
【００７０】
アプリケーションおよびシステムサービスは、イベントモデリングＡＰＩ１１０４と直接対話し、イベントをタイムライン１１０２に追加する。イベントは、低いレベルの動作を、アプリケーションおよび関連付けシステム１００によって提供することができる状況とともに含むことができる。例えばイベントモデリングＡＰＩ１１０４は、ワードプロセッサに入力されるキーストロークを、キーストロークが脚注テキストに対応するという状況と一緒に記録することができる。このイベントを他の編集変更と関連付けて、１日全体にわたる単一の「編集文書」イベントとすることもできる。別の例として、Ｅメールクライアントアプリケーションが、開かれるＥメールメッセージの記録を追加して、送信側についての状況、件名、およびスレッドで完成することができる。システムは、他のどのアプリケーションが同時に開かれるか、Ｅメールメッセージがどれだけの期間オープンしたままとなるか、どれだけの期間ディスプレイ画面上で見ることができるかについてのさらなる状況を追加することができる。
【００７１】
依存関係追跡エンジン１１０６は、変更およびその依存関係を表すのに１つまたは複数のスキーマを使用する。依存関係追跡エンジン１１０６によって、こうしたスキーマを使用し、柔軟性なユーザの時間的ナビゲーションタスクが提供される。例えば、ユーザが履歴をさかのぼってオブジェクトを削除した場合、そのオブジェクトへのその後の変更は、重要ではなくなる。一実施形態では、依存関係追跡エンジン１１０６は、偶発的な変化およびイベント間の依存関係も追跡することができる。例えば、ユーザがディレクトリ中のすべての写真をサイズ変更し、次いで初期サイズ変更のアンドゥを実行し、それを異なる仕方でリドゥした場合、依存関係追跡エンジン１１０６は、ユーザが他のイメージすべてに関してそのサイズ変更をアンドゥおよびリドゥしたいと仮定するかもしれない。加えて、依存関係追跡エンジン１１０６は、どこでコンピュータオブジェクトが発生したか、およびコンピュータオブジェクトが作成されたときの状況を追跡することができる。その結果、ルート文書への変更を、継承鎖全体にわたって伝播することができる。
【００７２】
こうした機能の一部は、Ｍｉｃｒｏｓｏｆｔ（登録商標）  Ｃｏｒｐｏｒａｔｉｏｎから入手可能なＶｉｓｕａｌ  Ｓｏｕｒｃｅ  Ｓａｆｅなどのバージョン制御システムの一部で現在使用可能である。一部のバージョン制御システムでは、ユーザは、文書の全履歴を見るが、文書に特定の変更を追加し、文書から特定の変更を除去する能力も限られる可能性がある。この差は、バージョン制御システムが、どんな変更が行われるかについての意味的知識が欠けているということである。例えば、従来のバージョン制御システムは、．ｃｐｐファイルおよび．ｈファイルが変更されていることを記録することができるが、こうした２つの変更がオブジェクトに関するプロパティの名前を変更したことを一緒に認識しない。
【００７３】
コンピュータプログラミングの当業者の技術常識に従って、様々なコンピュータシステムおよび装置で実行される操作の動作および象徴的表現を参照しながら本発明を上記で説明した。このような動作および操作は、コンピュータで実行される動作および操作と呼ばれることがあり、適宜オペレーティングシステムまたはアプリケーションプログラムと関連付けることができる。動作および象徴的に表現した操作が、ＣＰＵによるデータビットを表す電気信号の操作を含み、それが、結果として得られる変換または電気信号表現の低減、ならびにメモリシステム内のメモリ位置でのデータビットの保守を引き起こし、それによってコンピュータシステムオペレーションならびに信号の他の処理が再構成または変更されることを理解されよう。データが維持されるメモリ位置は、データビットに対応する特定の電気的、磁気的、または光学的特性を有する物理的位置である。
【００７４】
図示する実施形態を参照しながら本発明者等の発明の原理を説明し、および示したので、そのような原理から逸脱することなく図示する実施形態の配置および詳細を修正できることを理解されよう。本発明者等の発明の原理を適用することができる多数の可能な実施形態に照らして、詳述した実施形態は例示的なものに過ぎず、本発明者等の発明の範囲を限定するものとみなすべきでないことを理解されたい。むしろ、本発明者等は、特許請求の範囲およびその等価の範囲および精神内にあるすべてのそのような実施形態を本発明者の発明と主張する。
【図面の簡単な説明】
【００７５】
【図１】コンピュータファイルの索引付けおよび検索を実現する従来技術のテキスト索引付けおよび検索システムを示すブロック図である。
【図２】本発明によるコンピュータファイルの索引付けおよび検索を実現する索引付けおよび検索システムを示すブロック図である。
【図３】複数レベルの統合結果リストを示す図である。
【図４】単一レベルの統合結果リストを示す図である。
【図５】本発明によるコンピュータファイルまたはオブジェクトの索引付けおよび検索を実現する索引付けおよび検索方法のフローチャートである。
【図６】ユーザコンピュータ活動、コンピュータオブジェクト（例えばファイル、コンタクトなど）、およびその他のイベントの間の関連付けを自動的に判定する自動関連付けシステムの機能ブロック図である。
【図７】図１の関連付けシステム中のデータ収集システムの一実施形態の詳細なブロック図である。
【図８】関係処理システムの一実施形態の詳細なブロック図である。
【図９】図１の関連付けシステム中の関連付けユーザインターフェースシステムの一実施形態の詳細なブロック図である。
【図１０】図１のユーザインターフェースシステムに含まれる履歴マネージャの一実施形態の詳細なブロック図である。
【図１１】本発明の一態様による履歴マネージャの概略ブロック図である。
【符号の説明】
【００７６】
１００  従来技術のテキスト索引付けおよび検索システム
１０２  コンピュータファイル
１０４  インデクサ
１０６  索引データベース
１０８  検索フォーム
１１０  検索エンジン
１１２  結果リスト
２００  索引付けおよび検索システム
２０２  コンピュータファイル
２０４  インデクサ
２０６  データベース
２０８  検索フォーム
２１０  検索エンジン
２１２  予備結果リスト
２１６  自動関連付けシステム
２１８  統合結果リスト
３００  統合結果リスト
３０２  ファイル
３０４  トップレベルリスト
３０６  状況関連オブジェクト
３０８  低いレベルリスト
４００  統合結果リスト
４０２  ファイル
４０４  状況関連オブジェクト
６００  インデックスレス検索システム
６０２  コンピュータファイル
６０８  検索フォーム
６１０  検索エンジン
６１２  予備結果リスト
６１６  自動関連付けシステム
６１８  統合結果リスト
７００  関連付けシステム
７０２  データ収集システム
７０４  システム活動モニタ
７０６  コンピュータシステムデータベース
７０８  関係処理システム
７１０  類似性／関連付けシステム
７１２  分類システム
７１６  関連付けユーザインターフェースシステム
７１８  視覚化情報
７２０  データベース照会
７２２  データフィルタ
７２４  アプリケーション／システム通知
８０２  イベントハンドラ
８０４  アプリケーション
８０６  データ収集コンテナ
８０８  コンピュータ情報源
９０２  キャッシュ
９０４  データベースインターフェースモジュール
９０６  検索および照会エンジン
９１０  重要性計算器
９１２  バックグラウンドアナライザ
９１４  パターン認識モジュール
９１６  データプリフェッチャ
９１８  マッピングモジュール
１００２  視覚化情報マネージャ
１００４  検査マネージャ
１００６  状況マネージャ
１００８  通知マネージャ
１０１０  履歴マネージャ
１１０２  ユニバーサルタイムライン
１１０４  イベントモデリングＡＰＩ
１１０６  依存関係追跡エンジン
【図１】
2004303250.tif 000007
【図２】
2004303250.tif 000008
【図３】
2004303250.tif 000009
【図４】
2004303250.tif 000010
【図５】
2004303250.tif 000011
【図６】
2004303250.tif 000012
【図７】
2004303250.tif 000013
【図８】
2004303250.tif 000014
【図９】
2004303250.tif 000015
【図１０】
2004303250.tif 000016
【図１１】
2004303250.tif 000017
【外国語明細書】
2004303250000001.pdf