(57)【要約】計算機のオペレーティングシステムで実行される複数のプロセスを監視して各プロセスが処理する情報との対応関係をプロセス管理テーブルに登録し、プロセスの監視結果とプロセス管理テーブルを参照して、各プロセスの情報の間でどのよウな処理が行われたかを解析して情報間の関係を抽出する。抽出された情報間の関係は各プロセスの情報毎に生成した属性情報テーブルに登録される。プロセスが処理中にある情報の属性情報テーブルに基づいて関連情報一覧により複数の関連情報を表示し、その中から選択した関連情報へアクセスする。
2004031956.tif 000002
【特許請求の範囲】
【請求項１】
処理監視部により、計算機のオペレーティングシステムで実行される複数のプロセスの処理を監視する処理監視ステップと、
プロセス管理情報生成部により、前記各プロセスが処理する情報との対応関係を登録するプロセス管理テーブルを生成するプロセス管理情報生成ステップと、
第１処理解析部により、前記プロセスの監視結果とプロセス管理テーブルを参照して、各プロセスの情報の間でどのような処理が行われたかを解析して情報間の関係を抽出する第１処理解析ステップと、
第２処理生成部により、前記抽出された情報間の関係を登録した属性情報テーブルを各プロセスの情報毎に生成する第２処理解析ステップと、
を備えたことを特徴とする関連情報管理方法。
【請求項２】
請求の範囲１記載の関連情報管理方法に於いて、前記プロセスで処理する情報とは、ファイル又はＷＷＷのホームページであることを特徴とする関連情報管理方法。
【請求項３】
請求の範囲１記載の関連情報管理方法に於いて、前記属性情報テーブルに登録する情報間の関係とは、各プロセスが同時期にアクセスしていた情報、各プロセスが同時期にアクセスしていた情報間の処理の遷移、各プロセスが同時期にアクセスしていた情報間のデータコピー、各プロセスが同時期にアクセスしていた情報間のデータ移動、あるプロセスがアクセスしていた情報へ別の情報の読込み、又はあるプロセスがアクセスしていた情報から別の情報へのハイパーリンクの設定の少なくともいずれかを含むことを特徴とする関連情報管理方法。
【請求項４】
請求の範囲１記載の関連情報管理方法に於いて、更に、
関連情報表示部により、前記属性情報テーブルに基づいて１又は複数の関連情報を表示する関連情報表示ステップと、
関連情報アクセス部により、前記表示された関連情報の中から選択した情報へアクセスする関連情報アクセスステップと、
を備えたことを特徴とする関連情報管理方法。
【請求項５】
請求の範囲４記載の関連情報管理方法に於いて、前記関連情報表示ステップは、前記属性情報テーブルを参照して、複数の関連情報について関連性の深さを示す関連度を計算し、前記関連度の順に複数の関連情報を並べて表示することを特徴とする関連情報管理方法。
【請求項６】
請求の範囲１記載の関連情報管理方法に於いて、更に、前記属性情報テーブルに、ユーザにより指定された関連情報を登録する属性情報登録ステップを備えたことを特徴とする関連情報管理方法。
【請求項７】
請求の範囲１記載の関連情報管理方法に於いて、更に、前記属性情報テーブルから、ユーザにより指定された関連情報を削除する属性情報削除ステップとを備えたことを特徴とする関連情報管理方法。
【請求項８】
請求の範囲１記載の関連情報管理方法に於いて、前記プロセス管理テーブル生成ステップは、
各プロセスで実行されている複数の表示スレッドを監視し、各表示スレッドが表示している情報との対応関係を登録した表示スレッド管理テーブルを生成するスレッド管理テーブル生成ステップと、
各プロセスが処理している情報との対応関係を登録した仮プロセス管理テーブルを生成する仮プロセス管理テーブル生成ステップと、
前記仮プロセス管理テーブルと表示スレッド管理テーブルをマージしてプロセス、スレッド及び情報との対応関係を登録したプロセス管理テーブルを生成するマージステップと、
を備えたことを特徴とする関連情報管理方法。
【請求項９】
請求の範囲１記載の関連情報管理方法に於いて、前記第２処理解析ステップは、前記属性情報テーブルを外部記憶装置から読み込んで前記情報間の関係を登録した後に前記外部記憶装置に書き出すことを特徴とする関連情報管理方法。
【請求項１０】
コンピュータに、
オペレーティングシステムで実行される複数のプロセスの処理を監視する処理監視ステップと、
前記各プロセスが処理する情報との対応関係を登録するプロセス管理テーブルを生成するプロセス管理テーブル生成ステップと、
前記プロセスの監視結果とプロセス管理テーブルを参照して、各プロセスの情報の間でどのような処理が行われたかを解析して情報間の関係を抽出する第１処理解析ステップと、
前記抽出された情報間の関係を登録した属性情報テーブルを各プロセスの情報毎に生成する第２処理解析ステップと、
を実行させることを特徴とするプログラム。
【請求項１１】
請求の範囲１０記載のプログラムに於いて、前記プロセスで処理する情報とは、ファイル又はＷＷＷのホームページであることを特徴とするプログラム。
【請求項１２】
請求の範囲１０記載のプログラムに於いて、前記属性情報テーブルに登録する情報間の関係とは、各プロセスが同時期にアクセスしていた情報、各プロセスが同時期にアクセスしていた情報間の処理の遷移、各プロセスが同時期にアクセスしていた情報間のデータコピー、各プロセスが同時期にアクセスしていた情報間のデータ移動、あるプロセスがアクセスしていた情報へ別の情報の読込み、又はあるプロセスがアクセスしていた情報から別の情報へのハイパーリンクの設定の少なくともいずれかを含むことを特徴とするプログラム。
【請求項１３】
請求の範囲１０記載のプログラムに於いて、更に、
前記属性情報テーブルに基づいて１又は複数の関連情報を表示する関連情報表示ステップと、
前記表示された複数の関連情報の中から選択した情報へアクセスする関連情報アクセスステップと、
を備えたことを特徴とするプログラム。
【請求項１４】
請求の範囲１３記載のプログラムに於いて、前記関連情報表示ステップは、プロセスが処理中の情報に対応した属性情報テーブルを参照して、複数の関連情報について関連性の深さを示す関連度を計算し、前記関連度の順に複数の関連情報を並べて表示することを特徴とするプログラム。
【請求項１５】
請求の範囲１０記載のプログラムに於いて、更に、前記属性情報テーブルに、ユーザにより指定された関連情報を登録する属性情報登録ステップを備えたことを特徴とするプログラム。
【請求項１６】
請求の範囲１０記載のプログラムに於いて、更に、前記属性情報テーブルから、ユーザにより指定された関連情報を削除する属性情報削除ステップとを備えたことを特徴とするプログラム。
【請求項１７】
請求の範囲１０記載のプログラムに於いて、前記プロセス管理テーブル生成ステップは、
各プロセスで実行されている複数の表示スレッドを監視し、各表示スレッドが表示している情報との対応関係を登録した表示スレッド管理テーブルを生成するスレッド管理テーブル生成ステップと、
各プロセスが処理している情報との対応関係を登録した仮プロセス管理テーブルを生成する仮プロセス管理テーブル生成ステップと、
前記仮プロセス管理テーブルと表示スレッド管理テーブルをマージしてプロセス、スレッド及び情報との対応関係を登録したプロセス管理テーブルを生成するマージステップと、
を備えたことを特徴とするプログラム。
【請求項１８】
計算機のオペレーティングシステムで実行される複数のプロセスを処理監視部と、
前記各プロセスが処理する情報との対応関係を登録するプロセス管理テーブルを生成するプロセス管理テーブル生成部と、
前記プロセスの監視結果とプロセス管理テーブルを参照して、各プロセスの情報の間でどのような処理が行われたかを解析して情報間の関係を抽出する第１処理解析部と、
前記抽出された情報間の関係を登録した属性情報テーブルを各プロセスの情報毎に生成する第２処理解析部と、
前記属性情報テーブルに基づいて関連性の高い１又は複数の情報を表示する関連情報表示部と、
前記表示された関連性の高い複数の情報の中から選択した情報へアクセスする関連情報アクセス部と、
を備えたことを特徴とする関連情報管理装置。
【請求項１９】
処理監視部により、情報群に対するユーザの一括した処理を監視する処理監視ステップと、
第１処理解析部により、前記処理監視ステップの監視結果からユーザの処理対象となった情報群の情報とその処理内容を登録する処理対象情報テーブルを生成する第１処理解析ステップと、
第２処理解析部により、前記処理対象情報テーブルに登録された情報に対しどのような処理が行われたかを解析して情報間の関係を抽出する第２処理解析ステップと、
第３処理解析部により、前記抽出された情報間の関係を登録した属性情報テーブルを生成する第３処理解析ステップと、
関連情報表示部により、前記属性情報テーブルに基づいて１又は複数の関連情報を表示する関連情報表示ステップと、
関連情報アクセス部により、前記表示された関連情報の中から選択した情報へアクセスする関連情報アクセスステップと、
を備えたことを特徴とする関連情報管理方法。
【請求項２０】
請求の範囲１９記載の関連情報管理方法に於いて、
更に、ユーザの処理対象となった処理元や処理先の情報群に含まれる処理対象とならなかった対象外情報を調べて処理対象情報テーブルに登録する処理対象情報収集ステップを設け、
前記第３処理解析ステップは、前記処理対象情報テーブルに登録された処理元及び処理先の対象外情報とユーザが処理した情報群の情報との関係を抽出して属性情報テーブルを更新することを特徴とする関連情報管理方法。
【請求項２１】
請求の範囲１９記載の関連情報管理方法に於いて、前記第３処理解析ステップは、前記処理対象情報テーブルに登録された情報に対応する属性情報テーブルを、ユーザの処理に応じてコピー、移動又は削除することを特徴とする関連情報管理方法。
【請求項２２】
請求の範囲１９記載の関連情報管理方法に於いて、前記第３処理解析ステップは、ユーザの処理対象となった情報群の情報の属性情報テーブルに登録されている関連情報の属性情報テーブルを調べ、前記関連情報の属性情報テーブルにユーザの処理対象となった情報が登録されていた場合に、前記関連情報の属性情報テーブルに登録されている処理対象となった情報の登録内容を処理内容に応じて変更することを特徴とする関連情報管理方法。
【請求項２３】
請求の範囲１９記載の関連情報管理方法に於いて、前記第２処理監視ステップは、前記情報群に対するユーザの一括した処理であるかどうかを、前記情報群の情報の処理先、又は前記情報群の情報に対する処理の起動時間の差の少なくともいずれかから判断することを特徴とする関連情報管理方法。
【請求項２４】
請求の範囲１９記載の関連情報管理方法に於いて、前記ユーザの処理対象とする情報は、ファイル、フォルダ、ＷＷＷページ又はファイルのリンクを含むことを特徴とする関連情報管理方法。
【請求項２５】
請求の範囲１９記載の関連情報管理方法に於いて、前記属性情報テーブルに登録する解析結果とは、情報のコピー、移動、削除、リンク生成、リンク削除又はドラッグ・アンド・ドロップの少なくともいずれかを含むことを特徴とする関連情報管理方法。
【請求項２６】
請求の範囲１９記載の関連情報管理方法に於いて、前記関連情報表示ステップは、前記属性情報テーブルを参照して、複数の関連情報について関連性の深さを示す関連度を計算し、前記関連度の順に複数の関連情報を並べて表示することを特徴とする関連情報管理方法。
【請求項２７】
請求の範囲１９記載の関連情報管理方法に於いて、更に、前記属性情報テーブルに、ユーザにより指定された関連情報を登録する属性情報登録ステップを備えたことを特徴とする関連情報管理方法。
【請求項２８】
請求の範囲１９記載の関連情報管理方法に於いて、更に、前記属性情報テーブルから、ユーザにより指定された関連情報を削除する属性情報削除ステップとを備えたことを特徴とする関連情報管理方法。
【請求項２９】
請求の範囲１９記載の関連情報管理方法に於いて、第３処理解析ステップは、前記属性情報テーブルを外部記憶装置から読み込んで前記情報間の関係を登録した後に前記外部記憶装置に書き出すことを特徴とする関連情報管理方法。
【請求項３０】
コンピュータに、
情報群に対するユーザの一括した処理を監視する処理監視ステップと、
前記処理監視ステップの監視結果からユーザの処理対象となった情報群の情報とその処理内容を登録する処理対象情報テーブルを生成する第１処理解析ステップと、
前記処理対象情報テーブルに登録された情報に対しどのような処理が行われたかを解析して情報間の関係を抽出する第２処理解析ステップと、
前記抽出された情報間の関係を登録した属性情報テーブルを生成する第３処理解析ステップと、
前記属性情報テーブルに基づいて１又は複数の関連情報を表示する関連情報表示ステップと、
前記表示された関連情報の中から選択した情報へアクセスする関連情報アクセスステップと、
を実行させることを特徴とするプログラム。
【請求項３１】
請求の範囲３０記載のプログラムに於いて、前記コンピュータに、更に、ユーザの処理対象となった処理元と処理先の情報群に含まれる処理対象とならなかった対象外情報を調べて処理対象情報テーブルに登録する処理対象情報収集ステップを実行させ、
前記第３処理解析ステップは、前記処理対象情報テーブルに登録された処理元及び処理先の対象外情報とユーザが処理した情報群の情報との関係を抽出して属性情報テーブルを更新することを特徴とするプログラム。
【請求項３２】
請求の範囲３０記載のプログラムに於いて、前記第３処理解析ステップは、前記処理対象情報テーブルに登録された情報に対応する属性情報テーブルを、ユーザの処理に応じてコピー、移動又は削除することを特徴とするプログラム。
【請求項３３】
請求の範囲３０記載のプログラムに於いて、前記第３処理解析ステップは、ユーザの処理対象となった情報群の情報の属性情報テーブルに登録されている関連情報の属性情報テーブルを調べ、前記関連情報の属性情報テーブルにユーザの処理対象となった情報が登録されていた場合に、前記関連情報の属性情報テーブルに登録されている処理対象となった核情報の登録内容を処理内容に応じて変更することを特徴とするプログラム。
【請求項３４】
請求の範囲３０記載のプログラムに於いて、前記第２処理監視ステップは、前記情報群に対するユーザの一括した処理であるかどうかを、前記情報群の情報の処理先、又は前記情報群の情報に対する処理の起動時間の差の少なくともいずれかから判断することを特徴とするプログラム。
【請求項３５】
請求の範囲３０記載のプログラムに於いて、前記ユーザの処理対象とする情報は、ファイル、フォルダ、ＷＷＷページ又はファイルのリンクを含むことを特徴とするプログラム。
【請求項３６】
請求の範囲３０記載のプログラムに於いて、前記属性情報テーブルに登録する解析結果とは、情報のコピー、移動、削除、リンク生成、リンク削除又はドラック・アンド・ドロップの少なくともいずれかを含むことを特徴とするプログラム。
【請求項３７】
請求の範囲３０記載のプログラムに於いて、前記関連情報表示ステップは、前記属性情報テーブルを参照して、複数の関連情報について関連性の深さを示す関連度を計算し、前記関連度の順に複数の関連情報を並べて表示することを特徴とするプログラム。
【請求項３８】
請求の範囲３０記載のプログラムに於いて、更に、前記属性情報テーブルに、ユーザにより指定された関連情報を登録する属性情報登録ステップを備えたことを特徴とするプログラム。
【請求項３９】
請求の範囲３０記載のプログラムに於いて、更に、前記属性情報テーブルから、ユーザにより指定された関連情報を削除する属性情報削除ステップとを備えたことを特徴とするプログラム。
【請求項４０】
請求の範囲３０記載のプログラムに於いて、第３処理解析ステップは、前記属性情報テーブルを外部記憶装置から読み込んで前記情報間の関係を登録した後に前記外部記憶装置に書き出すことを特徴とするプログラム。
【請求項４１】
情報群に対するユーザの一括した処理を監視する処理監視部と、
前記処理監視部の監視結果からユーザの処理対象となった情報群の情報とその処理内容を登録する処理対象情報テーブルを生成する第１処理解析生成部と、
前記処理対象情報テーブルに登録された情報に対しどのような処理が行われたかを解析して情報間の関係を抽出する第２処理解析部と、
前記抽出された情報間の関係を登録した属性情報テーブルを生成する第３処理解析部と、
前記属性情報テーブルに基づいて１又は複数の関連情報を表示する関連情報表示部と、
前記表示された関連情報の中から選択した情報へアクセスする関連情報アクセス部と、
を実行させることを特徴とする関連情報管理装置。
【発明の詳細な説明】
【技術分野】本発明は、文書や画像などの作成や編集の際に利用した関連情報を管理する関連情報管理方法、プログラム及び装置に関し、特に、文書や画像などの作成や編集の際にアクセスした関連の深い情報の管理情報を自動的生成して再利用できるように管理する関連情報管理方法、プログラム及び装置に関する。
【背景技術】近年、パーソナルコンピュータやＰＤＡなどの情報機器に加え、インターネットなどネットワーク環境の普及が進んだ結果、ユーザは簡単に文書や画像などの作成や編集をしたり、その際に様々な情報へアクセスしたりすることができる。しかし、ユーザが簡単に多くの情報へアクセスできるようになった反面、ユーザが情報を管理する負担も大きくなりつつある。そのため、ユーザが情報の処理に専念できるように、情報管理の負担を軽減する仕組みが求められている。ユーザが情報を作成したり編集したりする場合、また情報へアクセスしたりする場合、同時に複数の情報を参照することが多い。例えば、ある情報を作成する時に、その情報に関連の深い資料なども同時に参照するようなケースである。このように、ある情報に関連の深い情報へアクセスするために、現状では次のような方法を用いることが多い。
（１）ユーザの直接探索
情報が階層構造となるディレクトリを備えたファイルシステムにファイルとして記憶されている場合、「あのディレクトリに記録したはず」といったユーザの記憶や、ユーザのディレクトリ作成ルール（情報配置ルール）などに基づいて、ユーザが関連情報（関連するファイル）を直接探す。
（２）検索機能の使用
情報に関するキーワードで記憶装置やネットワークを検索し、検索結果から関連情報を探す。
（３）特開平５−６６９８６の方法
予め関連情報を登録しておき、ユーザは登録内容から適切な関連情報を選択する。例えば、関連情報をハイパーリンクの形式で登録しておき、ユーザは登録内容から選択する。
しかしながら、従来のユーザの直接検索や検索機能の使用にあっては、ユーザがディレクトリの構成を知っている必要があったり、関連の薄い情報も含む大量の検索結果から適切な情報を選択する必要があったりして、関連情報へ簡単にアクセスできない問題があった。また特開平５−６６９８６の方法では、関連情報として登録する情報をユーザが選別する必要があったり、複数の関連情報から適切な情報を選択する必要があったりして、関連情報を簡単に登録したりアクセスしたりできない問題があった。
【発明の開示】
本発明は、ある情報に関連の深い関連情報を、情報の作成や編集といった処理を通じて自動的に登録し、後で同じ情報を処理する際にユーザが関連情報を簡単且つ適確に利用可能とする関連情報管理方法、プログラム及び装置を提供することを目的とする。
（単一情報のユーザ処理に基づく関連情報管理）
本発明の関連情報管理方法は、
処理監視部により、計算機のオペレーティングシステムで実行される複数のプロセスの処理を監視する処理監視ステップと、
プロセス管理生成部により、各プロセスが処理する情報との対応関係を登録するプロセス管理テーブルを生成するプロセス管理生成ステップと、
第１処理解析部により、プロセスの監視結果とプロセス管理テーブルを参照して、各プロセスの情報の間でどのような処理が行われたかを解析して情報間の関係を抽出する第１処理解析ステップと、
第２処理解析成部により、抽出された情報間の関係を登録した属性情報テーブルを各プロセスの情報毎に生成する第２処理解析（属性情報テーブル生成）ステップと、
を備えたことを特徴とする。このような本発明の関連情報管理方法によれば、ユーザが文書や画像の作成または編集の際に様々な情報へアクセスすると、アクセスした情報が処理中の情報に対する関連情報として自動的に抽出されて属性情報として登録され、ユーザは関連情報を選別する必要がく、また、ユーザの処理に基づいて関連情報を自動的に抽出するので、ユーザの視点から見て関連性が深い情報を適切に抽出できる。
ここでプロセスで処理する情報とは、ファイル又はＷＷＷのホームページである。また属性情報テーブルに登録する情報間の関係とは、
各プロセスが同時期にアクセスしていた情報間、
各プロセスが同時期にアクセスしていた情報間の処理の遷移、
各プロセスが同時期にアクセスしていた情報間のデータコピー、
各プロセスが同時期にアクセスしていた情報間のデータ移動、
あるプロセスがアクセスしていた情報へ別の情報の読込み、又は
あるプロセスがアクセスしていた情報から別の情報へのハイパーリンクの設定の少なくともいずれかを含む。
本発明の関連情報管理方法は、更に、
関連情報表示部により、属性情報テーブルに基づいて、１又は複数の関連情報（関連情報一覧）を表示する関連情報表示ステップと、
関連情報アクセス部により、表示された複数の関連情報の中から選択した関連情報へアクセスする関連情報アクセスステップと、
を備える。このため現在処理中の情報に対する関連情報を属性情報法テーブルに基づいて表示することで、ユーザは、表示された関連情報からアクセスしたい情報を選択し、関連情報へ簡単にアクセスできる。
関連情報表示ステップは、プロセスが処理中の情報に対応した属性情報テーブルを参照して、複数の関連情報について関連性の深さを示す関連度を計算し、関連度の順に複数の関連情報を並べて表示する。このように過去に登録した関連情報も考慮して、現在処理中の情報との関連性の深さを求めることができるので、ユーザはより適確に関連の深い情報へアクセスできる。
本発明の関連情報管理方法は、更に、属性情報テーブルに、ユーザにより指定された関連情報を登録する属性情報登録ステップを備える。このため自動登録されない情報であっても、ユーザは、必要と判断した情報を直接関連情報として登録できる。
本発明の関連情報管理方法は、更に、属性情報テーブルから、ユーザにより指定された関連情報を削除する属性情報削除ステップとを備える。このためユーザは、現在処理中の情報に対する関連情報の中から必要に応じて特定の関連情報を直接削除することができる。
プロセス管理テーブル生成ステップは、マルチスレッドＯＳに対応し、
各プロセスで実行されている複数の表示スレッドを監視し、各表示スレッドが表示している情報との対応関係を登録した表示スレッド管理テーブルを生成するスレッド管理テーブル生成ステップと、
各プロセスが処理している情報との対応関係を登録した仮プロセス管理テーブルを生成する仮プロセス管理テーブル生成ステップと、
仮プロセス管理テーブルと表示スレッド管理テーブルをマージしてプロセス、スレッド及び情報との対応関係を登録したプロセス管理テーブルを生成するマージステップと、
を備えたことを特徴とする。これにより各プロセスのスレッド毎に、それぞれのスレッドが処理している情報を検知し、現在処理中の情報に対する関連情報を登録した属性情報テーブルが生成できる。
第２処理解析ステップは、属性情報テーブルを外部記憶装置から読み込んで前記情報間の関係を登録した後に外部記憶装置に書き戻す。このように過去に登録した関連情報を保存して新たな処理で更新するため、過去に登録した関連情報を含めて関連性の高い情報を選択してアクセスできる。
本発明は、関連情報管理のためのプログラムを提供する。このプログラムは、コンピュータに、
オペレーティングシステムで実行される複数のプロセスの処理を監視する処理監視ステップと、
各プロセスが処理する情報との対応関係を登録するプロセス管理テーブルを生成するプロセス管理テーブル生成ステップと、
プロセスの監視結果とプロセス管理テーブルを参照して、各プロセスの情報の間でどのような処理が行われたかを解析して情報間の関係を抽出する第１処理解析ステップと、
抽出された情報間の関係を登録した属性情報テーブルを各プロセスの情報毎に生成する第２処理解析ステップと、
を実行させることを特徴とする。
本発明は、関連情報管理装置を提供する。この関連情報管理装置は、
計算機のオペレーティングシステムで実行される複数のプロセスの処理を監視する処理監視部と、
各プロセスが処理する情報との対応関係を登録するプロセス管理テーブルを生成するプロセス管理テーブル生成部と、
プロセスの監視結果とプロセス管理テーブルを参照して、各プロセスの情報の間でどのような処理が行われたかを解析して情報間の関係を抽出する第１処理解析部と、
抽出された情報間の関係を登録した属性情報テーブルを各プロセスの情報毎に生成する第２処理解析部と、
属性情報テーブルに基づいて関連性の高い１又は複数の情報を表示する関連情報表示部と、
表示された関連性の高い情報の中から選択した情報へアクセスする関連情報アクセス部と、
を備えたことを特徴とする。なお、本発明のプログラム及び関連情報管理装置における詳細は、本発明の関連情報管理方法と基本的に同じになる。
（情報群のユーザ処理に基づく関連情報管理）
また本発明の別の形態によれば、複数の情報をまとめてユーザが一括処理を行った際に、処理した情報群の各情報に関連の深い関連情報を自動登録し、後に同じ情報を処理する際にユーザが関連情報を簡単且つ適確に利用可能とする関連情報管理方法、プログラム及び装置が提供される。
このため本発明による関連情報管理方法は、
処理監視部により、情報群に対するユーザの一括した処理を監視する処理監視ステップと、
第１解析処理部により、処理監視ステップの監視結果からユーザの処理対象となった情報群の各情報とその処理内容を登録する処理対象情報テーブルを生成する第１処理解析ステップと、
第２処理解析部により、処理対象情報テーブルに登録された各情報に対しどのような処理が行われたかを解析して各情報間の関係を抽出する第２処理解析ステップと、
第３処理解析部により、抽出された各情報間の関係を登録した属性情報テーブルを生成する第３処理解析ステップと、
関連情報表示部により、属性情報テーブルに基づいて１又は複数の関連情報を表示する関連情報表示ステップと、
関連情報アクセス部により、表示された関連情報の中から選択した情報へアクセスする関連情報アクセスステップと、
を備えたことを特徴とする。このためユーザが複数の情報群に対し一括して移動、コピー、削除といった処理が行われると、情報群の中の処理対象となった各情報の関連情報が自動抽出されて属性情報として登録され、後に同じ情報を処理する際に、抽出した関連情報へアクセスできる。このためユーザは情報群の一括処理において、関連情報を選別する必要がなく、また、ユーザの処理に基づいて関連情報を抽出するので、ユーザの視点から見て関連性が深い情報を自動的に抽出でき、ユーザが自分で関連する情報を探索する必要がなくなる。
本発明の関連情報管理方法は、更に、ユーザの処理対象となった処理元と処理先の情報群に含まれる処理対象とならなかった対象外情報を調べて処理対象情報テーブルに登録する処理対象情報収集ステップを設け、この場合、第３処理解析ステップは、処理対象情報テーブルに登録された処理元及び処理先の対象外情報とユーザが処理した情報群の各情報との関係を抽出して属性情報テーブルを更新する。例えばある情報群の中の特定の情報を他の情報群に移動した場合、移動元及び移動先の情報群を調べてユーザ処理対象とならなかった情報を処理情報テーブルに登録する。そして、属性情報テーブルを生成する際には、移動元の情報群の中の処理対象とならなかった情報は、移動によって関連が薄くなったことから、移動した処理対象となった各情報の属性情報テーブルから削除する。一方、移動先の情報群の中にある各情報は、移動してきた情報との関連が深くなったことから、新たな関連情報としてその属性情報テーブルに加える。
ここで第３処理解析ステップは、処理対象情報テーブルに登録された各情報に対応する属性情報テーブルを、ユーザの処理に応じてコピー、移動又は削除する。
また第３処理解析ステップは、ユーザの処理対象となった情報群の各情報の属性情報テーブルに登録されている関連情報の属性情報テーブルを調べ、関連情報の属性情報テーブルにユーザの処理対象となった各情報が登録されていた場合に、関連情報の属性情報テーブルに登録されている処理対象となった各情報の登録内容を処理内容（コピー、移動又は削除）に応じて変更する。このためユーザが情報群に対して行ったコピー、移動又は削除といった処理によって、各情報の場所が変わった場合も、処理内容に合わせて各情報が登録されている属性情報テーブルの内容が変更され、ユーザは処理が実行される前と同様に、その後に同じ情報を処理する際に、属性情報テーブルに基づき関連情報を参照できる。
処理監視ステップは、情報群に対するユーザの一括した処理であるかどうかを、情報群の各情報の処理先、又は情報群の各情報に対する処理の起動時間の差の少なくともいずれかから判断する。このため、ある情報群の個々の情報に対して実行された処理を解析することで、ある情報群に対して一括して行われた処理を判別し、併せて処理が実行された情報群に含まれる情報を認識することができる。
本発明でユーザの処理対象する情報は、ファイル、フォルダ、ＷＷＷページ又はファイルのリンクを含む。また属性情報テーブルに登録する解析結果とは、情報のコピー、移動、削除、リンク生成、リンク削除又はドラック・アンド・ドロップの少なくともいずれかを含む。
更に関連情報表示ステップは、属性情報テーブルを参照して、複数の関連情報について関連性の深さを示す関連度を計算し、関連度の順に複数の関連情報を並べて表示する。
本発明は、属性情報テーブルに、ユーザにより指定された関連情報を登録する属性情報登録ステップを備える。また本発明は、更に、属性情報テーブルから、ユーザにより指定された関連情報を削除する属性情報削除ステップを備える。
また第３処理解析ステップは、属性情報テーブルを外部記憶装置から読み込んで情報間の関係を登録した後に外部記憶装置に書き出す。
本発明は、ユーザの情報群に対する一括処理を対象とした関連情報管理のためのプログラムを提供する。このプログラムは、コンピュータに、
情報群に対するユーザの一括した処理を監視する処理監視ステップと、
処理監視ステップの監視結果からユーザの処理対象となった情報群の各情報とその処理内容を登録する処理対象情報テーブルを生成する第１処理解析ステップと、
処理対象情報テーブルに登録された各情報に対しどのような処理が行われたかを解析して各情報間の関係を抽出する第２処理解析ステップと、
記抽出された各情報間の関係を登録した属性情報テーブルを生成する第３処理解析ステップと、
属性情報テーブルに基づいて１又は複数の関連情報を表示する関連情報表示ステップと、
表示された関連情報の中から選択した情報へアクセスする関連情報アクセスステップと、
を実行させることを特徴とする。
また本発明は、ユーザの情報群に対する一括処理を対象とした関連情報管理装置を提供する。この関連情報管理装置は、情報群に対するユーザの一括した処理を監視する処理監視部と、処理監視部の監視結果からユーザの処理対象となった情報群の各情報とその処理内容を登録する処理対象情報テーブルを生成する第１処理解析部と、処理対象情報テーブルに登録された各情報に対しどのような処理が行われたかを解析して各情報間の関係を抽出する第２処理解析部と、抽出された各情報間の関係を登録した属性情報テーブルを生成する第３処理解析部と、属性情報テーブルに基づいて１又は複数の関連情報を表示する関連情報表示部と、表示された関連情報の中から選択した情報へアクセスする関連情報アクセス部と、を実行させることを特徴とする。
なお、ユーザの情報群に対する一括処理を対象とした関連情報管理のためのプログラム及び装置の詳細は、本発明の関連情報管理方法と基本的に同じになる。
【図面の簡単な説明】図１は本発明が適用されるホストコンピュータのハードウェアのブロック図；
図２は本発明による関連情報管理の第１実施形態の機能構成のブロック図；
図３は図２に続く第１実施形態の機能構成のブロック図；
図４は図３におけるプロセス管理テーブルの説明図；
図５は図３における属性情報テーブルの説明図；
図６は本発明による情報管理の基本的な処理手順のフローチャート；
図７は図６のステップＳ１〜Ｓ４に対応した本発明による関連情報自動登録処理のフローチャート；
図８は図７の続く関連情報自動登録処理のフローチャート；
図９は図７のステップＳ２におけるフック処理の仕組みの説明図；
図１０は図７のステップＳ２におけるフック処理の他の仕組みの説明図；
図１１は図７のステップＳ４におけるプロセス管理テーブル更新処理のフローチャート；
図１２は図７のステップＳ５における関連情報表示処理のフローチャート；
図１３は本発明による関連情報の表示選択を提供するアプリケーション実行時の処理画面の説明図；
図１４は情報Ａの属性情報テーブルの登録最新日時に基づいた関連情報一覧の説明図；
図１５は図１の実施形態における関連情報管理処理のタイムチャート；
図１６は図１５に続く関連情報管理処理のタイムチャート；
図１７は本発明における関連情報ユーザ登録処理のフローチャート；
図１８は本発明における関連情報ユーザ削除処理のフローチャート；
図１９は本発明による関連情報管理の第１実施形態の変形例となる機能ブロック図；
図２０は図１９に続くの第１実施形態の変形例となる機能ブロック図；
図２１は図２０における表示スレッド管理テーブル、仮プロセス管理テーブル及びプロセス管理テーブルの説明図；
図２２は図２０におけるプロセス管理テーブル更新処理の説明図；
図２３はユーザ一括処理を対象とした本発明による関連情報管理の第２実施形態の機能構成のブロック図；
図２４は図２３に続く第２実施形態の機能構成のブロック図；
図２５は図２４における処理対象情報テーブルの説明図；
図２６は図２４における属性情報テーブルの説明図；
図２７は図２３、図２４の関連情報管理の基本的な処理手順のフローチャート；
図２８は図２７のステップＳ１〜Ｓ４に対応した関連情報自動登録処理のフローチャート；
図２９は図２８に続く関連情報自動登録処理のフローチャート；
図３０は図２７のステップＳ３における処理対象情報処理のフローチャート；
図３１は図２７のステップＳ５における関連情報表示処理のフローチャート；
図３２は情報Ａの属性情報テーブルの登録最新日時に基づいた関連情報一覧の説明図；
図３３は本発明における関連情報ユーザ登録処理のフローチャート；
図３４は本発明における関連情報ユーザ削除処理のフローチャート；
図３５は図２３、図２４の実施形態で情報を一括して処理する場合の処理対象情報テーブルの生成説明図；
図３６は図２３、図２４の実施形態で情報毎に処理する場合の処理対象情報テーブルの生成説明図；
図３７は図３６の情報毎に処理する場合の処理対象情報テーブル生成処理のフローチャート；
図３８は図２３、図２４の実施形態におけるファイルの一括処理に伴う属性情報テーブルの変更処理の説明図；
図３９は図３８における属性情報テーブルの更新処理のフローチャート；
図４０は図３８に続く更新処理のフローチャート；
図４１は図２３、図２４の実施形態におけるファイルの一括処理に伴う関連情報の属性情報テーブルに対する変更処理の説明図；
図４２は図４１に続く属性情報テーブルに対する変更処理の説明図；
図４３は図４１、図４２における関連情報の属性情報テーブル更新処理のフローチャート；
図４４は図４３に続く属性情報テーブル更新処理のフローチャート；
図４５は本発明の関連情報管理をネットワークに適用した場合の説明図；
図４６は本発明で監視対象とするユーザ処理がショートカットに対する操作として行われた場合の説明図；
【発明を実施するための最良の形態】                  （単一情報のユーザ処理に基づく関連情報管理）
図１は本発明による関連情報管理のプログラムが適用されるホストコンピュータのハードウェア構成のブロック図である。図１において、ホストコンピュータ１０は、ＣＰＵ１２、バス１４、ＲＯＭ１６、ＲＡＭ１８及び入出力ユニット２０からなり、入出力ユニット２０を介して、ユーザインタフェース入力部２２、ユーザインタフェース出力部２４及び外部記憶装置２６を接続している。ユーザインタフェース入力部２２としてはキーボード、マウスなどがあり、ユーザインタフェース出力部２４としてはディスプレイ、プリンタ、更にはインターネットに対する通信回線などがある。外部記憶装置２６としては、通常、ハードディスクドライブＨＤＤを使用している。ＣＰＵ１２は、ＲＯＭ１６、ＲＡＭ１８、入出力ユニット２０、ユーザインタフェース入力部２２、ユーザインタフェース出力部２４及び外部記憶装置２６を制御する。ＲＯＭ１６とＲＡＭ１８はプログラム実行のための内部記憶装置である。入出力ユニット２０は、ユーザインタフェース入力部２２、ユーザインタフェース出力部２４及び外部記憶装置２６、更には、その他の外部機器との間でデータの入出力を行う。ＣＰＵ１２は、ＲＯＭ１６に予め記憶されているプログラムもしくは外部記憶装置２６からＲＡＭに読み込まれたプログラムを実行することにより、本発明の関連情報管理のための処理を実行する。またホストコンピュータ１０で実行されるプログラムは、マイクロソフト社のウィンドウズＸＰ（Ｒ）やリナックスなどのオペレーティングシステムＯＳに加え、アプリケーションプログラムとして本発明による関連情報管理のためのプログラムを実行する。
図２、図３は、本発明による関連情報管理の第１実施形態の機能構成のブロック図である。図２、図３において、本発明により提供される関連情報管理部４０に対してユーザインタフェース２８が設けられており、ユーザインタフェース２８にあってはユーザが文書や画像の作成または編集などの作業を行っている。具体的には、例えばマイクロソフト社のウィンドウズＸＰ（Ｒ）を例に取ると、ワード（Ｒ）やエクセル（Ｒ）などのアプリケーションを使用してファイルのアクセスにより文書作成や編集を行っており、例えばワード（Ｒ）による文書作成中にエクセル（Ｒ）に切り替えて必要なデータを利用するような作業を行う。この例では、異なるアプリケーションで扱う情報Ａ，Ｂ，Ｃを示しており、ユーザの操作により情報Ａと情報Ｂの間で、処理の遷移３０、データのコピー３２、データの移動３４、リンク３６などの処理が必要に応じて行われている。本発明による関連情報管理部４０には、処理監視部４２、プロセス管理テーブル作成部４４、プロセス管理テーブル４６、処理解析部４８、属性情報テーブル５０、属性情報読込部５２、属性情報書出部５４、ユーザ属性情報登録部５６、ユーザ属性情報削除部５８、関連情報表示部６０及び関連度計算部６２が設けられている。処理監視部４２は、ユーザインタフェース２８においてユーザがある情報に対し予め定めた処理を実行すると、この処理を検知して処理解析部４８に渡す。この処理監視部４２で所定の処理を監視して検知する処理は、処理のフックとして知られており、この実施形態にあっては次に列挙する処理をフックする。
（１）情報へのアクセス開始・終了
（２）他の情報へのリンク
（３）他の情報の読み込み
（４）プロセスやスレッド間の処理の遷移
（５）プロセスやスレッド間のデータコピー
（６）プロセスやスレッド間のデータ移動
（７）新しいプロセスやスレッドの生成
また処理監視部４２でフックする情報には、ファイルやＷＷＷのホームページなどがある。処理解析部４８は、第１処理解析部４８−１としての機能により、処理監視部４２からのフックした処理に関するデータを受領すると、処理を実行された情報が新しい情報か否かを判断する。例えば処理解析部４８は、プロセス管理テーブル４６を参照して、処理を実行された情報が登録済みかどうかで新しい情報かどうかを判断する。ここでプロセス管理テーブル４６には、実行中のプロセスとプロセスがアクセスしている情報の対応関係が登録されている。このプロセス管理テーブル４６の登録はプロセス管理テーブル生成部４４により行われる。プロセス管理テーブル生成部４４は、処理解析部４８を介して実行中のプロセスや各プロセスがアクセスしている情報を知り、プロセスと情報との対応関係を登録したプロセス管理テーブル４６を生成したり更新したりする。このプロセス管理テーブル４６は、例えば図４の内容を持っている。図４において、プロセス管理テーブル４６はプロセス７０とプロセスがアクセスしている情報名７２の項目を持ち、この例ではプロセス１に情報Ａが登録され、プロセス２にＢが登録され、プロセス３に情報Ｃが登録され、更にプロセス４に情報Ｄが登録されている。
処理解析部４８がプロセス管理テーブル４６の参照により、フックした処理が実行された情報が新しい情報であった場合には、プロセス管理テーブル生成部４４にプロセス管理テーブル４６の更新を指示する。これを受けてプロセス管理テーブル生成部４４は、フックした処理に関するデータに基いてプロセスと新しい情報との対応関係をプロセス管理テーブル４６に登録する。また処理解析部４８は、第２処理解析装置４８−２としての機能により、抽出された情報間の関係を登録した属性情報テーブルを各プロセスの情報毎に生成する。このため属性情報読込部５２に対し処理が実行された新しい情報に対応した属性情報テーブルの読込みを指示する。図１の外部記憶装置２６に新しい情報の属性情報テーブルが存在すれば、その属性情報テーブルを外部記憶装置から読み込んで属性情報テーブル格納部５０に展開する。もし新しい情報の属性情報テーブルが外部記憶装置２６に存在しない場合には、処理解析部４８が属性情報テーブル格納部５０に新しい情報の属性情報テーブルを作成する。
ここで属性情報テーブル格納部５０に情報Ａの属性情報テーブル５０−１が存在し、またプロセス管理テーブル４６に図２のようなプロセスと情報の対応関係の登録が行われている状態を例に取ると、属性情報テーブル５０−１は図５のテーブル内容を持っている。図５において、情報Ａの属性情報テーブル５０−１には、情報Ａに関連する関連情報Ｂ，Ｃ，Ｄ，Ｅ，Ｆが登録されている。即ち、属性情報テーブル５０−１における関連情報名７４の項目に、関連情報として情報Ｂ〜Ｆが登録される。このような属性情報テーブルに対応するある情報に対する関連情報としては、次のような情報を登録する。
（１）ある情報と同時期にアクセスしていた他の情報
（２）ある情報と処理を遷移した他の情報
（３）ある情報とデータをコピーした他の情報
（４）ある情報とハイパーリンクを貼った他の情報
（５）ある情報へ読み込んだ他の情報
（６）ユーザが直接、属性情報テーブルに登録した情報
例えば属性情報テーブル５０−１において、情報Ｂは情報Ａとデータをコピーした情報である。情報Ｃは情報Ａと同時期にアクセスしていた情報である。情報Ｄは情報Ａとデータをコピーした情報であり且つデータを移動した情報である。情報Ｅは情報Ａとハイパーリンクを貼った情報である。更に情報Ｆはユーザが直接登録した情報である。ここで属性情報テーブルに対する関連情報の登録は、処理元となる情報Ａの属性情報テーブル５０−１に登録すると同時に、処理先となる他の情報の属性情報テーブル５０−２にも登録する。例えば情報Ａから情報Ｂにデータをコピーした場合、情報Ａの属性情報テーブル５０−１の関連情報名７４に情報Ｂを記録し、同時に情報Ｂの属性情報テーブル５０−２の関連情報名７４に情報Ａを登録する。更にある情報の属性情報テーブルは、関連情報に加え、次のような属性情報を登録する。
（１）処理の遷移回数
（２）データをコピーした回数、コピーしたデータの量
（３）データを移動した回数、移動したデータの量
（４）ハイパーリンクの回数
（５）読み込んだ回数（必要な場合は読み込んだデータの量）
（６）ユーザが直接、属性情報テーブルに登録したことを示すフラグ
（７）属性情報を登録した最新日時
これに対応して図５の情報Ａの属性情報テーブル５０−１には、関連情報名７４に続いて処理遷移回数７６、データコピー回数７８、データコピー量８０、データ移動回数８２、データ移動量８４、ハイパーリンク回数８６、読込み回数８８、直接登録フラグ９０、登録最新日時９２が、属性項目として設けられている。ここで属性情報テーブルの登録項目である処理遷移回数７６とは、マイクロソフト社のウィンドウズＸＰ（Ｒ）やリナックスなどのウィンドウシステムを備えたＯＳの場合、ウィンドウを遷移した回数などを表わす。例えばウィンドウズＸＰ（Ｒ）でワード（Ｒ）とエクセル（Ｒ）を使っていた場合、ワード（Ｒ）から浮くセル（Ｒ）へや、円セル（Ｒ）からワード（Ｒ）へのウィンドウを遷移した回数である。また属性情報テーブルに既に関連情報名が登録済みの場合、該当する情報に上書き登録を行う。
再び図３を参照するに、処理解析部４８による属性情報テーブルの読込みもしくは作成時点で処理を実行された情報に対応する属性情報テーブルが属性情報テーブル格納部５０に存在する場合、既に存在している属性情報テーブルを更新する。例えばユーザインタフェース２８において、情報Ｂへのアクセスを開始した時点で既に情報Ａへアクセスしていた場合などである。この場合には、情報Ａの属性情報テーブル５０−１は既に存在しており、情報Ｂの属性情報テーブルの読み込みもしくは作成後、情報Ｂの属性情報テーブル５０−２に対する関連情報及び情報Ａの属性情報テーブル５０−１に対する関連情報を更新する。即ち、情報Ｂの属性情報テーブル５０−２に関連情報Ａに関する属性データを登録し、情報Ａの属性情報テーブル５０−１には関連情報Ｂに関する属性データを登録する。一方、処理解析部４８で処理監視部４２から受領したフックした処理に関するデータから、処理を実行された情報が新しい情報ではなく且つ情報のアクセス終了でもなかった場合には、処理解析部４８は処理の実行された情報の属性情報テーブルと処理の実行された情報に関連する関連情報の属性情報テーブルを更新する。例えばユーザが情報Ｂから情報Ａに処理を遷移させた場合、情報Ｂの属性情報テーブル５０−２と情報Ｂに関連する情報Ａの属性情報テーブル５０−１を更新する。即ち、情報Ｂの属性情報テーブル５０−２に関連情報Ａに関する属性データを登録し、情報Ａの属性情報テーブル５０−１には関連情報Ｂに関する属性データを登録する。更に処理解析部４８が、処理監視部４２でフックした処理が情報へのアクセス終了を判断した場合には、プロセス管理テーブル生成部４４にプロセス管理テーブル４６から終了したプロセスとそのプロセスがアクセスしていた情報との対応関係を表していた登録データの削除を行わせる。更に処理解析部４８は、属性情報書出部５４にプロセス管理テーブル４６から削除した情報の属性情報テーブルの外部記憶装置への書出しを指示する。
属性情報登録部５６は、ユーザインタフェース２８でアクセスしている情報の属性情報テーブルに対し、ユーザの操作により関連情報を直接登録する。また属性情報削除部５８は、ユーザインタフェース２８でアクセス中の情報の属性情報テーブルからユーザの操作により指定された関連情報を削除する。関連情報表示部６０は、ユーザインタフェース２８で現在アクセス中の情報の属性情報テーブルの内容に基づいて、アクセスしている情報の関連情報を例えばユーザインタフェース６４のように関連情報一覧６５として表示する。この関連情報一覧６５には例えば情報Ｂ，Ｃが表示されている。関連情報一覧６５における複数の関連情報の表示は、関連情報表示ルール６６に従ってソートした順番に表示される。この関連情報表示ルール６６としては次のものがある。
（１）関連度
属性情報テーブルの属性データを用いて関係性の深さを示す関連度を計算し、関連度の降順または昇順でソートして表示する。関連度は関連度計算部６２で計算され、例えば図４の属性情報テーブルにおける各属性項目の値に重みを掛け合わせ、その総和で関連度を計算する。
（２）日時
属性情報テーブルに関連情報や属性データを登録した最新日時の降順または昇順でソートして表示する。
（３）関連情報名
属性情報テーブルの関連情報名の降順または昇順でソートして表示する。
図３のユーザインタフェース６４上における関連情報一覧６５にあっては、関連情報名の昇順でソートした順番で、情報Ａに関連する情報として関連情報Ｂ，Ｃを表示している。
ユーザインタフェース６４の関連情報一覧６５に表示された関連情報に対しては、ユーザがいずれかの関連情報を選択してアクセスする関連情報アクセス６８により、選択した関連情報を参照することができる。
図６は、図２、図３の実施形態による本発明の関連情報管理処理の基本的な処理手順のフローチャートである。図６において、まずステップＳ１でユーザの情報に対する処理の実行を監視する処理監視を行っており、ユーザが情報への処理を実行すると、処理をフックし、ステップＳ２でプロセス管理テーブルの生成を行う。このプロセス管理テーブルの生成は、図４のように、プロセス管理テーブル４６にプロセスと情報の対応関係を登録する。続いてステップＳ３で、ステップＳ１の処理の監視結果とステップＳ２で生成したプロセス管理テーブル４６を参照し、各プロセスの情報の間でどのような処理が行われたかを解析し、情報間の関係を抽出する。そしてステップＳ４で属性情報テーブルを生成し、抽出した情報間の関係を登録する。具体的には、処理元となる属性情報テーブルに関連情報を登録し、同時に処理先となる情報の属性情報テーブルに関連情報を登録する。続いてステップＳ５で、ユーザが現在アクセス中の情報に対応した属性情報テーブルに基づいて関連情報表示を行う。更にステップＳ６で、表示された関連情報の中から適宜の関連情報を選択することで関連情報にアクセスすることができる。
図７、図８は、図６のステップＳ１〜Ｓ４に対応した本発明による関連情報自動登録処理のフローチャートである。この関連情報自動登録処理は、ステップＳ１でユーザがある情報への処理を実行すると、ステップＳ２でユーザによる情報への処理をフックし、フックした処理に関するデータが処理監視部４２より処理解析部４８に引き渡される。これを受けて処理解析部４８は、ステップＳ３で、処理が実行された情報は新しい情報か否か確認する。具体的には、プロセス管理テーブル４６を参照し、未登録であれば新しい情報と判断し、ステップＳ４の処理に進む。ステップＳ４にあっては、プロセス管理テーブル生成部４４に対する指示でプロセス管理テーブルの生成処理を実行し、プロセス管理テーブル４６にプロセスと情報の組を追加登録する。続いてステップＳ５で処理の実行情報の属性情報テーブルの外部記憶装置２６からの読込みを指示する。この読込指示に対し、ステップＳ６で処理の実行情報の属性情報テーブルが外部記憶装置に存在するか否かチェックし、存在していなければ、ステップＳ７で処理の実行情報の属性情報テーブルを新たに作成する。外部記憶装置に存在すれば、ステップＳ８で実行情報の属性情報テーブルを外部記憶装置から読み込む。そしてステップＳ９で実行情報に関連する関連情報が既にある場合には、実行情報の属性情報テーブルと関連情報の属性情報テーブルをそれぞれ更新する。例えば実行情報がＢ、関連情報がＡであった場合には、実行情報Ｂの属性情報テーブル５０−１に情報Ｂに関する属性データを登録し、関連情報テーブルＡの属性情報テーブル５０−１には情報Ｂに関する属性データを登録する。一方、ステップＳ３で処理を実行された実行情報が新しい情報でなかった場合には、ステップＳ１０に進み、実行情報へのアクセス終了の有無をチェックする。アクセス終了でなければステップＳ１１に進み、実行情報の属性情報テーブルとその関連情報の属性情報テーブルをそれぞれ更新する。ステップＳ１０で実行情報へのアクセス終了であった場合には、ステップＳ１２に進み、プロセス管理テーブルからの実行情報の項目削除を行った後、ステップＳ１３で実行情報の属性情報テーブルを外部記憶装置２６に書き出して、一連の関連情報自動登録処理を終了する。
ここで図７のステップＳ２のフック処理の詳細を説明する。ウィンドウズ（Ｒ）等のＯＳで処理のフックを実現するためには、監視したい処理が呼び出された場合に処理を監視する関数である処理監視関数が呼び出されるようにする。この方法には、
（１）関数のアドレスを書き換える方法
（２）コールバック関数による方法
の２つがある。
図９は関数のアドレスを書き換えるフック処理の実現方法である。図９（Ａ）はフック処理導入前のメモリマップであり、監視対象処理の呼出コマンド「ＣＡＬＬ  ｘｘｘｘ」によってアドレスｘｘｘｘの監視対象処理の関数１１６を呼び出すことができる。図９（Ｂ）は関数のアドレスを書き換える方法によりフック処理を導入した後のメモリマップである。即ち、アドレスｚｚｚｚに処理監視関数１１８を準備し、監視対象処理の呼出コマンド１１４のアドレスを処理監視関数１１８のアドレスｚｚｚに変更した「ＣＡＬＬ  ｚｚｚｚ」とする。そして処理監視関数１１８に、監視対象処理の関数１６に対する呼出コマンド１２０として「ＣＡＬＬ  ｘｘｘｘ」を設けておく。このような図９（Ｂ）による関数のアドレス書き換えにより監視対象処理の呼出コマンド１１４を実行すると、フック処理の導入前は監視対象処理の関数１１６が呼び出されるが、フック処理導入後にあっては処理監視関数１１８が呼び出される。この処理監視関数１１８は、監視対象処理の内容を図３の処理解析部４８に引き渡した後、監視対象処理の関数１１６を呼び出す。
図１０はフック処理を実現する他の方法としてコールバック関数を用いた方法である。このフック処理の方法は、イベントフラグ１２４とこれに対応付けられたコールバック関数１２２−１，１２２−２，…を用いる。イベントフラグ１２４は、ある処理が呼び出されたときに状態が変化するフラグである。本発明の場合には、監視対象処理の呼出コマンド１１４の「ＣＡＬＬ  ｘｘｘｘ」の実行により監視対象処理の関数１１６が呼び出されたときに、呼び出された監視対象処理の関数１１６がイベントフラグ１２４の状態を変更する。イベントフラグ１２４の状態はイベントフラグ監視プログラム１２２により監視されている。イベントフラグ監視プログラム１２２は、イベントフラグ１２４の状態が変化すると、これに対応している予め登録されているコールバック関数を呼び出す。この関係は、ちょうどハードウェアによる割込みがイベントフラグ１２４に相当し、また割込ベクターに登録された関数がコールバック関数に相当する。本発明のフック処理のためには、フックしたい監視対象処理が呼び出されたときにイベントフラグ１２４を変更するように、監視対象処理の関数１１６にフラグ変更機能を設けておく。また処理監視関数として、処理監視関数１３０，１３２をそれぞれアドレスｘｘｘｘ，ｙｙｙｙに持つ場合、イベントフラグ監視プログラム１２２に各処理監視関数１３０，１３２をコールバック関数１２２−１，１２２−２のようにアドレスを登録しておく。この仕組みにより、監視対象処理の呼出コマンド１１４の「ＣＡＬＬ  ｘｘｘｘ」の実行により監視対象処理の関数１１６が呼び出されると、イベントフラグ変更１２６の処理を受けてイベントフラグ１２４の状態が変化し、イベントフラグ監視プログラム１２２によってコールバック関数１２２−１を使用して処理監視関数１３０が呼ばれる。処理監視関数１３０は、監視対象処理の内容を調べ、図３の処理解析部４８に引き渡す。
図１１は、図６のステップＳ２におけるプロセス管理テーブル生成処理のフローチャートであり、プロセスとユーザがアクセスしている情報が１対１に対応している場合のプロセス管理テーブルの生成処理である。まずステップＳ１で、処理解析部４８からプロセス管理テーブル生成部４４がプロセス管理テーブル４６の更新指示を受けると、ステップＳ２で、フックした処理に関するデータからプロセスがプロセス管理テーブル４６に未登録のプロセスか否か確認する。ここで処理解析部４８から与えられるフックした処理に関するデータとしては、フックした処理の対象プロセスを一意に決定する識別情報と、このプロセスがアクセスしている情報名を含んでいる。ステップＳ２でプロセス管理テーブル４６に登録済みのプロセスであった場合には、プロセス管理テーブルの生成処理を終了する。未登録のプロセスであった場合にはステップＳ３に進み、プロセス管理テーブルにプロセスとこのプロセスがアクセスしている情報の組を登録することにより、プロセス管理テーブル４６を更新する。
図１２は、図６のステップＳ５における関連情報表示処理のフローチャートである。この関連情報表示処理は、ステップＳ１でユーザがある情報の関連情報の表示を選択して指示すると、ステップＳ２で、指示された情報の属性情報テーブルが存在するか否かチェックする。属性情報テーブルが存在すれば、ステップＳ３で属性情報テーブルの関連情報について関連度でソートして表示するか否かチェックする。関連度によるソート表示が指定されていた場合には、ステップＳ４に進み、指示情報の属性情報テーブルから各関連情報との関連の深さを示す関連度を計算する。最終的にステップＳ５で、指定されたソート条件と表示条件で関連情報を表示する。この指定ソート条件としては、図３の関連情報表示ルール６６に示した関連度、日時または関連情報名の３つがある。ここで図１２の関連情報表示処理において、関連情報を表示する対象となる情報は、例えば次のように指定する。現在ユーザが処理中の情報に対応する関連情報を表示する。例えばウィンドウズＸＰ（Ｒ）でワード（Ｒ）とエクセル（Ｒ）を使っており、ワード（Ｒ）で編集中の場合、ワード（Ｒ）で編集しているファイルの関連情報を表示する。
関連情報を表示する際に、どの情報の関連情報を表示するかをユーザが直接指定する。例えばウィンドウズＸＰ（Ｒ）のファイル参照ダイアログでファイルを指定し、そのファイルの関連情報を表示する。
図１３は、現在ユーザが処理中の情報に対応した関連情報の表示の具体例である。図１３において、作業画面９４には、アプリケーション１の情報Ａのウィンドウ９６、アプリケーション２の情報Ｂのウィンドウ９８、更にアプリケーション３の情報Ｃのウィンドウ１００の３つが存在しており、現在、ユーザはアプリケーション１の情報Ａのウィンドウ９６で処理を実行中である。このような場合には、作業画面９４の右下に本発明の関連情報管理を実現する実装アプリケーションの関連情報メニューウィンドウ１０２が表示される。この関連情報メニューウィンドウ１０２には、登録メニューボタン１０４、削除メニューボタン１０５、一覧メニューボタン１０６が設けられている。関連情報を表示したい場合には、一覧メニューボタン１０６をマウスなどによりクリックすると、関連情報一覧１０８が表示される。関連情報一覧１０８には「情報Ａの関連情報を表示します」のメッセージが表示され、その下に情報Ａの関連情報Ｂ，Ｃが表示され、更にアクセスのためのチェックボックス１１０，１１１が設けられている。このため、ユーザが関連情報一覧から例えば情報Ｃを参照した場合には、チェックボックス１１１をマウスでクリックすることで、作業画面９４に情報Ｃを展開することができる。
図１４は、図１２の関連情報表示処理の対象となる情報Ａの属性情報テーブル５０−１と共に、これに基づいて表示された関連情報一覧１８８を表わしている。この関連情報一覧１８８は、情報Ａの属性情報テーブル５０−１の例えば登録最新日時を昇順にソートして表示している。即ち、登録最新日時の新しい情報Ｆ，Ｅ，Ｄ，Ｃ，Ｂの順に、関連情報一覧１８８にソートした表示が行われている。もちろん関連情報表示としては、これ以外に、関連情報名によるソートあるいは書類遷移回数から読込回数までの属性データに所定の重みを掛けて総和を求めた関連度のソートによる表示であってもよういことはいうまでもない。
図１５、図１６は、図６のフローチャートに従った関連情報管理処理の全体的な処理のタイムチャートである。図１５、図１６において、いま情報へのユーザ処理１３４として、処理１３６でユーザが情報Ａへのアクセスを開始したとすると、処理監視部４２が処理１３８として情報Ａへのアクセスの開始をフックし、フックに伴うデータを処理解析部４８に引き渡す。これを受けて処理解析部４８は、プロセス管理テーブル生成部４４に更新を指示し、プロセス管理テーブル４６は処理１４０として、プロセス管理テーブル４６に情報Ａの項目、即ちプロセスと情報Ａの組を追加する。また処理解析部４８は、情報Ａの属性情報テーブルの読込みを属性情報読込部５２に指示し、処理１４２において情報Ａの属性情報テーブルの読込みが行われる。この情報Ａに対するユーザの処理中に情報へのユーザ処理１３４として、処理１４６でユーザが情報Ｂへのアクセスを開始したとすると、処理監視部４２が処理１４８として情報Ｂへのアクセス開始をフックし、処理解析部４８にフックに伴うデータを引き渡す。処理解析部４８は、処理１５０によりプロセス管理テーブル生成部４４にプロセス管理テーブルの更新を指示し、処理１５２でプロセス管理テーブル４６に情報Ｂの項目、即ちプロセスと情報Ｂの組を追加登録する。更に処理解析部４８は処理１５４により、属性情報読込部５２に対し情報Ｂの属性情報テーブルの読込みを指示し、処理１３６として情報Ｂの属性情報テーブルの読込みが行われ、処理解析部４８の処理１５８に引き渡す。処理１５８にあっては、読み込まれた情報Ｂの属性情報テーブルへの関連情報として同時にアクセスした情報Ａを登録する。また処理１６０として、情報Ａの属性情報テーブルへの関連情報として同時にアクセスした情報Ｂを登録する。更に、情報へのユーザ処理１３４として処理１６２において情報Ｂから情報Ａへのユーザの処理対象変更（処理遷移）が行われると、処理監視部４２が処理１６４で情報Ｂから情報Ａへの処理遷移をフックし、処理解析部４８にフックに伴うデータを引き渡し、処理１６６で情報Ａの属性情報テーブルに情報Ｂから情報Ａへの処理遷移を登録する。同時に、処理１６８で情報Ｂの属性情報テーブルへ情報Ｂから情報Ａへの処理の遷移を登録する。この状態で、関連情報表示部６０において処理１７０により情報Ａの関連情報表示の指示が行われ、このときソート条件として関連度が設定されていたとすると、関連度計算部６２が処理１７２で情報Ａの各関連情報の関連度を計算し、この関連度に基づき関連情報表示部６０が処理１７４で関連度でソートした情報Ａの関連情報を一覧表示する。更に、情報へのユーザ処理１３４における処理１７６でユーザによる情報Ａへのアクセス終了が行われると、処理監視部４２が処理１７８で情報Ａへのアクセスの終了をフックし、処理解析部４８にフックしたデータを引き渡す。これを受けて処理解析部４８は、処理１８０でプロセス管理テーブル生成部４４に更新を指示し、処理１８２においてプロセス管理テーブル４６から情報Ａの項目削除が行われる。また処理解析部４８は、処理１８４により属性情報書出部５４に書込指示を行い、これを受けて処理１８６で属性情報Ａの属性情報テーブルを外部記憶装置に書き出す。
図１７は、図３の関連情報管理部４０に設けているユーザ属性情報登録部５６による関連情報ユーザ登録処理のフローチャートである。ステップＳ１において、ユーザがある情報の関連情報の登録を指示すると、ユーザ属性情報登録部５６が指示対象となっている情報の属性情報テーブルが読込済みか否かをステップＳ２で判断する。属性情報テーブルが読み込まれていない場合には、ステップＳ３に進み、属性情報読込部５２に対し指示された情報（以下「指示情報」という）の属性情報テーブルの読み込みを指示する。続いてステップＳ４で、指示情報の属性情報テーブルが外部記憶装置に存在するか否かチェックする。存在していなければ、ステップＳ５で指示情報の属性情報テーブルを新たに生成する。存在していれば、ステップＳ６で外部記憶装置から指示情報の属性情報テーブルを読み込む。ステップＳ２で属性情報テーブルが読込済み、もしくはステップＳ３〜Ｓ５により外部から読込みまたは新規生成された場合には、ステップＳ７で指示情報の属性情報テーブルにユーザが指定した関連情報を登録する。この場合の登録する関連情報は、例えばウィンドウズＸＰ（Ｒ）のファイル参照ダイアログでファイルを指定し、そのファイルを関連情報として登録する。また関連情報を登録する際に、その属性データとして図５の情報Ａの属性情報テーブル５０−１の直接登録フラグ９０の項目における情報Ｆのように、直接登録したことを示すフラグ「１」を立てる。最後にステップＳ８で、登録済みの属性情報テーブルを外部記憶装置２６に書き出す。
図１８は、図３の関連情報管理部４０に設けたユーザ属性情報削除部５８による関連情報ユーザ削除処理のフローチャートである。ステップＳ１でユーザがある情報（以下「指示情報」という）の関連情報の削除を指示すると、ユーザ属性情報削除部５８はステップＳ２で指示情報の属性情報テーブルの読込済みか否か判断し、属性情報テーブルが存在しなければ、ステップＳ３で属性情報読込部５２に対し指示情報の属性情報テーブルの読込みを指示する。続いてステップＳ４で指示情報の属性情報テーブルが外部記憶装置２６に存在するか否かチェックし、存在しなければ処理を終了する。存在していた場合には、ステップＳ５で指示情報の属性情報テーブルを外部記憶装置から読み込む。ステップＳ２で指示情報の属性情報テーブルが読込済みであるか、あるいはステップＳ３〜Ｓ５により外部記憶装置から読み込まれた後は、ステップＳ６で指示情報の属性情報テーブルから関連情報を一覧表示する。続いてステップＳ７で、削除する関連情報をユーザが指示し、ステップＳ８でユーザが確定操作を行うと、属性情報テーブルから指示された関連情報を削除する。最後にステップＳ９で、削除済みの属性情報テーブルを外部記憶装置２６に書き出す。
図１９、図２０は、本発明による関連情報管理の第１実施形態の変形例の機能ブロック図である。この実施形態の関連情報管理は、マルチスレッドＯＳで実行される複数のスレッドを含むプロセス管理テーブルの生成により関連情報の管理を行うようにしたことを特徴とする。マルチスレッドＯＳにあっては、プログラム（プロセス）の中で複数のスレッドを実行することができる。スレッドとは、マルチスレッドＯＳでのプログラムの実行単位である。即ち、１つのプロセスで複数の情報にアクセスし、それぞれの情報を別のスレッドで処理することが可能である。この実施形態にあっては、表示スレッドを例に取っている。図１９において、ユーザインタフェース１９０には、同時にアクセスする情報としてプロセス１による情報とプロセス２による情報が設けられ、プロセス１，プロセス２はそれぞれ２つの表示スレッドにより、情報Ａ，情報Ｂ、及び情報Ｃ，情報Ｄをアクセスしている。図２０の情報管理部４０には、図３の実施形態と同様、処理監視部４２、処理解析部４８、属性情報テーブル格納部５０、属性情報読込部５２、属性情報書出部５４、ユーザ属性情報登録部５６、ユーザ属性情報削除部５８、関連情報表示部６０及び関連度計算部６２が設けられている。これに加え図２０の実施形態にあっては、マルチスレッドＯＳに対応してプロセス管理テーブル生成部１９４、プロセス管理テーブル１９６、表示スレッド管理テーブル生成部１９８及び表示スレッド管理テーブル２００を設けている。
図２１は、図２０の情報管理部４０で生成される表示スレッド管理テーブル２００、仮プロセス管理テーブル２０２及びプロセス管理テーブル１９６の具体例である。表示スレッド管理テーブル生成部１９８は、処理解析部４８を介して表示中のスレッドや各スレッドが表示している情報を認識し、スレッドと情報の関係をまとめた図２１の表示スレッド管理テーブル２００を生成したり更新する。図２１の表示スレッド管理テーブル２００は、図２０のユーザインタフェース１９０のように、スレッド１が情報Ａを表示中であり、スレッド３が情報Ｃを表示中であることが登録されている。プロセス管理テーブル生成部１９４は、処理解析部４８を介して実行中のプロセスや各プロセスがアクセスしている情報を認識し、まず一時的にプロセスと情報との対応関係をまとめた図２１の仮プロセス管理テーブル２０２を生成したり更新したりする。図２１の仮プロセス管理テーブル２０２の例では、プロセス１が情報Ａと情報Ｂを処理中であり、プロセス２が情報Ｃと情報Ｄを処理中であることが、仮プロセス管理テーブル２０２に登録されている。更にプロセス管理テーブル生成部１９４は、表示スレッド管理テーブル生成部１９８を介して表示スレッド管理テーブル２００を参照し、仮プロセス管理テーブル２０２とマージすることによりプロセス管理テーブル１９６を生成する。即ちプロセス管理テーブル１９６には、表示スレッド管理テーブル２００と仮プロセス管理テーブル２０２のマージによりプロセス１にスレッド１とスレッド２が登録され、且つスレッド１に情報Ａが、スレッド２に情報Ｂが登録される。またプロセス２について、スレッド３とスレッド４が登録され、更にスレッド３に情報Ｃが、スレッド４に情報Ｄが登録される。このプロセス管理テーブル１９６によってプロセス、スレッド、情報との三者の対応関係が管理される。
図２２は、図１９、図２０の実施形態におけるプロセス管理テーブル生成処理のフローチャートである。ウィンドウズＸＰ（Ｒ）などのマルチスレッドＯＳでは、スレッドがプログラムの実行単位となっており、このとき１つのプロセス内で複数のスレッドが実行され、プロセスとユーザがアクセスしている情報が１対１に対応しないことがある。例えばウィンドウズＸＰ（Ｒ）のワード（Ｒ）で複数のファイルにアクセスした場合、ワード（Ｒ）のプロセスは１つだけであるがスレッドは各ファイルの処理ごとに生成される。具体的には、ワード（Ｒ）のプロセスが生成したあるスレッドがファイルを開いても、別のスレッドが開いたファイルを画面に表示する。このようにプロセスと情報が１対１に対応していない場合、図２２のプロセス管理テーブル生成処理が行われる。このフローチャートにあっては、表示スレッド管理テーブル生成部１９８に加え、プロセス管理テーブル作成部１９４を仮プロセス管理テーブル生成処理部１９４−１とテーブルマージ処理部１９４−２の機能に分けてフローチャートを示している。まず表示スレッド管理テーブル生成処理部１７８は、ステップＳ１０１で解析処理部４８から渡されたフックした処理に関するデータに基づき、フックした処理が表示スレッド管理テーブル２００に未登録のスレッドに対するものか否か、ステップＳ１０２で確認する。登録済みのスレッドであった場合には、表示スレッド管理テーブル２００の生成処理を終了する。未登録のスレッドであった場合には、ステップＳ１０３に進み、表示スレッド管理テーブルにスレッドと情報の組を登録して更新する。例えば、ウィンドウズＸＰ（Ｒ）のワード（Ｒ）で複数のファイルにアクセスを開始した場合を考えると、スレッドが各ファイルをウィンドウに表示すると、その処理を処理監視部４２がフックして処理解析部４８に渡す。処理解析部４８は、各ウィンドウのスレッドを一意に表わす識別情報とウィンドウに表示しているファイルの名前（情報名）を表示スレッド管理テーブル生成部１７８に渡す。ウィンドウに表示しているファイルの名前は、タイトルバーの文字列などから取得する。このような解析処理部４８からのスレッド識別情報とウィンドウ表示のファイル名から、表示スレッド管理テーブル２００にスレッドと情報の組を登録する更新ができる。仮プロセス管理テーブル生成処理部１９４−１は、ステップＳ２０１で処理解析部４８から渡されたフックした処理に関するデータ、具体的にはプロセスを一意に決定する識別情報と、このプロセスがアクセスしている情報名を含むデータに基づき、フックした処理が仮プロセス管理テーブル２０２に未登録のプロセスに対するものか否か、ステップＳ２０２で確認する。登録済みのプロセスであれば、仮プロセス管理テーブル２０２の更新処理を終了する。未登録のプロセスであれば、ステップＳ２０３で仮プロセス管理テーブルにプロセスと情報の組を登録する。例えばウィンドウズＸＰ（Ｒ）のワード（Ｒ）で複数のファイルにアクセスを開始した場合、１つのワード（Ｒ）のプロセスに対しアクセスを開始した複数のファイル名を情報名として仮プロセス管理テーブル２０２に登録する。このようにして表示スレッド管理テーブル生成部１９８及び仮プロセス管理テーブル生成処理部１９４−１による表示スレッド管理テーブル２００及び仮プロセス管理テーブル２０２の生成が済むと、テーブルマージ処理部１９４−２がステップＳ３０１における処理解析部４８からのプロセス管理テーブル１９６の更新依頼に基づき、ステップＳ３０２で仮プロセス管理テーブル２０２と表示スレッド管理テーブル２００を参照し、ステップＳ３０３で両者をマージしてプロセス管理テーブル１９６を更新する。このようなマルチスレッドＯＳを対象としたプロセス、スレッド、情報の対応関係を登録したプロセス管理テーブル１９６を生成した後の関連情報自動登録処理及び関連情報表示処理、更には関連情報参照のためのアクセスについては、図２、図３の実施形態におけるプロセスと情報が１対１に対応した場合と同様、プロセス単位に行われる情報のアクセスをフックして、処理元の情報の属性情報テーブル及び処理先の情報の属性情報テーブルのそれぞれの更新を行う。また、ユーザが実行中のスレッドに対応した情報の属性情報テーブルに基づく関連情報の表示、あるいはユーザが直接指定した情報についての属性情報テーブルに基づく関連情報の表示、更には表示された関連情報の選択による関連情報のアクセスも同様に行う。
（情報群に対するユーザ処理の関連情報管理）
図２３、図２４は、情報群に対するユーザ処理を対象とした本発明による関連情報管理の第２実施形態の機能構成のブロック図である。図２３、図２４において、本発明により提供される関連情報管理部２４０に対してはユーザインタフェース２２８が設けられており、ユーザインタフェース２２８にあっては、ユーザが文書や画像の作成または編集などのために複数の情報を格納した情報群に対し、移動、コピー、削除などの処理を行っている。この例では、情報群としてフォルダ２３０−１〜２３０−５を示している。例えばフォルダ２３０−１は、フォルダ内に情報Ａ，情報Ｂ，情報Ｃを格納しており、ユーザ処理２３２としては例えば、フォルダ２３０−１の中の情報Ａと情報Ｂを別のフォルダ２３０−２に移動する処理を行う。移動先のフォルダ２３０−２には既に情報Ｄと情報Ｅが格納されており、ここにフォルダ２３０−１から移動されてきた情報Ａ，情報Ｂが追加される。またフォルダ２３０−５にはフォルダ２３０−３，２３０−４が格納されており、フォルダ２３０−３，２３０−４を１つの情報としてコピー、移動、削除などの処理を行うこともできる。本発明による関連情報管理部２４０には、監視処理部２４２、処理対象情報収集部２４４、処理対象情報テーブル２４６、解析処理部２４８、属性情報テーブル格納部２５０、属性情報読込部２５２、属性情報書出部２５４、属性情報削除部２５５、ユーザ属性情報登録部２５６、ユーザ属性情報削除部２５８、関連情報表示部２６０及び関連度計算部２６２が設けられている。監視処理部２４２は、ユーザインタフェース２２８においてユーザがある情報群に対し移動、コピー、削除などの処理を実行すると、この処理を検知して解析処理部２４８に渡す。ここでユーザの処理の対象となる情報群とは次のような情報である。
（１）ファイル
（２）フォルダ
（３）ＷＷＷページ
（４）ファイルのリンク
また監視処理部２４２で監視するユーザによる処理は次のような処理である。
（１）情報のコピー
（２）情報の移動
（３）情報の削除
（４）情報のリンク生成
（５）情報のリンク移動
（６）情報のリンク削除
（７）ドラック・アンド・ドロップ
解析処理部２４８は、処理監視部２４２の監視結果からユーザの一括処理の対象となった情報群中の各情報を登録した処理対象情報テーブル２４６を生成する第１処理解析部２４８−１の機能を備え、これにより作成される処理対象情報テーブル２４６は、ユーザによる処理ごとに生成される。次に処理解析部２４８は、生成した処理対象情報テーブル２４６を参照し、処理対象情報テーブルに登録された各情報に対し、どのような処理が行われたかを解析して、各情報間の関係を抽出する第２処理解析部２４８−２としての機能を備える。更に、処理解析部２４８は、抽出された各情報間の関係を登録した属性情報テーブル例えば属性情報テーブル２５０−１を作成して、属性情報テーブル格納部２５０に格納する第３処理解析部２４８−３としての機能を備える。この属性情報テーブルは処理対象情報テーブル２４６に登録された各情報ごとに生成する。ここで解析処理部２４８により作成される処理対象情報テーブル２４６は、例えば図２５の処理対象情報テーブル２４６−１のようになる。この処理対象情報テーブル２４６−１は、図２３のユーザインタフェース２２８において、フォルダ２３０−１の情報Ａと情報Ｂをフォルダ２３０−２に一括して移動する処理についての監視処理部２４２より得られた監視結果に基づいて作成されている。即ち、処理対象情報テーブル２４６−１は、関連情報名２７０、情報種別２７２及び処理内容２７４で構成され、ユーザインタフェース２２８によるユーザによる一括した移動処理の監視結果に基づき、関連情報名２７０に「情報Ａ」と「情報Ｂ」が登録され、情報種別２７２としてそれぞれについて「処理対象」が登録され、更に処理内容２７４として「移動」が登録される。このようなユーザ一括処理の監視結果に基づいて作成された処理対象情報テーブル２４６−１には、更に図２４の処理対象情報収集部２４４によって、ユーザの処理対象となった処理元と処理先の情報群に含まれる処理対象とならなかった情報（対象外情報）を調べて登録する処理が行われる。
図２３のユーザインタフェース２２８におけるフォルダ２３０−１から２３０−２に対する情報Ａと情報Ｂの一括した移動処理にあっては、まず移動元のフォルダ２３０−１を調べることで、処理対象となっていない情報Ｃを検出し、これを図２１の関連情報名２７０に「情報Ｃ」として登録し、情報種別２７２としては「移動元」を登録する。なお処理内容２７４は処理対象となっていないことから、空きである。次に図２３の移動先のフォルダ２３０−２を調べ、「情報Ｄ」と「情報Ｅ」を収集し、図２５の関連情報名２７０に移動先から収集した「情報Ｄ」と「情報Ｅ」を登録し、情報種別２７２はそれぞれ「移動先」とする。この場合も処理内容２７４は処理対象となっていないことから空きとしている。ここではファイルを対象としたユーザによる一括した移動処理を例にとっているが、処理対象情報収集部２４４により調べて収集する処理元や処理先にある情報としては、ファイルを含めて次のような情報である。
（１）ファイル（アーカイブファイルに記憶されているファイルを含む）
（２）フォルダ
（３）データベース中の情報
（４）アプリケーションが処理中の情報
図２６は、図２４の解析処理部２４８により処理対象情報テーブル２４６に登録された各情報に対し、どのような処理が行われたかを解析して抽出された各情報間の関係を登録した属性情報テーブルの具体例であり、属性情報テーブルには、ある情報の関連情報と、ある情報と関連情報に対して行われた処理の内容や回数などの属性情報が記録される。図２６の属性情報テーブル２５０−１は、図２５の処理対象情報テーブル２４６−１に登録された情報Ａについて作成された属性情報テーブルの例である。属性情報テーブル２５０−１は、関連情報名２７５、コピー回数２７６、移動回数２７８、リンク生成回数２８０、リンク削除回数２８２、直接登録２８４及び登録最新日時２８６が設けられている。この場合、情報Ａの属性情報テーブル２５０−１であることから、画像情報名２７５には関連情報として情報Ｂ、情報Ｄ、情報Ｅが記録されている。ここで属性情報テーブル２５０−１について情報Ａと関連情報である情報Ｂとの関係を例に取ると、情報Ａと情報Ｂとはコピーが１０回、移動が６回、リンク生成が１回、一括処理として行われたことが記録され、更に情報Ｂに関する属性値情報を登録した最新日時は２００１／１２／２１／１０：００であることが記録されている。
更に処理解析部２４８は、処理対象となった情報群の各情報の属性情報テーブルに登録されている関連情報を調べ、調べた関連情報の属性情報テーブルに一括ユーザ処理対象となった情報群の各情報が登録されているかを調べる。これにより関連情報の属性情報テーブルに一括ユーザ処理対象となった情報群の各情報が登録されていた場合には、調べた関連情報の属性情報テーブルに登録されている一括ユーザ処理対象となった情報群の各情報の登録内容を、コピー、移動、削除などの処理内容に応じて変更する。更に図２４の関連情報管理部２４０に設けた属性情報読込部２５２は、処理解析部２４８の指示に従って属性情報テーブルを外部記憶装置から読み込む。また属性情報書出部２５４は、処理解析部２４８の指示に従って属性情報テーブルを外部記憶装置に書き出す。更に属性情報削除部２５５は、処理解析部２４８の指示に従って属性情報テーブルを外部記憶装置から削除する。関連情報表示部２６０は、関連度計算部２６２が求めた関連度や属性情報の登録日時、情報の名前などをソートして表示する。例えばユーザが情報Ａを指定した場合には、関連情報表示部６０はユーザインタフェース６２のように、関連情報一覧２６５として例えば情報Ｂ、情報Ｄ、情報Ｅを表示する。この関連情報一覧２６５における複数の関連情報の表示は、関連情報表示ルール２６６に従ってソートした順番に表示される。この関連情報表示ルール２６６として定められた関連度、日時、関連情報名の詳細は、図２、図３の第１実施形態における関連情報表示ルール６６と基本的に同じになる。更に図２４の関連情報管理部２４０に設けたユーザ属性情報登録部２５６は、選択した情報の属性情報テーブルに関連情報とその属性情報をユーザの指示により直接登録する。またユーザ属性情報削除部２５８は、選択した情報の属性情報テーブルから関連情報とその属性情報をユーザの指示により直接削除する。
図２７は、図２３、図２４の第２実施形態によるユーザの一括処理を対象とした関連情報管理処理の基本的な処理手順のフローチャートである。図２７において、まずステップＳ１で複数の情報を含む情報群、例えばフォルダに対するユーザの処理を監視する。ステップＳ１でユーザ一括処理に対する監視結果が得られると、次のステップＳ２でユーザ一括処理の内容を解析し、処理対象情報テーブルに登録する。次にステップＳ３で、ユーザ一括処理の処理元と処理先にある情報を収集し、処理対象情報テーブルに登録する。続いてステップＳ４で、ステップＳ２，Ｓ３の処理解析及び処理対象情報収集により得られた処理対象情報テーブルの内容に基づいて、各情報について属性情報テーブルを更新する。次にステップＳ５で、ある情報について、その属性情報テーブルに登録されている関連情報を表示し、ステップＳ６で、表示された関連情報をユーザが選択すると、選択した関連情報にアクセスすることになる。
図２８及び図２９は、図２３及び図２４の第２実施形態における属性情報自動登録処理のフローチャートであり、このフローチャートは図２７のステップＳ１〜Ｓ４の詳細を表わしている。図２８、図２９において、ステップＳ１でユーザが、ある情報群に対しある処理を実行したことが判別されると、ステップＳ２に進み、処理監視部２４２がユーザの処理を監視しており、監視結果を処理解析部２４８に通知する。ここでステップＳ１におけるユーザの処理としては、既に説明したように、情報のコピー、移動、削除などがある。またユーザが処理を行った情報群としては、既に説明したように、ファイル、フォルダ、ＷＷＷページ、ファイルのリンクなどがある。例えば、ユーザがファイルの集合やフォルダの集合、もしくはファイルとフォルダの集合などに対し、コピーや移動などの処理を行った場合、ステップＳ２で処理監視部２４２がこれらの処理を監視し、監視結果を処理解析部２４８に通知する。続いてステップＳ３で、処理解析部２４８は処理監視部４２４から通知された処理が実行された情報群を処理対象情報テーブル２４６に登録する。例えば１９のユーザインタフェース２２８に示したように、フォルダ２３０−１の情報Ａと情報Ｂを一括してフォルダ２３２に移動した場合、処理解析部２４８は図２１の処理対象情報テーブル２４６の関連情報名２７０に対する「情報Ａ」「情報Ｂ」の登録、情報種別２７２に対する「処理対象」の登録、更に処理内容２７４に対する「移動」の登録を行う。次にステップＳ４において、処理解析部２４８は処理対象収集部２４４を呼び出す。処理対象収集部２４４は、処理監視部２４２の監視結果として得られた処理元と処理先にある情報を収集し、処理対象情報テーブル２４６に登録する。このステップＳ４における処理対象情報処理の詳細は図３０のフローチャートのようになる。
図３０おいて、処理対象情報収集処理は、まずステップＳ１で、監視した処理が実行された情報群の処理元と処理先を取得し、ステップＳ２で処理元にある全ての情報の一覧を取得する。例えば図２３の処理元となるフォルダ２３０−１の場合には、情報Ａ、情報Ｂ、情報Ｃを取得する。次にステップＳ３で、取得した処理元の情報の一覧に処理対象となった情報群に含まれない情報があるか否か判別する。この場合には情報Ｃが、処理対象となった情報群に含まれない情報であることから、ステップＳ４に進み、処理元の情報の中で処理対象となった情報群に含まれない情報Ｃを図２５の処理対象情報テーブル２４６−１に登録する。即ち、関連情報名２７０に「情報Ｃ」を登録し、また情報種別２７２に「移動元」を登録する。次にステップＳ５で、処理先にある全ての情報の一覧を取得する。例えば図２３の移動先であるフォルダ２３０−２の情報Ｄと情報Ｅを取得する。続いてステップＳ６で、取得した処理先の情報の一覧に処理対象となった情報郡に含まれない情報があるか否かチェックする。この場合には、取得した情報Ｄ及び情報Ｅが移動処理の対象となった情報Ａと情報Ｂに含まれないことから、ステップＳ７に進み、処理先の情報で処理対象となった情報郡に含まれない情報Ｄと情報Ｅを、例えば図２５の処理対象情報テーブル２４６−１のように登録する。
再び図２８を参照するに、ステップＳ４で処理対象情報テーブルに対する処理元及び処理先にある情報の収集登録が済むと、ステップＳ５に進んで、処理解析部２４８は処理対象情報テーブルの中の各情報に対応する属性情報テーブルの読込済みか否かをチェックする。読込済みでなければステップＳ６に進み、処理対象情報テーブルの中の各情報の属性情報テーブルが外部記憶装置に存在するか否かチェックし、存在すれば、ステップＳ７で属性情報読込部２５２に対し外部記憶装置からの読込みを行わせる。ステップＳ６で外部記憶装置に存在しなければ、ステップＳ８で、存在していない処理対象情報テーブル中の情報の属性情報テーブルを新たに作成する。続いてステップＳ９で処理対象情報テーブル２４６を参照し、その中の各情報の属性情報テーブルを更新する。例えば図２３の処理対象情報テーブル２４６−１の場合、情報Ａ、情報Ｂ、情報Ｃ、情報Ｄ、情報Ｅの属性情報テーブルを更新する。この処理対象情報テーブル２４６−１の登録内容は、情報Ａと情報Ｂを一括して移動し、移動元に情報Ｃが存在しており、移動先に情報Ｄと情報Ｅが存在していた状況を表わしている。この場合には、図２６のように、情報Ａの属性情報テーブル２５０−１には一緒に移動した情報Ｂに加え、移動によって関連が深くなった移動先の情報Ｄと情報Ｅを登録し、一方、移動によって関連が薄くなった移動元の情報Ｃを削除した更新結果となっている。
ここで、属性情報テーブルに登録する関連情報に対する属性情報をまとめると次のような属性情報を登録する。
（１）一緒にコピーした回数
（２）一緒に移動した回数
（３）一緒に削除した回数
（４）一緒にリンクを生成した回数
（５）一緒にリンクを移動した回数
（６）一緒にリンクを削除した回数
（７）処理先にあった回数
（８）処理元にあった回数
（９）最新登録日時
ステップＳ９で属性情報テーブルの更新が済むと、ステップＳ１０で処理解析部２４８は属性値情報書出し部２５４に対する指示によって、処理対象情報テーブル２４６中の各情報の更新済みの属性情報テーブルを外部記憶装置へ書き出す。
以上のように、図２４の関連情報管理部２４０にあっては、ユーザが情報群に対して一括して行った処理を監視し、この監視結果を受けて解析し、解析結果を属性情報テーブルに登録する。これによって、ユーザが情報群に対し一括して行った処理に基づいて情報相互の関係を自動的に抽出し、ユーザが情報を探索すること無しに、ある情報に関連の深い関連情報を求めることができる。
また、処理対象となった情報だけでなく、ユーザが一括処理を行った情報群の処理元や処理先にある処理対象となっていない情報も調べ、、処理対象情報テーブル２４６に登録し、このテーブル登録内容に基づいてユーザの処理を解析する。
このため、ユーザが直接処理を行った情報群だけでなく、ユーザによる一括処理の結果、処理対象となった情報群との関係が深くなったり浅くなったりした情報を含めて、情報相互の関係を自動的に抽出して属性情報テーブルに登録し、ユーザが情報を探索すること無しに、ある情報に関係の深い関連情報を求めることができる。
更に、ユーザ一括処理の解析に基づく関連情報を登録した属性情報テーブルを外部記憶装置から読み込んだり外部記憶装置へ書き込んだりすることにより、過去にユーザが情報群に対して行った処理を解析して抽出した関連情報が再利用され、ユーザが情報を探索すること無しに、ある情報に関係の深い情報を効率的に求めることができる。
図３１は、図２７のステップＳ５における関連情報表示処理のフローチャートである。この関連情報表示処理は、ステップＳ１でユーザがある情報の関連情報の表示を選択して指示すると、ステップＳ２で、指示された情報の属性情報テーブルが存在するか否かチェックする。属性情報テーブルが存在すれば、ステップＳ３で属性情報テーブルの関連情報について関連度でソートして表示するか否かチェックする。関連度によるソート表示が指定されていた場合には、ステップＳ４に進み、指示情報の属性情報テーブルから各関連情報との関連の深さを示す関連度を計算する。最終的にステップＳ５で、指定されたソート条件と表示条件で関連情報を表示する。この指定ソート条件としては、図２４の関連情報表示ルール２６６に示した関連度、日時または関連情報名の３つがある。ここで図３１の関連情報表示処理において、関連情報を表示する対象となる情報は、例えば次のように指定する。
（１）現在ユーザが処理中の情報に対応する関連情報を表示する。例えばウィンドウズＸＰ（Ｒ）でワード（Ｒ）とエクセル（Ｒ）を使っており、ワード（Ｒ）で編集中の場合、ワード（Ｒ）で編集しているファイルの関連情報を表示する。
（２）関連情報を表示する際に、どの情報の関連情報を表示するかをユーザが直接指定する。例えばウィンドウズＸＰ（Ｒ）のファイル参照ダイアログでファイルを指定し、そのファイルの関連情報を表示する。
図３２は、図２６の関連情報表示処理の対象となる情報Ａの属性情報テーブル２５０−１と共に、これに基づいて表示された関連情報一覧２８８を表わしている。この関連情報一覧２８８は、情報Ａの属性情報テーブル２５０−１の例えば登録最新日時を昇順にソートして表示している。即ち、登録最新日時の新しい情報Ｅ，Ｄ，Ｂの順に、関連情報一覧２８８にソートした表示が行われている。もちろん関連情報表示としては、これ以外に、関連情報名によるソートあるいは書類遷移回数から読込回数までの属性データに所定の重みを掛けて総和を求めた関連度のソートによる表示であっても良いことはいうまでもない。
図３３は、図２４の関連情報管理部２４０に設けているユーザ属性情報登録部２５６による関連情報ユーザ登録処理のフローチャートである。ステップＳ１において、ユーザがある情報の関連情報の登録を指示するとユーザ属性情報登録部２５６が指示対象となっている情報の属性情報テーブルが読込済みか否かをステップＳ２で判断する。属性情報テーブルが読み込まれていない場合には、ステップＳ３に進み、属性情報読込部２５２に対し指示された情報の属性情報テーブルの読込みを指示する。続いてステップＳ４で、指示情報の属性情報テーブルが外部記憶装置に存在するか否かチェックする。存在していなければ、ステップＳ６で指示情報の属性情報テーブルを新たに生成する。存在していれば、ステップＳ５で外部記憶装置から指示情報の属性情報テーブルを読み込む。ステップＳ２で属性情報テーブルが読込済み、もしくはステップＳ３〜Ｓ６により外部から読込みまたは新規生成された場合には、ステップＳ７で指示情報の属性情報テーブルにユーザが指定した関連情報を登録する。最後にステップＳ８で、登録済みの属性情報テーブルを外部記憶装置２６に書き出す。
図３４は、図２４の関連情報管理部２４０に設けたユーザ属性情報削除部２５８による関連情報ユーザ削除処理のフローチャートである。ステップＳ１でユーザがある情報の関連情報の削除を指示すると、ユーザ属性情報削除部２５８はステップＳ２で指示情報の属性情報テーブルの読込済みか否か判断し、属性情報テーブルが存在しなければ、ステップＳ３でユーザ属性情報読込部２５２に対し指示情報の属性情報テーブルの読込みを指示する。続いてステップＳ４で指示情報の属性情報テーブルが外部記憶装置に存在するか否かチェックし、存在しなければ処理を終了する。存在していた場合には、ステップＳ５で指示情報の属性情報テーブルを外部記憶装置から読み込む。ステップＳ２で指示情報の属性情報テーブルが読込済みであるか、あるいはステップＳ３〜Ｓ５により外部記憶装置から読み込まれた後は、ステップＳ６で指示情報の属性情報テーブルから関連情報を一覧表示する。続いてステップＳ７で、削除する関連情報をユーザが指示し、ステップＳ８でユーザが確定操作を行うと、属性情報テーブルから指示された関連情報を削除する。最後にステップＳ９で、削除済みの属性情報テーブルを外部記憶装置に書き出す。
次に図２４の関連情報管理部２４０に設けている監視処理部２４２で監視した処理結果に基づいて、処理解析部２４８が処理対象情報テーブル２４６を生成する処理の詳細を説明する。図３５のように情報Ａ、情報Ｂ、情報Ｃ及び情報Ｄからなる情報群２９０に対し、コピー、移動、削除、リンク作成などのユーザ一括処理２９２を実行した場合、計算機の処理の実行方法によって処理対象情報テーブル２４６の生成処理は次の２つの場合に分けられる。
（１）計算機が各情報を一括して処理する場合
（２）計算機が情報ごとに処理する場合
図３５は、計算機が各情報を一括して処理することにより、処理対象情報テーブル２４６を生成する場合の説明図である。図３５において、計算機２９４が情報群２９０の各情報Ａ〜Ｄを一括して処理する場合は、例えばあるプロセス２９６の中で処理を実行するひとつの関数を呼び出し、この関数の引数として情報群２９０の中の全ての情報Ａ〜Ｄを指定するような処理２９８に相当する。この時、処理監視部２４２はプロセス２９６の中で処理を実行する関数呼出を監視しており、関数呼出の監視結果が得られるとこの関数の引数に指定された情報群２９０の全ての情報Ａ〜Ｄを処理対象情報テーブル２４６に登録する登録処理３０２を行う。
図３６は、情報Ａ〜Ｄからなる情報群２９０に対し、計算機が情報毎に処理する場合の処理対象情報テーブル生成処理の説明図である。この場合に計算機２９４は、あるプロセス２９６の中で情報Ａ〜Ｄごとにスレッド３０４−１〜３０４−４を起動し、そのスレッドの中で処理３０６−１〜３０６−４を実行する関数を呼び出し、この関数の引数として情報群２９０の中の各情報Ａ〜Ｄを指定するような状況に相当する。この時、処理監視部２４２は各スレッド３０４−１〜３０４−４による個々の関数の呼出を監視する。このようにあるプロセス２９６で複数のスレッド３０４−１〜３０４−４を用いた関数呼出を行った時に、どの関数呼出までがある情報群２９０に対するひとまとめの処理であるかを判断する必要がある。
図３７のフローチャートは、図３６の計算機よる情報ごとの処理における処理対象情報テーブル生成処理のフローチャートである。尚、このフローチャートは、図２８の関連情報自動登録処理におけるステップＳ１〜Ｓ４の具体的な処理内容を表すものでもある。図３７において、ステップＳ１でユーザがある情報群に対する処理を実行すると、ステップＳ２で処理監視部２４２は監視結果として得られた処理に通し番号（１，２・・・・Ｎ）を付けて、処理解析部２４８に通知する。これは図３６の例では各スレッド３０４−１〜３０４−４の関数呼出に対し通し番号（１，２・・・・Ｎ）を付けることに相当する。続いてステップＳ３で解析処理部２４８は処理対象情報テーブル２４６を作成し、処理番号１の処理対象である情報群中のある情報を登録する。次に処理解析部２４８は処理番号２から処理番号Ｎの各処理を解析し、各処理を処理対象情報テーブル２４６に登録するか否か判断する。即ちステップＳ４でｉ＝２，３・・・・Ｎと変化する処理番号ｉの処理内容とすでに登録が済んだ処理番号１の処理先と同じかどうか調べる。
同じであればステップＳ５で処理番号ｉと処理番号１の実行開始の時間差が予め定めた時間内に収まっているかどうか調べる。もしステップＳ４，Ｓ５の両方の条件を満たしていた場合には、ステップＳ６で処理１の処理対象情報テーブルへ処理ｉの対象である情報群のある情報を登録する。もしステップＳ４，Ｓ５の条件の両方が満たされていない場合にはステップＳ７で別処理として処理ｉの処理対象である情報群のある情報を別の処理対象情報テーブルを生成して登録する。このステップＳ４〜Ｓ７の処理をステップＳ８で処理ｉが処理Ｎとなるまで繰り返す。
次に、情報群に対するコピー、移動、削除のユーザ処理の対象となった情報に対する関連情報の属性情報テーブルを変更する図１９の処理解析部２４８処理の詳細を説明する。図３８は、フォルダ３１０とフォルダ３１２の間で情報Ａを情報Ａ’にコピーし、情報Ｂを情報Ｂ’に移動し、更に情報Ｃを削除した場合の例である。このような各情報のコピー、移動または削除に伴い、各情報の属性情報テーブルも同様の処理を受ける。即ち情報Ａの属性情報テーブル２５０−１は、情報Ａ’として属性情報テーブル２５０−１１にコピーされる。また情報Ｂの属性情報テーブル２５０−２は、情報Ｂ’の属性情報テーブル２５０−２１に移動される。更に情報Ｃの属性情報テーブル２５０−３は削除される。
図３９、図４０は、図３８のような情報のコピー、移動、削除に伴って各情報の属性情報テーブルを変更する更新処理のフローチャートである。図３９、図４０において、ステップＳ１でユーザがある情報群へある処理を実行すると、これがステップＳ２で監視処理部２４２により監視され、監視結果が処理解析部２４８に通知される。処理解析部２４８は処理内容がコピー、移動または削除のいずれかであるかを調べ、処理内容に応じて各情報の属性情報テーブルをどのように処理するか決定する。ステップＳ３で情報群への処理がコピーと判別された場合には、ステップＳ４で属性情報呼出部２５２を呼び出して、情報群の各情報の属性情報テーブルを読み込み、ステップＳ５で読み込んだ情報テーブルをコピーした情報群の各情報に対応するように変更して、属性情報書込手段２５５により外部記憶装置に記憶する。またステップＳ６で情報群への処理として移動が判別された場合には、ステップＳ７で属性情報呼出部２５２を呼び出して外部記憶装置から情報群の各情報の属性情報テーブルを読み込み、ステップＳ８で読み出した属性情報テーブルを移動した情報群の各情報に対応するように変更し、属性情報書出部２５４を読み出して外部記憶装置に書き出す。更にステップＳ９で移動処理を行う前の情報群の各情報の属性情報テーブルを削除する。更にステップＳ１０で情報群の処理が削除と判別されば場合には、ステップＳ１０で属性情報削除部２５８を呼び出し、情報群の各情報の属性情報テーブルを削除する。このようにユーザの情報群に対する処理を監視して解析し、情報の保管場所が変わる場合には、情報の保管場所の変更に応じて、その属性情報テーブルの保管場所も変更し、情報の変更場所が変わった場合にあってもユーザが自分で情報を探索することなしに保管場所が変わった情報についての関連情報を利用することができる。
図４１、図４２は、図３８のように情報のコピー、移動、削除によって処理対象となった情報の各関連情報に対応する属性情報テーブルを変更する処理の説明図である。図４１（Ａ）は、図３８においてコピーを行った情報Ａ、移動を行った情報Ｂ及び削除を行った情報Ｃの属性情報テーブル２５０−１，２５０−２，２５０−３を示しており、各テーブルには関連情報として情報Ｚが存在している。この情報Ｚはフォルダ３２０に情報Ｙと共に格納されており、情報Ｙは属性情報テーブル２５０−５を持ち、また情報Ｚは属性情報テーブル２５０−６を持っている。このような場合に情報Ａのコピー、情報Ｂの移動及び情報Ｃの削除が行われた場合には、情報Ａ，Ｂ，Ｃのそれぞれに対する関連情報である情報Ｚの属性情報テーブル２５０−６についても、情報Ｚから見た関連情報である情報Ａ、情報Ｂ及び情報Ｃに対する処理内容に応じた変更を行う。この情報Ｚの属性情報テーブル２５０−６の変更は、図４２（Ｂ）のように、変更前の情報Ｚの属性情報テーブル２５０−６に対し、コピー３１４に応じてコピー先の情報Ａ’を情報Ｚの更新後の属性情報テーブル２５０−６１のように追加し、また移動３１６に伴って更新後の属性情報テーブル２５０−６１に移動先の情報Ｂ’を登録し、更に元の属性情報テーブル２５０−６の情報Ｃは削除３１８に伴い更新後の属性情報テーブル２５０−６１からは削除されることになる。
図４３、図４４は、図４１、図４２における関連情報の属性情報テーブルの更新処理のフローチャートである。図４３、図４４において、ステップＳ１でユーザがある情報群である処理を実行すると、ステップＳ２で処理監視部２４２が情報群への処理を監視して監視結果を処理解析部２４８に通知する。続いてステップＳ３で処理解析部２４８が属性情報読込部２５２を呼び出し、情報群の処理対象となった各情報の属性情報テーブルを外部記憶装置から読み込むようにし、これを受けてステップＳ４で属性情報読込部２５２が外部記憶装置から情報群の各情報の属性情報テーブルを読み込む。これは図４１の例では情報Ａ，Ｂ，Ｃの属性情報テーブル２５０−１〜２５０−３の読込に相当する。次にステップＳ５において、処理解析部２４８は外部記憶装置から読み込んだ各情報に対応する属性情報テーブルの中の関連情報を調べ、各関連情報の属性情報テーブルを読み込むように属性情報読込部２５２に指示し、これを受けてステップＳ６で属性情報読込部２５２が外部記憶装置から関連情報の属性情報テーブルを読み込む。これは図４２における関連情報Ｚを調べてその属性情報テーブル２５０−６を読み込むことに相当する。次にステップＳ７で処理解析部２４８は関連情報の属性情報テーブルに処理対象となった情報群の各情報が登録されているか否か調べる。図４２の例では情報Ｚの属性情報テーブル２５０−６に処理対象となった情報群の情報Ａ，Ｂ，Ｃが登録されており、これを調べることに相当する。関連情報の属性情報テーブルに処理対象となった各情報が登録されている場合には、ステップＳ８で情報群への処理がコピーか否かチェックし、コピーであればステップＳ９で関連情報の属性情報テーブルにコピーした情報群の各情報を追加登録する。これは４２おける情報Ｚの新しい属性情報テーブル２５０−６１におけるコピーによる情報Ａ’の追加登録に相当する。続いてステップＳ１０で情報群への処理が移動であることを判別すると、ステップＳ１１で関連情報の属性情報テーブルの中に登録されていた処理対象となった情報群中の各情報を移動した情報群の各情報に対応するように変更する。これは図４２の例における情報Ｚの新しい属性情報テーブル２５０−６１における移動による情報Ｂ’の登録に相当する。更にステップＳ１２で情報群への処理が削除であることが判別されると、ステップＳ１３で関連情報の属性情報テーブルに登録されていた処理対象となった情報群中の各情報を削除する。これは図４２の例における情報Ｚの属性情報テーブル２５０−６に対する情報Ｃの削除に相当する。このようなステップＳ７〜Ｓ１３による処理対象となった情報群の各情報に対応した関連情報の属性情報テーブルに対する変更処理がすむと、ステップＳ１４で処理解析部２４８は属性情報書込部２５４を呼び出し、変更された関連情報の属性情報テーブルの外部記憶装置への書込を指示し、これを行わせる。このようにユーザの情報群に対する処理を監視し、監視結果の解析から情報の保管場所が変わる場合には、処理対象となった情報の属性情報テーブルを参照してその関連情報を調べ、関連情報の属性情報テーブルに処理対象となった各情報が存在するときには処理対象となった情報の保管場所の変更状況に応じて関連情報の属性情報テーブルを変更しているため、ユーザ処理の対象となった情報の属性情報テーブルの変更に加えて、関連情報の属性情報テーブルについてもユーザ処理に対応した変更が自動的に行われ、処理対象となった処理元及び処理先には含まれてない関連情報についても、ユーザ処理に対応した変更結果を関連情報の属性情報テーブルに反映し、その後にユーザがある情報を処理する際の関連情報として適切にアクセスすることができる。
図４５は、本発明の関連情報管理をネットワークに適応した場合の説明図である。このネットワークに適応した本発明の関連情報管理にあっては、インターネットなどのネットワーク３２６を介して、複数のユーザ装置３２４−１〜３２４−３を接続しており、更に本発明の関連情報管理をネットワーク上で実現するための関連情報管理サーバ３２８を設けている。関連情報管理サーバ３２８には、図２、図３の第１実施形態に示した関連情報管理部４０或いは図２３、図２４の第２実施形態に示した関連情報管理部２４０のいずれか一方あるいは両方の機能が設けられており、ネットワーク３２６で接続されたユーザ３２４−１〜３２４−３のそれぞれにおける情報または情報群におけるユーザの処理を、図２、図３におけるユーザインターフェース２８や２３、図２４におけるユーザインターフェース２８０のユーザ処理と同様に監視し、監視結果の解析により関連情報を抽出し、次に同じ情報を処理する際にはその関連情報を表示してユーザがアクセスできるようにしている。
図４６は、本発明の関連情報管理における監視対象となるユーザ処理が仮想的な情報であるショートカットに対する操作として行われた場合の説明図である。
図４６において、装置処理３３２側にはフォルダ３３４によりファイルＡの実体３３６が設けられているが、ユーザ処理３３０側にはフォルダ３３８−１によりファイルＡのショートカット３４０が設けられている。このような仮想的な情報であるショートカット３４０に対する例えばユーザ処理としてのアクセス、コピー、移動、削除などのユーザ操作３４２が行われると、このユーザ操作３４２による処理を図２、図３の処理監視部４２あるいは図２３，図２４の処理監視部２４２が監視しており、監視結果に基づき関連情報管理処理３４４としてファイルＡの実体の属性情報テーブルの変更処理を行う。また図２、図３の関連情報表示部６０や図２３、図２４の関連情報表示部２６０によって表示されたある情報に関連する関連情報の表示を見て、ファイルＡのショートカットの関連情報の参照操作３４６が行われると、右側のフォルダ３３８−２のように、ファイルＡのショートカット３４０に対するアクセスを受けて、ファイルＡの実体の関連情報を参照表示する処理３４８が行われる。即ち仮想的な情報の実体であるショートカットに対するユーザ処理や関連情報を参照するための参照処理についても、図２、図３及び図２３、図２４の実施形態と同様ひとつのユーザ処理として処理が監視され、監視結果に基づき属性情報の生成と属性情報を利用した関連情報の表示を行うことができる。
なお上記の実施形態は、ユーザがファイルをアクセスした場合の関連情報管理処理を例に取るものであったが、ユーザがＷＷＷのホームページにアクセスする場合についても全く同様に適用できる。もちろん、ユーザがファイルとＷＷＷのホームページの両方にアクセスする場合についても同様に適用できる。
また上記の実施形態は、ホストコンピュータに本発明による関連情報管理のプログラムをインストールして実行する場合を例に取っているが、パーソナルコンピュータやＰＡＤなどのＣＰＵによるプログラムが実行される適宜の情報機器を含むことはもちろんである。
また本発明による関連情報管理を実現するプログラムは、例えばマイクロソフト社のワード（Ｒ）やエクセル（Ｒ）にリンクしたバックグラウンドのアプリケーションプログラムとして動作し、ユーザによるファイルアクセスやＷＷＷのホームページのアクセスを通じて自動的に、ある情報に対する関連情報を属性情報テーブルの形態で生成し、必要に応じて関連情報の表示と関連情報に対するアクセスを可能とする。
また本発明は、その目的と利点を損なうことのない適宜の変形を含み、更に上記の実施形態に示した数値による限定は受けない。
【産業上の利用の可能性】
（単一情報のユーザ処理に基づく関連情報登録）
以上説明してきたように本発明によれば、ユーザによる文書や画像の作成または編集におけるユーザの処理に基づいて、ある情報に関連する関連情報が自動的に抽出されて関連情報として登録され、ユーザが意識的に関連する情報を選別する必要がなく、またユーザの処理に基づいて関連情報が抽出されるため、ユーザの視点から見て関連性の深い情報を自動的に抽出できる。
また抽出された関連情報は例えば外部記憶装置に記録されて次のユーザ処理の際に再度更新され、これにより過去に登録した関連情報を含めて関連性の高い情報に簡単且つ適切にアクセスすることができる。
また自動抽出された関連情報の表示について、関連度、更新日、情報名などによるソートで複数の関連情報を表示するため、ユーザは表示された関連情報における関連度の深さを容易に認識し、より適確に関連の深い情報へアクセスすることができる。
またユーザにより関連情報の登録と削除が必要に応じて直接行うことができ、関連対象とする関連情報の使い勝手をより一層高めることができる。
更に、プロセスと情報が１対１に対応した場合のみならず、マルチスレッドＯＳのようにプロセスと情報とが１対１に対応していない場合にも、情報ごとに構築される属性情報テーブルにようって関連情報を適切に自動生成して、ユーザに関連情報を効率良く利用させることができる。
（情報群のユーザ処理に基づく関連情報登録）
また本発明にあってはユーザが複数の情報を含む情報群に対し、一括してコピー、移動、削除といったユーザ処理が行われると、情報群の中の処理対象となった各情報の関連情報が自動的に抽出されて属性情報として登録され、後に同じ情報を処理する際に抽出した関連情報を表示してユーザが選択的にアクセスでき、情報群の一括処理においてユーザは関連情報を選別する必要がなく、またユーザの処理に基づいて関連情報を抽出するためユーザの視点から見て関連の深い情報を自動的に抽出でき、ユーザは自分自身で関連情報を探索することなく自動的に抽出された関連情報を効率的に利用することができる。
またユーザによる情報群の一括した処理については、直接処理対象となった情報にのみならず、処理元及び処理先で処理対象となっていない情報についても抽出された後にユーザ処理との関連度の度合に応じて関連情報を利用しての追加或いは除去が行われ、次にユーザ処理に伴う関連性の高い情報の自動生成による利用が実現できる。
更に、ユーザが情報群に対し行ったコピー、移動または削除といった処理によって各情報の場所が変わった場合も、処理内容に合わせて各情報について登録されている属性情報の内容が変更され、ユーザは処理が実行される前と同様に、処理の実行後においても同じ情報を処理する際に属性情報に基づき関連情報を参照することができる。
【図１】
2004031956.tif 000003
【図２】
2004031956.tif 000004
【図３】
2004031956.tif 000005
【図４】
2004031956.tif 000006
【図５】
2004031956.tif 000007
【図６】
2004031956.tif 000008
【図７】
2004031956.tif 000009
【図８】
2004031956.tif 000010
【図９】
2004031956.tif 000011
【図１０】
2004031956.tif 000012
【図１１】
2004031956.tif 000013
【図１２】
2004031956.tif 000014
【図１３】
2004031956.tif 000015
【図１４】
2004031956.tif 000016
【図１５】
2004031956.tif 000017
【図１６】
2004031956.tif 000018
【図１７】
2004031956.tif 000019
【図１８】
2004031956.tif 000020
【図１９】
2004031956.tif 000021
【図２０】
2004031956.tif 000022
【図２１】
2004031956.tif 000023
【図２２】
2004031956.tif 000024
【図２３】
2004031956.tif 000025
【図２４】
2004031956.tif 000026
【図２５】
2004031956.tif 000027
【図２６】
2004031956.tif 000028
【図２７】
2004031956.tif 000029
【図２８】
2004031956.tif 000030
【図２９】
2004031956.tif 000031
【図３０】
2004031956.tif 000032
【図３１】
2004031956.tif 000033
【図３２】
2004031956.tif 000034
【図３３】
2004031956.tif 000035
【図３４】
2004031956.tif 000036
【図３５】
2004031956.tif 000037
【図３６】
2004031956.tif 000038
【図３７】
2004031956.tif 000039
【図３８】
2004031956.tif 000040
【図３９】
2004031956.tif 000041
【図４０】
2004031956.tif 000042
【図４１】
2004031956.tif 000043
【図４２】
2004031956.tif 000044
【図４３】
2004031956.tif 000045
【図４４】
2004031956.tif 000046
【図４５】
2004031956.tif 000047
【図４６】
2004031956.tif 000048
【国際調査報告】
2004031956.tif 000049
2004031956.tif 000050
2004031956.tif 000051
2004031956.tif 000052