(57)【要約】【課題】文書や情報が複数の異なるシステムやアプリケーションに管理されていても、ユーザの文書操作履歴を取得し、文書操作履歴情報を用いることで関連文書を検索できるようにする。【解決手段】クライアント上でユーザが行う文書操作のイベントに関連する情報を表す文書操作イベント情報を取得する文書操作イベント取得部と、文書操作イベント取得部によって取得された文書操作イベント情報を管理する文書操作イベント管理部１０３と、文書操作イベント管理部１０３によって管理されている文書操作イベント情報に基づいて、指定された文書の関連文書を抽出する関連文書抽出部１０４と、を備える。【選択図】図２
2008102911.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ上でユーザが行う文書操作のイベントに関連する情報を表す文書操作イベント情報を取得する文書操作イベント取得手段と、
前記文書操作イベント取得手段によって取得された文書操作イベント情報を管理する文書操作イベント管理手段と、
前記文書操作イベント管理手段によって管理されている文書操作イベント情報に基づいて、指定された文書の関連文書を抽出する関連文書抽出手段と、を備えたことを特徴とする情報処理装置。
【請求項２】
ユーザのタスクに関連する情報を表すタスク情報を管理するタスク情報管理手段と、
コンピュータ上でユーザが行う文書操作のイベントに関連する情報を表す文書操作イベント情報を取得する文書操作イベント取得手段と、
前記文書操作イベント取得手段によって取得された文書操作イベント情報を管理する文書操作イベント管理手段と、
前記タスク情報管理手段によって管理されているタスク情報と前記文書操作イベント管理手段によって管理されている文書操作イベント情報とに基づいて、指定されたタスクの関連文書を抽出するタスク関連文書抽出手段と、を備えたことを特徴とする情報処理装置。
【請求項３】
請求項２に記載の情報処理装置であって、
前記タスク関連文書抽出手段は、前記タスク情報管理手段によってタスク関連文書情報が管理されている場合、前記タスク関連文書情報と前記文書操作イベント情報とに基づいて、指定されたタスクの関連文書を抽出することを特徴とする情報処理装置。
【請求項４】
請求項１に記載の情報処理装置であって、
前記関連文書抽出手段によって関連文書が抽出される際に利用する文書操作イベントを指定する文書操作イベント指定手段を備えたことを特徴とする情報処理装置。
【請求項５】
請求項２または３に記載の情報処理装置であって、
前記タスク関連文書抽出手段によって関連文書が抽出される際に利用する文書操作イベントを指定する文書操作イベント指定手段を備えたことを特徴とする情報処理装置。
【請求項６】
請求項１または４に記載の情報処理装置であって、
ユーザを指定するユーザ指定手段を備え、
前記関連文書抽出手段は、前記文書操作イベント管理手段によって管理されている文書操作イベント情報のうち前記ユーザ指定手段によって指定されたユーザの文書操作イベント情報に基づいて、指定された文書の関連文書を抽出することを特徴とする情報処理装置。
【請求項７】
請求項２、３、５の何れかに記載の情報処理装置であって、
ユーザを指定するユーザ指定手段を備え、
前記タスク関連文書抽出手段は、前記タスク情報管理手段によって管理されているタスク情報と、前記文書操作イベント管理手段によって管理されている文書操作イベント情報のうち前記ユーザ指定手段によって指定されたユーザの文書操作イベント情報とに基づいて、指定されたタスクの関連文書を抽出することを特徴とする情報処理装置。
【請求項８】
請求項１乃至７の何れかに記載の情報処理装置であって、
前記文書操作イベント取得手段は、前記文書操作イベント情報として、文書の開閉、フォーカス、コピー／ペーストに関連する情報のうち、少なくとも１つの情報を取得することを特徴とする情報処理装置。
【請求項９】
コンピュータ上でユーザが行う文書操作のイベントに関連する情報を表す文書操作イベント情報を取得する文書操作イベント取得ステップと、
前記文書操作イベント取得ステップで取得された文書操作イベント情報を管理する文書操作イベント管理ステップと、
前記文書操作イベント管理ステップで管理されている文書操作イベント情報に基づいて、指定された文書の関連文書を抽出する関連文書抽出ステップと、を有する情報処理方法。
【請求項１０】
ユーザのタスクに関連する情報を表すタスク情報を管理するタスク情報管理ステップと、
コンピュータ上でユーザが行う文書操作のイベントに関連する情報を表す文書操作イベント情報を取得する文書操作イベント取得ステップと、
前記文書操作イベント取得ステップで取得された文書操作イベント情報を管理する文書操作イベント管理ステップと、
前記タスク情報管理ステップで管理されているタスク情報と前記文書操作イベント管理ステップで管理されている文書操作イベント情報とに基づいて、指定されたタスクの関連文書を抽出するタスク関連文書抽出ステップと、を有する情報処理方法。
【請求項１１】
請求項９または１０に記載された情報処理方法の各ステップをコンピュータに実行させるためのプログラム。
【請求項１２】
請求項１１に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザがコンピュータ上で行った文書操作の履歴に基づいて関連文書を抽出する方法、かつ、スケジュールやＴｏｄｏ等のタスク情報がある場合に文書操作履歴に基づいてタスク関連文書を抽出する方法に関する。
【背景技術】
【０００２】
近年、インターネットの普及やオフィスの電子化の発達等により情報の氾濫が問題となっており、大量の情報の中から必要な情報や文書を見つけ出すことが求められている。このような検索技術としては、文書に含まれる特定の語句を検索することで文書を検索するキーワード検索が知られている。
【０００３】
また、ある文書を種としてその文書に関連する文書を検索する関連文書検索、あるいは類似文書検索と呼ばれる技術もある。こうした技術では、文書を文書に含まれる単語により数値化し、それに基づいて文書間の類似度を計算により求めることで関連文書を検索する方法等が用いられている。こうした情報や文書の内容に基づいた検索技術は非常に便利ではあるが、検索を行うためには文書や情報の内容を取得する必要があり、そうすることのできない文書や情報に対しては利用することができない。また、関連性や類似性は内容に基づくものであり、関連があっても内容が異なる文書や情報を検索することはできない。
【０００４】
また、内容に基づく検索とは異なり、ユーザが行った文書に対する操作の履歴を利用して関連文書を検索する方法もある。この方法は、閲覧履歴等ユーザの文書に対する操作履歴を取得して、それに基づいて関連文書を検索するものである。
【０００５】
ここで、従来技術としては、閲覧履歴情報を解析することで、閲覧中の文書と関連している可能性の高い文書を保存文書群から自動的に抽出することができる文書処理管理装置が知られている（例えば、特許文献１参照）。なお、特許文献１において、対象となる文書は、文書処理管理装置内で管理している文書のみである。
【０００６】
また、その他の従来技術としては、文書を扱う業務の内容を採取し、業務の区切りを解析して、文書を扱う業務を管理することで、ユーザに操作負担をかけることなく、文書から関連する業務を検索することができ、また、業務から関連する文書を検索することができるようにした文書検索方法、及び文書検索装置が知られている（例えば、特許文献２参照）。なお、特許文献２において、業務とは一連の文書操作イベント列のことである。
【０００７】
さらに、その他の従来技術としては、文書データベース内の文書に対するユーザの参照履歴を蓄積し、参照頻度情報等に基づいて指定された文書に最も適合する関連文書を検索する方法が知られている（例えば、特許文献３参照）。
【０００８】
これらの方法では、「関連する文書は同時に扱われる可能性が高い」等ユーザの行為から文書間の関連性を抽出している。こうした文書操作履歴を用いる方法では文書の内容を取得する必要がなく、また内容的に関連していなくてもユーザの行う業務の中での文書操作行為により関連性が取得できる効果がある。
【特許文献１】特開２００３−８５２０４号公報
【特許文献２】特開平１１−３９２９３号公報
【特許文献３】特開２００５−３３２３２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献１〜３に記載されたものは何れも対象となる文書は独自の文書管理手段で管理されている文書だけを対象としている。近年ではユーザは様々なシステムやアプリケーションを使い分けながら作業をすることが当たり前になっており、情報が複数の異なるシステムで管理されていることが多い。こうした環境ではある特定の文書管理手段で管理されている文書しか関連文書が検索できないのでは効果がほとんどない。よって複数のシステムやサービスに分散して管理されている文書や情報であっても関連文書検索ができる必要がある。
【００１０】
本発明の第一の目的は、文書や情報が複数の異なるシステムやアプリケーションに管理されていても、ユーザの文書操作履歴を取得し、文書操作履歴情報を用いることで関連文書を検索できるようにすることである。また、第二の目的は、スケジュールやＴｏｄｏ等のタスク情報が管理されている場合に、文書操作履歴情報を用いることでタスクに関連する文書や情報を検索できるようにすることである。
【課題を解決するための手段】
【００１１】
本発明の情報処理装置は、コンピュータ上でユーザが行う文書操作のイベントに関連する情報を表す文書操作イベント情報を取得する文書操作イベント取得手段と、前記文書操作イベント取得手段によって取得された文書操作イベント情報を管理する文書操作イベント管理手段と、前記文書操作イベント管理手段によって管理されている文書操作イベント情報に基づいて、指定された文書の関連文書を抽出する関連文書抽出手段と、を備えた構成を有している。
【００１２】
この構成により、ユーザが文章操作に利用するアプリケーションや文書管理システム、あるいは文書フォーマット等に依存することなく、ユーザが行った文書操作イベントの情報を取得することができ、それに基づいて関連文書を検索することができる。
【００１３】
また、本発明の情報処理装置は、ユーザのタスクに関連する情報を表すタスク情報を管理するタスク情報管理手段と、コンピュータ上でユーザが行う文書操作のイベントに関連する情報を表す文書操作イベント情報を取得する文書操作イベント取得手段と、前記文書操作イベント取得手段によって取得された文書操作イベント情報を管理する文書操作イベント管理手段と、前記タスク情報管理手段によって管理されているタスク情報と前記文書操作イベント管理手段によって管理されている文書操作イベント情報とに基づいて、指定されたタスクの関連文書を抽出するタスク関連文書抽出手段と、を備えた構成を有している。
【００１４】
この構成により、ユーザが文章操作に利用するアプリケーションや文書管理システム、あるいは文書フォーマット等に依存することなく、ユーザが行った文書操作イベント情報を取得することができ、タスクの時間情報を利用することで、例えば「会議の時に使った文書」を抽出することができ、ユーザの文書操作イベントに基づいたタスク関連文書を検索することができる。
【００１５】
また、本発明の情報処理装置は、前記タスク関連文書抽出手段が、前記タスク情報管理手段によってタスク関連文書情報が管理されている場合、前記タスク関連文書情報と前記文書操作イベント情報とに基づいて、指定されたタスクの関連文書を抽出する構成を有している。
【００１６】
この構成により、すでに関連が明確になっているタスク関連文書の情報を元に、ユーザの文書操作イベントに基づいたタスク関連文書を検索することができる。
【００１７】
また、本発明の情報処理装置は、前記関連文書抽出手段によって関連文書が抽出される際に利用する文書操作イベントを指定する文書操作イベント指定手段を備えた構成を有している。
【００１８】
この構成により、関連性の意味合いを指定して関連文書を検索することができる。
【００１９】
また、本発明の情報処理装置は、前記タスク関連文書抽出手段によって関連文書が抽出される際に利用する文書操作イベントを指定する文書操作イベント指定手段を備えた構成を有している。
【００２０】
この構成により、関連性の意味合いを指定して関連文書を検索することができる。
【００２１】
また、本発明の情報処理装置は、ユーザを指定するユーザ指定手段を備え、前記関連文書抽出手段は、前記文書操作イベント管理手段によって管理されている文書操作イベント情報のうち前記ユーザ指定手段によって指定されたユーザの文書操作イベント情報に基づいて、指定された文書の関連文書を抽出する構成を有している。
【００２２】
この構成により、自分の文書操作イベント情報、他者の文書操作イベント情報等、「人」による関連文書抽出条件を指定することができる。
【００２３】
また、本発明の情報処理装置は、ユーザを指定するユーザ指定手段を備え、前記タスク関連文書抽出手段は、前記タスク情報管理手段によって管理されているタスク情報と、前記文書操作イベント管理手段によって管理されている文書操作イベント情報のうち前記ユーザ指定手段によって指定されたユーザの文書操作イベント情報とに基づいて、指定されたタスクの関連文書を抽出する構成を有している。
【００２４】
この構成により、自分の文書操作イベント情報、他者の文書操作イベント情報等、「人」による関連文書抽出条件を指定することができる。
【００２５】
また、本発明の情報処理装置は、前記文書操作イベント取得手段が、前記文書操作イベント情報として、文書の開閉、フォーカス、コピー／ペーストに関連する情報のうち、少なくとも１つの情報を取得する構成を有している。
【００２６】
この構成により、指定された文書の関連文書として、「同時に開いていた文書」「前後に閲覧した文書」「情報を複写した文書」を検索することができる。
【００２７】
本発明の情報処理方法は、コンピュータ上でユーザが行う文書操作のイベントに関連する情報を表す文書操作イベント情報を取得する文書操作イベント取得ステップと、前記文書操作イベント取得ステップで取得された文書操作イベント情報を管理する文書操作イベント管理ステップと、前記文書操作イベント管理ステップで管理されている文書操作イベント情報に基づいて、指定された文書の関連文書を抽出する関連文書抽出ステップと、を有している。
【００２８】
この方法により、ユーザが文章操作に利用するアプリケーションや文書管理システム、あるいは文書フォーマット等に依存することなく、ユーザが行った文書操作イベントの情報を取得することができ、それに基づいて関連文書を検索することができる。
【００２９】
また、本発明の情報処理方法は、ユーザのタスクに関連する情報を表すタスク情報を管理するタスク情報管理ステップと、コンピュータ上でユーザが行う文書操作のイベントに関連する情報を表す文書操作イベント情報を取得する文書操作イベント取得ステップと、前記文書操作イベント取得ステップで取得された文書操作イベント情報を管理する文書操作イベント管理ステップと、前記タスク情報管理ステップで管理されているタスク情報と前記文書操作イベント管理ステップで管理されている文書操作イベント情報とに基づいて、指定されたタスクの関連文書を抽出するタスク関連文書抽出ステップと、を有している。
【００３０】
この方法により、ユーザが文章操作に利用するアプリケーションや文書管理システム、あるいは文書フォーマット等に依存することなく、ユーザが行った文書操作イベント情報を取得することができ、タスクの時間情報を利用することで、例えば「会議の時に使った文書」を抽出することができ、ユーザの文書操作イベントに基づいたタスク関連文書を検索することができる。
【００３１】
また、上述した情報処理方法の各ステップをプログラムによってコンピュータに実行させてもよく、そのプログラムはコンピュータ読み取り可能な記録媒体に記録されていてもよい。
【発明の効果】
【００３２】
本発明は、文書や情報が複数の異なるシステムやアプリケーションに管理されていても、ユーザの文書操作履歴を取得し、文書操作履歴情報を用いることで関連文書を検索できるものである。また、本発明は、スケジュールやＴｏｄｏ等のタスク情報が管理されている場合に、文書操作履歴情報を用いることでタスクに関連する文書や情報を検索できるものである。
【発明を実施するための最良の形態】
【００３３】
以下、本発明の実施の形態に係る情報処理システムについて、図面を参照して説明する。
【００３４】
図１は、本発明の実施の形態に係る情報処理システムを示す構成図である。
【００３５】
図１に示すように、情報処理システム１は、ネットワーク１０で接続された１台のサーバ２０と複数台のクライアント３０とにより構成されている。なお、本実施の形態においては、クライアント３０は２台で構成されているが、これに限らず、１台または３台以上で構成されていてもよい。なお、情報処理システム１は、全体を単一の情報処理装置として実現される形態に適用することができるものとする。
【００３６】
図５５に、本発明の実施の形態に係るサーバ及びクライアントを担う情報処理装置のハードウェア構成を示す。図５５に示すように、情報処理装置５５１のバス５５０１に対して、ＣＰＵ（Central Processing Unit）５５０２、ＲＯＭ（Read Only Memory）５５０３、ＲＡＭ（Random Access Memory）５５０４、記憶装置５５０５、出力装置５５０６、入力装置５５０７、通信Ｉ／Ｆ（通信インターフェース）５５０８が接続されている。
【００３７】
情報処理装置５５１の構成を詳細に説明する。制御手段の一例であるＣＰＵ５５０２は、ＲＯＭ５５０３に格納されているプログラムを実行することで情報処理装置５５１の各装置を制御する。ＲＡＭ５５０３は、ＣＰＵ５５０２がプログラムを実行する際のワーク用エリアとして使用され、また、各処理の際に生成されるデータを一時的に記憶する手段としても使用される。
【００３８】
記憶装置５５０５は、ハードディスクなどの記憶媒体で構成され、ＣＰＵ５５０２にて実行されるプログラムや、各処理の際に利用される各種データを記憶する。
【００３９】
出力装置５５０６は、ＬＣＤ（Liquid Crystal Display）、ＰＤＰ（Plasma Display Panel）、ＰＬＤ（Paper Like Display）などで構成され、出力装置５５０６には情報処理装置５５１の動作に伴う各種の情報が表示される。 なお、各種の情報が表示できるものであれば上記の例に限るものではない。
【００４０】
入力装置５５０７は、情報処理装置５５１の筐体や情報処理装置５５１と無線または有線を介して接続されるリモートコントロール装置に設けられるボタン等である。ユーザは、入力装置５５０７を操作して情報処理装置に各種の入力を行うことができる。上述した表示装置をタッチパネルとして構成し、表示装置が入力装置を兼ねるとしてもよい。
【００４１】
通信Ｉ／Ｆ５５０８は、ＣＰＵ５５０２から供給されるデータを、インターネットやＬＡＮ（Local Area Network）などのネットワークを介して、他の情報処理装置に送信したり、他の情報処理装置から送信されてくるデータを受信し、ＣＰＵ５５０２に供給したりすることを可能とする。また、本発明の実施の形態における通信Ｉ／Ｆ５５０８は、デジタルカメラやスキャナやプリンタ等の外部機器との接続のためのインターフェースとしての機能も有しているものとする。なお、通信Ｉ／Ｆ５５０８としては、ＵＳＢ等の有線インターフェースに限らず、ブルートゥース、ＩｒＤＡ（Infrared Data Association）等の無線インターフェースを使用することができる。なお以下、特に言及がない限り、本発明の実施の形態におけるサーバ２０、クライアント３０は、情報処理装置５５１のハードウェア構成を具備するものとする。表示装置５５０６や入力装置５５０７は、サーバ２０においては必須の構成ではなく、これらを具備していなくてもよい。
【００４２】
また、以下の実施の形態においては、ユーザが操作する対象が「文書」であることを例に説明を行っているが、本発明の技術的思想からすれば、ユーザによって操作される対象は「文書」に限るものではなく、文（テキスト）を含まない画像や画像と文が混在している混在文書や動画や音声といった情報であってもよい。
【００４３】
したがって、本発明及び以下の実施の形態の説明において、「文書」とは、テキストから構成されるテキスト文書、文（テキスト）を含まない画像、画像と文が混在している混在文書、動画、音声、といった各種情報を含むものとする。
【００４４】
（第１の実施の形態）
まず、本発明の第１の実施の形態について説明する。図２は、本発明の第１の実施の形態に係るサーバを示す構成図である。また、図３は、本発明の第１の実施の形態に係るクライアントを示す構成図である。
【００４５】
図２に示すように、サーバ２０は、通信部１０１、ユーザ認証部１０２、文書操作イベント管理部１０３、関連文書抽出部１０４、ユーザデータベース１０５、文書操作イベントデータベース１０６から構成されている。
【００４６】
通信部１０１は、通信Ｉ／Ｆ５５０８に相当し、クライアント３０とデータの遣り取りを行う。
【００４７】
ユーザ認証部１０２は、クライアント３０からの要求を受け付けると、ユーザ認証を行う。ユーザ認証部１０２は、後述するユーザ情報処理部２０２から送信されるユーザ情報（ユーザ名とパスワード）の照合を行うことで認証処理を行う。
【００４８】
文書操作イベント管理部１０３は、文書操作イベント情報を管理する。文書操作イベント管理部１０３は、後述する文書操作イベント取得部２０３から送信される文書操作イベント情報を文書操作イベントデータベース１０６で管理する。
【００４９】
ここで、文書操作イベントは、クライアント３０上でユーザが行った文書操作のイベントである。本実施の形態において、文書操作イベントは、文書の開閉（文書ウィンドウのオープン／クローズ）、フォーカス（文書ウィンドウの最前面化）、コピー／ペースト（文書ウィンドウ間でのクリップボードを介した情報の複写）とする。
【００５０】
また、文書操作イベント情報は、文書操作イベントに関連する情報である。本実施の形態において、文書操作イベント情報は、文書操作イベントが行われたクライアント３０を識別する情報であるクライアント識別情報、文書操作イベントが行われた文書に関する情報である操作対象文書情報（文書タイトル、文書識別子）、文書操作イベントが行われたアプリケーションに関する情報であるアプリケーション情報、文書操作イベントを示すイベント名、文書操作イベントが実施された時刻を示すイベント実施時刻、文書操作イベントに固有な情報を示すイベント固有情報から構成される。
【００５１】
関連文書抽出部１０４は、文書操作イベント管理部１０３で管理している文書操作イベント情報を利用して、指定された文書に関連する文書（以下、「関連文書」という）を抽出する処理を行う。
【００５２】
ここで、本実施の形態では、ユーザ認証部１０２、文書操作イベント管理部１０３、及び関連文書抽出部１０４は、例えば、ＣＰＵ５５０２によって実行されるプログラムで構成され、記憶装置５５０５やＲＡＭ５５０４に記憶されている。また、ユーザデータベース１０５及び文書操作イベントデータベース１０６は、例えば、ＲＯＭ５５０３、ＲＡＭ５５０４、記憶装置５５０５等の記憶媒体によって構成される。
【００５３】
また、図３に示すように、クライアント３０は、入力・出力部２０１、ユーザ情報処理部２０２、文書操作イベント取得部２０３、関連文書提示部２０４、通信部２０５から構成されている。
【００５４】
入力・出力部２０１は、入力装置５５０７に相当し、ユーザからのユーザ情報の入力等を受け付ける。
【００５５】
ユーザ情報処理部２０２は、入力・出力部２０１に入力されたユーザ情報をユーザ認証部１０２に送信してユーザ認証を要求し、ユーザ認証部１０２より認証結果を受け取る。
【００５６】
文書操作イベント取得部２０３は、文書操作イベント情報を取得する。
【００５７】
関連文書提示部２０４は、関連文書の検索結果をユーザに提示する。関連文書提示部２０４は、現在閲覧している文書、あるいはユーザが指定した文書等の検索キーとなるキー文書の情報（以下、「キー文書情報」という）を関連文書抽出部１０４に送信し、関連文書検索処理を依頼（要求）する。そして、関連文書提示部２０４は、関連文書抽出部１０４による検索結果を受け取り、入力・出力部２０１に出力させる。
【００５８】
通信部２０５は、通信Ｉ／Ｆ５５０８に相当し、サーバ２０とデータの遣り取りを行う。
【００５９】
ここで、本実施の形態では、入力・出力部２０１は、例えば、キーボード、マウス等の入力装置５５０６、及び液晶ディスプレイ等の出力装置５５０６によって構成される。また、ユーザ情報処理部２０２、文書操作イベント取得部２０３、及び関連文書提示部２０４は、ＣＰＵ５５０２によって実行されるプログラムで構成され、記憶装置５５０５やＲＡＭ５５０４に記憶されている。
【００６０】
以上のように構成された情報処理システム１について、図４を用いてその動作を説明する。図４は、本発明の第１の実施の形態に係る情報処理システムの動作説明のためのフロー図である。なお、以下に示す動作は、例えば、サーバ２０またはクライアント３０が備えるＲＯＭ５５０３や記憶装置５５０５に格納されたコンピュータプログラムが、サーバ２０またはクライアント３０が備えるＣＰＵ５５０２によって処理されることにより実現される。なお、コンピュータプログラムは、ＲＯＭ５５０３や記憶装置５５０５以外のコンピュータ読み取り可能な記録媒体に格納されていてもよい。コンピュータ読み取り可能な記録媒体としては、磁気記録媒体、光記録媒体、光磁気記録媒体、半導体記憶装置等が一例として挙げられる。
【００６１】
まず、ユーザはクライアント３０上でユーザ認証を行う（ステップＳ１）。
【００６２】
ユーザ認証に成功すると、文書操作イベント取得部２０３は、文書操作イベント情報の取得を開始する（ステップＳ２）。文書操作イベント取得部２０３は、取得した文書操作イベント情報を文書操作イベント管理部１０３に送信する。
【００６３】
文書操作イベント管理部１０３は、文書操作イベント取得部２０３によって送信された文書操作イベント情報を文書操作イベントデータベース１０６に格納する（ステップＳ３）。
【００６４】
関連文書提示部２０４は、キー文書情報を関連文書抽出部１０４に送信して関連文書検索処理を依頼する（ステップＳ４）。
【００６５】
関連文書抽出部１０４は、関連文書提示部２０４によって送信されたキー文書情報に基づいて、文書操作イベント管理部１０３によって管理されている文書操作イベント情報から関連文書を抽出する（ステップＳ５）。関連文書抽出部１０４は、開閉イベントに基づいて「指定された文書と同時に開いていた文書」の検索、フォーカスイベントに基づいて「指定された文書の前後に閲覧していた文書」の検索、コピー／ペーストイベントに基づいて「指定された文書とコピー／ペーストを行った文書」の検索等を行う。そして、関連文書抽出部１０４は、これらの検索結果を統合することで関連文書抽出を行う。関連文書抽出部１０４は、抽出した関連文書の情報（以下、「関連文書情報」という）を関連文書検索結果として関連文書提示部２０４に送信する。
【００６６】
関連文書提示部２０４は、関連文書抽出部１０４によって送信された関連文書検索結果をユーザに提示する（ステップＳ６）。
【００６７】
以下、上述した動作の詳細について図５〜図１８を参照して説明する。
【００６８】
［ユーザ認証］
まず、ユーザはクライアント３０上でユーザ認証を行う。ユーザ情報処理部２０２は、図５に示すユーザ情報入力ユーザインタフェースを入力・出力部２０１に表示させ、ユーザにユーザ情報（ユーザ名とパスワード）を入力させる。
【００６９】
ユーザ情報処理部２０２は、入力・出力部２０１を介して入力されたユーザ情報（ユーザ名とパスワード）をユーザ認証部１０２に送信する。ユーザ認証部１０２は、予め登録されているユーザ情報が格納されているユーザデータベース１０５からユーザ情報を取得し、ユーザ情報処理部２０２から送信されたユーザ情報の照合を行い、ユーザ認証が成功したか否かをユーザ情報処理部２０２に返す。
【００７０】
ユーザ情報処理部２０２は、ユーザ認証が成功した場合は、そのユーザ情報を保持し、失敗した場合には、再度入力・出力部２０１にユーザ情報入力ユーザインタフェースを表示させ、ユーザにユーザ情報（ユーザ名とパスワード）を入力させる。なお、ユーザ認証は、クライアント３０を起動、ログインした際に、ＯＳへのログイン時に入力するユーザＩＤ（ユーザ名）とパスワードを取得して実行することとしてもよい。その際、ユーザ認証が成功すると、ＯＳからのログオフされるまでユーザ認証が成功した状態を保持することとする。
【００７１】
［文書操作イベント取得］
文書操作イベント取得部２０３は、文書操作イベント情報を取得する。本実施の形態では、クライアント３０上でＭｉｃｒｏｓｏｆｔ（登録商標）のＷｉｎｄｏｗｓ（登録商標）に代表されるＧＵＩ（Graphical User Interface）によるウィンドウシステムを持つＯＳ（Operating System）が動作しているものとする。
【００７２】
また、本実施の形態では、文書操作イベント取得部２０３は、文書操作イベント情報として、ユーザ名、クライアント識別子、アプリケーション名、文書タイトル、文書識別子、イベント名、実施時刻、イベント固有情報を取得するものとする。
【００７３】
ユーザ名は、ユーザ認証時にユーザ情報処理部２０２によって保持されたユーザＩＤである。
【００７４】
クライアント識別子は、クライアント３０を識別するために利用するもので、クライアント３０のＩＰアドレスやネットワークデバイスのＭＡＣアドレス等を利用することができる。本実施の形態では、ＩＰアドレスを利用するものとする。
【００７５】
アプリケーション名は、ユーザが文書操作に利用したアプリケーション名である。本実施の形態では、アプリケーションの実行モジュールのファイル名を利用する。
【００７６】
文書タイトルは、文書のタイトルであるが、本システムでは表示ウィンドウのタイトルやファイル名を文書タイトルとして利用することもできる。
【００７７】
文書識別子は、文書を一意に識別することのできるＩＤである。文書を識別できる情報であれば如何なるものでもよいが、本実施の形態では、Ｗｅｂ文書のＵＲＬ、ファイルシステムで管理されているファイルのファイルパス、ＤＢで管理されている文書のＤＢサーバ名、ＤＢ名、文書ＩＤ等、文書の管理場所を示す情報を利用する。
【００７８】
イベント名は、イベントを識別する為に利用するもので、本実施の形態では、「開閉」「フォーカス」「コピー／ペースト」の３つのいずれかがイベント名として取得される。
【００７９】
実施時刻は、イベントを実施した時刻であり、本実施の形態では、文書操作イベント取得部２０３は、イベントが「開閉」の場合は開始時刻として文書ウィンドウが開いた時刻を、終了時刻として文書ウィンドウが閉じた時刻を取得し、「フォーカス」の場合は開始時刻として文書ウィンドウが最前面化した時刻を、終了時刻として最前面化が終了した時刻を取得し、「コピー／ペースト」の場合はペーストを実施した時刻を取得する。
【００８０】
イベント固有情報は、イベント固有の情報であるが、本実施の形態では、文書操作イベント取得部２０３は、「コピー／ペースト」イベントのコピー元文書情報のみを取得する。
【００８１】
ここで、文書操作イベント取得処理について詳細に説明する。図６は、本発明の第１の実施の形態に係る文書操作イベント取得処理のフロー図である。
【００８２】
ユーザ情報取得処理では、文書操作イベント取得部２０３は、ユーザ情報処理部２０２からユーザＩＤを取得する（ステップＳ１１）。
【００８３】
ネットワークアドレス取得処理では、文書操作イベント取得部２０３は、クライアント３０のＩＰアドレスを取得する（ステップＳ１２）。
【００８４】
文書情報取得処理では、文書操作イベント取得部２０３は、現在閲覧中（ウィンドウが最前面にフォーカスしている）の文書の情報を取得する（ステップＳ１３）。なお、文書情報取得処理では、現在閲覧中の文書だけでなく、開いている文書ウィンドウ全ての情報が取得される。
【００８５】
イベント登録処理では、文書操作イベント取得部２０３は、イベントが発生したかをチェックし、必要であればイベント情報を文書操作イベント情報として文書操作イベント管理部１０３に送信する（ステップＳ１４）。
【００８６】
文書操作イベント取得部２０３は、処理終了の指示があるか否かを判断し（ステップＳ１５）、処理終了の指示がなければこれら一連の処理（ステップＳ１１〜Ｓ１４）を繰り返す。なお、処理の負荷を軽減するために繰り返し時に多少の待機時間を設定してもよい。
【００８７】
次に、文書情報取得処理（ステップＳ１３）について詳しく説明する。図７は、本発明の第１の実施の形態に係る文書情報取得処理のフロー図である。以下、Ｍｉｃｒｏｓｏｆｔ（登録商標）のＷｉｎｄｏｗｓ（登録商標）が搭載されているコンピュータを例として文書操作イベント取得方法を説明する。
【００８８】
ウィンドウシステムでは、文書をウィンドウと呼ばれる領域内に表示し、複数のウィンドウを切り替えながら操作することができる。Ｍｉｃｒｏｓｏｆｔ（登録商標）のＷｉｎｄｏｗｓ（登録商標）の場合、アプリケーションやサービスがその内部のオブジェクト、機能を外部のアプリケーションやサービスに公開することのできる、オートメーションと呼ばれる技術が存在する。このオートメーションに対応しているアプリケーションであれば、文書識別子を取得できる場合が多い。したがって、本実施の形態では、文書操作イベント取得部２０３は、文書タイトル、アプリケーション名を全ての文書について取得し、文書識別子をオートメーションに対応しているアプリケーションで表示されている文書に対して取得するものとする。
【００８９】
まず、文書操作イベント取得部２０３は、文書表示ウィンドウの情報取得用ウィンドウハンドルとして、アクティブウィンドウのウィンドウハンドルを取得する（ステップＳ２１）。Ｗｉｎ３２ＡＰＩと呼ばれるＡＰＩの１つである「ＧｅｔＡｃｔｉｖｅＷｉｎｄｏｗ（）」というＡＰＩを利用することで、現在アクティブであるウィンドウのハンドルを取得することができる。
【００９０】
次に、文書操作イベント取得部２０３は、取得したウィンドウハンドルを利用して、アクティブウィンドウのウィンドウタイトルを取得し、それを文書タイトルとする（ステップＳ２２）。この場合、ウィンドウタイトルには、アプリケーション名等が入る場合もあるが、ここではそれも含めて文書タイトルとする。ここでは、「ＧｅｔＷｉｎｄｏｗＴｅｘｔ()」というＡＰＩを利用することでウィンドウタイトルを取得することができる。
【００９１】
次に、文書操作イベント取得部２０３は、文書を表示しているアプリケーション情報を取得する（ステップＳ２３）。ここでは、「ＧｅｔＷｉｎｄｏｗＴｈｒｅａｄＰｒｏｃｅｓｓＩｄ()」というＡＰＩを利用することで、ウィンドウハンドルからそのウィンドウを実行しているモジュールのファイル名とパス名を取得することができる。これにより文書を表示しているアプリケーションを識別することができる。
【００９２】
次に、文書操作イベント取得部２０３は、文書を表示しているアプリケーションがオートメーション対応かどうかを判断する（ステップＳ２４）。オートメーション対応アプリケーション実行ファイル名リストを予め作成し、文書操作イベント取得部２０３は、取得したアプリケーションのモジュールのファイル名とこのリストを照合することで、オートメーション対応かどうかを判断する。
【００９３】
オートメーション対応である場合は、文書操作イベント取得部２０３は、各アプリケーションに応じて文書識別子を取得し、アプリケーションからこれらに対応する情報を取得できない場合は情報なしとする（ステップＳ２５）。一方、オートメーション対応でない場合には、文書識別子はなしとしてステップＳ２６に移る。
【００９４】
次に、文書操作イベント取得部２０３は、文書情報を更新する（ステップＳ２６）。図８は、文書情報の取得例を示した図である。文書操作イベント取得部２０３が取得した文書情報は、図８に示すような形式で管理する。ここでは、現在閲覧中の文書だけでなく、過去の履歴も保持する。
【００９５】
文書情報更新処理では、文書操作イベント取得部２０３は、閲覧文書が切り替わったかどうかを判断し、切り替わっていた場合には文書情報を更新する。文書情報記録において現在閲覧中の文書は、ＩＤ番号が一番大きい（フォーカス終了時刻が記載されていない）文書である（図８の例ではＩＤ４の文書）。文書操作イベント取得部２０３は、取得した文書情報の「ウィンドウハンドル」「文書タイトル」「文書識別子」の何れかが記録中の現在閲覧中の文書情報と異なる場合、閲覧文書が切り替わったと判断して、文書情報記録での閲覧中文書情報（ＩＤ４）のフォーカス終了時刻に現在時刻を登録し、新たな文書情報（ＩＤ５）を取得した情報を基に登録する。そして、文書操作イベント取得部２０３は、新しい文書情報の「フォーカス開始時刻」には現在時刻を登録する。このとき、文書操作イベント取得部２０３は、文書情報記録中に「ウィンドウハンドル」「文書タイトル」「文書識別子」が同じ文書情報がある場合、その「文書オープン時刻」を新しい文書情報の「文書オープン時刻」として登録する。そして、文書操作イベント取得部２０３は、同一文書がない場合は現在時刻を「文書オープン時刻」に登録する。
【００９６】
次に、イベント登録処理（ステップＳ１４）について詳しく説明する。図９は、本発明の第１の実施の形態に係るイベント登録処理のフロー図である。また、図１０は、「開閉」イベント情報の例を示す図である。また、図１１は、「フォーカス」イベント情報の例を示す図である。さらに、図１２は、「コピー／ペースト」イベント情報の例を示す図である。
【００９７】
イベント登録処理では、文書操作イベント取得部２０３は、イベントが発生したかどうかをチェックし、イベントが発生していたらそのイベント情報を文書操作イベント情報として文書操作イベント管理部１０３に送信する。以下、各イベントの発生チェック処理について説明する。
【００９８】
まず、コピー／ペーストイベント情報は、ペーストイベントが発生した場合に登録される。なお、コピー／ペーストイベントの発生チェックは、クリップボードの監視とキー入力の監視により行う。Ｍｉｃｒｏｓｏｆｔ（登録商標）のＷｉｎｄｏｗｓ（登録商標）では、「ＳｅｔＣｌｉｐｂｏａｒｄＶｉｅｗｅｒ（）」というＡＰＩを利用することでクリップボードの変化を通知してもらうことができる。
【００９９】
文書操作イベント取得部２０３は、クリップボードに変化が起きた場合はクリップボード情報を見に行き、コピー元のウィンドウハンドルを取得する。そして、文書操作イベント取得部２０３は、上述した文書情報取得処理と同じ処理を用いてコピー元のウィンドウハンドルから、「文書タイトル」「文書識別子」「アプリケーション名」を取得し、現在のコピー元文書情報として記憶する。ここで、コピー元文書情報の例を図１３に示す。ペーストはＣｔｒｌキーとＶキーで行われるため、文書操作イベント取得部２０３は、そのキー入力メッセージを取得することで、ペーストイベントが発生したか否かを判断する（ステップＳ３１）。
【０１００】
ペーストイベントが発生したと判断された場合には、文書操作イベント取得部２０３は、文書情報記録から現在閲覧中の文書情報を取得し、それにユーザ情報、クライアント識別子、イベント発生時刻（現在時刻）、コピー元文書情報をあわせて、図１２に示すようなコピー／ペーストイベント情報を生成して、文書操作イベント管理部１０３に送信して登録する（ステップＳ３２）。一方、ペーストイベントが発生しなかったと判断された場合には、ステップＳ３３に移る。
【０１０１】
次に、フォーカスイベント情報は、閲覧文書が切り替わったタイミングで登録される。文書操作イベント取得部２０３は、文書情報取得処理において閲覧文書が切り替わったか否かを判断する（ステップＳ３３）。
【０１０２】
閲覧文書が切り替わったと判断された場合には、文書操作イベント取得部２０３は、直前までフォーカスしていた文書情報を取得し、図１１に示すようなフォーカスイベント情報を生成して、文書操作イベント管理部１０３に送信して登録する（ステップＳ３４）。一方、閲覧文書が切り替わっていないと判断された場合には、処理は終了する。
【０１０３】
開閉イベント情報は、閲覧文書が切り替わったタイミングにおいて、直前にフォーカスしていた文書のウィンドウが破棄された、または、同じウィンドウで新しい文書が閲覧されている、の何れかの場合に登録される。文書情報取得処理において閲覧文書が切り替わった場合、文書操作イベント取得部２０３は、直前までフォーカスしていた文書情報を取得し、ウィンドウハンドル情報を利用してそのウィンドウが破棄されたかどうか、または、新しい文書が同じウィンドウで開かれているかをチェックする（ステップＳ３５）。
【０１０４】
文書操作イベント取得部２０３は、文書が閉じたか否かを判断する（ステップＳ３６）。ここで、文書が閉じたか否かは、ウィンドウが破棄されたかどうか、または、新しい文書が同じウィンドウで開かれているかの何れかであるか否かで判断されるものとする。
【０１０５】
文書が閉じたと判断された場合には、文書操作イベント取得部２０３は、図１０に示すような開閉イベント情報を生成して、文書操作イベント管理部１０３に送信して登録する（ステップＳ３７）。そして、開閉イベントが登録された場合は、図８に示す文書情報記録から登録した文書情報を削除する。一方、文書が閉じなかったと判断された場合には、処理は終了する。以上の処理により、文書操作イベント情報の取得、登録が行われる。
【０１０６】
［文書操作イベント管理］
文書操作イベント管理部１０３は、文書操作イベント取得部２０３から送信される文書操作イベント情報を文書操作イベントデータベース１０６に記録する。データベースの項目は、図１０、１１、１２に示す開閉イベント情報、フォーカスイベント情報、コピー／ペーストイベント情報の各イベント情報の項目と同じで、文書操作イベント管理部１０３は、図１０、１１、１２に示す情報を文書操作イベントデータベース１０６に記録する。
【０１０７】
［関連文書抽出］
関連文書抽出部１０４は、関連文書提示部２０４から送信される抽出指示に基づいて関連文書を抽出し、検索結果として関連文書提示部２０４に送信する。関連文書提示部２０４からは、キー文書情報としてキー文書の文書識別子を含むキー文書識別子情報が送信される。関連文書抽出部１０４は、関連文書提示部２０４からの抽出指示を受け取ったら、キー文書識別子情報を利用して、文書操作イベント管理部１０３から文書操作イベント種類毎に関連文書を検索する。
【０１０８】
図１４は、本発明の第１の実施の形態に係る関連文書抽出処理のフロー図である。また、図１５は、関連文書抽出結果の例を示す図である。
【０１０９】
まず、関連文書抽出部１０４は、開閉イベント関連文書抽出を行う（ステップＳ４１）。「開閉」イベントの場合は、関連文書抽出部１０４は、文書操作イベント管理部１０３が文書操作イベントデータベース１０６で管理している文書操作イベント履歴に基づいて、イベントが開閉イベントであり、かつ、文書識別子がキー文書識別子と同一の文書操作イベントを検索し、その検索結果の全ての文書操作イベントに対して「開始時刻」と「終了時刻」の重なりを条件として、キー文書と同時に開いていた文書の検索を行う。
【０１１０】
文書操作イベント履歴に基づいて、イベントが開閉イベントであり、かつ、文書識別子がキー文書識別子と同一の文書操作イベントを関連文書抽出部１０４が検索するための検索式の例を式（１）に、「開始時刻」と「終了時刻」の重なりを条件として、キー文書と同時に開いていた文書を関連文書抽出部１０４が検索するための検索式の例を式（２）に示す。
（数１）
Select * from 文書操作イベントＤＢ where イベント ＝ 開閉 and 文書識別子 = キー文書識別子      （１）
（数２）
Select * from 文書操作イベントＤＢ where イベント ＝ 開閉 and ユーザ名 = キー文書ユーザ名 and （ 開始時刻 >= キー文書開始時刻 and 終了時刻 > キー文書開始時刻 ） or （ 開始時刻 >= キー文書終了時刻 and 終了時刻 > キー文書終了時刻 ）  （２）
関連文書抽出部１０４は、検索結果を図１５に示すような関連文書抽出結果として記録する（図１５のＩＤ１の例）。ここで、同一イベント、同一文書識別子を持った情報がすでに記録されていた場合には、関連文書抽出部１０４は、同時に文書を開いていた時間（同時オープン時間）、同時に文書を開いた回数（同時オープン回数）を合計して情報を更新する。
【０１１１】
次に、関連文書抽出部１０４は、フォーカスイベント関連文書抽出処理を行う（ステップＳ４２）。「フォーカス」イベントの場合は、関連文書抽出部１０４は、文書操作イベント履歴に基づいて、イベントがフォーカスイベントであり、かつ、文書識別子がキー文書識別子と同一の文書操作イベントを検索し、その検索結果の全ての文書操作イベントに対して、直前、直後にフォーカスしていた文書の検索を行う。
【０１１２】
文書操作イベント履歴に基づいて、イベントがフォーカスイベントであり、かつ、文書識別子がキー文書識別子と同一の文書操作イベントを関連文書抽出部１０４が検索するための検索式の例を式（３）に、「開始時刻」と「終了時刻」の前後を条件として、キー文書の直前、直後にフォーカスしていた文書を検索するための検索式の例を式（４）に示す。
（数３）
Select * from 文書操作イベントＤＢ where イベント ＝ フォーカス and 文書識別子 = キー文書識別子      （３）
（数４）
Select * from 文書操作イベントＤＢ where イベント ＝ フォーカス and ユーザ名 キー文書ユーザ名 and （ 開始時刻 >= キー文書終了時刻 and 開始時刻 < キー文書終了時刻 ＋ ５秒 ） or （ 終了時刻 <= キー文書開始時刻 and 終了時刻 >= キー文書開始時刻 − ５秒 ）      （４）
ここでは、キー文書のフォーカス終了時刻から５秒以内にフォーカス開始した文書を直後の文書、キー文書のフォーカス開始時刻５秒前から開始時刻までにフォーカス終了した文書を直前の文書としている。
【０１１３】
関連文書抽出部１０４は、検索結果を図１５に示すような関連文書抽出結果に記録する（図１５のＩＤ２の例）。ここで、同一イベント、同一文書識別子を持った情報がすでに記録されていた場合には、関連文書抽出部１０４は、前後フォーカス回数を合計して情報を更新する。
【０１１４】
次に、関連文書抽出部１０４は、コピー／ペーストイベント関連文書抽出処理を行う（ステップＳ４３）。「コピー／ペースト」イベントの場合は、関連文書抽出部１０４は、文書操作イベント履歴に基づいて、イベントがコピー／ペーストイベントであり、かつ、文書識別子がキー文書識別子と同一の文書操作イベントと、文書操作イベント履歴に基づいて、イベントがコピー／ペーストイベントであり、かつ、コピー元文書識別子がキー文書識別子と同一の文書操作イベントとを検索する。
【０１１５】
文書操作イベント履歴に基づいて、イベントがコピー／ペーストイベントであり、かつ、文書識別子がキー文書識別子と同一の文書操作イベントを関連文書抽出部１０４が検索するための検索式の例を式（５）に、文書操作イベント履歴に基づいて、イベントがコピー／ペーストイベントであり、かつ、コピー元文書識別子がキー文書識別子と同一の文書操作イベントを関連文書抽出部１０４が検索するための検索式の例を式（６）に示す。
（数５）
Select * from 文書操作イベントＤＢ where イベント ＝ コピー／ペースト and 文書識別子 = キー文書識別子      （５）
（数６）
Select * from 文書操作イベントＤＢ where イベント ＝ コピー／ペースト and コピー元文書識別子 = キー文書識別子      （６）
式（５）の場合は、検索結果の文書操作イベントのコピー元文書タイトル、コピー元文書識別子が関連文書情報に、式（６）の場合は、文書タイトル、文書識別子が関連文書情報になる。関連文書抽出部１０４は、検索結果を図１５に示すような関連文書抽出結果に記録する（図１５のＩＤ３の例）。ここで、同一イベント、同一文書識別子を持った情報がすでに記録されていた場合には、関連文書抽出部１０４は、コピー／ペースト回数を合計して情報を更新する。
【０１１６】
最後に、関連文書抽出部１０４は、関連文書情報統合処理を行う（ステップＳ４４）。関連文書情報統合処理では、関連文書抽出部１０４は、図１５に示すような関連文書抽出結果を同一文書識別子を持つ情報で統合することにより、図１６に示すような統合結果を作成する。最終的には、関連文書抽出部１０４は、図１６に示すような関連文書抽出統合
結果情報を関連文書提示部２０４に送信する。
【０１１７】
［関連文書提示］
関連文書提示部２０４は、関連文書の提示を行う。関連文書提示部２０４は、現在閲覧している文書の関連文書の検索を関連文書抽出部１０４に依頼し、検索された関連文書を入力・出力部２０１に表示させる。また、関連文書提示部２０４は、現在開いている文書一覧等を入力・出力部２０１に表示させて、ユーザにキー文書を指定させ、指定されたキー文書の関連文書の検索を関連文書抽出部１０４に依頼し、検索された関連文書を入力・出力部２０１に表示させるようにしてもよい。
【０１１８】
また、関連文書提示部２０４は、入力・出力部２０１を介してユーザに任意の文書識別子を入力させ、入力された文書識別子をキー文書識別子として関連文書の検索を関連文書抽出部１０４に依頼し、検索された関連文書を入力・出力部２０１に表示させるようにしてもよい。ここで、現在閲覧している（フォーカスしている）、あるいは現在開いている
文書の情報は、文書操作イベント取得部２０３から取得することができる（図８に示す文書情報）。
【０１１９】
関連文書提示の例を図１７に示す。この例では、ユーザが入力・出力部２０１を介して関連文書検索結果を各項目で並べ替えたり、表示している文書タイトルや文書識別子を選択することでその文書が開いたりすることができる。
【０１２０】
このような本発明の第１の実施の形態に係る情報処理システム１は、ユーザが文章操作に利用するアプリケーションや文書管理システム、あるいは文書フォーマット等に依存することなく、ユーザが行った文書操作イベントの情報を取得し、それに基づいて関連文書を検索することができる。
【０１２１】
なお、本実施の形態では、開閉イベント、フォーカスイベント、及びコピー／ペーストイベントの３つの文書操作イベントについて関連文書抽出処理を行うようにしているが、これに限らず、文書操作イベントを入力・出力部２０１を介してユーザが指定し、指定された文書操作イベントについて関連文書抽出処理を行うようにしてもよい。
【０１２２】
このためには、ユーザは、クライアント３０の関連文書提示部２０４からの関連文書抽出処理依頼時にキー文書識別子以外に「利用文書操作イベント」を指定する。利用文書操作イベント指定があった場合には、図１４に示すフロー（関連文書抽出処理）で該当する文書操作イベントの処理だけを実行する。利用文書操作イベント指定がない場合には、全ての文書操作イベントの処理を実行する。
【０１２３】
これにより、関連性の意味合いを指定して関連文書を検索することができる。
【０１２４】
また、本実施の形態では、関連文書抽出部１０４は、全てのユーザの文書操作イベント情報に基づいて、指定された文書の関連文書を抽出するようにしているが、これに限らず、特定のユーザを入力・出力部２０１を介してユーザが指定し、指定されたユーザの文書操作イベント情報に基づいて、指定された文書の関連文書を抽出するようにしてもよい。
【０１２５】
このためには、ユーザは、クライアント３０の関連文書提示部２０４からの関連文書抽出処理依頼時にキー文書識別子以外に「利用ユーザ」を指定する。利用ユーザ指定があった場合には、イベント毎の関連文書抽出処理の際の検索式にユーザ指定条件を設定する。利用ユーザ指定がない場合には、全ての文書操作イベントを利用する。あるいは、現在のユーザが行った文書操作イベントだけを利用するとすることもできる。
【０１２６】
ここで、利用ユーザ指定があった場合の各検索式の変更例を以下に示す。上述した式（１）、（３）、（５）、（６）がそれぞれ、以下の式（７）、（８）、（９）、（１０）に変更される。
（数７）
Select * from 文書操作イベントＤＢ where イベント ＝ 開閉 and 文書識別子 = キー文書識別子 and  ユーザ名 = 指定ユーザ名      （７）
（数８）
Select * from 文書操作イベントＤＢ where イベント ＝ フォーカス and 文書識別子 = キー文書識別子 and  ユーザ名 = 指定ユーザ名      （８）
（数９）
Select * from 文書操作イベントＤＢ where イベント ＝ コピー／ペースト and  文書識別子 = キー文書識別子 and  ユーザ名 = 指定ユーザ名      （９）
（数１０）
Select * from 文書操作イベントＤＢ where イベント ＝ コピー／ペースト and  コピー元文書識別子 = キー文書識別子 and ユーザ名 = 指定ユーザ名      （１０）
これにより、自分の文書操作イベント情報、他者の文書操作イベント情報等、「人」による関連文書抽出条件を指定することができる。
【０１２７】
また、本実施の形態では、クライアント３０が、ユーザ情報処理部２０２、文書操作イベント取得部２０３、及び関連文書提示部２０４を有する構成となっているが、これに限らず、サーバ２０が、ユーザ情報処理部２０２、文書操作イベント取得部２０３、及び関連文書提示部２０４のうち１つ以上を有する構成となっていてもよい。
【０１２８】
（第２の実施の形態）
次に、本発明の第２の実施の形態について説明する。図１８は、本発明の第２の実施の形態に係るサーバを示す構成図である。また、図１９は、本発明の第２の実施の形態に係るクライアントを示す構成図である。
【０１２９】
また、本発明の第２の実施の形態に係るサーバ及びクライアントを構成する構成要素のうち、本発明の第１の実施の形態に係るサーバ及びクライアントを構成する構成要素と同一の構成要素には同一の符号を付し、それぞれの説明を省略する。
【０１３０】
タスク情報管理部１０７は、ユーザのタスクに関連する情報を表すタスク情報を管理する。本実施の形態では、タスク情報管理部１０７は、タスク情報として、プロジェクト、スケジュール、Ｔｏｄｏに関連する情報を管理する。ここで、タスク情報の例を図２０に示す。タスク情報管理部１０７は、プロジェクトについては、ＩＤ、タイトル、説明、メンバユーザＩＤリスト、開始日、終了日、関連文書識別子リストの情報を、スケジュールについては、ＩＤ、タイトル、説明、メンバユーザＩＤリスト、開始日時、終了日時、場所、関連文書識別子リストの情報を、Ｔｏｄｏについては、ＩＤ、タイトル、説明、メンバユーザＩＤリスト、期日（日時）、関連文書識別子リストの情報を、それぞれタスク情報データベース１０８に保持する。
【０１３１】
なお、関連文書識別子リストとは、ユーザが関連文書としてタスクに関連付けた文書の情報である。
【０１３２】
タスク関連文書抽出部１０９は、タスク情報管理部１０７で管理しているタスク情報と文書操作イベント管理部１０３で管理している文書操作イベント情報とに基づいて、指定されたタスクに関連する文書（以下、「タスク関連文書」という）を抽出する。
【０１３３】
タスク関連文書提示部２０６は、タスク関連文書の検索結果をユーザに提示する。タスク関連文書提示部２０６は、現在表示しているタスク、あるいはユーザが指定したタスク等の検索キーとなるキータスクの情報（以下、「キータスク情報」という）とキー文書情報とをタスク関連文書抽出部１０９に送信し、タスク関連文書検索処理を依頼する。そして、タスク関連文書提示部２０６は、タスク関連文書抽出部１０９による検索結果を受け取り、入力・出力部２０１に出力させる。
【０１３４】
ここで、本実施の形態では、タスク情報管理部１０７、タスク関連文書抽出部１０９、及びタスク関連文書提示部２０６は、例えば、各情報処理装置のＣＰＵ５５０２によって実行されるプログラムで構成され、記憶装置５５０５やＲＡＭ５５０４に記憶されている。また、タスク情報データベース１０８は、例えば、各情報処理装置のＲＯＭ５５０３、ＲＡＭ５５０４、記憶装置５５０５等の記憶媒体によって構成される。
【０１３５】
以上のように構成された情報処理システム１について、その動作を説明する。なお、以下の説明は、本発明の第１の実施の形態における動作説明と異なる部分についてのみ行う。また、本実施の形態では、図４に示す関連文書抽出処理の代わりにタスク関連文書抽出処理が行われる。
【０１３６】
［タスク関連文書抽出］
タスク関連文書抽出部１０９は、関連文書提示部２０４から送信される抽出指示に基づいてタスク関連文書を抽出し、抽出したタスク関連文書を検索結果として関連文書提示部２０４に送信する。
【０１３７】
図２１は、本発明の第２の実施の形態に係る関連文書抽出処理のフロー図である。
【０１３８】
まず、タスク関連文書提示部２０６からは、キータスク情報としてキータスクのＩＤを含むキータスクＩＤ情報とキー文書情報としてキー文書識別子情報が送信される。タスク関連文書抽出部１０９は、キータスクのＩＤを持つタスク情報を検索し、そのタスクがスケジュールであるか否かを判断する（ステップＳ５１）。ここで、タスクがスケジュールであると判断されない場合には、処理は終了する。
【０１３９】
一方、タスクがスケジュールであると判断された場合には、タスク関連文書抽出部１０９は、そのタスクの開始日時及び終了日時を取得する（ステップＳ５２）。次に、タスク関連文書抽出部１０９は、タスクメンバーＩＤリストを取得し（ステップＳ５３）、タスクメンバーがそのタスク時、すなわちタスクの開始日時と終了日時の間に操作した文書の検索を行う（ステップＳ５４）。
【０１４０】
そして、タスク関連文書抽出部１０９は、全てのユーザについて検索を行ったか否かを判断し、全てのユーザについて検索を行ったと判断された場合には、処理は終了する。一方、全てのユーザについて検索を行ったと判断されなかった場合には、ステップＳ５４へ移る。
【０１４１】
ここで、開閉イベント、及びフォーカスイベントにおける文書操作イベント情報の検索式の例を式（１１）に、コピー／ペーストイベントにおける文書操作イベント情報の検索式の例を式（１２）に示す。
（数１１）
Select * from 文書操作イベントＤＢ where ユーザ名 = タスクメンバユーザ and (  （ 開始時刻  >= タスク開始日時 and 開始時刻 < タスク終了日時 ） or （ 終了時刻>= タスク開始日時 and 終了時刻 < タスク終了日時 ）  )      （１１）
（数１２）
Select * from 文書操作イベントＤＢ where ユーザ名 = タスクメンバユーザ and （ 実施時刻  >= タスク開始日時 and 実施時刻 < タスク終了日時 ）      （１２）
タスク関連文書抽出部１０９は、検索結果を図１５に示すような関連文書抽出結果として記録する。最終的には、タスク関連文書抽出部１０９は、図１６に示すような統合結果
を生成する。そして、タスク関連文書抽出部１０９は、図１６に示すような統合結果を関
連文書提示部２０４に送信する。
【０１４２】
［タスク関連文書提示］
タスク関連文書提示部２０６は、タスク関連文書の提示を行う。タスク関連文書提示部２０６は、現在表示しているタスクの関連文書の検索をタスク関連文書抽出部１０９に依頼し、検索されたタスク関連文書を入力・出力部２０１に表示させる。また、タスク関連文書提示部２０６は、入力・出力部２０１を介してユーザにタスクを指定させ、指定されたタスクの関連文書の検索をタスク関連文書抽出部１０９に依頼し、検索されたタスク関連文書を入力・出力部２０１に表示させるようにしてもよい。
【０１４３】
タスク関連文書提示の例を図２２に示す。この例では、ユーザが入力・出力部２０１を介してタスク関連文書検索結果を各項目で並べ替えたり、表示している文書タイトルや文書識別子を選択することでその文書が開いたりすることができる。
【０１４４】
このような本発明の第２の実施の形態に係る情報処理システム１は、ユーザが文章操作に利用するアプリケーションや文書管理システム、あるいは文書フォーマット等に依存することなく、ユーザが行った文書操作イベントの情報を取得することができ、タスクの時間情報を利用することで、例えば「会議の時に使った文書」を抽出することができ、ユーザの文書操作イベントに基づいたタスク関連文書を検索することができる。
【０１４５】
なお、本実施の形態では、タスク関連文書抽出部１０９は、タスク情報と文書操作イベント情報とに基づいて、タスク関連文書を抽出するようにしているが、これに限らず、タスク情報としてタスク関連文書の情報がタスク情報管理部１０７によってタスク情報データベース１０８で管理されている場合には、そのタスク関連文書情報と文書操作イベント情報とに基づいて、タスク関連文書を抽出するようにしてもよい。
【０１４６】
図２３は、本発明の第２の実施の形態に係るタスク関連文書抽出処理の変形例を示すフロー図である。
【０１４７】
まず、タスク関連文書提示部２０６からは、キータスクＩＤ情報とキー文書識別子情報が送信される。タスク関連文書抽出部１０９は、キータスクＩＤを持つタスク情報を検索し、関連文書識別子リストとタスクメンバーＩＤとを取得し（ステップＳ６１、６２）、タスクメンバーと関連文書識別子をキー情報として関連文書検索を行う（ステップＳ６３）。この関連文書抽出処理は、図１４に示す関連文書抽出処理と同様な処理である。
【０１４８】
そして、タスク関連文書抽出部１０９は、全ての文書について検索を行ったか否かを判断し（ステップＳ６４）、全ての文書について検索を行ったと判断されなかった場合には、ステップＳ６３に戻る。
【０１４９】
一方、全ての文書について検索を行ったと判断された場合には、タスク関連文書抽出部１０９は、全てのユーザについて検索を行ったか否かを判断する（ステップＳ６５）。ここで、全てのユーザについて検索を行ったと判断された場合には、処理は終了する。
【０１５０】
一方、全てのユーザについて検索を行ったと判断されなかった場合には、ステップＳ６３に戻る。
【０１５１】
タスク関連文書抽出部１０９は、検索結果を図１５に示すような関連文書抽出結果として記録する。最終的には、タスク関連文書抽出部１０９は、図１７に示す統合結果を生成する。そして、タスク関連文書抽出部１０９は、図１７に示すような統合結果を関連文書提示部２０４に送信する。
【０１５２】
これにより、すでに関連が明確になっているタスク関連文書の情報を元に、ユーザの文書操作イベントに基づいたタスク関連文書を検索することができる。
【０１５３】
また、本実施の形態では、開閉イベント、フォーカスイベント、及びコピー／ペーストイベントの３つの文書操作イベントについてタスク関連文書抽出処理を行うようにしているが、これに限らず、文書操作イベントを入力・出力部２０１を介してユーザが指定し、指定された文書操作イベントについてタスク関連文書抽出処理を行うようにしてもよい。
【０１５４】
また、本実施の形態では、タスク関連文書抽出部１０９は、全てのユーザの文書操作イベント情報に基づいて、指定されたタスクの関連文書を抽出するようにしているが、これに限らず、特定のユーザを入力・出力部２０１を介してユーザが指定し、指定されたユーザの文書操作イベント情報に基づいて、指定されたタスクの関連文書を抽出するようにしてもよい。
【０１５５】
（第３の実施の形態）
次に、本発明の第３の実施の形態について説明する。図５６は、本発明の第３の実施の形態に係るサーバを示す構成図である。また、図５７は、本発明の第３の実施の形態に係るクライアントを示す構成図である。
【０１５６】
また、本発明の第３の実施の形態に係るサーバ及びクライアントを構成する構成要素のうち、本発明の第１の実施の形態に係るサーバ及びクライアントを構成する構成要素と同一の構成要素には同一の符号を付し、それぞれの説明を省略する。
【０１５７】
図５６に示すように、サーバ２０は、通信部１０１、ユーザ認証部１０２、文書操作イベント管理部５６０１、関連文書抽出部５６０２、ユーザデータベース５６０３、文書操作イベントデータベース５６０４から構成されている。
【０１５８】
文書操作イベント管理部５６０１は、文書操作イベント情報を管理する。文書操作イベント管理部５６０１は、後述する文書操作イベント取得部５７０１から送信される文書操作イベント情報を文書操作イベントデータベース５６０４で管理する。
【０１５９】
ここで、文書操作イベントは、クライアント３０上でユーザが行った文書操作のイベントである。本実施の形態において、文書操作イベントは、文書の開閉（文書ウィンドウのオープン／クローズ）、フォーカス（文書ウィンドウの最前面化）、コピー／ペースト（文書ウィンドウ間でのクリップボードを介した情報の複写）とする。
【０１６０】
また、文書操作イベント情報は、文書操作イベントに関連する情報である。本実施の形態において、文書操作イベント情報は、文書操作イベントが行われたクライアント３０を識別する情報であるクライアント識別情報、文書操作イベントが行われた文書に関する情報である操作対象文書情報（文書タイトル、文書識別子等）、文書操作イベントが行われたアプリケーションに関する情報であるアプリケーション情報、文書操作イベントを示すイベント名、文書操作イベントが実施された時刻を示すイベント実施時刻、文書操作イベントに固有な情報を示すイベント固有情報から構成される。
【０１６１】
関連文書抽出部５６０２は、文書操作イベント管理部５６０１で管理している文書操作イベント情報を利用して、指定された文書に関連する文書（以下、「関連文書」という）を抽出する処理を行う。
【０１６２】
ここで、本実施の形態では、ユーザ認証部１０２、文書操作イベント管理部５６０１、及び関連文書抽出部５６０２は、例えば、ＣＰＵ５５０２によって実行されるプログラムで構成され、記憶装置５５０５やＲＡＭ５５０４に記憶されている。また、ユーザデータベース５６０３及び文書操作イベントデータベース５６０４は、例えば、ＲＯＭ５５０３、ＲＡＭ５５０４、記憶装置５５０５等の記憶媒体によって構成される。
【０１６３】
また、図５７に示すように、クライアント３０は、入力・出力部２０１、ユーザ情報処理部２０２、文書操作イベント取得部５７０１、関連文書提示部５７０２、通信部２０５から構成されている。
【０１６４】
文書操作イベント取得部５７０１は、文書操作イベント情報を取得する。
【０１６５】
関連文書提示部５７０２は、関連文書抽出部５６０２からの関連文書の検索（抽出）結果を、入力部・出力部２０１を介してユーザに提示する。関連文書提示部５７０２は、現在閲覧している文書、あるいはユーザが指定した文書等の検索キーとなるキー文書の情報（以下、「キー文書情報」という）を関連文書抽出部５６０２に送信し、関連文書検索処理を依頼（要求）する。そして、関連文書提示部５７０２は、関連文書抽出部５６０２による検索結果を受け取り、入力・出力部２０１に出力させる。
【０１６６】
ここで、本実施の形態では、入力・出力部２０１は、例えば、キーボード、マウス等の入力装置５５０６、及び液晶ディスプレイ等の出力装置５５０６によって構成される。また、ユーザ情報処理部２０２、文書操作イベント取得部５７０１、及び関連文書提示部５７０２は、ＣＰＵ５５０２によって実行されるプログラムで構成され、記憶装置５５０５やＲＡＭ５５０４に記憶されている。
【０１６７】
［文書操作イベント取得］
クライアント３０の文書操作イベント取得部５７０１は、ユーザがクライアント３０上で行った文書操作情報を取得する。本実施の形態では、クライアント３０上でＭｉｃｒｏｓｏｆｔ（登録商標）のＷｉｎｄｏｗｓ（登録商標）に代表されるＧＵＩによるウィンドウシステムを持つＯＳが動作しているものとする。
【０１６８】
本実施の形態において文書操作イベント取得部５７０１は、文書操作イベント情報として、ユーザ名、文書識別情報（操作対象文書情報に含まれる）、クライアント識別子、文書タイトル、アプリケーション名、イベント名、イベント実施時刻、イベント固有情報を取得するものとする。本実施の形態においては、文書操作イベントは、文書の開閉、フォーカス、コピー／ペーストとする。
【０１６９】
なお、文書操作イベント情報として取得される各情報は、文書識別情報を除いて第１の実施の形態の文書操作イベント情報が含む各情報と同様の意味であるため、説明は割愛する。文書識別情報は、図示しない文書識別情報抽出部で算出される。クライアント３０の文書識別情報抽出部は、文書操作イベント取得部５７０１からの指示に基づき、文書識別情報を抽出する。本実施の形態における文書識別情報は、文書が格納される位置を示す情報であるロケーション情報（ファイルパスやＵＲＬなど）と、文書の内容から算出されるハッシュ値である文書内容ハッシュ値とを含むこととする。
【０１７０】
文書操作イベント取得部５７０１が取得した文書操作イベント情報は、サーバ２０の文書操作イベント管理部５６０１に送信され蓄積管理される。
【０１７１】
図３０は、本発明の第３の実施の形態に係る文書操作イベント取得処理のフロー図である。
【０１７２】
文書操作イベント取得部５７０１は、ユーザ情報処理部２０２からユーザＩＤを取得する（ステップＳ３０１）。なお、ユーザ情報処理部２０２がクライアントＯＳへのログイン時にログイン名を取得する方式を採る場合には、ログイン名をユーザ名として取得する。
【０１７３】
次に、文書操作イベント取得部５７０１は、クライアント３０のＩＰアドレスを取得する（ステップＳ３０２）。取得したＩＰアドレスをクライアント識別子とする。
【０１７４】
次に、文書操作イベント取得部５７０１は、クライアント３０に表示されるウィンドウに送られるウィンドウメッセージがあるかを監視する（ステップＳ３０３）。ウィンドウメッセージがある（検出された）場合、文書操作イベント取得部５７０１は、ウィンドウメッセージを取得する（ステップＳ３０４）。一方、ウィンドウメッセージがない（検出されない）場合には、文書操作イベント取得部５７０１は、ウィンドウメッセージがあるかを監視するステップＳ３０３の処理を継続する。
【０１７５】
ここで、ウィンドウメッセージとは、例えばＯＳとしてＭｉｃｒｏｓｏｆｔ（登録商標）のＷｉｎｄｏｗｓ（登録商標）を用いている場合に、Ｗｉｎｄｏｗｓ（登録商標）がアプリケーションのウィンドウに対して送る通知をいう。より詳細には、ウィンドウメッセージは、ユーザがマウスやキーボード等から入力する動作をしたとき、あるいは、ボタンやメニューを押す動作をしたとき、Ｗｉｎｄｏｗｓ（登録商標）がこれらの動作を検出し、Ｗｉｎｄｏｗｓ（登録商標）が取得した動作をそれぞれメッセージとして通知するために生成される。各アプリケーションはこの通知を受け取ることにより、ユーザがどのような動作を行ったのかを知ることができ、またその通知に応じて種々の処理を実行することを可能とする。
【０１７６】
このウィンドウメッセージの有無を検出する技術として、例えば、メッセージフックという技術がよく知られている。本実施の形態においては、ウィンドウメッセージの有無の監視（ステップＳ３０３）及びウィンドウメッセージの取得（ステップＳ３０４）の処理を、例えば、メッセージフック技術を用いて実装しているものとして説明を行う。
【０１７７】
次に、文書操作イベント取得部５７０１は、ステップＳ３０４で取得したウィンドウメッセージが、文書操作イベントであるかを判定する（ステップＳ３０５〜Ｓ３０７）。ウィンドウメッセージは、そのウィンドウメッセージがどのような意味をもつかを表す定数名または整数値を含んでおり、ステップＳ３０５〜Ｓ３０７の各判定処理においては、ステップＳ３０４で取得したウィンドウメッセージの定数名または整数値をその判定に利用する。
【０１７８】
文書操作イベント取得部５７０１は、ステップＳ３０４で取得したウィンドウメッセージが、オープン／クローズ操作の文書操作イベントである場合（ステップＳ３０５でＹＥＳの場合）に、当該オープン／クローズ操作について文書操作イベント情報を取得し、文書操作イベント管理部５６０１に送信し、文書操作イベントデータベース５６０４に登録する処理を実行する（ステップＳ３１０）。
【０１７９】
文書操作イベント取得部５７０１は、ステップＳ３０４で取得したウィンドウメッセージが、フォーカスイン／アウト操作の文書操作イベントである場合（ステップＳ３０６でＹＥＳの場合）に、当該フォーカスイン／アウト操作について文書操作イベント情報を取得し、取得した文書操作イベント情報を文書操作イベント管理部５６０１に送信し、文書操作イベントデータベース５６０４に登録する処理を実行する（ステップＳ３１１）。
【０１８０】
文書操作イベント取得部５７０１は、ステップＳ３０４で取得したウィンドウメッセージが、コピー／ペースト操作の文書操作イベントである場合（ステップＳ３０７でＹＥＳの場合）に、当該コピー／ペースト操作について文書操作イベント情報を取得し、取得した文書操作イベント情報を文書操作イベント管理部５６０１に送信し、文書操作イベントデータベース５６０４に登録する処理を実行する（ステップＳ３１２）。
【０１８１】
また図示していないが、文書操作イベント取得部５７０１は、ステップＳ３０４で取得したウィンドウメッセージが、オープン／クローズ操作またはフォーカスイン／アウト操作の文書操作イベントである場合に、関連文書提示部５７０２にこれらの文書操作イベントを検出したことを通知するようにしてもよい。
【０１８２】
文書操作イベント取得部５７０１は、ウィンドウメッセージについて文書操作イベント情報の文書操作イベントデータベース５６０４への登録が完了すると、ステップＳ３０３に戻る。また、文書操作イベント取得部５７０１は、ウィンドウメッセージが文書操作イベントではない場合、すなわち、オープン／クローズ操作、フォーカスイン／アウト操作、コピー／ペースト操作のいずれでもない場合には、ステップＳ３０３に戻り、当該ウィンドウメッセージから文書操作イベント情報を取得する処理を終了する。
【０１８３】
次に、文書操作イベントがオープン／クローズ操作である場合の文書操作イベント情報を取得する処理（ステップＳ３１０）について詳しく説明する。図３１は、本発明の第３の実施の形態に係る文書操作イベントがオープン／クローズ操作である場合の文書操作イベント情報取得処理のフロー図である。
【０１８４】
文書操作イベント取得部５７０１は、ステップＳ３０５でオープン／クローズ操作であると判定されたウィンドウメッセージについて、ウィンドウのタイトル（以下、ウィンドウタイトルという）を取得する（ステップＳ３１０１）。これは、Ｗｉｎ３２ＡＰＩと呼ばれるＡＰＩの１つである「ＧｅｔＷｉｎｄｏｗＴｅｘｔ（）」というＡＰＩを利用することで、ウィンドウタイトルを取得することができる。
【０１８５】
次に、文書操作イベント取得部５７０１は、ウィンドウに表示されている文書の操作に利用したアプリケーションの情報であるアプリケーション情報を取得する（ステップＳ３１０２）。これは、「ＧｅｔＷｉｎｄｏｗＴｈｒｅａｄＰｒｏｃｅｓｓＩｄ（）」というＡＰＩを利用することで、そのウィンドウを実行しているモジュールのファイル名とパス名とを取得することができる。これにより、文書を表示しているアプリケーションを識別することができる。なお、本実施の形態においては、モジュールのファイル名をアプリケーション名、すなわちアプリケーション情報として利用する。
【０１８６】
次に、文書操作イベント取得部５７０１は、文書識別情報抽出部から文書識別情報を取得する（ステップＳ３１０３）。
【０１８７】
文書操作イベント取得部５７０１は、取得した文書操作イベント情報をサーバ２０の文書操作イベント管理部５６０１に送信する。送信された文書操作イベント情報は、文書操作イベント管理部５６０１によって、文書操作イベントデータベース５６０４に登録される（ステップＳ３１０４）。
【０１８８】
ここで、図２４、２５は、文書操作イベント取得部５７０１で取得され、かつ、文書操作イベント管理部５６０１に送信される、オープン／クローズ操作に関する文書操作イベント情報の例を示す図である。図２６、２７は、文書操作イベント取得部５７０１で取得され、かつ、文書操作イベント管理部５６０１に送信される、フォーカスイン／アウト操作に関する文書操作イベント情報の例を示す図である。図２８、２９は、文書操作イベント取得部５７０１で取得され、かつ、文書操作イベント管理部５６０１に送信される、コピー／ペースト操作に関する文書操作イベント情報の例を示す図である。
【０１８９】
図２４〜図２９のうち、図２４、２６、２８は、文書識別情報として、文書ロケーション情報を有する文書操作イベント情報を示している。
【０１９０】
図２４〜図２９のうち図２５、２７、２９は、文書識別情報として、文書ロケーション情報と文書内容ハッシュ値とを有する文書操作イベント情報を示している。
【０１９１】
文書操作イベント取得部５７０１は、文書操作イベント情報が登録されると、オープン／クローズ操作に関する文書操作イベント情報の取得処理を終了する。
【０１９２】
なお、文書操作イベントがフォーカスイン／アウト操作である場合に、フォーカスイン／アウト操作に関する文書操作イベント情報を取得する処理（ステップＳ３１１）も、図３１のフローと同じ処理（ステップＳ３１０１〜Ｓ３１０４）を実行して、フォーカスイン／アウト操作に関する文書操作イベント情報を取得する。
【０１９３】
次に、文書操作イベントがコピー／ペースト操作である場合の文書操作イベント情報を取得する処理（ステップＳ３１２）について詳しく説明する。図３２は、本発明の第３の実施の形態に係る文書操作イベントがコピー／ペースト操作である場合の文書操作イベント情報取得処理のフロー図である。なお、コピー／ペースト操作に関する文書操作イベント情報を取得する処理は、オープン／クローズ操作に関する文書操作イベント情報を取得する処理（ステップＳ３１０）、あるいはフォーカスイン／アウト操作に関する文書操作イベント情報を取得する処理（ステップＳ３１１）に、コピー元文書情報を取得する処理（ステップＳ３１０５）が追加されている以外は、図３１のフローと同じ処理である。したがって、以下では、処理が異なるコピー元文書情報を取得する処理（ステップＳ３１０５）についてのみ説明を行う。
【０１９４】
文書操作イベント取得部５７０１は、ペーストイベントが発生するとコピー元文書情報を取得する（ステップＳ３１０５）。コピー／ペーストイベントの発生チェックは、クリップボード（情報の仮置き場）の監視とキー入力の監視を実行することにより行う。Ｍｉｃｒｏｓｏｆｔ（登録商標）のＷｉｎｄｏｗｓ（登録商標）では、「ＳｅｔＣｌｉｐｂｏａｒｄＶｉｅｗｅｒ（）」というＡＰＩを利用することで、クリップボードの変化を通知してもらうことが可能であり、このＡＰＩを利用することとする。なお、コピー元文書情報として、コピー元文書の文書タイトル、文書識別情報（ローケーション情報、文書内容ハッシュ値）を取得する。コピー元文書情報は、クリップボード情報を取得することでコピー元文書のウィンドウ情報を取得し、コピー元文書に対して文書識別情報取得処理（ステップＳ３１０３）を実行することにより取得することが可能である。
【０１９５】
次に、文書識別情報取得処理（ステップＳ３１０３）について詳しく説明する。図３３は、本発明の第３の実施の形態に係る文書識別情報取得処理のフロー図である。
【０１９６】
文書識別情報抽出部は、ステップＳ３１０２で取得したアプリケーション情報をキーとして、図３４に示すロケーション取得処理方法テーブルから、アプリケーション情報に対応する文書ロケーション取得処理方法を取得する（ステップＳ３３０１）。
【０１９７】
文書ロケーション情報の取得は、例えば、Ｍｉｃｒｏｓｏｆｔ（登録商標）のＷｉｎｄｏｗｓ（登録商標）の場合、アプリケーションやサービスが、その内部のオブジェクトや機能を外部のアプリケーションやサービスに公開することを可能とする「オートメーション」と呼ばれる技術が存在する。アプリケーションが「オートメーション」に対応していると、文書ロケーション情報を取得できる場合が多い。また、アプリケーションが「オートメーション」に対応していない場合であっても、アプリケーションが文書を表示する文書ウィンドウ内に、ロケーション情報が表示されている場合には、先のウィンドウメッセージを取得することによりロケーション情報を取得できる場合もある。このように、文書ロケーション情報の取得処理はアプリケーションごとに異なる場合がある。
【０１９８】
そこで、本実施の形態では、アプリケーションの文書ロケーション取得処理方法を作成し、アプリケーション情報と文書ロケーション取得処理方法とを対応付けた文書ロケーション取得処理方法テーブル（図３４）をＲＯＭ５５０３、ＲＡＭ５５０４、記憶装置５５０５等に記憶しておくこととしている。これにより、ステップＳ３１０２で取得したアプリケーション情報をキーに、アプリケーション情報が示すアプリケーションの文書ロケーション取得処理方法を取得して（ステップＳ３３０１）、文書ロケーション情報を取得することが可能となるため、アプリケーションが「オートメーション」に対応しているか否かに関わらず、文書ロケーション情報を取得することを可能としている。
【０１９９】
文書識別情報抽出部は、ステップＳ３３０１でアプリケーション情報に対応する文書ロケーション取得処理方法が取得できたか否かを判定する（ステップＳ３３０２）。ステップＳ３３０２で文書ロケーション取得処理方法が取得できた場合、ステップＳ３３０３の処理に進み、ステップＳ３３０２で文書ロケーション取得処理方法が取得できなかった場合には、文書識別情報の取得処理を終了する。
【０２００】
次に、文書識別情報抽出部は、ステップＳ３３０１で取得した文書ロケーション取得処理方法に基づいて、文書ロケーション情報を取得する処理を実行する（ステップＳ３３０３）。
【０２０１】
次に、文書識別情報抽出部は、ステップＳ３３０３で取得した文書ロケーション情報をキーとして、図３５に示す文書内容取得処理方法テーブルから、文書ロケーション情報に対応する文書内容取得処理方法を取得する（ステップＳ３３０４）。
【０２０２】
ここで、本実施の形態において文書内容とは、１文書を１（バイナリ）ファイルとして捉えた場合、ファイルの先頭部分にあるヘッダを除いた実データ部分を意味するものとする。
【０２０３】
この文書内容の取得は、その文書が格納（記憶）されているロケーションや、その文書のファイル形式等によって、異なる場合がある。例えば、文書がローカル（クライアント３０内）に格納されているファイルであるような場合には、そのファイルを開いて文書内容を取得することが可能である。一方で、文書がＷｅｂ文書のような場合には、文書内容はネットワークを介して取得することが可能である。
【０２０４】
そこで、本実施の形態では、各文書ロケーション情報や文書のファイル形式等における文書内容の取得処理方法を作成し、作成した取得処理方法と文書ロケーション情報や文書のファイル形式とを対応付けた文書内容取得処理方法テーブル（図３５）をＲＯＭ５５０３、ＲＡＭ５５０４、記憶装置５５０５等に記憶しておくこととしている。これにより、ステップＳ３３０３で取得した文書ロケーション情報やアプリケーション情報（本実施の形態では、アプリケーションは扱えるファイル形式が限られている場合が多いのでアプリケーション情報を使用することとする。）をキーに、文書ロケーション情報やアプリケーション情報に対応付けられた文書内容取得処理方法を取得して（ステップＳ３３０４）、文書内容取得処理方法に応じて文書内容を取得することが可能となる。
【０２０５】
文書識別情報抽出部は、ステップＳ３３０４で文書ロケーション情報やアプリケーション情報に対応する文書内容取得処理方法が取得できたか否かを判定する（ステップＳ３３０５）。ステップＳ３３０４にて文書内容取得処理方法が取得できた場合、ステップＳ３３０６の処理に進み、ステップＳ３３０４にて文書内容取得処理方法が取得できなかった場合には、文書識別情報の取得処理を終了する。
【０２０６】
次に、文書識別情報抽出部は、ステップＳ３３０３で取得した文書ロケーション情報及びステップＳ３３０４で取得した文書内容取得処理方法に基づいて、文書内容を取得する（ステップＳ３３０６）。ここで、文書ロケーション情報は、文書の実際の格納場所を示す情報であるので、文書内容を取得する際に必要である。
【０２０７】
次に、文書識別情報抽出部は、ステップＳ３３０６で取得した文書内容からハッシュ値を算出する（ステップＳ３３０７）。ハッシュ値の算出は、与えられた入力（文書内容）に対して、出力ハッシュ関数を利用してある固定長のハッシュ値を算出する。本実施の形態においては、１２８ビットのハッシュ値を出力するＭＤ５ハッシュ関数を利用するものとする。
【０２０８】
文書識別情報抽出部は、ステップＳ３３０３で取得した文書ロケーション情報と、ステップＳ３３０７で取得した文書内容ハッシュ値とを、文書識別情報として文書操作イベント取得部５７０１に渡して、文書識別情報の取得処理を終了する。
【０２０９】
［文書操作イベント管理］
サーバ２０の文書操作イベント管理部５６０１は、クライアント３０の文書操作イベント取得部５７０１から受信した文書操作イベント情報を文書操作イベントデータベース５６０４に記録する。文書操作イベント情報は、文書操作イベントごとに（オープン／クローズ操作に関する文書操作イベント情報、フォーカスイン／アウト操作に関する文書操作イベント情報、コピー／ペースト操作に関する文書操作イベント情報）記憶される。文書操作イベントデータベース５６０４で管理されるデータベースの項目は、図２４〜図２９に示す項目と同じであることとする。
【０２１０】
なお、オープン／クローズ操作に関する文書操作イベント情報、フォーカスイン／アウト操作に関する文書操作イベント情報については、開始時点と終了時点の２回の登録を行う必要があるため、終了時点の登録の際には、既に文書操作イベントデータベース５６０４に格納されている文書操作イベント情報のＩＤをキーとして、文書操作イベント情報を更新することとする。
【０２１１】
［関連文書提示］
クライアント３０の関連文書提示部５７０２では、関連文書の提示処理を実行する。
【０２１２】
クライアント３０の関連文書提示部５７０２が実行する関連文書の提示処理を、図３６のフローを用いて説明する。図３６は、本発明の第３の実施の形態に係る関連文書提示処理を示すフロー図である。
【０２１３】
関連文書提示部５７０２は、文書操作イベント取得部５７０１から文書操作イベント情報を取得し、ユーザが操作する操作対象の文書である操作文書（またはアクティブ文書）が切り替わったか否かを判定する（ステップＳ３６０１）。
【０２１４】
なお、文書操作イベント取得部５７０１を、特定の文書操作イベントを検出すると関連文書提示部５７０２に文書操作イベントが起きたことを知らせる通知（文書操作イベント発生通知）を送信する構成とした場合には、関連文書提示部５７０２におけるステップＳ３６０１の判定処理を、「文書操作イベント取得部５７０１から文書操作イベント発生通知を受け取ると、操作文書が切り替わったと判定する」ように変更してもよい。
【０２１５】
関連文書提示部５７０２は、ステップＳ３６０１の判定処理で「操作文書が切り替わった」（ＹＥＳ）と判定された場合、サーバ２０の関連文書抽出部５６０２に関連文書の抽出を依頼（要求）する関連文書抽出指示を送信する（ステップＳ３６０２）。
【０２１６】
関連文書提示部５７０２は、ステップＳ３６０１の判定処理で「操作文書が切り替わっていない」（ＮＯ）と判定された場合には、その後の処理（ステップＳ３６０２〜Ｓ３６０４）は行わず、ステップＳ３６０１に戻る。
【０２１７】
関連文書提示部５７０２は、関連文書抽出部５６０２に送信した関連文書抽出指示への応答（返信）として、関連文書抽出部５６０２にて関連文書抽出指示に基づいて、文書操作イベントデータベース５６０４に格納される文書操作イベント情報を抽出する関連文書抽出処理（ステップＳ３６０３）の結果である関連文書抽出結果を、関連文書抽出部５６０２から受信する（ステップＳ３６０４）。
【０２１８】
関連文書提示部５７０２は、ステップＳ３６０４で受信した関連文書抽出結果に基づき、入力部・出力部２０１を介して関連文書を提示する処理を行う（ステップＳ３６０５）。
【０２１９】
［関連文書抽出］
サーバ２０の関連文書抽出部５６０２は、クライアント３０の関連文書提示部５７０２から送信される関連文書抽出指示に応じて関連文書の抽出処理を行い、抽出指示を送信したクライアント３０に抽出結果を返信する。ここで、クライアント３０の関連文書提示部５７０２からの関連文書抽出指示には、抽出処理のキーとなるキー文書識別情報が含まれる。本実施の形態においては、関連文書の抽出指示に含まれるキー文書識別情報は、キー文書（ユーザが現在操作している文書）の文書ロケーション情報と文書内容ハッシュ値とを含む。なお、文書によっては、文書ロケーション情報は取得できても文書内容ハッシュ値を取得できない場合がある。したがって、サーバ２０の関連文書抽出部５６０２の処理においては、関連文書抽出指示がキー文書識別情報としてキー文書の文書ロケーション情報を含む場合（図３７）、キー文書識別情報としてキー文書の文書ロケーション情報及び文書内容ハッシュ値とを含む場合（図４２）のそれぞれについて説明を行う。
【０２２０】
（文書内容ハッシュ値を利用しない場合）
サーバ２０の関連文書抽出部５６０２が実行する、関連文書抽出指示に基づく関連文書の抽出処理を、図３７のフローを用いて説明する。図３７は、本発明の第３の実施の形態に係る関連文書抽出指示がキー文書識別情報としてキー文書のロケーション情報を含む場合の関連文書抽出処理を示すフロー図である。
【０２２１】
関連文書抽出部５６０２は、関連文書提示部５７０２から送信される関連文書抽出指示を受信する（ステップＳ３７０１）。
【０２２２】
この場合、文書の同一性は文書ロケーション情報が一致するか否かによって判断することとする。
【０２２３】
次に、関連文書抽出部５６０２は、オープン／クローズ操作に関する文書操作イベント情報から、関連文書抽出指示に基づいてキー文書に関連する文書であるオープン／クローズ操作関連文書を抽出する（ステップＳ３７０２）。
【０２２４】
以下、オープン／クローズ操作の関連文書抽出処理（ステップＳ３７０２）について詳しく説明する。本発明の第３の実施の形態に係るオープン／クローズ操作の関連文書抽出処理を示すフロー図である。
【０２２５】
関連文書抽出部５６０２は、ステップＳ３７０１で受信した関連文書抽出指示に含まれるキー文書の文書ロケーション情報と一致するオープン／クローズ操作に関する文書操作イベント情報のレコード（オープン／クローズ操作レコード）を全て抽出する（ステップＳ３７０２１）。
【０２２６】
すなわち、抽出したオープン／クローズ操作レコードのオープン時刻、クローズ時刻を参照することで、キー文書と同一である文書及び同一とみなす文書を開いていた時刻を特定することができる。
【０２２７】
次に、関連文書抽出部５６０２は、ステップＳ３７０２１で抽出したそれぞれのオープン／クローズ操作レコードの「オープン時刻」と「クローズ時刻」との間に開かれていたオープン／クローズ操作レコード、すなわち、キー文書と同時に開いていた文書に関するオープン／クローズ操作レコードを抽出する（ステップＳ３７０２２）。これにより、キー文書と同時に開いていた文書を特定することができる。
【０２２８】
以下に、上記ステップＳ３７０２２の処理で利用する抽出条件式の例を式（１３）に示す。
（数１３）
Select * from 文書操作イベントＤＢ where （ オープン時刻 >= キー文書オープン時刻 and クローズ時刻 > キー文書オープン時刻 ） or （ オープン時刻 >= キー文書クローズ時刻 and クローズ時刻 > キー文書クローズ時刻 ）      （１３）
関連文書抽出部５６０２は、ステップＳ３７０２２で抽出されたオープン／クローズ操作レコードの文書ロケーション情報を参照して、同一の文書ロケーション情報を有するオープン／クローズ操作レコードについて、そのレコードの数を計数する（ステップＳ３７０２３）。これにより、キー文書と同時に開いていた文書が、何回キー文書と同時に開かれていたかを特定することができる。
【０２２９】
関連文書抽出部５６０２は、上記ステップＳ３７０２３の処理で得られた結果を、オープン／クローズ関連文書情報として保持する（ステップＳ３７０２４）。図３８に、保持されるオープン／クローズ関連文書情報の例を示す。
【０２３０】
次に、関連文書抽出部５６０２は、フォーカスイン／アウト操作に関する文書操作イベント情報から、関連文書抽出指示に含まれるキー文書に関連する文書であるフォーカスイン／アウト操作関連文書を抽出する（ステップＳ３７０３）。
【０２３１】
以下、フォーカスイン／アウト操作の関連文書抽出処理（ステップＳ３７０３）について詳しく説明する。図６０は、本発明の第３の実施の形態に係るフォーカスイン／アウト操作の関連文書抽出処理を示すフロー図である。
【０２３２】
関連文書抽出部５６０２は、ステップＳ３７０１で受信した関連文書抽出指示に含まれるキー文書の文書ロケーション情報と一致するフォーカスイン／アウト操作に関する文書操作イベント情報のレコード（フォーカスイン／アウト操作レコード）を全て抽出する（ステップＳ３７０３１）。これにより、キー文書と同一若しくは同一とみなす文書をフォーカスしていた時刻を特定することができる。
【０２３３】
次に、関連文書抽出部５６０２は、ステップＳ３７０３１で抽出したそれぞれのフォーカスイン／アウト操作レコードの「フォーカスイン時刻」の直前、「フォーカスアウト時刻」の直後、にフォーカスされていたフォーカスイン／アウト操作レコード、すなわち、キー文書の直前または直後に開いていた文書に関するフォーカスイン／アウト操作レコードを抽出する（ステップＳ３７０３２）。これにより、キー文書の直前または直後に開いていた文書を特定することができる。
【０２３４】
以下に、上記ステップＳ３７０３２の処理で利用する抽出条件式の例を式（１４）に示す。
（数１４）
Select * from 文書操作イベントＤＢ where （ フォーカスイン時刻 >= キー文書フォーカスアウト時刻 and フォーカスイン時刻 < キー文書フォーカスアウト時刻 ＋ ５秒 ） or （ フォーカスアウト時刻 <= キー文書フォーカスイン時刻 and フォーカスアウト時刻 >= キー文書フォーカスイン時刻 - ５秒 ）      （１４）
関連文書抽出部５６０２は、ステップＳ３７０３２で抽出されたフォーカスイン／アウト操作レコードの文書ロケーション情報を参照して、同一の文書ロケーション情報を有するフォーカスイン／アウト操作レコードについて、そのレコードの数を計数する（ステップＳ３７０３３）。これにより、キー文書の直前または直後に開いていた文書が、何回キー文書の直前または直後に開かれていたかを特定することができる。
【０２３５】
関連文書抽出部５６０２は、上記ステップＳ３７０３３の処理にて得られた結果を、フォーカスイン／アウト関連文書情報として保持する（ステップＳ３７０３４）。図３９に、保持されるフォーカスイン／アウト関連文書情報の例を示す。
【０２３６】
次に、関連文書抽出部５６０２は、コピー／ペースト操作に関する文書操作イベント情報から、関連文書抽出指示に含まれるキー文書に関連する文書であるコピー／ペースト操作関連文書を抽出する（ステップＳ３７０４）。
【０２３７】
以下、コピー／ペースト操作の関連文書抽出処理（ステップＳ３７０４）について詳しく説明する。図６１は、本発明の第３の実施の形態に係るコピー／ペースト操作の関連文書抽出処理を示すフロー図である。
【０２３８】
関連文書抽出部５６０２は、ステップＳ３７０１で受信した関連文書抽出指示に含まれるキー文書の文書ロケーション情報と一致する、文書ロケーション情報を有するコピー／ペースト操作に関する文書操作イベント情報のレコード（コピー／ペースト先操作レコード）と、文書ロケーション情報をコピー元文書ロケーション情報に有するコピー／ペースト操作に関する文書操作イベント情報のレコード（コピー元／ペースト操作レコード）と、を抽出する（ステップＳ３７０４１）。これにより、キー文書と同一若しくは同一とみなす文書を、コピー元文書としてまたはペースト先文書として記録されていても、問題なく抽出することができる。
【０２３９】
次に、関連文書抽出部５６０２は、ステップＳ３７０４１で抽出したそれぞれのコピー元／ペースト操作レコードの文書ロケーション情報と、コピー／ペースト先操作レコードのコピー元文書ロケーション情報とに基づいて、同一の文書ロケーション情報を有するコピー／ペースト操作レコードについて、そのレコードの数を計数する（ステップＳ３７０４２）。これにより、キー文書がコピー／ペースト操作に関連している文書を特定することができる。
【０２４０】
次に、関連文書抽出部５６０２は、上記ステップＳ３７０４２の処理で得られた結果を、コピー／ペースト関連文書情報として保持する（ステップＳ３７０４３）。図４０に、保持されるコピー／ペースト関連文書情報の例を示す。
【０２４１】
次に、関連文書抽出部５６０２は、ステップＳ３７０２の処理結果であるオープン／クローズ関連文書情報、ステップＳ３７０３の処理結果であるフォーカスイン／アウト関連文書情報、ステップＳ３７０４の処理結果であるコピー／ペースト関連文書情報を、関連文書抽出結果として、クライアント３０の関連文書提示部５７０２に送る。
【０２４２】
（文書内容ハッシュ値を利用する場合）
次に、サーバ２０の関連文書抽出部５６０２が実行する、関連文書抽出指示に基づく関連文書の抽出処理を、図４２のフローを用いて説明する。図４２は、本発明の第３の実施の形態に係る関連文書抽出指示がキー文書識別情報としてキー文書の文書ロケーション情報及び文書内容ハッシュ値とを含む場合の関連文書抽出処理を示すフロー図である。なお、図３７の処理と同じ処理には、同じ番号を付し、説明を割愛する。
【０２４３】
関連文書抽出部５６０２は、ステップＳ３７０１で受信した関連文書抽出指示が含むキー文書の文書内容ハッシュ値と一致する文書を、文書操作イベントデータベース５６０４に格納されている文書操作イベント情報から抽出し、抽出された文書操作イベント情報の文書タイトル、アプリケーション名、文書ロケーション情報を取得し、同一文書情報として保持する（ステップＳ４２０１）。図４１に同一文書情報の例を示す。すなわち、文書内容ハッシュ値を用いる場合には、キー文書の文書内容ハッシュ値と一致する文書を同一する若しくは同一するとみなす文書として扱う。これにより、キー文書の文書ロケーション情報が一致しない場合であっても、文書内容が同一（文書内容ハッシュ値が同一）であれば同一文書として扱うことができる。
【０２４４】
次に、関連文書抽出部５６０２は、オープン／クローズ操作に関する文書操作イベント情報から、関連文書抽出指示に基づいてキー文書に関連する文書であるオープン／クローズ操作関連文書を抽出する（ステップＳ４２０２）。
【０２４５】
以下、オープン／クローズ操作の関連文書抽出処理（ステップＳ４２０２）について詳しく説明する。図６２は、本発明の第３の実施の形態に係る文書内容ハッシュ値を利用する場合のオープン／クローズ操作の関連文書抽出処理を示すフロー図である。
【０２４６】
関連文書抽出部５６０２は、ステップＳ３７０１で受信した関連文書抽出指示に含まれるキー文書の文書内容ハッシュ値及びステップＳ４２０１で抽出した同一文書情報に含まれる文書の文書ロケーション情報と一致するオープン／クローズ操作に関する文書操作イベント情報のレコード（オープン／クローズ操作レコード）を全て抽出する（ステップＳ４２０２１）。これにより、キー文書と同一若しくは同一とみなす文書を開いていた時刻を特定することができる。
【０２４７】
抽出したオープン／クローズ操作レコードについての処理は、文書内容ハッシュ値を使用しない場合と同一であるので、ここでは説明を割愛する。
【０２４８】
次に、関連文書抽出部５６０２は、フォーカスイン／アウト操作に関する文書操作イベント情報から、関連文書抽出指示に含まれるキー文書に関連する文書であるフォーカスイン／アウト操作関連文書を抽出する（ステップＳ４２０３）。
【０２４９】
以下、フォーカスイン／アウト操作の関連文書抽出処理（ステップＳ４２０３）について詳しく説明する。図６３は、本発明の第３の実施の形態に係る文書内容ハッシュ値を利用する場合のフォーカスイン／アウト操作の関連文書抽出処理を示すフロー図である。
【０２５０】
関連文書抽出部５６０２は、ステップＳ３７０１で受信した関連文書抽出指示に含まれるキー文書の文書内容ハッシュ値及びステップＳ４２０１で抽出した同一文書情報に含まれる文書の文書ロケーション情報と一致するフォーカスイン／アウト操作に関する文書操作イベント情報のレコード（フォーカスイン／アウト操作レコード）を全て抽出する（ステップＳ４２０３１）。これにより、キー文書と同一若しくは同一とみなす文書をフォーカスしていた時刻を特定することができる。
【０２５１】
抽出したオープン／クローズ操作レコードについての処理は、文書内容ハッシュ値を使用しない場合と同一であるので、ここでは説明を割愛する。
【０２５２】
次に、関連文書抽出部５６０２は、コピー／ペースト操作に関する文書操作イベント情報から、関連文書抽出指示に含まれるキー文書に関連する文書であるコピー／ペースト操作関連文書を抽出する（ステップＳ４２０４）。
【０２５３】
以下、コピー／ペースト操作の関連文書抽出処理（ステップＳ４２０４）について詳しく説明する。図６４は、本発明の第３の実施の形態に係る文書内容ハッシュ値を利用する場合のコピー／ペースト操作の関連文書抽出処理を示すフロー図である。
【０２５４】
関連文書抽出部５６０２は、ステップＳ３７０１で受信した関連文書抽出指示に含まれるキー文書の文書内容ハッシュ値及びステップＳ４２０１で抽出した同一文書情報に含まれる文書の文書ロケーション情報と一致する、コピー／ペースト操作に関する文書操作イベント情報のレコード（コピー／ペースト先操作レコード）と、文書識別情報をコピー元文書ロケーション情報に有するコピー／ペースト操作に関する文書操作イベント情報のレコード（コピー元／ペースト操作レコード）と、を抽出する（ステップＳ４２０４１）。これにより、キー文書と同一若しくは同一とみなす文書を、コピー元文書としてまたはペースト先文書として記録されていても、問題なく抽出することができる。
【０２５５】
抽出したオープン／クローズ操作レコードについての処理は、文書内容ハッシュ値を使用しない場合と同一であるので、ここでは説明を割愛する。
【０２５６】
次に、関連文書抽出部５６０２は、ステップＳ４２０２の処理結果であるオープン／クローズ関連文書情報、ステップＳ４２０３の処理結果であるフォーカスイン／アウト関連文書情報、ステップＳ４２０４の処理結果であるコピー／ペースト関連文書情報を、関連文書抽出結果として、クライアント３０の関連文書提示部５７０２に送る。
【０２５７】
［関連文書提示］
次に、クライアント３０の関連文書提示部５７０２における、関連文書提示処理（Ｓ３６０５）について説明する。
【０２５８】
関連文書提示部５７０２は、サーバ２０の関連文書抽出部５６０２から関連文書抽出結果を受信する（ステップＳ３６０４）。
【０２５９】
関連文書提示部５７０２は、ステップＳ３６０４で受信した関連文書抽出結果を、現在操作している文書（キー文書）とともに表示する（ステップＳ３６０５）。図４３にクライアント３０の入力部・出力部２０２に表示されるステップＳ３６０４の関連文書提示処理の関連文書の提示例４３００を示す。図４３の提示例によれば、現在ユーザが操作している文書（キー文書）を表示する領域４３０１と、ステップＳ３６０４で受信した関連文書抽出結果を表示する領域４３０２とを有する。
【０２６０】
なお、ユーザに提示する関連文書の決定は、関連文書抽出結果から、オープン／クローズ操作の場合は同時オープン時間または同時オープン数、フォーカスイン／アウト操作の場合はフォーカス前後回数、コピー／ペースト操作の場合はコピー／ペースト回数について、所定の閾値や重み付けを用いることで、より関連性の高い文書のみを提示することが可能となる。
【０２６１】
ユーザは関連文書提示４３００を利用することで、例えば関連文書表示領域４３０２に表示されている関連文書から所望の文書を指定することで、キー文書表示領域４３０１に表示されている文書を指定された文書に切り替えることが可能である。このとき、表示が切り替えられた際には、操作文書が切り替わったと判断され（ステップＳ３６０１）、新たなキー文書につき、関連文書の抽出依頼がなされる。また、操作文書が切り替えられたので、フォーカスイン／アウト操作に関連する文書操作イベント情報が生成され、文書操作イベント管理部５６０１に送信される処理が行われる。このようにすることで、ユーザは現在操作している文書の関連文書を単に文書を指定することのみにより自動的に取得することが可能となり、関連文書の閲覧を容易にすることが可能となる。
【０２６２】
このような本発明の第３の実施の形態に係る情報処理システム１は、文書内容から得られる文書内容ハッシュ値を関連文書の抽出に用いているため、文書が複製されたりメールに添付されて配布されたりしても、文書内容の同一性を判断することができる。すなわち、異なる文書ロケーション情報を有する文書であっても文書内容が同一であれば同一文書として扱うことができるため、複製された文書を初めて操作する場合であっても、複製元であるオリジナル文書の文書操作イベント情報の履歴を利用することが可能となるので、関連文書を提示することが可能となる。
（第４の実施の形態）
次に、本発明の第４の実施の形態について説明する。図４４は、本発明の第４の実施の形態に係るクライアントを示す構成図である。また、図４５は、本発明の第４の実施の形態に係るサーバを示す構成図である。第４の実施の形態においては、文書操作イベント情報を利用して、ユーザのスケジュールに関連する文書を関連文書として抽出して提示することを実現する。
【０２６３】
また、本発明の第４の実施の形態に係るサーバ及びクライアントを構成する構成要素のうち、本発明の第３の実施の形態に係るサーバ及びクライアントを構成する構成要素と同一の構成要素には同一の符号を付し、それぞれの説明を省略する。
【０２６４】
［文書操作イベント情報取得部］
第４の実施の形態においては、文書操作イベント情報取得部４４０１が、文書操作イベント情報として、フォーカスイン／アウト操作に関する文書操作イベント情報と、ユーザが文書に対してキー入力したことを示すキー入力操作情報を取得する。
【０２６５】
図４７は、本発明の第４の実施の形態に係る文書操作イベント情報取得処理のフロー図である。
【０２６６】
ここでは、文書操作イベント情報取得部４４０１は、フォーカスイン／アウト操作があったか否かを判定し（ステップＳ３０６）、フォーカスイン／アウト操作に関する文書操作イベント情報を取得した後（ステップＳ３１１）、フォーカスインされた文書（ユーザが現在操作している文書）にキー入力操作がなされたか否かを判定する（ステップＳ４７０１）。キー入力操作がなされたと判定された場合（ＹＥＳ）には、ステップＳ３１１で取得したフォーカスイン／アウト操作に関する文書操作イベント情報のキー入力数を１増やして更新する（ステップＳ４７０２）。フォーカスインされた文書へのキー入力が完了した場合（操作対象文書が切り替わった場合や操作対象文書がクローズされた場合など）に、文書操作イベント情報取得部４４０１は、ステップＳ３１１で取得したフォーカスイン／アウト操作に関する文書操作イベント情報のキー入力数を更新し、サーバ２０の文書操作イベント情報管理部４５０１に送信し、登録を行う。なお、キー入力数の更新は、ステップＳ３１１でフォーカスイン／アウト操作に関する文書操作イベント情報を、サーバ２０の文書操作イベント情報管理部４５０１に送信し登録した場合には、その文書操作イベント情報を更新することによって実現することも可能である。
【０２６７】
図４８、４９に文書操作イベント情報管理部４５０１が管理する文書操作イベント情報の例を示す。本実施の形態では、キー入力操作をフォーカスイン／アウト操作情報の一項目にしている。上述のように、操作対象の文書にキー入力があった場合は、対応するフォーカスイン／アウト操作に関する文書操作イベント情報のキー入力数を１増やして、サーバに登録する。サーバ２０の文書操作イベント情報管理部４５０１では、対応するフォーカスイン／アウト操作情報を検索して更新する。
【０２６８】
［スケジュール情報管理部］
スケジュール情報管理部４５０２ではユーザのスケジュール情報を管理する。本実施の形態においては、タスク情報としてタスクのＩＤ、タスクのタイトル、タスクの説明、タスクのメンバユーザＩＤリスト、タスク開始日時、タスク終了日時、場所、関連文書識別子リストの情報を保持するものとする。スケジュール情報の例を図４６に示す。
【０２６９】
［スケジュール関連文書提示部］ 
次に、スケジュール関連文書提示部４４０２が実行するスケジュール関連文書提示処理について説明する。
【０２７０】
スケジュール関連文書提示部４４０２が実行するスケジュール関連文書提示処理を図５８のフローを用いて説明を行う。図５８は、本発明の第４の実施の形態に係るスケジュール関連文書提示処理を示すフロー図である。
【０２７１】
スケジュール関連文書提示部４４０２は、ユーザ情報を取得する（ステップＳ５８０１）。ここでは、ユーザを特定するためのユーザ情報として、ユーザ名を取得する。
【０２７２】
次に、スケジュール関連文書提示部４４０２は、取得したユーザ情報を含むスケジュール一覧表示要求をスケジュール情報管理部４５０２に送信する（ステップＳ５８０２）。
【０２７３】
次に、スケジュール関連文書提示部４４０２は、ステップＳ５８０２で送信したスケジュール一覧表示要求への応答として、スケジュール情報管理部４５０２からスケジュール一覧表を受信し、入力部・出力部２０１を介して表示する（ステップＳ５８０３）。
【０２７４】
次に、スケジュール関連文書提示部４４０２は、ステップＳ５８０３で表示したスケジュール一覧表からユーザが指定したスケジュールを受け取り、スケジュール一覧表からスケジュールを一意に特定する識別子であるスケジュールＩＤ（スケジュール関連情報）を取得し、このスケジュールＩＤを含むスケジュール関連文書抽出指示を生成し、スケジュール関連文書抽出部４５０３に送信する（ステップＳ５８０４）。
次に、スケジュール関連文書提示部４４０２は、ステップＳ５８０４で送信したスケジュール関連文書抽出指示の応答として、スケジュール関連文書抽出部４５０３からスケジュール関連文書抽出結果を受信し、入力部・出力部２０１を介してユーザに提示する（ステップＳ５８０５）。
【０２７５】
図５４に、ステップＳ５８０５にて、ユーザに提示するスケジュール関連文書提示５４００の例を示す。図５４は、ユーザ名：user2がクライアントを利用している場合の例であり、スケジュールとしてuser2のスケジュール一覧を表示する領域（スケジュール一覧表示領域）５４０１と、ユーザがスケジュール一覧から指定したスケジュールの関連文書を表示する領域５４０２（スケジュール関連文書）が表示されている。図５４の例においては、同一内容文書があるものに対しては先頭に「▼」マークがついている。このマークをクリックすることで同一内容文書情報の表示／非表示を選択することを可能としている。表示されている文書のうち文書ロケーション情報が取得できていて、現在アクセス可能な文書は表示の文書を指定することで、直接その文書を開くことができる。
【０２７６】
［スケジュール関連文書抽出］ 
次に、スケジュール関連文書抽出部４５０３におけるスケジュール関連文書抽出処理について説明する。スケジュール関連文書抽出部４５０３においては、スケジュール情報と文書操作イベント情報に基づいて、スケジュールに関連する文書であるスケジュール関連文書抽出を行う。サーバ２０のスケジュール関連文書抽出部４５０３では、クライアント３０のスケジュール関連文書提示部４４０２から送信されるスケジュール関連文書抽出指示に基づいてスケジュール関連文書を抽出し、検索結果としてクライアント３０に返信する。以下、スケジュール関連文書抽出処理は文書識別情報として文書内容ハッシュ値を利用するか否かによって処理内容が異なるため、以下では分けて説明する。
【０２７７】
（文書内容ハッシュ値を利用しない場合）
図５０に、スケジュール関連文書抽出部４５０３におけるスケジュール関連文書抽出処理のフローを示す。図５０は、本発明の第４の実施の形態に係るスケジュール関連文書抽出処理を示すフロー図である。この場合は、スケジュール関連文書抽出処理に文書内容ハッシュ値を利用しない場合である。
【０２７８】
スケジュール関連文書抽出部４５０３は、スケジュール関連文書提示部４４０２からスケジュール関連文書抽出指示を受信する（ステップＳ５００１）。
【０２７９】
スケジュール関連文書抽出部４５０３は、ステップＳ５００１で受信したスケジュール関連文書抽出指示に含まれるスケジュールＩＤに基づいて、スケジュール情報データベース４５０５からスケジュールの開始時刻、スケジュールの終了時刻、メンバー情報をスケジュール関連文書抽出情報として取得する（ステップＳ５００２）。
【０２８０】
次に、スケジュール関連文書抽出部４５０３は、ステップＳ５００２で取得したスケジュール関連文書抽出情報に基づいて、文書操作イベント情報データベース４５０４からスケジュール関連文書を抽出する（ステップＳ５００３）。
【０２８１】
次に、スケジュール関連文書抽出部４５０３におけるスケジュール関連文書抽出処理（ステップＳ５００３）について詳しく説明する。図６５は、本発明の第４の実施の形態に係るスケジュール関連文書抽出処理を示すフロー図である。
【０２８２】
スケジュール関連文書抽出部４５０３は、スケジュール関連文書抽出情報が含む、メンバー情報に基づいて、文書操作イベント情報データベース４５０４から、メンバー情報に含まれるユーザ名と一致する文書操作イベントのレコードを抽出する（ステップＳ５００３１）。
【０２８３】
次に、スケジュール関連文書抽出部４５０３は、ステップＳ５００３１で抽出した文書操作イベントのレコードのうち、同じくスケジュール関連文書抽出情報が含むスケジュールの開始時刻、スケジュールの終了時刻の間にフォーカスイン／アウト操作された文書を抽出する（ステップＳ５００３２）。この結果抽出された文書が、スケジュール関連文書に相当する。図５１に、抽出されたスケジュール関連文書の例を示す。このような処理を行うことで、スケジュール関連文書の抽出を、スケジュール関連文書抽出指示を出すユーザの文書操作イベント情報だけでなくスケジュールを共有する他のメンバーの文書操作イベントをも利用するため、スケジュールに関連する文書をより漏れなく抽出することが可能となる。
【０２８４】
スケジュール関連文書抽出部４５０３は、ステップＳ５００３で抽出したスケジュール関連文書を、スケジュール関連文書提示部４４０２に送信し、処理を完了する。
【０２８５】
（文書内容ハッシュ値を利用する場合）
次に、図５２を用いて、スケジュール関連文書抽出部４５０３の実行するスケジュール関連文書抽出処理を説明する。図５２は、本発明の第４の実施の形態に係る文書内容ハッシュ値を用いる場合のスケジュール関連文書抽出処理を示すフロー図である。この場合は、スケジュール関連文書抽出処理に文書内容ハッシュ値を利用する場合である。
【０２８６】
スケジュール関連文書抽出部４５０３は、スケジュール関連文書提示部４４０２から送信されたスケジュール関連文書抽出指示を受信する（ステップＳ５００１）。
【０２８７】
次に、スケジュール関連文書抽出部４５０３は、スケジュール関連文書抽出指示に含まれるスケジュールＩＤに基づいて、スケジュール情報データベース４５０５からスケジュールの開始時刻、スケジュールの終了時刻、メンバー情報をスケジュール関連文書抽出情報として取得する（ステップＳ５００２）。
【０２８８】
次に、スケジュール関連文書抽出部４５０３は、ステップＳ５００２で取得したスケジュール関連文書抽出情報に基づいて、文書操作イベント情報データベース４５０４からスケジュール関連文書を抽出する（ステップＳ５００３）。
【０２８９】
次に、スケジュール関連文書抽出部４５０３は、ステップＳ５００３で抽出したスケジュール関連文書の文書操作イベント情報のレコードから文書内容ハッシュ値を取得し、同一の文書内容ハッシュ値をもつ文書操作イベント情報を取得して同一内容文書情報を取得する（ステップＳ５２０１）。この取得した同一内容文書情報を図５３に例示する。図５３の例では、ＩＤが同じ複数の抽出結果が存在する。これは同一文書内容ハッシュ値を持つ文書を示している。すなわち、ＩＤ２とＩＤ４に同一内容ハッシュ値を持つ文書情報が示されている。この同一内容文書情報がスケジュール関連文書となる。
【０２９０】
スケジュール関連文書抽出部４５０３は、ステップＳ５００３で抽出したスケジュール関連文書を、スケジュール関連文書提示部４４０２に送信し、処理を完了する。
【０２９１】
このような本発明の第４の実施の形態に係る情報処理システム１は、スケジュールの時間情報と文書操作イベント情報の時間情報とを関連文書の抽出に利用することで、ユーザのスケジュールからスケジュールに関連する関連文書を直接的に提示することができる、すなわち「８月３１日の打ち合わせ」で使った資料を「８月３１日：打ち合わせ」というスケジュール情報から直接的に提示することができる。
【０２９２】
また、文書操作イベント情報にキー入力数を項目として加えることで、ユーザは提示されたスケジュール関連文書のキー入力数を確認することで、該スケジュールを消化している間に文書に対して入力したキー入力数に基づき、入力操作量による感覚的な文書の選択を実現することができる。
【図面の簡単な説明】
【０２９３】
【図１】本発明の実施の形態に係る情報処理システムを示す構成図である。
【図２】本発明の第１の実施の形態に係るサーバを示す構成図である。
【図３】本発明の第１の実施の形態に係るクライアントを示す構成図である。
【図４】本発明の第１の実施の形態に係る情報処理システムの動作説明のためのフロー図である。
【図５】ユーザ認証に用いられるユーザインタフェースの例を示す図である。
【図６】本発明の第１の実施の形態に係る文書操作イベント取得処理のフロー図である。
【図７】本発明の第１の実施の形態に係る文書情報取得処理のフロー図である。
【図８】文書情報の取得例を示した図である。
【図９】本発明の第１の実施の形態に係るイベント登録処理のフロー図である。
【図１０】開閉イベント情報の例を示す図である。
【図１１】フォーカスイベント情報の例を示す図である。
【図１２】コピー／ペーストイベント情報の例を示す図である。
【図１３】コピー元文書情報の例を示す図である。
【図１４】本発明の第１の実施の形態に係る関連文書抽出処理のフロー図である。
【図１５】関連文書抽出結果の例を示す図である。
【図１６】関連文書抽出統合結果の例を示す図である。
【図１７】関連文書提示の例を示す図である。
【図１８】本発明の第２の実施の形態に係るサーバを示す構成図である。
【図１９】本発明の第２の実施の形態に係るクライアントを示す構成図である。
【図２０】タスク情報の例を示す図である。
【図２１】本発明の第２の実施の形態に係るタスク関連文書抽出処理のフロー図である。
【図２２】タスク関連文書提示の例を示す図である。
【図２３】本発明の第２の実施の形態に係るタスク関連文書抽出処理の変形例を示すフロー図である。
【図２４】オープン／クローズ操作に関する文書イベント情報の例を示す図である。
【図２５】オープン／クローズ操作に関する文書イベント情報の例を示す図である。
【図２６】フォーカスイン／アウト操作に関する文書操作イベント情報の例を示す図である。
【図２７】フォーカスイン／アウト操作に関する文書操作イベント情報の例を示す図である。
【図２８】コピー／ペースト操作に関する文書操作イベント情報の例を示す図である。
【図２９】コピー／ペースト操作に関する文書操作イベント情報の例を示す図である。
【図３０】本発明の第３の実施の形態に係る文書操作イベント取得処理のフロー図である。
【図３１】本発明の第３の実施の形態に係る文書操作イベントがオープン／クローズ操作である場合の文書操作イベント情報取得処理のフロー図である。
【図３２】本発明の第３の実施の形態に係る文書操作イベントがコピー／ペースト操作である場合の文書操作イベント情報取得処理のフロー図である。
【図３３】本発明の第３の実施の形態に係る文書識別情報取得処理のフロー図である。
【図３４】文書ロケーション取得処理方法テーブルの例を示す図である。
【図３５】文書内容取得処理方法テーブルの例を示す図である。
【図３６】本発明の第３の実施の形態に係る関連文書提示処理を示すフロー図である。
【図３７】本発明の第３の実施の形態に係る関連文書抽出指示がキー文書識別情報としてキー文書のロケーション情報を含む場合の関連文書抽出処理を示すフロー図である。
【図３８】オープン／クローズ関連文書情報の例を示す図である。
【図３９】フォーカスイン／アウト関連文書情報の例を示す図である。
【図４０】コピー／ペースト関連文書情報の例を示す図である。
【図４１】同一内容文書情報の例を示す図である。
【図４２】本発明の第３の実施の形態に係る文書内容ハッシュ値を利用する場合の関連文書抽出処理を示すフロー図である。
【図４３】関連文書の提示例を示す図である。
【図４４】本発明の第４の実施の形態に係るクライアントを示す構成図である。
【図４５】本発明の第４の実施の形態に係るサーバを示す構成図である。
【図４６】スケジュール情報の例を示す図である。
【図４７】本発明の第４の実施の形態に係る文書操作イベント情報取得処理を示すフロー図である。
【図４８】文書操作イベント情報の例を示す図である。
【図４９】文書操作イベント情報の例を示す図である。
【図５０】本発明の第４の実施の形態に係るスケジュール関連文書抽出処理を示すフロー図である。
【図５１】スケジュール関連文書の例を示す図である。
【図５２】本発明の第４の実施の形態に係る文書内容ハッシュ値を用いる場合のスケジュール関連文書抽出処理を示すフロー図である。
【図５３】同一内容文書情報の例を示す図である。
【図５４】スケジュール関連文書提示の例を示す図である。
【図５５】本発明の実施の形態に係るサーバ及びクライアントを担う情報処理装置のハードウェア構成を示す図である。
【図５６】本発明の第３の実施の形態に係るサーバを示す構成図である。
【図５７】本発明の第３の実施の形態に係るクライアントを示す構成図である。
【図５８】本発明の第４の実施の形態に係るスケジュール関連文書提示処理を示すフロー図である。
【図５９】本発明の第３の実施の形態に係るオープン／クローズ操作の関連文書抽出処理を示すフロー図である。
【図６０】本発明の第３の実施の形態に係るフォーカスイン／アウト操作の関連文書抽出処理を示すフロー図である。
【図６１】本発明の第３の実施の形態に係るコピー／ペースト操作の関連文書抽出処理を示すフロー図である。
【図６２】本発明の第３の実施の形態に係る文書内容ハッシュ値を利用する場合のオープン／クローズ操作の関連文書抽出処理を示すフロー図である。
【図６３】本発明の第３の実施の形態に係る文書内容ハッシュ値を利用する場合のフォーカスイン／アウト操作の関連文書抽出処理を示すフロー図である。
【図６４】本発明の第３の実施の形態に係る文書内容ハッシュ値を利用する場合のコピー／ペースト操作の関連文書抽出処理を示すフロー図である。
【図６５】本発明の第４の実施の形態に係るスケジュール関連文書抽出処理を示すフロー図である。
【符号の説明】
【０２９４】
１  情報処理システム
１０  ネットワーク
２０  サーバ
３０  クライアント
１０１  通信部
１０２  ユーザ認証部
１０３  文書操作イベント管理部
１０４  関連文書抽出部
１０５  ユーザデータベース
１０６  文書操作イベントデータベース
１０７  タスク情報管理部
１０８  タスク情報データベース
１０９  タスク関連文書抽出部
２０１  入力・出力部
２０２  ユーザ情報処理部
２０３  文書操作イベント取得部
２０４  関連文書提示部
２０５  通信部
２０６  タスク関連文書提示部
【図１】
2008102911.tif 000003
【図２】
2008102911.tif 000004
【図３】
2008102911.tif 000005
【図４】
2008102911.tif 000006
【図５】
2008102911.tif 000007
【図６】
2008102911.tif 000008
【図７】
2008102911.tif 000009
【図８】
2008102911.tif 000010
【図９】
2008102911.tif 000011
【図１０】
2008102911.tif 000012
【図１１】
2008102911.tif 000013
【図１２】
2008102911.tif 000014
【図１３】
2008102911.tif 000015
【図１４】
2008102911.tif 000016
【図１５】
2008102911.tif 000017
【図１６】
2008102911.tif 000018
【図１７】
2008102911.tif 000019
【図１８】
2008102911.tif 000020
【図１９】
2008102911.tif 000021
【図２０】
2008102911.tif 000022
【図２１】
2008102911.tif 000023
【図２２】
2008102911.tif 000024
【図２３】
2008102911.tif 000025
【図２４】
2008102911.tif 000026
【図２５】
2008102911.tif 000027
【図２６】
2008102911.tif 000028
【図２７】
2008102911.tif 000029
【図２８】
2008102911.tif 000030
【図２９】
2008102911.tif 000031
【図３０】
2008102911.tif 000032
【図３１】
2008102911.tif 000033
【図３２】
2008102911.tif 000034
【図３３】
2008102911.tif 000035
【図３４】
2008102911.tif 000036
【図３５】
2008102911.tif 000037
【図３６】
2008102911.tif 000038
【図３７】
2008102911.tif 000039
【図３８】
2008102911.tif 000040
【図３９】
2008102911.tif 000041
【図４０】
2008102911.tif 000042
【図４１】
2008102911.tif 000043
【図４２】
2008102911.tif 000044
【図４３】
2008102911.tif 000045
【図４４】
2008102911.tif 000046
【図４５】
2008102911.tif 000047
【図４６】
2008102911.tif 000048
【図４７】
2008102911.tif 000049
【図４８】
2008102911.tif 000050
【図４９】
2008102911.tif 000051
【図５０】
2008102911.tif 000052
【図５１】
2008102911.tif 000053
【図５２】
2008102911.tif 000054
【図５３】
2008102911.tif 000055
【図５５】
2008102911.tif 000056
【図５６】
2008102911.tif 000057
【図５７】
2008102911.tif 000058
【図５８】
2008102911.tif 000059
【図５９】
2008102911.tif 000060
【図６０】
2008102911.tif 000061
【図６１】
2008102911.tif 000062
【図６２】
2008102911.tif 000063
【図６３】
2008102911.tif 000064
【図６４】
2008102911.tif 000065
【図６５】
2008102911.tif 000066
【図５４】
2008102911.tif 000067