(57)【特許請求の範囲】
【請求項１】
複数の文書を管理する単位である管理単位それぞれで、インデックスの種類を定義する文書管理システムであって、
１乃至複数の管理単位を検索範囲として選択する検索範囲選択手段と、
インデックスの種類の取得先となる１乃至複数の管理単位をインデックス取得範囲として選択するインデックス取得範囲選択手段と、
前記インデックス取得範囲選択手段で選択された前記インデックス取得範囲の管理単位に対して定義されているインデックスの種類を含む一覧を表示し、当該一覧からユーザにより選択されたインデックスの種類を用いて検索条件を設定する検索条件設定手段と、
前記検索範囲選択手段で選択された前記検索範囲に属する管理単位で管理されている複数の文書の中から、前記検索条件設定手段で設定された検索条件に合致する文書を検索する検索手段と、
を有することを特徴とする文書管理システム。
【請求項２】
前記文書管理システムは、階層的に構成される複数のサイトを用いて前記管理単位を分類しており、
前記検索範囲選択手段は、所望のサイトが前記検索範囲として指定された場合は、当該指定されたサイトの下位階層に属する管理単位を前記検索範囲として選択し、
前記インデックス取得範囲選択手段は、所望のサイトが前記インデックス取得範囲として指定された場合は、当該指定されたサイトの下位階層に属する管理単位を前記インデックス取得範囲として選択することを特徴とする請求項１に記載の文書管理システム。
【請求項３】
前記インデックス取得範囲選択手段は、複数の前記管理単位を表示し、当該表示されている管理単位がユーザの指示に基づき選択または選択解除されるのに応じて、当該選択中の管理単位に対して定義されているインデックスの種類を一覧表示する設定画面を用い、前記設定画面においてユーザにより確定されたときに選択中の管理単位を前記インデックス取得範囲として選択することを特徴とする請求項１または２に記載の文書管理システム。
【請求項４】
前記検索手段は、前記検索条件設定手段で設定された検索条件と、前記検索範囲選択手段で選択された前記検索範囲に属する管理単位とに関する情報を、文書管理サーバに送信することによって、前記検索条件に合致する文書を検索させることを特徴とする請求項１乃至３のいずれか１項に記載の文書管理システム。
【請求項５】
前記文書管理サーバは、前記検索範囲に属する管理単位それぞれに対して定義されているインデックスの種類を取得し、前記検索条件に設定されているインデックスの種類が存在しないと判定した管理単位で管理されている文書に関しては前記検索条件に合致するか否かの判定を行わないことを特徴とする請求項４に記載の文書管理システム。
【請求項６】
前記文書管理サーバは、前記検索範囲に属する管理単位それぞれに対して定義されているインデックスの種類の中に、前記検索条件に設定されているインデックスの種類が存在しないと判定した場合は、更に、前記検索範囲に属する管理単位それぞれに対して定義されているインデックスの種類の中にタイプは異なるが名称は同じインデックスの種類があるか判定し、あると判定した場合は、当該タイプは異なるが名称は同じであるインデックスの種類に基づいて前記検索条件に合致する文書を検索することを特徴とする請求項４に記載の文書管理システム。
【請求項７】
前記インデックス取得範囲選択手段で選択された前記インデックス取得範囲の管理単位に対して定義されているインデックスの種類を記憶する記憶手段と、
前記検索手段で検索した管理単位で定義されている最新のインデックスの種類を取得して、前記記憶手段で記憶されているインデックスの種類を更新する更新手段と、
を更に有することを特徴とする請求項１に記載の文書管理システム。
【請求項８】
請求項１乃至７のいずれか１項に記載の文書管理システムの各手段として、コンピュータを機能させるためのコンピュータプログラム。
【請求項９】
請求項８に記載のコンピュータプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
【請求項１０】
複数の文書を管理する単位である管理単位それぞれで、インデックスの種類を定義する文書管理システムが実行する文書管理方法であって、
前記文書管理システムの検索範囲選択手段が、１乃至複数の管理単位を検索範囲として選択する検索範囲選択工程と、
前記文書管理システムのインデックス取得範囲選択手段が、インデックスの種類の取得先となる１乃至複数の管理単位をインデックス取得範囲として選択するインデックス取得範囲選択工程と、
前記文書管理システムの検索条件設定手段が、前記インデックス取得範囲選択工程で選択された前記インデックス取得範囲の管理単位に対して定義されているインデックスの種類を含む一覧を表示し、当該一覧からユーザにより選択されたインデックスの種類を用いて検索条件を設定する検索条件設定工程と、
前記文書管理システムの検索手段が、前記検索範囲選択工程で選択された前記検索範囲に属する管理単位で管理されている複数の文書の中から、前記検索条件設定工程で設定された検索条件に合致する文書を検索する検索工程と、
を有することを特徴とする文書管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書管理サーバでインデックス情報を使用した文書検索を行う文書管理システムに関する。
【背景技術】
【０００２】
文書にインデックス情報を関連付けることにより文書管理を行う文書管理システムでは、ユーザにより指定されたキーワードに合致するインデックス情報を有する文書を検索するインデックス検索が一般的に用いられている。
インデックス情報は、複数種類のインデックス定義（インデックスの種類または項目名または属性名とも言う）と、各文書に対して付与される各インデックス定義の値（インデックス値、属性値）とで構成される。インデックス定義（種類、項目名、属性名）は、文書管理システム全体（全てのデータベース）で全く同じ定義を使うよりも、文書管理単位それぞれ（例えばデータベース毎や管理階層毎）で必要となるインデックスの種類を定義する方が一般的である。ただし、様々な階層で自由にインデックスを定義すると管理が複雑になりすぎるため、インデックスを定義可能な階層を設けて、その階層における管理単位ごとにインデックスを定義可能にしているシステムもある。このような文書管理システムでインデックス検索を行う場合、検索対象にする管理単位を指定し、検索条件（インデックス定義と検索キーワード）をユーザに指定させ、当該指定された検索条件に基づいて検索を実行することが考えられる。
また、特許文献１では、文書ファイルを検索する検索対象範囲の指定を受け付けると（Ｓ４０１）、当該指定された検索対象範囲内に存在する文書ファイルのファイル名・位置情報・複数の属性名と属性値を取得して記憶する（Ｓ４０２〜Ｓ４０３）。そして、検索語（検索キーワード）の入力を受け付けると（Ｓ４０４）、記憶している属性値の中からその検索語に対応する複数の属性値を抽出する（Ｓ４０５）。そして、当該抽出した複数の属性値に対応する複数の属性名を取得し（Ｓ４０６）、当該取得した属性名を一覧表示し（Ｓ４０７）、当該一覧表示の中からユーザ所望の属性名が選択されると（Ｓ４０８）、当該選択された属性名と検索語を有する文書ファイルを抽出する（Ｓ４０９）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−０９７２９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１のＳ４０２〜Ｓ４０３では、検索対象範囲内に存在する全ての文書ファイルに関して、ファイル名・位置情報・複数の属性名と属性値を取得する必要があるので、検索対象範囲を広範囲にすると、その情報を取得する処理に時間がかかってしまう。
また、文書管理単位それぞれでインデックスの種類を定義可能なシステムにおいて、複数の文書管理単位を検索対象範囲とした場合、インデックス定義に関する情報（インデックスの種類の情報）を取得する処理だけでも、かなり時間がかかってしまう。例えば、１０種類のインデックスが定義された管理単位が１０階層あった場合に、各階層（各管理単位）からインデックス定義の情報を取得するのに０．５秒かかるとすると、１０階層からインデックス定義情報を取得すると５秒かかってしまう。
したがって、インデックス定義に関する情報を取得した後に、所望のインデックス定義と検索キーワードとをユーザに入力させるようなシステムでは、システムが全てのインデックス定義に関する情報を取得するまでユーザをかなり待たせることになってしまう。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明の文書管理システムは、複数の文書を管理する単位である管理単位それぞれで、インデックスの種類を定義する文書管理システムであって、１乃至複数の管理単位を検索範囲として選択する検索範囲選択手段と、インデックスの種類の取得先となる１乃至複数の管理単位をインデックス取得範囲として選択するインデックス取得範囲選択手段と、前記インデックス取得範囲選択手段で選択された前記インデックス取得範囲の管理単位に対して定義されているインデックスの種類を含む一覧を表示し、当該一覧からユーザにより選択されたインデックスの種類を用いて検索条件を設定する検索条件設定手段と、前記検索範囲選択手段で選択された前記検索範囲に属する管理単位で管理されている複数の文書の中から、前記検索条件設定手段で設定された検索条件に合致する文書を検索する検索手段と、を有することを特徴とする。
【発明の効果】
【０００６】
本発明によって、検索範囲と、インデックスの種類の取得先となるインデックス取得範囲とを個別に選択することができるので、検索範囲の広さの影響を受けずに、インデックスの種類を取得できる。
【図面の簡単な説明】
【０００７】
【図１】システム構成図
【図２】文書管理サーバ及びクライアントのハードウェア構成図
【図３】文書管理サーバのソフトウェア構成図
【図４】ツリー情報３０１のデータ構造図
【図５】インデックス定義情報３０２のデータ構造図
【図６】文書情報３０３（ファイル情報とインデックス値情報）のデータ構造図
【図７】クライアントのソフトウェア構成図
【図８】検索処理画面
【図９】検索範囲設定画面
【図１０】インデックス定義絞込範囲設定画面
【図１１】実施例１の検索処理のシーケンス図
【図１２】実施例１の検索範囲設定処理の流れを示すフローチャート
【図１３】実施例１のインデックス取得範囲絞込設定処理の流れを示すフローチャート
【図１４】実施例１の検索処理の流れを示すフローチャート
【図１５】実施例２の検索処理のメインシーケンス図
【図１６】実施例２の検索処理の流れを示すフローチャート
【図１７】実施例３の検索処理の流れを示すフローチャート
【発明を実施するための形態】
【０００８】
図１は、本発明の実施形態に係る文書管理システムの構成図である。該システムは、文書管理サーバ１０１とクライアント１０２とがＬＡＮ１０３等のネットワークを介して接続されている。
【０００９】
文書管理サーバ１０１は、文書や画像ファイルなどのコンテンツを管理する文書管理機能と、管理された文書の検索機能、およびアプリケーションサーバ機能とを提供するサーバである。クライアント１０２は、文書管理アプリケーションを介して文書管理サーバ１０１に接続し、コンテンツを操作する機能を提供する。
【００１０】
文書管理サーバ１０１とクライアント１０２は、一般的な情報処理装置（ＰＣ）のハードウェアで構成することができる。図２は、本実施形態に係る文書管理システムを構成する各ＰＣのハードウェア構成図を示している。図２において、ＣＰＵ２０１は、ＲＯＭ２０３内のプログラム用ＲＯＭに記憶されたプログラムや、ハードディスク２１０からＲＡＭ２０２にロードされたＯＳ（オペレーションシステム）やアプリケーション等のプログラムを実行する。すなわち、コンピュータ（ＣＰＵ）が、コンピュータ読み取り可能な記憶媒体に格納されたコンピュータプログラムを実行することにより、後述する各フローチャートの処理を実行する各処理部として機能する。ＲＡＭ２０２は、ＣＰＵ２０１のメインメモリであり、ワークエリア等として機能する。キーボードコントローラ２０４は、キーボード２０８や図示しないポインティングデバイス（マウス、タッチパッド、タッチパネル、トラックボールなど）からの操作入力を制御する。ディスプレイコントローラ２０５は、ディスプレイ２０９の表示を制御する。ディスクコントローラ２０６は、各種データを記憶するハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）等の外部メモリ２１０へのデータアクセスを制御する。ネットワークコントローラ（ＮＣ）２０７はネットワークに接続されて、ネットワークに接続された他の機器との通信制御処理を実行する。
【００１１】
（実施例１）
以下、本発明の実施例１に係るシステムの構成および処理の流れについて説明する。
【００１２】
＜文書管理サーバの構成＞
図３は、本発明の実施例１の文書管理システムにおいて、文書管理サーバ１０１が提供する各処理部の構成例を示している。文書管理サーバ１０１のＣＰＵ２０１は、プログラムを実行することにより各処理部３０４〜３１０として機能する。
【００１３】
なお、コンテンツやインデックスなどに関する情報３０１〜３０３は外部メモリ２１０に保持され、必要なときに文書管理サーバ１０１のＲＡＭ２０１にロードして処理に使用される。これらの情報３０１〜３０３については、ＤＢやファイルなどで管理されていても良く、特に形態は問わない。
【００１４】
ツリー情報３０１は、文書管理サーバ１０１の論理的な階層情報を表わしており、ツリー情報管理部３０４を介して各処理部に提供される。このツリー情報３０１は、図４（ａ）の４１１〜４１４で表す項目で構成される。階層ＩＤ４１１は、文書管理サーバ１０１の各階層を一意に識別するためのＩＤ情報（階層の識別子情報）である。階層名称４１２は、ツリー情報３０１を画面に表示する際に使用する、各階層の名称を示す情報である。上位ＩＤ４１３は、各階層ＩＤ４１１の上位階層のＩＤを示しており、階層構造の親子関係を定義する情報である。ただし、最上位の階層４１５は、それ以上の上位階層が存在しないため、上位ＩＤ４１３の情報を持たない。
【００１５】
タイプ４１４は、各階層の種別を表わす。図４（ａ）の例では、文書管理の単位となる「ライブラリ」と、使用用途などに応じてライブラリを分類するために用いる「サイト」とがある。サイトは、複数階層を構成することが可能となっており、階層構造を用いてライブラリを細かく分類することができる。文書管理の単位となる各ライブラリには、インデックスの種類（名称）を定義することができるとともに、文書ファイルを格納できる。更に各ライブラリには、各ユーザにアクセス権を付与することができ、ユーザは各ライブラリに対して付与されているアクセス権に応じた文書操作ができるようになっている。図４（ａ）のツリー情報３０１を階層として表示すると、図４（ｂ）の４０１のような形式となる。
【００１６】
なお、本実施例ではライブラリの直下に文書を格納するものとしているが、ライブラリの直下にフォルダを保存し、更に該フォルダの中に文書を格納することにより、該フォルダを用いて文書を分類して格納するようにしてもよい。
【００１７】
インデックス定義情報３０２は、タイプ４１４が「ライブラリ」である階層に対して定義されるインデックスの種類（インデックスの名称とタイプ）を示す情報であり、インデックス定義情報管理部３０５を介して各処理部に提供される。このインデックス定義情報３０２は、図５（ｃ）の４２１〜４２４で表す項目で構成される。
【００１８】
インデックス定義ＩＤ４２１は、ライブラリに対して定義したインデックス定義情報を一意に識別するためのＩＤ情報（インデックス識別子情報）である。インデックス定義名称４２２は、インデックスの名称（項目名）を示しており、検索やインデックスの閲覧等を行う際に画面上に表示される。タイプ４２３は、各インデックス定義が表すデータ種別を表わしたものであり、本実施例では「テキスト」および「日時」のデータ種別があるものとする。ただし、これ以外の種別を設けることを制限するものではない。
【００１９】
ライブラリＩＤ４２４は、各インデックス定義情報が関連付けられているライブラリを特定するための階層ＩＤであり、図４（ａ）の階層ＩＤ４１１のうちタイプ４１４がライブラリである階層ＩＤのいずれかが指定されている。なお、本実施例では、ライブラリ毎にインデックスが定義されるので、インデックス定義名称４２２が同じであったとしても、関連付けられるライブラリ毎に別の定義情報として登録される。
【００２０】
文書情報３０３は、文書管理サーバ１０１の各ライブラリ内に格納する各文書（ファイル）を特定する「ファイル情報」と、各文書に付与されるインデックス値を特定する「インデックス値情報」とを連携させたものである。文書情報３０３は、文書情報管理部３０６を介して各処理部に提供される。
【００２１】
ファイル情報は、図６（ｄ）の４３１〜４３４で表す項目で構成される。文書ＩＤ４３１は、文書管理サーバの各ライブラリに格納される各文書（各ファイル）を一意に識別するためのＩＤ情報（ファイル識別子情報）である。文書名称４３２は、文書ＩＤ４３１の文書（ファイル）の名称を示す情報である。ファイル４３３は、文書ＩＤ４３１が示すファイルの実体が保存されている。なお、ファイル４３３は、実体そのもののデータではなく、実体が存在する物理的な位置を示すパス情報であっても構わない。ライブラリＩＤ４３４は、文書ＩＤ４３１が示す文書（ファイル）が格納されるライブラリの階層ＩＤ情報である。すなわち、各文書は、図４（ａ）の論理的な階層構造におけるいずれかのライブラリに属することになる。
【００２２】
インデックス値情報は、図６（ｅ）の４４１〜４４３で表す項目で構成される。文書ＩＤ４４１は、各インデックス値が対応づけられている文書を識別するためのＩＤ情報であり、図６（ｄ）の文書ＩＤ４３１のうちのいずれかが指定されている。インデックス定義ＩＤ４４２は、各インデックス値がどのインデックス定義（インデックスの種類（項目名））に対する値であるかを特定するために、図５のインデックス定義ＩＤ４２１のうちのいずれかが指定されている。インデックス値４４３は、各文書に関連付けられたインデックス値を表わす情報である。このインデックス値４４３は、タイプ４２３で定義された各インデックス定義の種類に応じて予め決められた書式（日付等）で記載されるものとしてもよい。
【００２３】
ツリー処理制御部３０７は、クライアントからの処理要求に対して、ツリー情報３０１を使用した情報の提供する機能を持つ。本実施例では、指定されたツリー階層情報の提供や、指定された階層よりも下位の階層に関する一覧情報の提供などを行う。
【００２４】
インデックス処理制御部３０８は、クライアントからの処理要求に対してインデックス定義情報や文書に付与されたインデックス値情報を提供したり、検索処理部３０９で検索を行う際に情報提供したりする。例えば、指定されたライブラリのインデックス定義情報を抽出して提供したりする。
【００２５】
検索処理部３０９は、クライアントからの検索処理要求に対して、検索処理結果の文書情報を提供する機能を持つ。本実施例では、ツリー処理制御部３０７やインデックス処理制御部３０８、文書情報管理部３０６を使用して検索結果文書一覧の提供などを行う。
【００２６】
ネットワーク通信部３１０は、文書管理サーバ１０１のＮＣ２０７であり、ネットワーク１０３と接続される。クライアント１０２からの処理要求は、ネットワークを経て、このネットワーク通信部３１０で受信した後、前述の各処理部に渡される。
【００２７】
＜クライアントの構成＞
図７は、実施例１の文書管理システムにおける、クライアント１０２の各処理部の構成例を示している。クライアント１０２のＣＰＵ２０１がプログラムを実行することにより、クライアント１０２は各処理部５０２、５０４〜５０９として機能する。
【００２８】
なお、検索範囲やインデックス定義範囲に関する情報５０１、５０３は、外部メモリ２１０に保持され、必要なときにクライアント１０２のＲＡＭ２０１にロードして処理に使用される。これらの情報については、ＤＢやファイルなどで管理されていても良く、特に形態は問わない。
【００２９】
検索範囲情報５０１は、クライアント１０２におけるユーザの操作により、検索範囲として設定されたライブラリやサイトの情報を保存するための情報領域である。この検索範囲情報５０１は、図４（ａ）のツリー情報３０１の各階層の情報のうち、ユーザにより選択された階層の情報を格納する。この検索範囲情報５０１は、検索範囲情報管理部５０２を介して各処理部に提供される。
【００３０】
インデックス定義範囲情報５０３は、検索条件を指定する際に使用するインデックス定義（インデックスの種類（項目名））の情報を取得する対象として、クライアント１０２におけるユーザの操作により設定された階層（ライブラリ）を特定するための情報を保存する情報領域である。このインデックス定義範囲情報５０３は、図４（ａ）のツリー情報３０１の各階層の情報のうち、ユーザにより選択された階層の情報を格納する。このインデックス定義範囲情報５０３は、インデックス定義範囲情報管理部５０４を介して各処理部に提供される。
【００３１】
検索処理制御部５０５は、検索処理を行う際のクライアント１０２のメイン画面の制御、及びそのための内部処理を提供する機能を持つ。この検索処理を行う際の検索処理画面６０１は、図８のように、６０２〜６１１の部品で構成される。検索処理画面６０１は、まず、検索条件設定エリア６０２と、検索結果表示エリア６１１とに大きく分かれている。
【００３２】
検索条件設定エリア６０２は、検索範囲６０３、検索範囲選択ボタン６０４、インデックス定義絞込範囲選択ボタン６０５、条件式設定エリア６０６、検索実行ボタン６１０とで構成される。検索範囲６０３は、ユーザにより指定された検索範囲を表示する欄であり、検索実行ボタン６１０が押下されると、その時点で表示されている階層以下が検索対象範囲として確定される。検索範囲選択ボタン６０４がユーザにより押下されると、後述の図９の検索範囲設定画面７０１が表示される。
【００３３】
また、インデックス定義絞込範囲選択ボタン６０５がユーザにより押下されると、後述の図１０のインデックス定義絞込範囲設定画面８０１が表示される。条件式設定エリア６０６は、インデックス定義絞込範囲設定画面で指定された階層以下のライブラリに対して設定されているインデックス定義（インデックスの種類）を用いて、検索の条件を設定するエリアである。
【００３４】
この条件式設定エリア６０６は、インデックス定義リスト６０７、条件値６０８、条件演算子６０９とで構成される。インデックス定義リスト６０７は、インデックス定義絞込範囲設定画面で指定された範囲（インデックス取得範囲）のライブラリに対して設定されているインデックス定義（インデックスの種類）を一覧表示するためのプルダウンリストであり、検索条件に指定する所望のインデックス定義をユーザに選択させるために使用する。
【００３５】
条件値６０８は、検索条件となるインデックス値をユーザに入力させるための入力エリアであり、ユーザは任意の文字列を指定することができる。本実施例において、この条件値６０８は単純な入力エリアとして定義するが、これに限るものではなく、インデックス定義リスト６０７で指定したインデックス定義のタイプに応じて入力フォーマットや入力形態を変化させるように構成してもよい。
【００３６】
条件演算子６０９は、インデックス定義リスト６０７で選択したインデックス定義と、条件値６０８で入力した条件値とを結び付けるための演算子である。例えば、条件演算子６０９は、「等しい（Ｅｑｕａｌ）」、「等しくない（ＮｏｔＥｑｕａｌ）」、「古い（Ｏｌｄｅｒ）」、「新しい（Ｎｅｗｅｒ）」などの選択肢を持つ。なお、条件演算子６０９に表示される選択肢はこれに限るものではなく、インデックス定義のタイプ毎にその表現や内容を変化させるようにしてもよい。
【００３７】
このように、条件式設定エリア６０６（インデックス定義リスト６０７、条件値６０８、条件演算子６０９のそれぞれ）で指定された条件にしたがって検索条件が設定されることになる。
【００３８】
検索実行ボタン６１０が押下されると、前述の検索範囲６０３および条件式設定エリア６０６で指定した範囲／条件に合致する文書の検索処理を行い、検索結果を検索結果表示エリア６１１に表示する。
【００３９】
検索結果表示エリア６１１は、検索条件に合致した文書情報を一覧表示するエリアであり、複数の文書を表示できるようにリスト形式で表示する。なお、本実施例では、検索結果に合致した文書名のみを表示するものとするが、これに限るものではなく、各文書に関連付けられているインデックス値やその他の情報を合わせてリスト内に表示するようにしても構わない。
【００４０】
検索範囲処理制御部５０６は、検索範囲を指定する際のクライアント１０２の画面の制御、及びそのための内部処理を提供する機能を持つ。この検索範囲を指定する際に表示される検索範囲指定画面７０１は、図９のように、７０２〜７０６の部品で構成される。検索範囲指定画面７０１は、ツリー操作エリア７０２と検索範囲確定ボタン７０６とで構成され、ツリー操作エリア７０２に表示されるデータは、文書管理サーバ１０１のツリー情報３０１から提供される。
【００４１】
ツリー操作エリア７０２は、ツリー情報３０１の各階層（サイトおよびライブラリ）を論理的な階層構造として表示するエリアである。ツリー操作エリア７０２に表示される各階層には、下位階層展開ボタン７０３、検索範囲選択チェックボックス７０４、階層名称７０５が表示されている。
【００４２】
下位階層展開ボタン７０３は、ユーザにより押下される毎に、当該押下された階層の下位階層の展開表示／非表示が切り替えられるボタンである。ボタンの表示は、展開表示中が「−」（マイナス）、展開非表示中が「＋」（プラス）であり、ボタン押下ごとに切り替わる。
【００４３】
検索範囲選択チェックボックス７０４は、ユーザにより押下される毎に、当該押下された階層を検索範囲に含める／含めないが切り替えられるチェックボックスである。チェックボックスにチェックが入れられている状態が検索範囲として選択されている状態を表わす。なお、下位階層を有する階層に対してチェックを入れた場合には、当該チェックされた階層の下位階層全てがチェック状態となる。また、チェックを外した場合には、当該チェックが外された階層の下位階層全てのチェックが外れた状態となる。
【００４４】
階層名称７０５には各階層の階層名称４１２の情報が表示され、ユーザが各階層を識別できるようになっている。
【００４５】
検索範囲確定ボタン７０６が押下されると、検索範囲選択チェックボックス７０４がチェックされている階層が検索範囲として確定される。検索範囲として確定された階層の情報は、図８の検索処理画面６０１内の検索範囲６０３に表示される。
【００４６】
インデックス定義絞込処理制御部５０７は、図８のインデックス定義リスト６０７に表示するインデックス定義（インデックスの種類）の取得先を指定する際のクライアント１０２の画面の制御、及びそのための内部処理を提供する機能を持つ。このインデックス定義の取得先となるサイトやライブラリを絞込む際に表示されるインデックス定義絞込範囲設定画面８０１は、図１０のように、８０２〜８０７の部品で構成される。インデックス定義絞込範囲設定画面８０１は、ツリー操作エリア８０２と、選択範囲（ツリー操作エリア８０２で選択中のサイトやライブラリ）に対して定義されているインデックス定義の一覧８０６、インデックス定義絞込範囲確定ボタン８０７とで構成される。ツリー操作エリア８０２およびインデックス定義一覧８０６に表示されるデータは、文書管理サーバ１０１のツリー情報３０１およびインデックス定義情報３０２に基づいて提供される。
【００４７】
ツリー操作エリア８０２に表示される各階層には、下位階層展開ボタン８０３、インデックス定義絞込範囲選択チェックボックス８０４、階層名称８０５が表示される。下位階層展開ボタン８０３および階層名称８０５は、図９で説明した下位階層展開ボタン７０３および階層名称７０５と同様の機能を有する。インデックス定義絞込範囲選択チェックボックス８０４は、検索範囲選択チェックボックス７０４と画面上の表示や動作は同様であるが、更に、所望のチェックボックス８０４が操作された際（すなわち所望の階層が選択または選択解除された際）に、インデックス定義一覧８０６の表示を更新するという機能が加えられている。インデックス定義絞込範囲選択チェックボックス８０４にチェックを入れると、その階層以下のライブラリに対して定義されているインデックス定義情報（インデックスの種類（項目名）の情報）を取得して、インデックス定義一覧８０６に表示する。また、逆にこのインデックス定義絞込範囲選択チェックボックス８０４からチェックを外すと、その階層以下のライブラリに対して定義されているインデックス定義情報をインデックス定義一覧８０６から削除する。
【００４８】
インデックス定義一覧８０６は、ツリー操作エリア８０２で選択中の範囲（選択中のライブラリ）に対して定義されているインデックス定義の名称４２２を一覧表示するエリアである。なお、選択中の範囲（定義絞込範囲として選択中のライブラリ）に対して同名のインデックス定義名称が複数定義されている場合には、当該同名のインデックス定義名称を重複して表示しないように制御する。したがって、ツリー操作エリア８０２でチェックボックスの１つを選択解除した場合でも、他の選択範囲に同名のインデックス定義が存在している場合には、インデックス定義一覧８０６から当該インデックス定義を削除しない。
【００４９】
インデックス定義絞込範囲確定ボタン８０７がユーザにより押下されると、インデックス定義絞込範囲選択チェックボックス８０４でチェックされている階層が、インデックス定義の取得対象となる階層として確定される。確定された階層（選択範囲）に対して定義されているインデックス定義は、前述の検索処理画面６０１のインデックス定義リスト６０７に設定する。
【００５０】
なお、インデックス定義リスト６０７で所望のインデックス定義が一旦選択された後にインデックス定義絞込範囲の変更が為された場合、当該一旦選択されていたインデックス定義がインデックス定義リスト６０７から削除されたとしても、インデックス定義リスト６０７で再度インデックス定義の変更指示が為されるまでの間は、前記一旦選択されていたインデックス定義を選択したままとする。
【００５１】
画面表示部５０８は、クライアントの画面全体を制御する機能を持っており、他の各制御部で行った処理内容の画面への反映、および画面上で為されたユーザの操作内容を通知することを行う。ネットワーク通信部５０９は、クライアント１０２のＮＣ２０７であり、ネットワーク１０３と接続される。なお、各処理部は、ネットワーク通信部５０９を介して文書管理サーバ１０１へ処理要求を行い、処理結果を文書管理サーバから受信する。
【００５２】
＜処理の説明＞
図１１は、クライアント１０２のディスプレイ２０９に表示された検索処理画面６０１を用いて検索処理を行う場合の、クライアント側の処理手順を示したものである。本処理手順の開始時点では、図８の検索処理画面６０１が表示されている状態とする。
【００５３】
ステップＳ９０１において、検索範囲選択ボタン６０４が押下されるのに応じて表示される図９の検索範囲指定画面７０１を用いて、検索対象にするライブラリ（またはサイト）の範囲を設定する。ステップＳ９０１の詳細フローについては、図１２を用いて後述する。なお、検索処理画面起動時の初期状態として、予め決められた範囲（例えば全てのライブラリ）が検索対象範囲として選択されるようにシステムを設定することも可能であり、その場合には本ステップは省略可能である。
【００５４】
ステップＳ９０２において、インデックス定義絞込ボタン６０５が押下されるのに応じて表示される図１０のインデックス定義絞込範囲設定画面８０１を使用して、インデックス定義リスト６０７に一覧表示するインデックス定義の取得対象とするライブラリ範囲の指定を行わせる。ステップＳ９０２の詳細フローについては、図１３を用いて後述する。
【００５５】
ステップＳ９０３において、図８の条件式設定エリア６０６を介して、検索条件の指定をユーザに行わせる。ステップＳ９０３は、クライアント１０２の画面上において、上述したようにインデックス定義リスト６０７、条件値６０８、条件演算子６０９のそれぞれについてユーザに設定させる。
【００５６】
ステップＳ９０１〜Ｓ９０３の処理により検索条件が確定されると、ステップＳ９０４において、文書検索処理を実行する。文書検索処理の詳細フローについては、図１４を用いて後述する。検索処理を行った結果、検索条件に合致した文書を、図８の検索結果表示エリア６１１に表示する。
【００５７】
ステップＳ９０５において、検索結果表示エリア６１１に表示された文書の中からユーザにより選択された少なくともいずれかの文書に対して、ユーザにより指定された任意の処理（例えばダウンロード、削除、インデックス変更など）を実行する。
【００５８】
また、Ｓ９０１〜Ｓ９０３の処理手順は、一回の検索処理を示したものであり、検索条件を変更して再検索を行いたい場合は、それぞれ必要なステップのみで条件を再設定して再検索できるようにしてもよい。
【００５９】
＜検索範囲設定処理＞
ステップＳ９０１の検索範囲設定処理の詳細について、図１２を用いて説明する。図１２は、検索範囲選択ボタン６０４がユーザにより押下されるのに応答して実行される処理フローを表わしたものである。以下で特に記載のない場合には、クライアント１０２の検索範囲処理制御部５０６が実行する処理とする。
【００６０】
ステップＳ１００１において、検索範囲選択ボタン６０４が押下されるのに応じて、検索範囲設定画面７０１を表示する。初期表示状態では、「すべて」が最上位に表示されているのみとなる。
【００６１】
ステップＳ１００２では、検索範囲設定画面７０１において、ユーザからどのような指示操作が為されたか判断する。下位階層展開ボタン７０３が押下されたと判断した場合には、階層の開閉操作に必要な階層情報を文書管理サーバ１０１から取得するために、当該展開指示が為された階層ＩＤ４１１を特定して、ステップＳ１００３に進む。また、検索範囲選択チェックボックス７０４が押下されたと判断した場合には、ステップＳ１００５に進む。また、検索範囲確定ボタン７０６が押下されたと判断した場合には、ＲＡＭ２０２に追加した情報を削除し、設定画面を閉じて本処理を終了する。
【００６２】
ステップＳ１００３における処理は、文書管理サーバ１０１のツリー処理制御部３０７により実行される。ツリー処理制御部３０７は、ツリー情報管理部３０４経由でクライアント１０２から指定された階層ＩＤ４１１に合致する上位ＩＤ４１３を有する階層情報を、ツリー情報３０１の中から取得し、クライアント１０２に送信する。すなわち、クライアントから指定された階層ＩＤの下位階層の情報を取得して送信する。
【００６３】
ステップＳ１００４では、文書管理サーバ１０１から送信されたツリー情報３０１の階層情報を、ツリー操作エリア７０２に表示する。具体的には、ステップＳ１００２で押下された下位階層展開ボタン７０３の行の下に、一階層分右にインデントした形で下位階層の階層情報を挿入する。本処理が終了したら、ステップＳ１００２に戻る。
【００６４】
ステップＳ１００５において、ステップＳ１００２で押下されたと判断された検索範囲選択チェックボックス７０４の対象の階層情報と、クリック後の状態（ＯＮ／ＯＦＦのいずれであるか）を取得し、ＲＡＭ２０２に記憶する。
【００６５】
ステップＳ１００６において、ステップＳ１００５でＲＡＭ２０２に記憶した情報を元に以下の処理を行う。クリック後の状態が「ＯＮ（すなわち、当該階層を検索範囲に含める状態）」である場合には、検索範囲情報設定管理部５０２を使用して、その階層情報を検索範囲情報５０１に保存する。一方、クリック後の状態が「ＯＦＦ（すなわち、当該階層を検索範囲に含めない状態）」である場合には、検索範囲情報設定管理部５０２を使用して、その階層情報を検索範囲情報５０１から削除する。
【００６６】
ステップＳ１００７において、画面上の検索範囲選択チェックボックス７０４の選択状態を、ＯＮの場合は「チェック状態」の表示に更新し、ＯＦＦの場合は「非チェック状態」の表示に更新する。Ｓ１００７の処理が終了したら、ステップＳ１００２に戻る。
【００６７】
＜インデックス定義絞込処理＞
ステップＳ９０２のインデックス定義絞込処理の詳細について、図１３を用いて説明する。図１３は、検索処理画面６０１のインデックス定義絞込範囲選択ボタン６０５がユーザにより押下されるのに応答して実行される処理フローを表わしたものである。以下のステップで特に記載のない場合には、クライアント１０２のインデックス定義絞込処理制御部５０７が実行する処理とする。
【００６８】
ステップＳ１１０１において、インデックス定義絞込範囲選択ボタン６０５が押下されるのに応じて、インデックス定義絞込範囲設定画面８０１を表示する。初期表示状態では、「すべて」が最上位に表示されているのみとなる。
【００６９】
ステップＳ１１０２では、インデックス定義絞込範囲設定画面８０１において、ユーザからどのような指示操作が為されたか判断する。下位階層展開ボタン８０３が押下されたと判断した場合には、階層の開閉操作に必要な階層情報を文書管理サーバ１０１から取得するために、当該展開指示が為された階層ＩＤ４１１を特定して、ステップＳ１１０３に進む。また、インデックス定義絞込範囲選択チェックボックス８０４が押下されたと判断した場合には、ステップＳ１１０５に進む。また、インデックス定義絞込範囲確定ボタン８０７が押下されたと判断した場合には、ステップＳ１１１８に進む。
【００７０】
ステップＳ１１０３における処理は、文書管理サーバ１０１のツリー処理制御部３０７により実行される。ツリー処理制御部３０７は、ツリー情報管理部３０４経由でクライアント１０２で特定された階層ＩＤ４１１に合致する上位ＩＤ４１３を有する階層情報を、ツリー情報３０１の中から取得し、クライアント１０２に送信する。すなわち、クライアントから指定された階層ＩＤの下位階層の情報を取得して送信する。
【００７１】
ステップＳ１１０４では、文書管理サーバ１０１から送信されたツリー情報３０１の階層情報を、ツリー操作エリア８０２に表示する。具体的には、ステップＳ１１０２で押下された下位階層展開ボタン８０３の行の下に、一階層分右にインデントした形で下位階層の階層情報を挿入する。本処理が終了したら、ステップＳ１１０２に戻る。
【００７２】
ステップＳ１１０５において、ステップＳ１００２で押下されたと判断されたインデックス定義絞込範囲選択チェックボックス８０４の対象の階層情報と、クリック後の状態（ＯＮ／ＯＦＦ）を取得し、ＲＡＭ２０２に記憶する。
【００７３】
ステップＳ１１０６において、ＲＡＭ２０２に記憶した階層情報のタイプ４１４がライブラリであるかその他（本実施例では「サイト」）であるかを判断し、それぞれの次の処理に遷移する。タイプ４１４が「ライブラリ」の場合には、ステップＳ１１０９に進み、当該選択された階層情報をＲＡＭ２０２に保存する。一方、タイプ４１４が「ライブラリ以外」の場合には、当該指定された階層以下に存在するライブラリ階層の情報を文書管理サーバ１０１から取得するために、起点となる階層ＩＤ４１１を特定して、ステップＳ１１０７に進む。
【００７４】
ステップＳ１１０７における処理は、文書管理サーバ１０１のツリー処理制御部３０７により実行される。ツリー処理制御部３０７は、ツリー情報管理部３０４経由でクライアント１０２から特定された階層ＩＤ４１１に合致する上位ＩＤ４１３を有する階層情報を、ツリー情報３０１の中から取得し、当該取得した階層情報のタイプ４１４が「ライブラリ」かどうかを確認する。タイプ４１４が「ライブラリ」ではない場合には、取得する全ての階層情報のタイプ４１４が「ライブラリ」になるまで更にその下位の階層情報を取得する処理を繰り返す。そして、下位階層に存在するタイプ４１４が「ライブラリ」である階層情報を全て取得できたらクライアント１０２に送信する。ステップＳ１１０８では、文書管理サーバ１０１から送信された階層情報をＲＡＭ２０２に保存する。
【００７５】
ステップＳ１１１０は、ＲＡＭ２０２に保存した階層情報の数に応じた回数繰り返し処理を行うループ処理の開始端であり、ＲＡＭ２０２に保存されている各階層情報を順に処理対象として、ステップＳ１１１０〜Ｓ１１１６までの処理を実行する。
【００７６】
ステップＳ１１１１では、ＲＡＭ２０２に保存されている未処理の階層情報を１件取得する。
【００７７】
ステップＳ１１１２では、ステップＳ１１０５で取得したインデックス定義絞込範囲選択チェックボックス８０４のクリック後の状態を確認する。ＯＮ状態（選択状態）であればステップＳ１１１３に進み、ＯＦＦ状態（非選択状態）であればステップＳ１１１５に進む。
【００７８】
ステップＳ１１１３における処理は、文書管理サーバ１０１のインデックス処理制御部３０８により実行される。インデックス処理制御部３０８は、インデックス定義情報管理部３０５経由でクライアント１０２から指定された階層ＩＤ４１１に合致するライブラリＩＤ４２４を有するインデックス定義の情報を取得し、クライアント１０２に送信する。ステップＳ１１１４では、文書管理サーバ１０１から送信されたインデックス定義の情報を、インデックス定義範囲情報管理部５０４を使用してインデックス定義範囲情報５０３に保存する。
【００７９】
ステップＳ１１１５では、インデックス定義範囲情報管理部５０４を使用して、インデックス定義範囲情報５０３に保存されているインデックス定義の情報のうち、ステップＳ１１１１で取得した階層情報の階層ＩＤ４１１に合致するライブラリＩＤ４２４を有するインデックス定義の情報を削除する。
【００８０】
ステップＳ１１１６は、Ｓ１１１０のペアとなるループ終了端であり、ステップＳ１１１１で取得した階層情報をＲＡＭ２０２から削除し、未処理の階層情報が残っている場合はステップＳ１１１０に戻る。
【００８１】
ステップＳ１１１７において、インデックス定義絞込範囲設定画面８０１のインデックス定義一覧８０６に、選択中のライブラリに対して定義されているインデックス定義の名称４２２（インデックスの種類）を表示する。ンデックス定義一覧８０６に表示するインデックス定義の名称は、インデックス定義範囲情報５０３に保存されたインデックス定義の情報を全て取得して使用する。その際、同一名称のインデックス定義情報が存在する場合には、重複した名称は表示しないものとする。
【００８２】
ステップＳ１１１８では、インデックス定義一覧８０６に表示しているインデックス定義名称４２２が、検索処理画面６０１のインデックス定義リスト６０７で選択できるようにリストを更新する。
【００８３】
＜文書検索処理＞
ステップＳ９０４の文書検索処理の詳細について、図１４を用いて説明する。図１４は、検索処理画面６０１の検索実行ボタン６１０がユーザにより押下されるのに応じて実行される処理フローである。以下のステップで特に記載のない場合には、クライアント１０２の検索処理制御部５０５が実行する処理とする。
【００８４】
ステップＳ１２０１において、ユーザが入力／設定した検索範囲６０３、ならびに、条件式設定エリア６０６に設定された検索条件の情報を取得する。検索範囲６０３については、検索範囲情報５０１に格納された階層情報を検索範囲情報設定管理部５０２から取得する。取得した検索条件情報については、全てＲＡＭ２０２に保存する。
【００８５】
ステップＳ１２０２において、検索範囲で選択したツリー情報３０１のタイプ４１４がライブラリかその他（本実施例では「サイト」）であるかを判断し、それぞれの次の処理に遷移する。
【００８６】
タイプ４１４が「ライブラリ」の場合には、ステップＳ１２０５に進み、選択された階層情報をＲＡＭ２０２に保存する。
【００８７】
タイプ４１４が「ライブラリ以外」の場合には、指定した階層以下に存在するライブラリ階層の情報を文書管理サーバ１０１から取得するために、起点となる階層ＩＤ４１１を特定して、ステップＳ１２０３に進む。
【００８８】
ステップＳ１２０３における処理は、文書管理サーバ１０１のツリー処理制御部３０７により実行される。ツリー処理制御部３０７は、ツリー情報管理部３０４経由でクライアント１０２から特定された階層ＩＤ４１１に合致する上位ＩＤ４１３を有する階層情報を、ツリー情報３０１から取得し、その階層情報のタイプ４１４が「ライブラリ」かどうかを確認する。タイプ４１４が「ライブラリ」ではない場合には、取得する全ての階層情報のタイプ４１４が「ライブラリ」になるまで更にその下位の階層情報を取得する処理を繰り返す。そして、下位階層に存在するタイプ４１４が「ライブラリ」である階層情報を全て取得できたらクライアント１０２に送信する。ステップＳ１２０４では、文書管理サーバ１０１から送信された階層情報をＲＡＭ２０２に保存する。
【００８９】
ステップＳ１２０６は、ＲＡＭ２０２に保存した階層情報の数に応じた回数繰り返し処理を行うループ処理の開始端であり、ＲＡＭ２０２に保存されている各階層情報を順に処理対象として、ステップＳ１２０６〜Ｓ１２１３までの処理を実行する。
【００９０】
ステップＳ１２０７では、ＲＡＭ２０２に保存されている未処理の階層情報を１件取得する。
【００９１】
ステップＳ１２０８では、Ｓ１２０１でＲＡＭ２０２に保存した検索条件情報を使用して検索条件データを作成し、当該作成した検索条件データとステップＳ１２０７で取得した階層情報とを、文書管理サーバ１０１の検索処理部３０９に対して送信する。送信する検索条件データは、検索条件情報に基づいて、インデックス定義リスト６０７、条件値６０８、条件演算子６０９の値／選択肢を、検索に使用できるＸＭＬ形式のタグ情報に変換することで作成される。作成されるＸＭＬは、以下のような形式となる。
【００９２】
＜Ｑｕｅｒｙ＞
＜Ｆｉｅｌｄ＞｛インデックス定義リスト６０７の選択名称｝＜／Ｆｉｅｌｄ＞
＜Ｖａｌｕｅ  Ｔｙｐｅ＝”ＴＥＸＴ”＞｛条件値６０８の入力値｝＜／Ｖａｌｕｅ＞
＜Ｒｅｌａｔｉｏｎ  Ｔｙｐｅ＝”｛条件演算子６０９の選択演算子｝”＞＜／Ｒｅｌａｔｉｏｎ＞
＜／Ｑｕｅｒｙ＞
ステップＳ１２０９〜ステップＳ１２１１における処理は、文書管理サーバ１０１の検索処理部３０９により実行される。
【００９３】
ステップＳ１２０９では、クライアント１０２から送信された階層情報の階層ＩＤ４１１に合致するライブラリＩＤ４２４を有するインデックス定義の情報を、インデックス定義情報管理部３０５で管理されているインデックス定義情報３０２から取得し、文書管理サーバのＲＡＭ２０２に保存する。
【００９４】
ステップＳ１２１０では、クライアントから指定された検索条件ＸＭＬに合致する内容のインデックス定義情報が、Ｓ１２０９で保存したインデックス定義情報３０２の中に存在するかどうかを確認する。確認内容は、（１）＜Ｆｉｅｌｄ＞タグに記載された名称がインデックス定義情報３０２のインデックス定義名称４２２と合致するか、（２）＜Ｖａｌｕｅ＞タグのＴｙｐｅ属性に記載されたタイプがインデックス定義情報３０２のタイプ４２３と合致するか、の２点とする。
【００９５】
合致するインデックス定義情報３０２が存在する場合には、クライアント１０２から受信した＜Ｆｉｅｌｄ＞タグを以下のように修正し、ステップＳ１２１１へ進む。
【００９６】
＜Ｆｉｅｌｄ  Ｉｄ＝”｛インデックス定義情報３０２のインデックス定義ＩＤ４２１｝”＞｛インデックス定義リスト６０７の選択名称｝＜／Ｆｉｅｌｄ＞
一方、合致するインデックス定義情報３０２が存在しない場合には、ステップＳ１２１２へ進む。
【００９７】
ステップＳ１２１１において、文書情報管理部３０６を使用して検索処理を行う。具体的には、クライアント１０２から受信した階層情報の階層ＩＤのライブラリに属する文書のうち、修正されたＸＭＬの条件に合致するインデックス情報が設定されている文書情報３０３を取得し、クライアント１０２に送信する。
【００９８】
ステップＳ１２１２において、文書管理サーバ１０１の検索処理部３０９から取得した文書情報３０３を全てＲＡＭ２０２に追加保存する。
【００９９】
ステップＳ１２１３は、Ｓ１２０６のペアとなるループ終了端であり、ステップＳ１２０７で取得した階層情報をＲＡＭ２０２から削除し、未処理の階層情報が残っている場合はステップＳ１２０６に戻る。
【０１００】
ステップＳ１２１４では、ＲＡＭ２０２に保存した文書情報３０３を全て取得し、検索結果表示エリア６１１に表示する。本実施例においては、文書名称を表示するように設定しているため、文書情報３０３の中の文書名称４３２が表示される。
【０１０１】
（実施例２）
以下、本発明の実施例２に係るシステムの構成、および処理の流れについて図１５と図１６を用いて説明する。実施例２は、条件指定に使用するインデックスの取得タイミングが実施例１と異なる。実施例１から拡張を行う個所は、実施例１の図１１、図１４についてであり、それ以外の部分については、実施例１と同様であるため記載を省略する。
【０１０２】
＜処理の説明＞
図１５は、実施例２において、検索処理画面６０１を使用して検索処理を行う場合のクライアント側の処理手順を示したものである。本処理手順の開始時点では、検索処理画面６０１が表示されている状態とする。
【０１０３】
図１５のステップＳ１３０１とＳ１３０３〜Ｓ１３０６の各処理は、実施例１の図１１で記載したステップＳ９０１〜ステップＳ９０５の処理と同様であるので、異なるステップＳ１３０２についてのみ説明する。
【０１０４】
ステップＳ１３０２は、ステップＳ１３０１で検索範囲の指定が終了した後に実行される。ステップＳ１３０２では、インデックス定義範囲情報管理部５０４に設定済みのインデックス定義範囲情報５０３（サーバから取得済みのインデックス定義情報）があるか判断して、インデックス定義範囲情報５０３が存在している場合には、当該情報を取得するとともにステップ１３０３をスキップし、ステップＳ１３０４に進む。
【０１０５】
一方、インデックス定義範囲情報５０３が存在しない場合には、実施例１と同様にステップＳ１３０３のインデックス定義範囲の絞込処理を行う。
【０１０６】
＜文書検索処理＞
図１６は、実施例２において、検索処理画面６０１の検索実行ボタン６１０が押下された場合に実行する処理フローを表わしたものである。
【０１０７】
図１６上のステップＳ１４０１〜Ｓ１４１２、Ｓ１４１５、Ｓ１４１６の各処理は、実施例１の図１４で記載したステップＳ１２０１〜ステップＳ１２１４の処理と同様であるので、異なるステップＳ１４１３とステップＳ１４１４についてのみ説明する。
【０１０８】
ステップＳ１４１３は、ステップＳ１４１２でライブラリ単位の検索結果をクライアントのＲＡＭに格納した後に実行される。ステップＳ１４１３の処理は、文書管理サーバ１０１のインデックス処理制御部３０８を用いて実行される。ステップＳ１４１３では、クライアント１０２から処理中の階層ＩＤ４１１を受信し、その階層ＩＤ４１１に合致するライブラリＩＤ４２４を有するインデックス定義情報３０２をインデックス定義情報管理部３０５から取得し、クライアント１０２に送信する。
【０１０９】
ステップＳ１４１４では、処理中のライブラリの階層ＩＤ４１１に合致するライブラリＩＤ４２４を有するインデックス定義範囲情報５０３を、インデックス定義範囲情報管理部５０４を介して検索して一括削除する。そして、Ｓ１４１３で文書管理サーバ１０１から送信されたインデックス定義情報３０２の情報を、インデックス定義範囲情報管理部５０４を使用してインデックス定義範囲情報５０３に保存する。これにより、インデックス定義の絞り込みの範囲が更新される。
【０１１０】
（実施例３）
以下、本発明の実施例３に係るシステムの構成、および処理の流れについて図１７を用いて説明する。実施例３は、条件式に指定したインデックス定義情報で検索結果がヒットしなかった場合、タイプ違いのインデックスが設定されていれば、その内容でも関連があるものとして検索を行う点が、実施例１と異なる点である。実施例１から拡張を行う個所は、実施例１の図１４についてであり、それ以外の部分については、実施例１と同様であるため記載を省略する。
【０１１１】
＜文書検索処理＞
図１７は、実施例３において、検索処理画面６０１の検索実行ボタン６１０が押下された場合に実行する処理フローを表わしたものである。
【０１１２】
図１７上のステップＳ１５０１〜ステップＳ１５１０、ステップ１５１４〜ステップ１５１７の各処理は、実施例１の図１４で記載したステップＳ１２０１〜ステップＳ１２１４の各処理と同様であるので、異なるステップＳ１５１１〜ステップ１５１３についてのみ説明する。
【０１１３】
ステップＳ１５１１の処理は、合致するインデックス定義情報３０２が存在しないとステップＳ１５１０において判断した場合に実行される。
【０１１４】
ステップＳ１５１１では、タイプ違いのインデックス定義情報３０２が存在するかを確認する。具体的には、＜Ｆｉｅｌｄ＞タグは合致しているが＜Ｖａｌｕｅ＞タグのＴｙｐｅ属性が合致していないという状態のインデックス定義情報３０２が存在するかどうかの確認である。この状態のインデックス定義情報３０２が存在すると判断した場合には、ステップＳ１５１２に進み、存在しないと判断した場合には、検索結果がないという状態でステップＳ１５１５に進む。
【０１１５】
ステップＳ１５１２では、タイプ違いのインデックス情報が存在するため、検索用のＸＭＬの以下の２つのタグを変更する。
【０１１６】
＜Ｆｉｅｌｄ  Ｉｄ＝”｛インデックス定義情報３０２のインデックス定義ＩＤ４２１｝”＞｛インデックス定義リスト６０７の選択名称｝＜／Ｆｉｅｌｄ＞
＜Ｖａｌｕｅ  Ｔｙｐｅ＝”｛インデックス定義情報３０２のタイプ４２３｝”＞＜／Ｔｙｐｅ＞
ステップＳ１５１３では、ステップＳ１５１２で変更したタグに基づいて、文書情報管理部３０６を使用して検索処理を行う。具体的には、クライアント１０２から受信した階層ＩＤのライブラリに属する文書のうち、変更したＸＭＬの条件に合致するインデックス情報が設定されている文書情報３０３を検索し、クライアント１０２に送信する。
【０１１７】
（その他の実施例）
本発明は、以下の処理を実行することによっても実現される。その処理は、上述した実施例の機能を実現させるソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005979895.tif 000002
【図２】
0005979895.tif 000003
【図３】
0005979895.tif 000004
【図４】
0005979895.tif 000005
【図５】
0005979895.tif 000006
【図６】
0005979895.tif 000007
【図７】
0005979895.tif 000008
【図８】
0005979895.tif 000009
【図９】
0005979895.tif 000010
【図１０】
0005979895.tif 000011
【図１１】
0005979895.tif 000012
【図１２】
0005979895.tif 000013
【図１３】
0005979895.tif 000014
【図１４】
0005979895.tif 000015
【図１５】
0005979895.tif 000016
【図１６】
0005979895.tif 000017
【図１７】
0005979895.tif 000018