(57)【要約】【課題】  ユーザが入力している文字列情報から抽出された重要語に関連する文書情報を文書管理装置から自動的に取得することである。【解決手段】  起動される編集アプリケーションに基づく編集画面に対して、文字が入力されると（Ｓ６０２）、入力された文字列が取得される。そして、入力された文字列の構造を解析して、文書管理装置に登録された文書情報を検索するための重要語を抽出する（Ｓ６１１）。そして、抽出された重要語を文書管理装置に送信する（Ｓ６１２）。そして、文書管理装置での検索結果を取得して文書検索結果画面を表示する（Ｓ６１４）。そして、表示された文書検索結果画面に対する指示に従い、文書入力処理あるいは検索文書の表示処理を行う（６１６，Ｓ６１７）ことを特徴とする。【選択図】  図１０
2010211688.tif 000002
【特許請求の範囲】
【請求項１】
文書管理装置に登録された文書情報を参照して文書編集を行う文書編集装置であって、
アプリケーションに対して文字列が入力されたことに応じて、当該入力された文字列を自動的に取得する取得手段と、
前記取得手段が取得する前記文字列の構造を解析して前記文書情報を検索するための重要語を抽出する抽出手段と、
前記抽出手段により抽出された前記重要語を前記文書管理装置に送信する送信手段と、
前記文書管理装置が前記重要語に基づいて検索した文書情報を取得するための検索結果を表示する検索結果表示手段と、
を備えることを特徴とする文書編集装置。
【請求項２】
前記抽出手段は、前記取得手段が取得している文字列、又は前記取得手段が設定された時間内に取得した文字列の構造を解析して、文書内容又は段落内容を意味付ける見出し語を前記重要語として抽出することを特徴とする請求項１記載の文書編集装置。
【請求項３】
前記抽出手段により重要語が抽出されたことに応じて、前記文書管理装置に登録された文書情報を検索する検索モードを設定することを特徴とする請求項１記載の文書編集装置。
【請求項４】
前記検索結果表示手段に表示された前記検索結果に対する指示が文書情報を取得する要求か、前記文字を入力する要求であるかを判断する判断手段と、
前記検索結果に対する指示が前記文書情報を取得する要求であると前記判断手段が判断した場合、指示される文書情報を前記文書管理装置から取得して表示する検索文書表示手段とを備え、
前記指示が前記文字を入力する要求であると前記判断手段が判断した場合、検索モードから前記取得手段が前記アプリケーションに対して入力された文字列情報を取得する文字入力モードに戻ることを特徴とする請求項１記載の文書編集装置。
【請求項５】
文書管理装置に登録された文書情報を参照して文書編集を行う文書編集装置におけるデータ処理方法であって、
アプリケーションに対して文字列が入力されたことに応じて、当該入力された文字列を自動的に取得する取得ステップと、
前記取得ステップが取得する前記文字列の構造を解析して前記文書情報を検索するための重要語を抽出する抽出ステップと、
前記抽出ステップにより抽出された前記重要語を前記文書管理装置に送信する送信ステップと、
前記文書管理装置が前記重要語に基づいて検索した文書情報を取得するための検索結果を表示する検索結果表示ステップと、
を備えることを特徴とするデータ処理方法。
【請求項６】
前記抽出ステップは、前記取得ステップが取得している文字列、又は前記取得ステップが設定された時間内に取得した文字列の構造を解析して、文書内容又は段落内容を意味付ける見出し語を前記重要語として抽出することを特徴とする請求項５記載のデータ処理方法。
【請求項７】
前記抽出ステップにより重要語が抽出されたことに応じて、前記文書管理装置に登録された文書情報を検索する検索モードを設定することを特徴とする請求項５記載のデータ処理方法。
【請求項８】
前記検索結果表示ステップに表示された前記検索結果に対する指示が文書情報を取得する要求か、前記文字を入力する要求であるかを判断する判断ステップと、
前記検索結果に対する指示が前記文書情報を取得する要求であると前記判断ステップが判断した場合、指示される文書情報を前記文書管理装置から取得して表示する検索文書表示ステップとを備え、
前記指示が前記文字を入力する要求であると前記判断ステップが判断した場合、検索モードから前記取得ステップが前記アプリケーションに対して入力された文字列情報を取得する文字入力モードに戻ることを特徴とする請求項５記載のデータ処理方法。
【請求項９】
請求項５乃至８のいずれか１項に記載のデータ処理方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書管理装置に登録された文書情報を利用して文書編集を行う文書編集装置に関するものである。
【背景技術】
【０００２】
コンピュータを利用することにより、オフィスにおける文書作成はワープロソフト等を用いて電子的に行われることが一般的となっている。更にオフィスのＯＡ化、ネットワーク化により、電子的に作成された文書は必ずしも紙に印刷される過程を経ずにそのまま利用され、記憶装置上に蓄積され、破棄される場合がある。
【０００３】
すなわち、文書はそのライフサイクルを通じて電子的形式で管理されるようになっている。また、インターネットの普及に伴って、電子メール、電子カタログや電子出版物等の電子化された文書情報も大量に流通し、その情報が蓄積され、今後とも、このような電子化された文書の蓄積は加速的に進んでいくと思われる。
【０００４】
そのため、業務の効率化を目的として、オフィス内で文書を共有し、その上でユーザが必要な文書を迅速かつ的確に提供できるよう、文書の管理を行うことが重要である。
ワープロソフトなどで作成された電子データに対する文書共有の方法としては、文書管理システムが既に実用化され、高速かつ効率的に必要な文書を検索できる仕組みが提供されている。
【０００５】
また、紙文書を共有するシステムとして、紙の文書をスキャナなどで読み取り、イメージデータとして管理するイメージ文書管理システムがある。
このような文書管理システムにおいては、ユーザは文書に対するイメージデータを簡単に記憶装置に蓄積でき、かつ、蓄積したイメージデータを効率よく再利用できる手段を求めている。
【０００６】
また、文書管理システムでは、記憶装置に蓄積したイメージデータを再利用するためには、ユーザが必要な情報を含んだイメージデータや電子データを高速かつ効率的に検索する手段が必要不可欠となる。
ユーザが必要な情報を含んだ電子データを高速かつ効率的に検索する手段として、ユーザの必要な内容を含んだ文書を例示し、その文書と類似する文書を検索する類似文書検索が実用化されている。
【０００７】
このように、膨大な量の電子化文書を検索するための手段、手法が様々な技術に基づいて提供されてはいるものの、オフィス内には作成されたまま活用されない文書が多く眠っているのが現状である。また、文書の作成者でさえ、先に作成した文書の存在を忘れてしまって再び同じような内容の文書を作成してしまう場合もあった。
このように作成された文書が十分に活用されていない要因は、蓄積した文書を検索する手順が複雑なため、あるいは検索結果が多数表示されるのでそれらの中からユーザが必要な文書を探し出すのが面倒である等である。
このような事態に遭遇すると、蓄積した文書を探す労力よりも、もう一度同様の文書を作成した方が早いと考えるユーザも少なくない。
【０００８】
また、文書等を検索するには、それぞれの文書が有する属性情報などのメタデータや、文書内容に含まれるテキストデータなどを指定する必要がある。さらに、適切な量の文書を検索結果としてヒットさせるためには、検索条件の指定の仕方に慣れや工夫が必要となる。
一方、文書管理システムにおいて、ユーザがある文書を編集中に、過去に作成された別の文書を参考にしたいと考えたとき、編集中の内容に関連の強い文書を簡単な操作でリアルタイムに検索できると便利である。
【０００９】
さらに、文書管理システムには、記憶装置には蓄積しているが参照されることの少ない埋もれた文書の存在を、再利用に効果的なタイミングでユーザに気付かせる文書管理システムを提供することが生産性向上の観点からも求められている。
また、従来、編集中の文書のある部分に類似した内容を持つ他の文書を、編集作業を中断せずに検索するための技術として、例えば特許文献１に開示されているものが存在する。
【００１０】
電子化文書を蓄積して管理する特許文献１に示す文書管理システムでは、文書の蓄積時に文書を段落毎等にグルーピングしてサブドキュメント化し、サブドキュメント単位でベクタ表現に変換した転置ファイルとして格納しておく必要がある。
そして、ユーザは画面表示されている文書の任意の範囲を指定すると、その範囲の文字列の構造を解析した結果に基づいてクライアントが検索条件を生成する。そして、サーバがクライアントから検索条件を受け付けとると、サーバは検索条件をベクタ表現に変換し、それに基づいて転置ファイル群から該当するサブドキュメントを検索する。
【００１１】
このような技術を用いることにより、文書の編集中にリアルタイムで必要な情報を検索することができ、文書中の必要な箇所を検索対象とすることが可能となる。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開平１１−０４５２５５号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
しかしながら、上述した特許文献１に示される技術では、ユーザが文書中で検索したい場所をその都度範囲指定する必要があり、例えば、編集中の文書近傍から自動的にキーワードを抽出して無意識のうちに検索が実行されるようなことは期待できない。
また、探している文書が記憶装置に存在することを前提としているため、意図的に検索処理をキックする必要があり、文書の作成者が一旦文書編集作業を中断し、検索行為に切り換える必要があるため、効率の良い文書の作成の妨げとなる場合があった。
【００１４】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、ユーザが入力している文字列情報から抽出された重要語に関連する文書情報を文書管理装置から自動的に取得できる仕組みを提供することである。
【課題を解決するための手段】
【００１５】
上記目的を達成するために、本発明の文書編集装置は、文書管理装置に登録された文書情報を参照して文書編集を行う文書編集装置であって、アプリケーションに対して文字列が入力されたことに応じて、当該入力された文字列を自動的に取得する取得手段と、前記取得手段が取得する前記文字列の構造を解析して前記文書情報を検索するための重要語を抽出する抽出手段と、前記抽出手段により抽出された前記重要語を前記文書管理装置に送信する送信手段と、前記文書管理装置が前記重要語に基づいて検索した文書情報を取得するための検索結果を表示する検索結果表示手段と、を備えることを特徴とする。
【発明の効果】
【００１６】
本発明によれば、ユーザが入力している文字列情報から抽出された重要語に関連する文書情報を文書管理装置から自動的に取得できる。
【図面の簡単な説明】
【００１７】
【図１】本実施形態を示す文書編集装置と文書管理装置とを含む文書管理システムの構成を示す図である。
【図２】図１に示した文書管理サーバのハードウエア構成を示すブロック図である。
【図３】クライアントＰＣのハードウエア構成を示すブロック図である。
【図４】クライアントＰＣのソフトウエア資源の構成を示す図である。
【図５】文書作成アプリケーションで作成した文書の例を示す図である。
【図６】文書管理サーバの文書管理処理に関わる構成を示すブロック図である。
【図７】文書管理装置のデータ処理手順を示すフローチャートである。
【図８】文書管理サーバの文書内単語統計情報の構造を示す図である。
【図９】文書管理サーバの単語統計情報の構造の示す図である。
【図１０】情報処理装置のデータ処理手順を示すフローチャートである。
【図１１】ディスプレイに表示されるＵＩを示す図である。
【図１２】文書管理装置のデータ処理手順を示すフローチャートである。
【図１３】ディスプレイに表示される文書編集画面の一例を示す図である。
【図１４】単語統計情報管理手段が管理する文書内単語統計情報の一例を示す図である。
【発明を実施するための形態】
【００１８】
次に本発明を実施するための最良の形態について図面を参照して説明する。
＜システム構成の説明＞
〔第１実施形態〕
図１は、本実施形態を示す文書編集装置と文書管理装置とを含む文書管理システムの構成を示す図である。本例の文書管理システムは、文書管理機能を備える文書管理サーバ１０１、および文書編集機能を備えるクライアントＰＣ（Personal Computer）１０２をＬＡＮ（Local Area Network）１０３を介して接続した例である。１０４は例えばハードディスクで構成される外部記憶装置で、クライアントＰＣ１０２に提供する文書情報や検索に必要な複数の辞書を記憶している。なお、クライアントＰＣ１０１０２は、後述するハードウエア資源と、ソフトウエア資源とを備え、インストールされているアプリケーションを実行して文書編集処理を行う。
【００１９】
図２は、図１に示した文書管理サーバ１０１のハードウエア構成を示すブロック図である。
図２に示す文書管理システムにおいて、２０１はマイクロプロセッサとして構成されるＣＰＵで、文書検索処理のための演算、論理判断等を行い、バス２１６に接続された各構成要素をバス２１６を介して制御する。
また、ＣＰＵ２０１は、ＲＯＭ２０２又はＨＤＤ２１１に格納された制御プログラムに基づき後述の各フローチャートに示す処理を実行する。また、ＣＰＵ２０１は、文書検索結果をディスプレイ２０９に表示制御する手段としても動作する。バス２１６は、ＣＰＵ２０１の制御対象である各構成要素を指示するアドレス信号、コントロール信号を転送する。また、バス２１６は、各構成要素間のデータ転送を行う。
【００２０】
ＲＯＭ２０２は、読み出し専用の固定メモリであり、ＣＰＵ２０１により実行される制御プログラム等を記憶している。ＲＡＭ２０３は、書き込み可能なランダムアクセスメモリであり、各構成要素からの各種データの一時記憶に用いる。
キーボード２０５およびマウス２０７はそれぞれ、データのリードを制御するキーボードＩ／Ｆ（ＩｎｔｅｒＦａｃｅ）２０４およびマウスＩ／Ｆ２０６を介してバス２１６に接続され、各種データ入力や各種指示に用いる。
【００２１】
ディスプレイ２０９は、ＣＲＴ或いは液晶ディスプレイ等から構成されており、ディスプレイＩ／Ｆ２０８を介してバス２１６に接続され、文書検索結果の画面等を表示する。
ＨＤ（ハードディスク）２１１はデータのリード／ライトを制御するＨＤＤ（ハードディスクドライブ）２１０を介してバス２１６に接続される。
【００２２】
ＨＤ２１１は、単語毎にベクトル表現時のそれぞれの次元（分類基準）に対応した特徴量を記憶した特徴量記憶用辞書や、検索条件文から単語を抽出する際の形態素解析に用いる形態素解析用辞書などの複数の辞書を備える。さらに、ＨＤ２１１は、検索対象となる複数の文書ファイルを記憶した文書データベース等を格納している。
ＣＤ−ＲＯＭドライブ２１２は外部記憶媒体であるＣＤ−ＲＯＭ２１３内に記録されたデータのリードを制御するドライブで、上記ＨＤ２１１と同等に使用することが可能である。
【００２３】
ＬＡＮ（Local Area Network）２１５はＬＡＮ  Ｉ／Ｆ２１４を介して外部装置との間でデータ交換を行う装置である。ここで、外部装置とは、図１に示したクライアントＰＣ１０２等が含まれる。なお、クライアントＰＣは、後述する図３に示すハードウエア資源を備えている。
かかる各構成要素からなる文書管理システムは、キーボード２０５またはマウス２０７からの各種の入力に応じて作動する。そこで、本システムは、キーボード２０５またはマウス２０７からの入力が行われると、まずインタラプタ信号がＣＰＵ２０１に送られる。次に、ＣＰＵ２０１はインタラプタ信号に従いＲＯＭ２０２内に記憶してある各種の制御信号を読み出し、それらの制御信号に従って各種の制御を行う。
【００２４】
図３は、図１に示したクライアントＰＣ（Personal Computer）１０２のハードウエア構成を示すブロック図である。
図３において、１５０１はＣＰＵで、ＲＯＭ１５０２に記憶される制御プログラムを実行して、バス１５１４に接続される各デバイスを制御する。１５０３はＲＡＭで、ＣＰＵ１５０１のワークメモリとして機能する。ＨＤ（ハードディスク）１５１１はデータのリード／ライトを制御するＨＤＤ（ハードディスクドライブ）１５１０を介してバス１５１４に接続される。なお、ＨＤＤ１５１０には、オペレーティングシステム（ＯＳ）がインストールされ、ＣＰＵ１５０１は、当該ＯＳの管理の下で、ＲＡＭ１５０３にロードする各種のアプリケーション、デバイスドライバを実行する。
【００２５】
１５０９はディスプレイで、ディスプレイＩ／Ｆ１５０８を介してバス１５１４に接続される。１５０５はキーボードで、キーボードＩ／Ｆ１５０４を介してバス１５１４に接続されている。１５０７はマウスで、マウスＩ／Ｆ１５０６を介してバス１５１４に接続されている。１５１３はＬＡＮで、ＬＡＮ  Ｉ／Ｆ１５１２を介してバス１５１４に接続されている。
ＨＤ２１１は、オペレーティングシステム（ＯＳ）を含むアプリケーションがソフトウエア資源として記憶されている。以下、図３を参照して、ＨＤ２１１に格納されているソフトウエア資源について説明する。
【００２６】
図４は、図３に示したクライアントＰＣ１０２のソフトウエア資源の構成を示す図である。ここで、ソフトウエア資源は、ＨＤＤ１５１１にインストールされており、ＲＡＭ１５０３にロードされてＣＰＵ１５０１が実行することで、後述する重要語の抽出処理を含む文書検索処理等を実行する。
【００２７】
図４において、抽出エージェント３０１は、クライアントＰＣ１０２内に常駐して動作する本文書管理システムの独立モジュールであり、文書管理サーバ１０１との通信を行う。本実施形態では、抽出エージェント３０１は、図６に示す検索サービス５０２のエージェントとして機能するモジュールである。
抽出エージェント３０１は、クライアントＰＣ１０２の上で起動された後述する文書作成アプリケーション３１０８に対して入力された文字列情報を取得して言語的に解析し、その結果を文書管理サーバ１０１に送信する。
【００２８】
また、抽出エージェント３０１は、編集文書情報取得手段３１０、重要語決定手段３０６、記憶手段３０８、および通信手段３０９から構成される。
ここで、編集文書情報取得手段３１０は、文字列取得手段３０２、入力文字数計測手段３０４、入力時間計測手段３０５、およびページ取得手段３０７の複数個のモジュールから構成されている。
【００２９】
また、重要語決定手段３０６は、形態素解析手段３０３、単語統計情報管理手段３１１、および単語ランキング付与手段３１２の各モジュールから構成される。
編集文書情報取得手段３１０は、ユーザが文書作成アプリケーション３１０８で編集中の文書に対する入力などの情報を、文書作成アプリケーション３１０８が提供するアプリケーション開発者用関数群３１１０を使用して取得する機能を有する。
【００３０】
ここで、文字列取得手段３０２は、クライアントＰＣ１０２上で文書作成アプリケーション３１０８が起動中の場合にそのサービスの動作を検知する。その際、文字列取得手段３０２は、文書作成アプリケーションのＡＰＩ（Application Program Interface）を呼び出す。そして、文字列取得手段３０２は、呼び出したＡＰＩにより、ユーザが文書作成アプリケーション３１０８に対して入力する全ての文字列を監視しながら取得して、後述する抽出エージェント３０１内部の記憶手段３０８に一時的に記憶する。
【００３１】
このＡＰＩについては、後述のアプリケーション開発者用関数群３１１０の説明において詳述する。
入力文字数計測手段３０４は、前述した文字列取得手段３０２が取得する文書作成アプリケーション３１０８に入力された文字列の文字数を計測する。入力時間計測手段３０５は、文書作成アプリケーション３１０８に対して文字列が入力されるタイミングを常時計測する。
ページ取得手段３０７は、後述する文書作成アプリケーション３１０８のアプリケーション開発者用関数群３１１０の中のページ判別関数３１１７を呼び出すことにより、編集中の文書のページ情報を取得する。
【００３２】
重要語決定手段３０６は、文書内の文字列を形態素に分解した後、後述するアルゴリズムに従って意味的に重要と思われる単語を決定する処理を行う。そのうち、形態素解析手段３０３は、文字列を後述する記憶手段３０８に記憶された言語辞書を参照しながら言語的に解析し、言語が日本語の場合に形態素に分解する処理を行う。ここで、対象となる文字列とは、文字列取得手段３０２が記憶手段３０８に格納した文書作成アプリケーション３１０８の文字列である。
【００３３】
単語統計情報管理手段３１１は、編集中の文書から抽出された見出し語となる単語、およびその出現頻度を算出し、当該文書の文書内単語統計情報を得る。さらに、単語統計情報管理手段３１１は、通信手段３０９を経由して文書管理サーバ１０１と通信することによって、文書管理サーバ１０１に格納されている文書全体の単語統計情報５１５を取得して管理する。
単語ランキング付与手段３１２は、単語統計情報管理手段３１１が算出し管理する各種統計情報から統計的手法により単語の重要度を算出して単語群のランキングを行う。
なお、抽出エージェント３０１の残りの構成要素のうち、記憶手段３０８は、上述した言語辞書のほか、既に説明した抽出エージェント３０１を構成する各構成要素が行った処理の結果を一時的に記憶しておくための場所としても機能する。
なお、言語辞書の容量が大きくてクライアントＰＣ１０２の記憶容量を越える場合は、図６を用いて説明する通り、文書管理サーバ１０１が備える言語辞書を参照する構成としてもよい。
【００３４】
具体的には、抽出エージェント３０１の通信手段３０９と文書管理サーバ１０１の通信手段５１４との間で通信を行うことにより、文書管理サーバ１０１側の辞書を参照する。
最後に通信手段３０９は、クライアントＰＣ１０２と文書管理サーバ１０１との間で以下の通信処理を行う。１つ目の通信処理は、抽出エージェント３０１が文書作成アプリケーション３１０８の管理する文書を解析した結果求めた重要語を文書管理サーバ１０１に送信する処理である。２つ目の通信処理は、文書管理サーバ１０１に送信した重要語に対してして文書管理サーバ１０１側でそれを検索キーとして文書の検索を行った結果を受信する処理である。
【００３５】
文書作成アプリケーション３１０８は、本発明の構成要素ではないが、本発明における処理と密接に関係するので、オフィス等のＰＣ環境でよく使用される一般的な文書作成ソフトを例にしてその構成を簡単に説明する。
文書データ一時記憶領域３１０９は、ユーザ操作により表示または編集される文書のデータを一時的に保存しておくためのバッファであり、例えばＲＡＭ１５０３上に確保される。
【００３６】
アプリケーション開発者用関数群３１１０は、当該文書作成アプリケーション３１０８と連携して動作するＡＰＩ（Application Program Interface）から構成されている。ここで、ＡＰＩは、アプリケーションソフト全般を開発する開発者ユーザのために当該文書作成アプリケーション３１０８を作成した開発元により公開されたものである。
以下、ＡＰＩのうちで本発明における抽出エージェント３０１が使用するものだけを説明する。
【００３７】
見出しレベル判別関数３１１１は、文書作成アプリケーションが提供する文字列入力機能を使用してユーザにより入力された見出し文字列の見出しのレベルを判定するためのＡＰＩである。ここで見出しのレベルについて図５を参照して説明する。
【００３８】
図５は、図４に示した文書作成アプリケーション３１０８で作成した文書の例を示す図である。なお、本例において、文書作成アプリケーション３１０８がページの概念を持つ場合には、図５で示したものはそのうちのある1ページであるとする。このような文書編集が実行されて文字列が入力された場合、文書内容に応じて異なるサイズの文字が入力され、かつ、文字の入力位置も編集された文書に応じて特定される。したがって、後述する図１０に示す処理に従い、入力された文字列の位置やサイズを解析することで、編集されているページで、それぞれの文字列が重要語として対応する見出し語であるかどうかを判別することが可能となる。
【００３９】
図５において、点線の枠４０１内の文字列は本ページの中で最もフォントの大きさが大きく、またインデントの深さも最も浅いため、見出しのレベルを「１」と定義する。
次に、点線の枠４０２、４０４、および枠４０７内の文字列は、枠４０１内の文字列の次にフォントの大きさが大きく、またインデントの深さもその次にあたるため、それら３つの文字列の見出しのレベルを「２」と定義する。
同様にして、点線の枠４０３および枠４０５内文字列は見出しレベルが「３」、さらに４０６の枠内の文字列は見出しのレベルを「４」とする。このようにページ中のすべての文字列の中でフォントのサイズの順序、またはフォントサイズそのものの値、および文字列の頭に挿入されたインデントの深さの情報に基づいて見出しレベルが定義される。
ここで文字列のフォントサイズはＡＰＩのうちで後述するフォントサイズ取得関数３１１３を使用して取得処理が行われる。
【００４０】
図４に戻って、見出し文字列キャプチャ関数３１１２は、指定した見出しレベルの文字列をページ中から取得する関数である。
フォントサイズ取得関数３１１３は、指定した見出し文字列のフォントサイズを判定して返す関数である。入力文字数計測関数３１１４は、クライアントＰＣ１０２にログインしているユーザが起動中の当該文書作成アプリケーション３１０８で作成している文書に対して入力した文字の文字数をカウントする関数である。
【００４１】
経過時間計測関数３１１５は、同じく当該文書作成アプリケーション３１０８を使用しているユーザが当該文書に対して行う文字入力操作を常時監視して、ある文字が入力されてから次の１文字が入力されるまでに要した時間を計測している。
インデントレベル判別関数３１１６は、見出し文字列が入力された際に設定されたインデントの深さを判別する関数である。
【００４２】
ページ判別関数３１１７は、文書作成アプリケーション３１０８がページの概念を有する場合に限り、ユーザが開いている文書のページ情報を取得して返す関数である。
図６は、図１に示した文書管理サーバ１０１の文書管理処理に関わる構成を示すブロック図である。
図６において、文書圧縮伸長手段５０１は、後述する文書記憶手段５０８に格納された文書原文を圧縮して文書記憶手段５０８に圧縮文書として格納する。また、文書圧縮伸長手段５０１は、文書記憶手段５０８に格納された圧縮文書を伸長する処理を行う。
形態素解析手段５１３は、文書記憶手段５０８に格納された圧縮文書を文書圧縮伸長手段５０１により伸長したものからテキスト部分を取得し、後述する辞書５０９を参照しながら形態素解析を行い、テキストを形態素に分解する。統計情報抽出手段５０３は、後述する単語統計情報５１５、および文書内単語統計情報５１２を作成する。
【００４３】
通信手段５１４はクライアントＰＣ内１０２の抽出エージェント３０１が有する通信手段３０９と通信を行う。文書記憶手段５０８は、文書管理サーバ１０１に登録された文書を文書圧縮伸長手段５０１により圧縮して格納する。
単語統計情報５１５は、文書集合における単語の頻度・分布などを記憶したもので、ある単語の全文書中での総出現頻度や出現文書数を高速に求めることができる。文書内単語統計情報５１２は、文書ごとの当該文書に含まれる単語の統計情報を記憶する。
【００４４】
辞書５０９は、図４に示した抽出エージェント３０１の構成要素である記憶手段３０８に記憶された言語辞書と同じものである。
検索サービス５０２は、インデックス作成手段５０４、全文検索手段５０５、結果表示手段５０６、インデックスファイル５１０、および検索結果記憶手段５１１から構成される。
インデックス作成手段５０４は、形態素解析手段５１３が出力した形態素を文書における出現位置とともにインデックスファイル５１０に記録する。全文検索手段５０５は、検索を行うユーザが入力した検索語をインデックスファイル５１０から検索し、その文書と出現位置のペアからなるリストを後述の結果表示手段５０６に返す。
【００４５】
結果表示手段５０６は、全文検索手段５０５から受け取った文書リストを表示する処理を行う。なお、本実施形態においては、文書管理サーバ１０１側で検索結果の表示は行わず、文書リストをクライアントＰＣ１０２に送信して抽出エージェント３０１により表示するため、ここで説明した結果表示手段５０６は使用しない。
インデックスファイル５１０には、文書記憶手段５０８に格納された全ての文書にわたるインデックス、すなわち形態素の情報が記録される。そのため、各インデックスには文書を一意に識別する文書ＩＤもあわせて記録されているので、ある単語が与えられたとき、その単語を含む文書および文書内におけるその単語の出現位置を素早く検索することができる。
【００４６】
なお、インデックスファイルには形態素単位でインデックスを作成する代わりにテキストのすべての連続するＮ文字を取り出し、各Ｎ文字列を1個のインデックスとしてインデックスファイルに登録する検索システムも知られており、本発明においてはどちらの方法で実施しても構わない。
検索結果記憶手段５１１は、検索結果を一時的に記憶する場所で、直前に実行した検索結果に対して検索条件を付加して絞込み検索を行う場合に使用する。以上が検索サービスの構成要素である。
【００４７】
最後に要約生成手段５０７であるが、文書記憶手段５０８に格納された文書の内容の要約を生成するためのものであり、その方法は良く知られているためここでは説明は省略する。
次に、単語統計情報の作成処理およびインデックス作成処理について図７のフローチャートを参照しながら説明する。
【００４８】
図７は、本実施形態を示す文書管理装置におけるデータ処理手順の一例を示すフローチャートである。本例は、文書管理サーバ１０１に対して新規に文書が登録された場合、または文書管理サーバ１０１に格納されている文書が編集され再保存（更新登録）された場合に行われる単語統計情報の作成処理およびインデックス作成処理例である。なお、Ｓ１２０１〜Ｓ１２０５は各ステップを示す。
また、各ステップは、図６に示した文書管理サーバ１０１が備えるソフトウエアをＣＰＵ２０１が実行することで実現される。なお、インデックス作成処理は、図６に示した文書管理サーバ１０１のインデックス作成手段５０４により作成される。
まず、Ｓ１２０１で、文書管理サーバ１０１のＣＰＵ２０１は、文書記憶手段５０８に記憶される文書が更新されたかどうかを判断する。ここで、文書が更新されるとタイミングとしては、クライアントＰＣ１０２上で起動された文書作成アプリケーション３１０８から文書管理サーバ１０１に対して新しい文書が登録された場合がある。さらに、文書記憶手段５０８に格納された文書集合のいずれかの文書がクライアントＰＣ上の文書作成アプリケーションに呼び出され、ユーザにより編集されたのち文書管理サーバに再保存される場合とがある。
【００４９】
ここで、文書が更新されたと文書管理サーバ１０１のＣＰＵ２０１が判断した場合は、Ｓ１２０２へ進む。
そして、Ｓ１２０２で、形態素解析手段５１３は、更新された文書に対して形態素解析を行う。次に、Ｓ１２０３で、辞書５０９を利用して前処理として動作する統計情報抽出手段５０３が文書集合における単語の頻度・分布などの単語統計情報５１５を抽出する。次に、Ｓ１２０４で、統計情報抽出手段５０３が文書ごとの当該文書に含まれる単語の統計情報である文書内単語統計情報５１２を抽出する。
【００５０】
図８は、図６に示した文書管理サーバ１０１の文書内単語統計情報５１２の構造の一例を示す図である。
図９は、図６に示した文書管理サーバ１０１の単語統計情報５１５の構造の一例を示す図である。
図９において、単語統計情報５１５は、統計情報抽出手段５０３によって抽出された単語の統計情報を、例えば図８に示すようなテーブルとして格納する。このテーブルを利用することにより、例えば単語「アーカイブ」の全文書中での総出現頻度や出現文書数を高速に求めることができる。
【００５１】
また、文書内単語統計情報５１２は文書ごとの単語の統計情報を、例えば図９に示すようなテーブルとして格納する。これにより、例えば文書番号「００００１」には単語「ＡＰＩ」が７回、単語「インタフェース」が１２回出現する、といった文書ごとの統計情報を高速に求めることができる。
図７に戻り、Ｓ１２０５で、インデックス作成手段５０４が形態素解析の結果をインデックスファイルに反映する処理を行い、処理を終了する。
次に、図１０を参照しながら本発明の動作を説明する
【００５２】
図１０は、本実施形態を示す情報処理装置におけるデータ処理手順の一例を示すフローチャートである。本例は、クライアントＰＣ１０２上で動作する抽出エージェント３０１で行う処理例である。なお、Ｓ６０１〜Ｓ６１７は各ステップを示す。また、各ステップは、図３に示したＣＰＵ１５０１がＲＡＭ１５０３上に文書作成アプリケーション３１０８をロードして実行することで実現される。ここで、抽出エージェント３０１は、クライアントＰＣ１０２側で動作する文書管理サーバ１０１のエージェントとして機能し、ユーザが編集中の文書に対する文字入力をアプリケーションが提供するＡＰＩを監視している。
【００５３】
そして、ＡＰＩを介して監視している文字列が、ページや段落の内容を規定する文字列であると認識することで、単語分割を行いキーワードとして機能する見出し語を抽出する。また、機能の異なる各文書編集アプリケーション間でテキストをインポートとするためのＡＰＩを利用可能であれば、それぞれの文書編集アプリケーションで入力された見出しスタイルや、スライドスタイルから文字列を抽出できる。同様に、それぞれの文書編集アプリケーションで入力されたサブタイトルからも文字列を抽出することができる。
【００５４】
クライアントＰＣ１０２上で文書作成アプリケーション３１０８が起動され、文書の編集がユーザにより開始される。
まず、Ｓ６０１で、文字入力モードとなり、図４に示した抽出エージェント３０１の入力時間計測手段３０５は、文字が入力されるまでの経過時間の計測を開始する。ユーザがキーボード１５０５等を操作して文字が入力されると、計測した経過時間の結果を記憶手段３０８に記憶する。
【００５５】
次に、ユーザがキーボード１５０５等を操作して新しい１文字が入力されると、直前に入力された文字を入力した時刻から今回入力された文字を入力した時刻との間の経過時間が計測さる。そして、その差分時間の結果が記憶手段３０８に上書きされる。すなわち、記憶手段３０８には、入力時間計測手段３０５が計測した時間、すなわち、直前の入力文字から最新の入力文字を入力するのに要した時間のみが常に更新されて記憶される。
【００５６】
このようして経過時間の計測を開始したら、Ｓ６０２で、ユーザがキーボード１５０５等を操作して文字の入力があるかどうかを常に監視することで、文字の入力の有無を抽出エージェント３０１の文字列取得手段３０２が判断する。
そして、Ｓ６０２で、文字の入力があったと抽出エージェント３０１の文字列取得手段３０２が判断した場合、Ｓ６０３へ進む。そして、Ｓ６０３で、抽出エージェント３０１が入力された文字の見出しレベルの判定処理を行う。
【００５７】
これは、抽出エージェント３０１の文字列取得手段３０２が文書作成アプリケーション３１０８のアプリケーション開発者用関数群３１１０の見出し文字列キャプチャ関数３１１２を呼び出すことで実行される。
そして、文字列取得手段３０２が呼び出した見出し文字列キャプチャ関数３１１２を用いて入力された文字列を取得し、まずそれを記憶手段３０８に記憶する。
【００５８】
ここで、もし、入力文字の前にインデントが挿入されていた場合には、その深さをアプリケーション開発者用関数群３１１０のインデントレベル判別関数３１１６を呼び出して判別し、その結果を記憶手段３０８に記録する。
次に、抽出エージェント３０１の文字列取得手段３０２が文書作成アプリケーション３１０８のアプリケーション開発者用関数群３１１０の見出しレベル判別関数３１１１を呼び出す。そして、文字列取得手段３０２が呼び出した見出しレベル判別関数３１１１を用いて、記憶手段３０８に記憶した文字の見出しレベルを判定する。
【００５９】
次に、Ｓ６０４で、判定された文字の見出しレベルがこの直前に入力された文字の見出しレベルと同じかどうかを記憶手段３０８の内容に基づいて文字列取得手段３０２が判断する。
ここで、判定された文字の見出しレベルがこの直前に入力された文字の見出しレベルと同じであると文字列取得手段３０２が判断した場合は、当該入力文字に対する処理はここで終了し、Ｓ６０２へ戻り、次の入力文字を同様に監視する。
【００６０】
一方、Ｓ６０４で、文字の見出しレベルが直前に入力された文字の見出しレベルと異なっていると文字列取得手段３０２が判断した場合には、Ｓ６０５へ進む。
そして、Ｓ６０５で、直前に入力された文字の見出しレベルが予め閾値として定められた所定レベル以上かどうかを文字列取得手段３０２が判断する。ここで、文字の見出しレベルが所定のレベル未満であると文字列取得手段３０２が判断した場合は、Ｓ６０２へ戻り、次の入力文字を同様に監視する。
【００６１】
一方、Ｓ６０５で、文字の見出しレベルが所定のレベル以上であると文字列取得手段３０２が判断した場合は、Ｓ６１１へ進む。なお、Ｓ６１１における重要語の決定処理は後述する。また、本実施形態では、クライアントＰＣ１０２において、Ｓ６１１で重要語が抽出されたことに応じて、文書管理サーバ１０１に登録された文書情報を検索する文書検索モードが自動的に設定され、Ｓ６１１以降の処理を実行する。
上述したようにＳ６０２では、文字の入力を常時監視している間、抽出エージェント３０１の入力時間計測手段３０５は文字が入力されてから次の文字が入力されるまでの経過時間を計測している。ここで、文字の入力がないと抽出エージェント３０１の文字列取得手段３０２が判断した場合は、Ｓ６０６へ進む。
【００６２】
そして、Ｓ６０６で、次の文字が入力されるまでの間に予め閾値として定められた所定時間が経過したかどうかを抽出エージェント３０１の入力時間計測手段３０５が判断する。そして、入力時間計測手段３０５が所定時間を経過したと判断した場合は、Ｓ６０７へ進む。
そして、Ｓ６０７で、ページ内の文字列を取得する処理を行う。具体的には、抽出エージェント３０１の文字列取得手段３０２がアプリケーション開発者用関数群３１１０の中の見出し文字列キャプチャ関数３１１２を繰り返し呼ぶことでページ内の全ての見出しの文字列を取得する。
【００６３】
そして、Ｓ６０８で、文字列取得手段３０２が取得したページ内の見出し文字列の総数とあらかじめ閾値として定められた文字数との比較判定を行い、所定値（閾値）以上の文字数であるかどうかを判断する。ここで、もしページ内の見出し文字列総数が閾値未満であると文字列取得手段３０２が判断した場合は、Ｓ６０９へ進み、ユーザが編集中のページ以外のページが当該文書に存在するかをページ取得手段３０７が判断する。そして、他のページがあるとページ取得手段３０７が判断した場合は、Ｓ６０７へ戻り、他のページがないと判断した場合は、Ｓ６０２へ戻る。
一方、Ｓ６０８で、もしページ内の見出し文字列総数が閾値以上であると文字列取得手段３０２が判断した場合は、Ｓ６１０へ進む。
【００６４】
そして、Ｓ６１０で、文字列取得手段３０２が見出しレベルに関してあらかじめ定められた閾値以上のレベルを持つ見出し文字列のみを選択する。これは、Ｓ６０７で取得したページ内の文字列が記憶手段３０８に格納されているので、そこから文字列取得手段３０２が取得する。
なお、Ｓ６０１、Ｓ６０２、Ｓ６０６〜Ｓ６１０へ進む処理と、Ｓ６０３〜Ｓ６０５へ進む処理とで、結果として、入力された文字列の構造を解析して文書検索のための重要語を特定される。これらの処理の違いは、文字が継続して入力されている状態で文字列の構造を解析する通常の場合と、ユーザが文字入力を中断したりする作業に伴い、文字列が一定時間内入力されない場合がある。この場合、入力される文字数を所定時間経過内で監視すると、入力文字数が変動するので、その状態を捉えてＳ６０６と、Ｓ６０８では、所定時間間隔の結果の判断と、計測された文字数が所定数以上であるかを判断している。ここで、入力文字数が変動するとは、入力速度が所定値以下に低下した場合、または他の文書をユーザが開こうとした場合に、文書作成に行き詰まったか、他文書を参考にしたいものと判断する。そこで、クライアントＰＣ１０２は、編集近傍内の文字列を解析して、出現頻度やフォント等を考慮して重要語に対応する単語（見出し語）を抽出する。
【００６５】
このように本実施形態では、どちらの場合でも、結果として、登録された文書情報を検索するための重要語を特定できるように処理するため、上記のように処理を分けている。
なお、文字列の構造を解析するのは、文書内容又は段落内容を意味付ける単語が入力された場合であっても、文書作業効率が変動した状態を検知した場合でも同様に文字列の解析を行う。
【００６６】
次に、Ｓ６１１で、閾値以上のレベルを持つ全ての見出し文字列の中から重要語を決定する処理を行う。本処理の詳細については後述する。
次に、Ｓ６１２で、Ｓ６１１の処理で決定された重要語は、通信手段３０９により文書管理サーバ１０１に送信される。
【００６７】
そして、Ｓ６１３で、文字列取得手段３０２が送信した重要語に基づいて文書管理サーバ１０１が文書記憶手段５０８を検索して、当該重要語が存在しているという結果を文書管理サーバ１０１から受信したかどうかを判断する。なお、文書管理サーバ１０１で行われる検索処理については後述する。
ここで、重要語が存在するという結果であると文字列取得手段３０２が判断した場合は、Ｓ６１４へ進む。そして、Ｓ６１４で、文書管理サーバ１０１からの検索結果情報を図１１に一例を示すユーザインタフェースを用いて、ディスプレイ１５０９に表示する。ここで、検索結果情報とは、抽出された重要語に従い文書管理サーバ１０１が検索した文書情報を取得するための文書アイコンに対応する。しかも、文書アイコンは、図１１に示すように、尺度を縦軸（単語レベルに対応する）、横軸（近似性）にプロットして編集中の文書との類似性を判定した結果として表示される。
【００６８】
一方、Ｓ６１３で、文字列取得手段３０２が文書管理サーバ１０１での検索結果が存在しないと判断した場合は、Ｓ６０２へ戻って入力文字を監視する。
次に、Ｓ６１５で、図１１に示すユーザインタフェースにおいて、ユーザがマウス１５０７等を操作して検索停止ボタン９０４が指示されているかどうかをＣＰＵ１５０１が判断する。ここで、検索停止ボタン９０４が指示されているとＣＰＵ１５０１が判断した場合は、本処理を終了する。
【００６９】
一方、Ｓ６１５で、検索停止ボタン９０４が指示されていないとＣＰＵ１５０１が判断した場合は、Ｓ６１６で、図１１に示す文書アイコン９０５―１〜９０５−４が指示されているかどうかをＣＰＵ１５０１が判断する。ここで、いずれかの文書アイコンが指示されていないと判断した場合は、Ｓ６０２へ戻って、すなわち、文字入力モードに復帰して、入力文字を監視する。
なお、ユーザが図１１に示す文書アイコン９０５―１〜９０５−４が指示することは、文書管理サーバ１０１に対して文書情報の検索を要求する指示に対応する。
【００７０】
一方、Ｓ６１６で、ユーザが図１１に示す文書アイコン９０５―１〜９０５−４が指示していると判断した場合は、検索文書表示を行うためＳ６１７へ進む。そして、Ｓ６１７で、ユーザが選択した文書アイコンに対応する文書を文書管理サーバ１０１から取得して検索文書をディスプレイ１５０９の編集画面上に表示して、Ｓ６０２へ戻る。なお、表示された文書中で検索時に使用した文字列を、他の文字列と識別可能に表示態様を変更して表示してもよい。
【００７１】
図１２は、本実施形態を示す文書管理装置におけるデータ処理手順の一例を示すフローチャートである。本例は、クライアントＰＣ１０２からＳ６１２で送信された重要語に対して、図１に示した文書管理サーバ１０１で行う文書検索処理例である。なお、Ｓ７０１〜Ｓ７０６は各ステップを示す。また、各ステップは、ＣＰＵ２０１がＲＡＭ２３に検索サービス５０２等をロードして実行することで実現される。
まず、Ｓ７０１で、文書管理サーバ１０１は、クライアントＰＣ１０２の抽出エージェント３０１からの受信がないかを常に監視している。ここで、抽出エージェント３０１からの受信が何もないと判断した場合は、本発明に関する処理は何も行わない。
【００７２】
そして、Ｓ７０２で、クライアントＰＣ１０２の抽出エージェント３０１から重要語（図１０に示すＳ６１２で送信される）を受信したら、Ｓ７０３へ進む。
そして、Ｓ７０３で、文書管理サーバ１０１は文書の検索を行う前に直前に検索が実行された結果が検索結果記憶手段５１１に残っているかどうかを判断する。ここで、もし検索結果が検索結果記憶手段５１１に残っていないと判断した場合は、Ｓ７０４へ進む。
【００７３】
そして、Ｓ７０４で、文書管理サーバ１０１は記憶装置２０６の文書ＤＢ２０８に格納されている文書群に対して全文検索を実行する。なお、全文検索処理は、検索サービス５０２の全文検索手段５０５が以下のような手順で行う。
すなわち、全文検索手段５０５がインデックスファイル５１０を検索して、クライアントＰＣ１０２の抽出エージェント３０１から、Ｓ７０１で受信した重要語のエントリを探し、もしそのようなエントリがなければ結果は空となる。
【００７４】
ここで、重要語として指定された単語に一致するエントリがインデックスファイル５１０にあれば、その単語を含む文書の文書ＩＤと文書上での出現位置とのペアをすべて取得する。そして、Ｓ７０６で、そのリストを検索結果として、クライアントＰＣ１０２の抽出エージェント３０１に送信して、処理を終了する。
一方、Ｓ７０３で、検索結果記憶手段５１１に検索結果が存在していると全文検索手段５０５が判断した場合は、Ｓ７０５へ進む。
【００７５】
そして、Ｓ７０５で、検索対象を記憶装置２０６に格納されている全ての文書ではなく、検索結果記憶手段５１１に記憶された文書ＩＤの文書に限定して同様に全文検索（絞り込み検索）を実行して、Ｓ７０６へ進む。
なお、Ｓ７０５の絞り込み検索処理は、インデックスファイル５１０の中から検索結果記憶手段５１１に記憶された文書ＩＤを持つものだけを検索し、それらに対して指定された単語がエントリにあるかどうかを検索することが通常の検索処理と異なる部分である。
【００７６】
このようにして、Ｓ７０４の検索処理、またはＳ７０５の絞込み検索処理で得られた検索結果がクライアントＰＣ１０２の抽出エージェント３０１に対して送信され、図１０のＳ６１３で検索結果が受信される。
以下、図１０に示したＳ６１４に戻って、抽出エージェント３０１が文書管理サーバ１０１から検索結果を受け取った後の処理として、図１１を参照しながら抽出エージェント３０１側で行われる検索結果表示処理を説明する。
図１１において、９０１は、クライアントＰＣ１０２に接続された表示画面である。９０２は、クライアントＰＣ１０２にログインしているユーザが文書作成アプリケーション３１０８を起動して文書を開き、編集作業を行っているウィンドウを示している。なお、この際、文字列「ストレージ」は、ユーザが入力している間に、文字列取得手段３０２により抽出されて、編集アプリケーションのバックグラウンドで、文書管理サーバ１０１に検索等の指示がなされる。したがって、この状態では、ユーザから検索を指示するという直接的な操作は何ら実行されない。しかしながら、上述した処理により、クライアントＰＣ１０２と文書管理サーバ１０１との間で重要語として文字列「ストレージ」が抽出されると、検索結果が表示される。
【００７７】
９０３は検索結果表示領域であり、文書管理サーバ１０１が返した検索結果を編集中の文書に対する類似度に応じて、例えば二次元的に文書アイコン９０５−１〜９０５−４を配置して表示した例である。
本実施形態では、例えば文書の類似度としては文書内のテキストに含まれる単語レベルで判定するものと、文書内に挿入された画像の近似性から判定するものなどがある。そこで、図１１に示すように、尺度を縦軸（単語レベルに対応する）、横軸（近似性）にプロットして編集中の文書との類似性を判定し、検索された文書アイコン９０５−１〜９０５−４を二次元に配置する。ここで、画像の近似性を判定するのは、画像が多く使用される文書においては、作成中の画像から部品を抽出して検索条件とし、文書管理サーバ１０１側では類似検索を行ってその部品を構成要素とする画像を含む文書を検索するためである。この結果、文書管理サーバ１０１は、検索でヒットした文書を類似度に従って二次元（単語軸、画像軸）のマップ上に文書アイコンを配置した検索結果情報として、クライアントＰＣ１０２に送信する。
【００７８】
なお、前者の単語レベルでの判定には、本実施形態で説明したような全文検索で指定された検索語を含む度合いによるものがある。他に、単語レベルの判定には、個々の単語を予め固定的に定めたいくつかの基礎的な単語の成分に落としたn次元ベクトルで表現してベクトル演算で類似性を判定するいわゆる概念検索によるものなどがある。なお、これらはいずれも公知技術のため、ここでは説明は省略する。
【００７９】
また、後者の画像の類似性から判定するものとしては、文書をテキスト領域と画像領域に分解抽出し、画像領域の特徴量を算出して同じような特徴量を持つ画像を含む文書を検索する画像検索の技術があり、こちらも公知技術であるため説明は省略する。
【００８０】
図１１において、９０５―１〜９０５−４は文書アイコンを表しており、検索の結果ヒットした文書がアイコン化されて配置される。なお、検索結果の二次元配置の方法に関してはこれ以外にも公知技術の組合わせで様々な態様が考えられ、本発明は上記方法に限られるわけではない。
９０６は検索実行ボタンで、編集中の文書に対する文字入力を監視してバックグラウンドで検索を自動的にキックした、文書管理サーバ１０１による検索結果を編集画面の裏に表示する機能を有効にするボタンとして機能する。
【００８１】
一方、検索停止ボタン９０４は、編集中の文書に対する文字入力を監視してバックグラウンドで検索を自動的にキックした、文書管理サーバ１０１による検索結果を編集画面の裏に表示する機能を無効にするボタンとして機能する。
ここで、検索実行ボタン９０６がユーザにより選択されて、検索実行が選択されている状態では、これまで説明してきたような自動検索が起動し続ける。しかし、検索停止ボタン９０４がユーザにより選択されると、文書の編集中であってもこのような検索は起動されない。
【００８２】
従って、クライアントＰＣ１０２において、抽出エージェント３０１も起動されない。
なお、Ｓ６１５で、検索停止ボタン９０４がユーザにより選択されると、図１０に示す処理を終了する。
【００８３】
また、文書アイコン９０５−１から９０５−４のうちのいずれかがユーザにより選択されると、図１３に示したように選択された文書アイコンに対応する文書内容が別ウィンドウ９０７内に表示される。この際、選択された文書アイコンに対応する文書情報を取得する要求がクライアントＰＣ１０２から文書管理サーバ１０１に通知される。そして、文書管理サーバ１０１は、その通知の応答として、選択された文書アイコンに対応する文書情報をクライアントＰＣ１０２に返送する。
【００８４】
これにより、ユーザは編集中の文書の重要語と同じ単語を含む文書を適正なタイミングで容易に参照することができる。
なお、図６において説明した、要約生成手段５０７が生成した文書の要約を通信手段５１４を経由することにより、クライアントＰＣ１０２側に転送するように構成してもよい。
【００８５】
これにより、ユーザによるマウス１５０７の操作に従い文書アイコンにマウスカーソルが置かれた場合にその文書の要約を表示すれば、ユーザは文書を開く前に当該文書の概要を知ることが出来るのでより利便性が向上する。
以下、クライアントＰＣ１０２による図１０に示したＳ６１１の重要語決定処理の詳細を説明する。
【００８６】
クライアントＰＣ１０２の抽出エージェント３０１の重要語決定手段３０６は、単語統計情報管理手段３１１と、単語ランキング付与手段３１２とを備える。ここで、単語統計情報管理手段３１１は、図４に示したように文書管理サーバ１０１に格納されている文書全体の単語統計情報５１５を取得して管理する。また、単語ランキング付与手段３１２は、単語の重要度を算出する処理を行う。
クライアントＰＣ１０２は、通信手段３０９を経由して文書管理サーバ１０１と通信することで、単語統計情報管理手段３１１は、当該文書から抽出された見出し語となる単語およびその出現頻度を算出し、当該文書の文書内単語統計情報を得る。
【００８７】
図１４は、図４に示した単語統計情報管理手段３１１管理する文書内単語統計情報の一例を示す図である。ここでは、ユーザが編集中の文書においては閾値以上のレベルを持つ見出し文字列として「ＡＰＩ」という単語が７回、「インタフェース」という単語が１２回、「アプリケーション」という単語が４回、「アーカイブ」という単語が１回出現したことを示している。
【００８８】
そして、重要語決定手段３０６は、得られた単語すべてについて通信手段３０９を経由して文書管理サーバ１０１に格納されている単語統計情報５１５を問合せ、当該単語の文書管理サーバ１０１内全文書における頻度や分布情報を得る。
ここで、文書管理サーバ１０１から得られた統計情報は、単語ランキング付与手段３１２に渡され、各単語の重要度が算出される。
ある単語Ｗの重要度Ｉ（Ｗ）は、例えば数１に一例を示す計算式に基づいて算出することができる。
【００８９】
（数１）
Ｉ（Ｗ）＝ｃＴＦ（Ｗ）＊｛１−ｌｏｇ（Ｍ（Ｗ）／Ｎ）｝
ここで、ｃは定数を示し、ＴＦ（Ｗ）は文書における単語Ｗの出現頻度を示し、Ｍ（Ｗ）は文書全体において単語Ｗが出現する文書数を示し、Ｎは全文書数を示す。ここで、数１の後半の１−ｌｏｇ（Ｍ（Ｗ）／Ｎ）
の部分は、単語Ｗのｉｄｆ値と呼ばれる指標である。
【００９０】
また、ｉｄｆ値は、単語Ｗがより多くの文書に出現する（すなわちより一般的な語である）場合にその値が小さくなる。
これにより、対象文書全体において比較的よく出現する語の重要度を低く抑えることができる。さらに、Ｌ（Ｗ）を考慮することで、特定された文書集合に多く現れる単語の重要度を高くでき、結果その特定文書集合に特徴的な語に高い重要度を与えることができる。
【００９１】
なお、上記算出法において、ＴＦ（Ｗ）をその単語が含まれる文書の文書サイズ（文字数や含まれる単語の異なり数など）や単語の総出現頻度などで正規化してもよい。
一方、単語ランキング付与手段３１２は、特定された部分集合中の全文書に含まれる全単語について重要度計算を行い、その後全単語を重要度の順に整列する。
【００９２】
最後に、整列された単語群から特定部分、例えば上位１０単語を採用し、単語、もしくは単語とその重要度の組として提示する。
なお、抽出の際に重要度だけでなく、重要度算出に利用した各種統計情報などを同時に提示してもよい。
【００９３】
また、抽出された関連キーワードとその重要度の組を、例えばユーザの履歴として蓄積していくこともできる。このようにすることにより、ユーザの興味の範囲や嗜好などをキーワードとその重みのベクトルとして表現することが可能となり、このベクトルを他の操作、例えば文書集合の検索に利用するなど、広い応用が可能である。
【００９４】
次に文書内単語統計情報および単語統計情報が単語ランキング付与手段３１２に渡される。単語ランキング付与手段３１２では、これら統計情報をもとに例えば、数１を用いて各単語の重要度を計算する。
図８、図９、図１４の例の場合で、単語「ＡＰＩ」および「インタフェース」について重要度を計算すると、以下のようになる。
【００９５】
ただし、ここでは、ｃを１、Ｎを１００００とする。
Ｉ（ＡＰＩ）＝７＊｛１−ｌｏｇ（４／１００００）｝＝３０．７８６
Ｉ（インタフェース）＝１２＊｛１−ｌｏｇ（２５０／１００００）｝
＝３１．２２５
このようにして、単語ランキング付与手段３１２では以上のように求められた重要度により単語を整列し、先頭のものを重要語として採用する。ここで、重要語として採用する個数は、後述するように文書管理サーバ１０１での検索結果の数により２個以上としてもよい。
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。
【００９６】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【００９７】
１０１  文書管理サーバ
１０２  クライアントＰＣ
【図１】
2010211688.tif 000003
【図２】
2010211688.tif 000004
【図３】
2010211688.tif 000005
【図４】
2010211688.tif 000006
【図５】
2010211688.tif 000007
【図６】
2010211688.tif 000008
【図７】
2010211688.tif 000009
【図８】
2010211688.tif 000010
【図９】
2010211688.tif 000011
【図１０】
2010211688.tif 000012
【図１１】
2010211688.tif 000013
【図１２】
2010211688.tif 000014
【図１３】
2010211688.tif 000015
【図１４】
2010211688.tif 000016