(57)【特許請求の範囲】
【請求項１】
クライアント端末からの検索要求に応じて、データベースに蓄積された文書情報群を検索する情報検索システムにおいて、
前記文書情報群それぞれを検索するための索引情報を保持する手段と、
前記クライアント端末のユーザを認証する手段と、
前記索引情報を参照して、前記検索要求に合致する文書情報の類似度順の並びを示す文書候補一覧を作成する手段と、
前記データベースに蓄積された各文書情報に対応するアクセス権制御情報と前記ユーザの認証結果とに基づいて、判別対象の文書情報が前記ユーザが閲覧可能な文書情報であるか否かを判別するためのアクセス可否判別処理を、前記文書候補一覧に含まれる先頭の文書情報から順次実行する第１のアクセス可否判別手段と、
前記アクセス可否判別処理によって前記ユーザが閲覧可能な文書情報であると判別された文書情報の数が所定数に達した場合、前記閲覧可能な文書情報であると判別された文書情報の一覧を最初の検索結果一覧として前記クライアント端末に提供する手段と、
最後に閲覧可能な文書情報であると判別された文書情報についての前記文書候補一覧上の位置に対応する検索ポインタを記憶する手段と、
前記ユーザによって次の検索結果一覧の表示が要求された場合、前記記憶されている検索ポインタに基づいて、前記文書候補一覧に含まれる前記最後に閲覧可能な文書情報であると判別された文書情報の次の文書情報から順次前記アクセス可否判別処理を実行する第２のアクセス可否判別手段とを具備することを特徴とする情報検索システム。
【請求項２】
前記アクセス権制御情報は前記データベース内に保持されており、
前記第１および第２の各アクセス可否判別手段は、
前記データベースが、前記データベース全体に対してアクセス権を管理しているデータベース、および前記データベースに蓄積されている文書情報毎にアクセス権を管理しているデータベースのいずれであるかを判別する手段と、
前記データベースが前記文書情報毎にアクセス権を管理しているデータベースである場合、前記文書候補一覧に含まれる文書情報毎に前記ユーザが閲覧可能であるかどうかを前記データベースに問い合わせる手段と、
前記データベースがそのデータベース全体に対してアクセス権を管理しているデータベースである場合、前記ユーザが前記データベースを閲覧可能かどうかを前記データベースに問い合わせることにより、前記文書候補一覧に含まれる個々の文書情報毎に前記ユーザが閲覧可能であるかどうかを前記データベースに問い合わせる処理を省略する手段とを含むことを特徴とする請求項１記載の情報検索システム。
【請求項３】
コンピュータネットワークを介してクライアント端末から送信される検索要求に応じて、前記コンピュータネットワーク上に分散している複数のデータベースにそれぞれ蓄積されている文書情報群を検索する情報検索システムにおいて、
前記複数のデータベースにそれぞれ蓄積されている文書情報群を検索するための索引情報を保持する手段と、
前記クライアント端末のユーザを認証する手段と、
前記索引情報を参照して、前記検索要求に合致する文書情報の類似度順の並びを示す文書候補一覧を作成する手段と、
前記複数のデータベースにそれぞれ蓄積された文書情報群それぞれに対応するアクセス権制御情報と前記ユーザの認証結果とに基づいて、判別対象の文書情報が前記ユーザが閲覧可能な文書情報であるか否かを判別するアクセス可否判別処理を、前記文書候補一覧に含まれる先頭の文書情報から順次実行する第１のアクセス可否判別手段であって、前記複数のデータベースそれぞれのアクセス権制御情報に関する属性情報に基づいて、判別対象の文書情報毎に前記ユーザが閲覧可能であるかどうかを該当するデータベースに問い合わせる第１の処理と、判別対象の文書情報毎の問い合わせを省略するために、前記ユーザがデータベースを閲覧可能かどうかを該当するデータベースに問い合わせる第２の処理とを、選択的に実行する第１のアクセス可否判別手段と、
前記アクセス可否判別処理によって前記ユーザが閲覧可能な文書情報であると判別された文書情報の数が所定数に達した場合、前記閲覧可能な文書情報であると判別された文書情報の一覧を最初の検索結果一覧として前記クライアント端末に提供する手段と、
最後に閲覧可能な文書情報であると判別された文書情報についての前記文書候補一覧上の位置に対応する検索ポインタを記憶する手段と、
前記ユーザによって次の検索結果一覧の表示が要求された場合、前記記憶されている検索ポインタに基づいて、前記第１の処理と前記第２の処理とを選択的に実行する前記アクセス可否判別処理を、前記文書候補一覧に含まれる前記最後に閲覧可能な文書情報であると判別された文書情報の次の文書情報から順次実行する第２のアクセス可否判別手段とを具備することを特徴とする情報検索システム。
【請求項４】
クライアント端末からの検索要求に応じて、データベースに蓄積された文書情報群を検索する情報検索方法において、
前記クライアント端末のユーザを認証するステップと、
前記文書情報群それぞれを検索するための索引情報を参照して、前記検索要求に合致する文書情報の類似度順の並びを示す文書候補一覧を作成するステップと、
前記データベースに蓄積された各文書情報に対応するアクセス権制御情報と前記ユーザの認証結果とに基づいて、判別対象の文書情報が前記ユーザが閲覧可能な文書情報であるか否かを判別するためのアクセス可否判別処理を、前記文書候補一覧に含まれる先頭の文書情報から順次実行する第１のアクセス可否判別ステップと、
前記アクセス可否判別処理によって前記ユーザが閲覧可能な文書情報であると判別された文書情報の数が所定数に達した場合、前記閲覧可能な文書情報であると判別された文書情報の一覧を最初の検索結果一覧として前記クライアント端末に提供するステップと、
最後に閲覧可能な文書情報であると判別された文書情報についての前記文書候補一覧上の位置に対応する検索ポインタを記憶するステップと、
前記ユーザによって次の検索結果一覧の表示が要求された場合、前記記憶されている検索ポインタに基づいて、前記アクセス可否判別処理を前記文書候補一覧に含まれる前記最後に閲覧可能な文書情報であると判別された文書情報の次の文書情報から順次実行する第２のアクセス可否判別ステップとを具備することを特徴とする情報検索方法。
【請求項５】
前記アクセス権制御情報は前記データベース内に保持されており、
前記第１および第２の各アクセス可否判別ステップは、
前記データベースが、前記データベース全体に対してアクセス権を管理しているデータベース、および前記データベースに蓄積されている文書情報毎にアクセス権を管理しているデータベースのいずれであるかを判別するステップと、
前記データベースが前記文書情報毎にアクセス権を管理しているデータベースである場合、前記文書候補一覧に含まれる文書情報毎に前記ユーザが閲覧可能であるかどうかを前記データベースに問い合わせるステップと、
前記データベースがそのデータベース全体に対してアクセス権を管理しているデータベースである場合、前記ユーザが前記データベースを閲覧可能かどうかを前記データベースに問い合わせることにより、前記文書候補一覧に含まれる個々の文書情報毎に前記ユーザが閲覧可能であるかどうかを前記データベースに問い合わせる処理を省略するステップとを含むことを特徴とする請求項４記載の情報検索方法。
【請求項６】
コンピュータネットワークを介してクライアント端末から送信される検索要求に応じて、前記コンピュータネットワーク上に分散している複数のデータベースにそれぞれ蓄積されている文書情報群を検索する情報検索方法において、
前記クライアント端末のユーザを認証するステップと、
前記複数のデータベースにそれぞれ蓄積されている文書情報群を検索するための索引情報を参照して、前記検索要求に合致する文書情報の類似度順の並びを示す文書候補一覧を作成するステップと、
前記複数のデータベースにそれぞれ蓄積された文書情報群それぞれに対応するアクセス権制御情報と前記ユーザの認証結果とに基づいて、判別対象の文書情報が前記ユーザが閲覧可能な文書情報であるか否かを判別するアクセス可否判別処理を前記文書候補一覧に含まれる先頭の文書情報から順次実行する第１のアクセス可否判別ステップであって、前記複数のデータベースそれぞれのアクセス権制御情報に関する属性情報に基づいて、判別対象の文書情報毎に前記ユーザが閲覧可能であるかどうかを該当するデータベースに問い合わせる第１の処理と、判別対象の文書情報毎の問い合わせを省略するために、前記ユーザがデータベースを閲覧可能かどうかを該当するデータベースに問い合わせる第２の処理とを、選択的に実行する第１のアクセス可否判別ステップと、
前記アクセス可否判別処理によって前記ユーザが閲覧可能な文書情報であると判別された文書情報の数が所定数に達した場合、前記閲覧可能な文書情報であると判別された文書情報の一覧を最初の検索結果一覧として前記クライアント端末に提供するステップと、
最後に閲覧可能な文書情報であると判別された文書情報についての前記文書候補一覧上の位置に対応する検索ポインタを記憶するステップと、
前記ユーザによって次の検索結果一覧の表示が要求された場合、前記記憶されている検索ポインタに基づいて、前記第１の処理と前記第２の処理とを選択的に実行する前記アクセス可否判別処理を、前記文書候補一覧に含まれる前記最後に閲覧可能な文書情報であると判別された文書情報の次の文書情報から順次実行する第２のアクセス可否判別ステップとを具備することを特徴とする情報検索方法。
【請求項７】
クライアント端末から送信される検索要求に応じてデータベースに蓄積された文書情報群を検索する処理をコンピュータに実行させるプログラムであって、
前記クライアント端末のユーザを認証する手順と、
前記コンピュータ内に保持されている、前記文書情報群それぞれを検索するための索引情報を参照して、前記検索要求に合致する文書情報の類似度順の並びを示す文書候補一覧を作成いる処理を実行する手順と、
前記データベースに蓄積された各文書情報に対応するアクセス権制御情報と前記ユーザの認証結果とに基づいて、判別対象の文書情報が前記ユーザが閲覧可能な文書情報であるか否かを判別するためのアクセス可否判別処理を前記文書候補一覧に含まれる先頭の文書情報から順次実行する手順と、
前記アクセス可否判別処理によって前記ユーザが閲覧可能な文書情報であると判別された文書情報の数が所定数に達した場合、前記閲覧可能な文書情報であると判別された文書情報の一覧を最初の検索結果一覧として前記クライアント端末に提供する手順と、
最後に閲覧可能な文書情報であると判別された文書情報についての前記文書候補一覧上の位置に対応する検索ポインタを記憶する手順と、
前記ユーザによって次の検索結果一覧の表示が要求された場合、前記記憶されている検索ポインタに基づいて、前記アクセス可否判別処理を前記文書候補一覧に含まれる前記最後に閲覧可能な文書情報であると判別された文書情報の次の文書情報から順次実行する手順とを前記コンピュータに実行させるように構成されたことを特徴とするプログラム。
【請求項８】
コンピュータネットワークを介してクライアント端末から送信される検索要求に応じて、前記コンピュータネットワーク上に分散している複数のデータベースにそれぞれ蓄積されている文書情報群を検索する処理をコンピュータに実行させるプログラムであって、
前記クライアント端末のユーザを認証する手順と、
前記複数のデータベースにそれぞれ蓄積されている文書情報群を検索するための索引情報を参照して、前記検索要求に合致する文書情報の類似度順の並びを示す文書候補一覧を作成する手順と、
前記複数のデータベースにそれぞれ蓄積された文書情報群それぞれに対応するアクセス権制御情報と前記ユーザの認証結果とに基づいて、判別対象の文書情報が前記ユーザが閲覧可能な文書情報であるか否かを判別するアクセス可否判別処理を前記文書候補一覧に含まれる先頭の文書情報から順次実行するアクセス可否判別手順であって、前記複数のデータベースそれぞれのアクセス権制御情報に関する属性情報に基づいて、判別対象の文書情報毎に前記ユーザが閲覧可能であるかどうかを該当するデータベースに問い合わせる第１の処理と、判別対象の文書情報毎の問い合わせを省略するために、前記ユーザがデータベースを閲覧可能かどうかを該当するデータベースに問い合わせる第２の処理とを、選択的に実行するアクセス可否判別手順と、
前記アクセス可否判別処理によって前記ユーザが閲覧可能な文書情報であると判別された文書情報の数が所定数に達した場合、前記閲覧可能な文書情報であると判別された文書情報の一覧を最初の検索結果一覧として前記クライアント端末に提供する手順と、
最後に閲覧可能な文書情報であると判別された文書情報についての前記文書候補一覧上の位置に対応する検索ポインタを記憶する手順と、
前記ユーザによって次の検索結果一覧の表示が要求された場合、前記記憶されている検索ポインタに基づいて、前記第１の処理と前記第２の処理とを選択的に実行する前記アクセス可否判別処理を、前記文書候補一覧に含まれる前記最後に閲覧可能な文書情報であると判別された文書情報の次の文書情報から順次実行する手順とを前記コンピュータに実行させるように構成されたことを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はクライアント端末からの検索要求に応じて、データベースに蓄積された文書情報群を検索する情報検索システム、情報検索方法およびプログラムに関する。
【０００２】
【従来の技術】
近年、コンピュータネットワーク上に分散された複数のデータベースそれぞれに蓄積されている種々の情報を横断的に検索したいというニーズが高まっている。
【０００３】
この場合、複数のデータベースをいかに高速に検索できるようにするかが重要となる。そのため、最近では、実際のデータを保存するデータベースとは別に検索用インデックスを検索用サーバ内に索引情報として用意し、その索引情報を用いて検索要求に合致する文書情報の一覧を、検索用サーバから要求元のユーザに検索結果一覧として呈示するというアプローチが一般的になってきている。
【０００４】
索引情報を用いることにより、ネットワークを介して個々のデータベースに問い合わせを行なうことなく、検索結果一覧をユーザに即座に呈示することが可能となる。
【０００５】
また、各地域に分散して存在しているデータベースを高速に検索するための技術としては、例えば、分散型の多次元データベース群から高速にデータを参照するための分散型データベースアクセスシステムも知られている（例えば、特許文献１参照。）。
【０００６】
【特許文献１】
特開２００２−１０８８９９号公報（第４−６頁、図１）
【０００７】
【発明が解決しようとする課題】
ところで、最近では、セキュリティの向上を図るために、データベースそれぞれにアクセス権を設定し、データベースや文書情報毎にそれを閲覧可能なユーザを制限するというアクセス権制御が導入され始めている。
【０００８】
この場合、検索結果一覧を要求元のユーザに呈示する従来の検索システムにおいては、各データベースのアクセス権制御情報を何等考慮せずに検索結果一覧を作成しているので、ユーザがデータベースをアクセスしても実際には閲覧する事が出来ない文書情報等が、検索結果としてユーザに呈示されてしまうという問題が生じる。
【０００９】
これに対する解決手段としては、
１）検索用インデックスにアクセス制御情報を持たせる
２）個々のデータベースにアクセス可否を問い合わせる
という方法が考えられる。
【００１０】
このうち、１）の方法は、検索用インデックスを管理する情報が膨大になることと、データベース内のアクセス権に対する情報が変更されるたびに、検索用インデックスを含む全データの更新が必要となる場合があり、管理上の効率が悪くなる。
【００１１】
２）の方法では、データベースへのアクセス可否の問い合わせのために、検索結果一覧の作成に要する時間が増大するという問題がある。特に、例えば「検索要求に合致する最初の１０件」を示す検索結果一覧をまずユーザに呈示し、ユーザによって次の検索結果一覧が要求された時に「検索要求に合致する次の１０件」を示す検索結果一覧をユーザに呈示するようなシステムにおいては、「検索要求に合致する次の１０件」の検索に要する時間が大幅に増大する危険がある。
【００１２】
すなわち、このようなシステムにおいては、通常、検索要求に合致する文書を類似度順に並べた文書候補一覧の中から、ユーザに呈示すべき検索結果一覧が作成される。この場合、通常は、文書候補一覧の中の何件目までの文書をユーザに呈示したかだけを管理しておけば良く、これにより「検索要求に合致する次の１０件」として呈示すべき先頭文書が文書候補一覧の中の何件目の文書であるかを判別することができる。
【００１３】
しかし、データベースに対するアクセス権を考慮すると、文書候補一覧の中にはユーザに検索結果候補として呈示するこが出来ない文書も含まれることになるので、ユーザに最初に呈示した１０件目の文書が、文書候補一覧の中の１０件目の文書であるとは限らなくなる。
【００１４】
よって、「検索要求に合致する次の１０件」に対応する検索結果一覧を作成する場合においても、文書候補一覧の中の先頭文書から順次アクセス権の確認を行わなければならない。これは、文書候補一覧の中の先頭からユーザが閲覧可能な２０件分の文書を選定し、そしてその２０件分の文書の中の１１件目から２０件目まで文書を抽出するという処理が必要となるためである。
【００１５】
このように、データベースに対するアクセス権を考慮した検索を行なう場合には、従来の方式では検索速度が大幅に低下するという問題が生じる。
【００１６】
本発明は上述の事情を考慮してなされたものであり、データベースのアクセス権を考慮した検索を、効率よく実行することが可能な情報検索システム、情報検索方法およびプログラムを提供することを目的とする。
【００１７】
【課題を解決するための手段】
上述の課題を解決するため、本発明は、クライアント端末からの検索要求に応じて、データベースに蓄積された文書情報群を検索する情報検索システムにおいて、前記文書情報群それぞれを検索するための索引情報を保持する手段と、前記クライアント端末のユーザを認証する手段と、前記索引情報を参照して、前記検索要求に合致する文書情報の類似度順の並びを示す文書候補一覧を作成する手段と、前記データベースに蓄積された各文書情報に対応するアクセス権制御情報と前記ユーザの認証結果とに基づいて、判別対象の文書情報が前記ユーザが閲覧可能な文書情報であるか否かを判別するためのアクセス可否判別処理を、前記文書候補一覧に含まれる先頭の文書情報から順次実行する第１のアクセス可否判別手段と、前記アクセス可否判別処理によって前記ユーザが閲覧可能な文書情報であると判別された文書情報の数が所定数に達した場合、前記閲覧可能な文書情報であると判別された文書情報の一覧を最初の検索結果一覧として前記クライアント端末に提供する手段と、最後に閲覧可能な文書情報であると判別された文書情報についての前記文書候補一覧上の位置に対応する検索ポインタを記憶する手段と、前記ユーザによって次の検索結果一覧の表示が要求された場合、前記記憶されている検索ポインタに基づいて、前記文書候補一覧に含まれる前記最後に閲覧可能な文書情報であると判別された文書情報の次の文書情報から順次前記アクセス可否判別処理を実行する第２のアクセス可否判別手段とを具備することを特徴とする。
【００１８】
この情報検索システムにおいては、アクセス権を考慮した検索を行なうために、判別対象の文書情報がユーザが閲覧可能な文書情報であるか否かを判別するためのアクセス可否判別処理を実行するアクセス可否判別手段が設けられている。最初の検索結果候補一覧の呈示の際には、ユーザが閲覧可能な文書情報であると判別された文書情報の数が所定数に達するまで、アクセス可否判別処理が文書候補一覧に含まれる先頭の文書情報から順次実行される。これにより、閲覧可能な文書情報であると判別された文書情報のみを検索結果一覧としてユーザに呈示する事が可能となる。さらに、最後に閲覧可能な文書情報であると判別された文書情報についての文書候補一覧上の位置に対応する検索ポインタが記憶され、次の検索結果一覧の表示が要求された場合には、記憶されている検索ポインタに基づいて、文書候補一覧に含まれる前記最後に閲覧可能な文書情報であると判別された文書情報の次の文書情報から順次アクセス可否判別処理が実行される。このように、ユーザに何件目までの文書情報を呈示したかを示す値ではなく、最後に閲覧可能な文書情報であると判別された文書情報についての文書候補一覧上の位置に対応する値を検索ポインタとして保持するという仕組みを利用することにより、既にアクセス可否の判定を行った文書についてはアクセス可否判定処理を省略することが可能となり、データベースのアクセス権を考慮した検索を、効率よく実行することができる。
【００１９】
また、前記第１および第２の各アクセス可否判別手段は、前記データベースが、前記データベース全体に対してアクセス権を管理しているデータベース、および前記データベースに蓄積されている文書情報毎にアクセス権を管理しているデータベースのいずれであるかを判別する手段と、前記データベースが前記文書情報毎にアクセス権を管理しているデータベースである場合、前記文書候補一覧に含まれる文書情報毎に前記ユーザが閲覧可能であるかどうかを前記データベースに問い合わせる手段と、前記データベースがそのデータベース全体に対してアクセス権を管理しているデータベースである場合、前記ユーザが前記データベースを閲覧可能かどうかを前記データベースに問い合わせることにより、前記文書候補一覧に含まれる個々の文書情報毎に前記ユーザが閲覧可能であるかどうかを前記データベースに問い合わせる処理を省略する手段とによって構成されている。
【００２０】
これにより、データベースのアクセス権制御に関する属性に合ったアクセス可否判定処理を行なうことが可能となり、アクセス可否判定処理に要する時間を短縮することが可能となる。特に、複数のデータベースを横断的に検索するシステムにおいては、個々のデータベースの属性に合ったアクセス可否判定処理を行なうことが出来るので、データベースへの問い合わせを伴うアクセス可否判定処理の効率化を図ることが出来る。
【００２１】
【発明の実施の形態】
以下、図面を参照して本発明の実施形態を説明する。
図１には、本発明の一実施形態に係る情報検索システム１１の構成が示されている。情報検索システム１１は、インターネット／イントラネット等のコンピュータネットワーク上に分散して存在する複数のデータベースそれぞれに蓄積された文書情報群を横断的に検索するための検索装置である。この情報検索システム１１はコンピュータネットワークに接続されたコンピュータから構成されており、そのコンピュータネットワーク上のクライアント端末１８に情報検索サービスを提供する検索用サーバコンピュータとして利用される。
【００２２】
ここでは、コンピュータネットワーク上に分散して存在する、互いに種類の異なる複数のデータベースサーバ２１〜２３にそれぞれ蓄積された情報を検索する場合を想定する。これらデータベースサーバ２１〜２３の各々は、例えばファイルサーバ、リレーショナルデータベース（ＲＤＢ）サーバ、電子ファイリングサーバ等から構成されている。データベースサーバ２１〜２３は、それぞれ各種文書情報をデータベース３１〜３３として蓄積および管理している。ファイルサーバや電子ファイリングサーバにおいては、文書情報はディレクトリ構造で管理されるが、この様な管理構造も本例ではデータベースと称することとする。
【００２３】
データベースサーバ２１〜２３の各々は、それが保有するデータベース毎にアクセス権制御情報を管理することができる。アクセス権制御情報は、データベース単位またはそのデータベースに保持されている文書情報単位でそれを閲覧可能なユーザを制限するための情報である。アクセス権が設定されたデータベースには、そのデータベースに対応するアクセス権制御情報が保持される。
【００２４】
クライアント端末１８は例えば通常のパーソナルコンピュータ等から構成されており、ユーザ１９による操作に応じて、ＷＥＢブラウザ等を介して情報検索システム１１に検索要求を送信する。
【００２５】
情報検索システム１１は、コンピュータネットワークを介してクライアント端末１８から送信される検索要求に応じて、データベースサーバ２１〜２３それぞれのデータベース３１〜３３に蓄積された文書情報群を検索する。この情報検索システム１１は、図示のように、索引情報記憶部１２、索引情報管理部１３、検索部１４、ユーザ認証部１５、ユーザ情報記憶部１６、およびアクセス制御情報確認部１７を備えている。
【００２６】
索引情報記憶部１２には、検索対象のデータベース３１〜３３それぞれに蓄積された文書情報群を高速に検索するための索引情報（検索用インデックス）が記憶されている。すなわち、索引情報記憶部１２には、図示のように、インデックス記憶部１２１〜１２３が設けられており、これらインデックス記憶部１２１〜１２３にはデータベース３１〜３３それぞれに対応する検索用インデックスが記憶されている。検索用インデックスは各文書情報からそれぞれ作成されるものであり、形態素解析等によって得られた全文検索／自然語検索のために必要な単語要素等の情報を文書情報毎に示す。また、この検索用インデックスには、各文書情報が記憶されているデータベースの所在を示すＵＲＬや、各文書情報のテキスト文なども含まれている。
【００２７】
さらに、索引情報記憶部１２においては、インデックス記憶部１２１〜１２３にそれぞれ対応して、データベース属性情報記憶部１３１〜１３３が設けられている。これらデータベース属性情報記憶部１３１〜１３３は、対応するデータベースそれぞれのアクセス権制御情報に関する属性情報が記憶されている。この属性情報は、どのデータベースがどのようなアクセス権の管理を行っているものであるかを判別するために用いられる。
【００２８】
索引情報管理部１３は索引情報記憶部１２に記憶された検索用インデックスを管理する。検索部１４は、索引情報記憶部１２に記憶された検索用インデックスを索引情報管理部１３を通じて参照することにより、検索要求に合致する文書情報候補を検索する処理を実行する。この検索処理はアクセス権を考慮して実行され、検索要求を送信したクライアント端末１８のユーザ１９が閲覧可能な文書情報のみが検索結果候補としてユーザ１９に呈示される。
【００２９】
この検索部１４には、次検索ポインタを記憶するための次検索ポインタ記憶部１４１が設けられている。次検索ポインタはアクセス権を考慮した検索を効率よく実行するために用いられるポインタであり、同一のユーザが同一検索式で検索結果一覧の次候補を要求した際に、既にアクセス可否確認済みの最後の文書の次の文書からアクセス可否の確認を開始するために用いられる。この次検索ポインタの詳細は、図４以降で説明する。
【００３０】
ユーザ認証部１５は、情報検索システム１１に予め登録されたログオン可能なユーザそれぞれのユーザ名、パスワード等を示すユーザ情報１６を参照して、情報検索システム１１に検索要求を送信する各クライアント端末のユーザを認証する。この認証処理は、例えば、クライアント端末１９が情報検索システム１１にログオンする時などに実行される。
【００３１】
アクセス制御情報確認部１７は、データベース３１〜３３に蓄積された各文書情報に対応するアクセス権制御情報とユーザ認証部１５による認証結果とに基づいて、判別対象の文書情報がユーザ１９が閲覧可能な文書情報であるか否かを判別するためのアクセス可否判別処理を実行する。アクセス権制御情報はデータベース内に保持されているので、アクセス可否判別処理では、該当するデータベースに対するアクセスの可否の問い合わせが行われる。
【００３２】
次に、図２を参照して、情報検索システム１１によって実行される検索処理の概要について説明する。
【００３３】
情報検索システム１１、クライアント端末１８、データベースサーバ２１〜２３はそれぞれコンピュータネットワーク１００に接続されている。まず、クライアント端末１８が情報検索システム１１にログインし、そしてクライアント端末１８から情報検索システム１１に検索要求が送信される。情報検索システム１１は、検索用インデックスを参照して、検索要求で指定された条件に合致する文書情報の類似度（スコア）順の並びを示す文書候補一覧を作成する。
【００３４】
文書候補一覧は、データベース３１〜３３それぞれに対応する検索用インデックスを用いて、データベース別に所定数の類似文書を個々に選択し、それら選定された文書群の集合をスコア順にソートすることによって得られる。そして、そのソートされた文書列つまり文書候補一覧の先頭文書から順に、クライアント端末１８のユーザ１９が閲覧可能であるかどうかを当該文書を記憶しているデーベースサーバに問い合わせる。この問い合わせにより、アクセス可否の判定が行われる。
【００３５】
候補文書を１０件単位で検索結果一覧としてクライアント端末１８に呈示する場合には、ユーザ１９が閲覧可能である文書が１０件になるまで、上記問い合わせによるアクセス可否の判定が順次実行される。ユーザ１９が閲覧可能である文書が１０件に達すると、それら文書の一覧を示す検索結果一覧が情報検索システム１１からクライアント端末１８に提供される。この際、情報検索システム１１内では、最後に閲覧可能であると判別された文書が文書候補一覧上の何番目に対応する文書であったかを示すための次検索ポインタが記憶される。
【００３６】
もしユーザ１９が次の１０件の表示を要求した場合には、情報検索システム１１は、次の１０件分の検索結果一覧を生成するために、次検索ポインタに基づいて、最後に閲覧可能であると判別された文書の次の文書から順に、上記問い合わせによるアクセス可否の判定を順次実行する。
【００３７】
図３には、情報検索システム１１からクライアント端末１８に提供される検索画面の一例が示されている。この検索画面には、図示のように、質問文およびキーワードをそれぞれ入力するための質問文入力フィールド２０１およびキーワード入力フィールド２０２と、検索要求を送信するための「検索」ボタン２０３が定義されている。さらに、検索画面には、次の検索結果一覧の表示を要求するための「次の一覧」ボタン２０４が用意されている。文書を１０件ずつ表示するシステムの場合、「次の一覧」ボタン２０４が押されると、クライアント端末１８のユーザ１９が閲覧可能な１１件目から２０件目までの文書の一覧を示す検索結果一覧が検索画面上に図示のように表示される。
【００３８】
検索結果一覧は、検索要求で指定された条件に合致する文書それぞれのタイトルや、その文書内の一部のテキスト等を示す。タイトルには、当該文書が実際に存在するデータベースへのリンク情報が埋め込まれている。ユーザがタイトルをクリックすると、クライアント端末１８から当該文書を記憶するデータベースを管理しているデータベースサーバに対して、当該文書の取得要求が送信される。これにより、ユーザは実際の文書情報を閲覧することが出来る。
【００３９】
次に、図４を参照して、次検索ポインタについて説明する。
【００４０】
図４に示されているように、次検索ポインタの初期値は“１”であり、最初の１０件を表示する際には、ソートされた文書列（文書候補一覧）の中の先頭から順次アクセス可否の判定が行われる。ここでは、先頭から２件目、６件目、９件目の文書についてはユーザがアクセス権を持たない場合を想定している。
【００４１】
この場合、先頭から１３件目の文書の閲覧が可能であることが判定された時点で、１０件分の文書が揃う。記憶される次検索ポインタの値は、最後に閲覧が可能であることが判定された文書の位置（＝１３）＋１となる。次の１０件が要求された場合には、次検索ポインタで示される１４件目の文書から順に、アクセス権の可否の判定が行われる。例えば、１６件目、および２２件目の文書についてはユーザがアクセス権を持っておらず、２５件目の文書の閲覧が可能であることが判定された時点で、ユーザが閲覧可能な１０件分の文書が揃ったならば、今度は、記憶される次検索ポインタの値は、最後に閲覧が可能であることが判定された文書の位置（＝２５）＋１となる。
【００４２】
このように、ユーザに何件目までの文書情報を呈示したかを示す値ではなく、最後に閲覧可能な文書情報であると判別された文書情報についての文書候補一覧上の位置に対応する値を次検索ポインタとして保持するという仕組みを利用することにより、既にアクセス可否の判定を行った文書についてはアクセス可否の判定を省略することが可能となり、データベースのアクセス権を考慮した検索を、効率よく実行することが可能となる。
【００４３】
次に、図５および図６を参照して、情報検索システム１１によって実行される検索処理について説明する。
【００４４】
図５は情報検索システム１１によるデータの生成過程を模式的に示しており、また図６は検索処理の手順を示している。以下では、２０件単位でクライアント端末１８に検索結果一覧を呈示する場合を想定する。
【００４５】
情報検索システム１１の検索部１４１は、クライアント端末１８から送信される検索要求に対応する検索式を用いてインデックス記憶部１２１〜１２３それぞれに記憶された検索用インデックスを検索することにより、クライアント端末１８から送信される検索要求で指定された条件に合致する文書を選択する（ステップＳ１０１）。この場合、各データベース毎に、検索要求に合致する例えば上位２００件分の文書が選択される。一定のスコア以上の文書が２００件分存在しないデータベースについては、一定のスコア以上の文書のみが選択される。
【００４６】
次に、検索部１４１は、データベース別に個々に検索された２００件の文書をマージし、それをスコア順にソートすることによって、文書候補一覧を作成する（ステップＳ１０２）。検索部１４１は、次検索ポインタ記憶部１４１から次検索ポインタを取得し（ステップＳ１０３）、そしてアクセス制御情報確認部１７を用いて、次検索ポインタで指定される文書候補一覧中の文書から順にアクセス可否の判定を行なう（ステップＳ１０４）。次検索ポインタの初期値は１であるので、先頭の文書から順に、アクセス可否判定のための問い合わせがアクセス制御情報確認部１７によって実行される。
【００４７】
アクセス可否判定の結果、ユーザ１９が閲覧可能であると判定された文書については、検索部１４１は、当該文書をユーザに返却すべき文書として確保する（ステップＳ１０５）。検索部１４１は、一つの文書のアクセス可否判定が終了する度に、次検索ポインタの値を＋１更新する（ステップＳ１０６）。
【００４８】
この後、検索部１４１は、返却すべき文書として確保された文書数が２０件に達したかどうかを判別する（ステップＳ１０７）。達していなければ（ステップＳ１０７のＮＯ）、検索部１４１は、ステップＳ１０４の処理に戻り、アクセス制御情報確認部１７を用いて、次検索ポインタの値で指定される文書候補一覧中の文書を対象に、アクセス可否判定を行なう。このようにして、返却すべき文書として確保された文書数が２０件に達するまで、次検索ポインタの値を更新しながら、その次検索ポインタの値で指定される文書に対するアクセス可否の判定が順次実行される。
【００４９】
返却すべき文書として確保された文書数が２０件に達したならば（ステップＳ１０７のＹＥＳ）、検索部１４１は、現在の次検索ポインタの値を次検索ポインタ記憶部１４１に保存する（ステップＳ１０８）。現在の次検索ポインタの値は、最後に閲覧可能な文書情報であると判別された文書情報についての文書候補一覧上の位置＋１を示す。
【００５０】
そして、検索部１４１は、返却すべき文書として確保された文書の一覧、つまりユーザ１９が閲覧可能であると判別された文書の一覧を検索結果一覧としてクライアント端末１８に返却する（ステップＳ１０９）。このようにして、クライアント端末１８のユーザ１９が閲覧可能な文書のみが検索結果一覧としてクライアント端末１８に提供される。
【００５１】
この後、ユーザ１９によって次の検索結果一覧の表示が要求されたならば（ステップＳ１１０のＹＥＳ）、検索部１４１は、前回と同一の検索式を用いてインデックス記憶部１２１〜１２３それぞれに記憶された検索用インデックスを検索し、そしてデータベース別に個々に検索された２００件の文書をマージしてスコア順にソートすることにより、文書候補一覧を作成する（ステップＳ１０１、Ｓ１０２）。次いで、検索部１４１は、次検索ポインタ記憶部１４１から次検索ポインタを取得し（ステップＳ１０３）、そしてアクセス制御情報確認部１７を用いて、次検索ポインタで指定される文書候補一覧の中の該当する文書から順にアクセス可否の判定を行なう（ステップＳ１０４）。次検索ポインタの値は、前回の最初の２０件分の検索結果表示において最後に閲覧可能な文書情報であると判別された文書情報についての文書候補一覧上の位置＋１を示しているので、既にアクセス可否判定が行われた文書群それぞれに対するアクセス可否判定処理を省略することができる。そして、以降、上述のステップＳ１０５〜Ｓ１０９の処理が行われることにより、次の２０件分の検索結果一覧がクライアント端末１８に提供される。
【００５２】
もし、上述のような次検索ポインタを使用しなかった場合には、文書候補一覧の先頭文書から再びアクセス可否判定を順次行なうことによって、ユーザ１９が閲覧可能な２１件目から４０件目までの文書を選定する処理を行なうことが必要となる。これに対し、本実施形態では、次検索ポインタを使用することにより、前回の２０件分の検索結果表示において最後に閲覧可能であると判別された文書の次の文書からアクセス可否判定を順次行なって、ユーザ１９が閲覧可能な２０件分の文書を選定するだけで、ユーザ１９が閲覧可能な２１件目から４０件目までの文書をユーザ１９に提供することが可能となる。
【００５３】
なお、図６に点線で示すように、ステップＳ１０１，Ｓ１０２の処理を省略し、前回の検索で作成した文書候補一覧をそのまま利用することも可能である。また、ステップＳ１０８において次検索ポインタを次検索ポインタ記憶部１４１に記憶する代わりに、その次検索ポインタの値をクライアント端末１８に返却し、次検索要求と一緒に次検索ポインタの値をクライアント端末１８から受け取るような構成を採用することも出来る。
【００５４】
次に、図７のフローチャートを参照して、図６のステップＳ１０４においてアクセス制御情報確認部１７によって実行されるアクセス可否確認処理の手順を説明する。
【００５５】
アクセス制御情報確認部１７は、各文書のアクセス可否判定を行なうための動作モードとして、（１）文書候補一覧に含まれる個々の文書単位でユーザ１９が閲覧可能であるかどうかを該当するデータベースに問い合わせるモード、（２）個々の文書単位ではなくデータベース単位でユーザ１９が閲覧可能であるかどうかを該当するデータベースに問い合わせることにより、個々の文書情報単位の問い合わせを省略するモード、（３）アクセス権が設定されていないデータベースに対する一切の問い合わせを省略するモードを有している。
【００５６】
これら（１）〜（３）のモードは、判別対象の文書情報が記憶されているデータベースのアクセス権制御に関する属性情報に基づいて選択的に使用される。データベース３１〜３３それぞれの属性情報はデータベース属性情報記憶部１３１〜１３３に保持されている。
【００５７】
アクセス制御情報確認部１７は、まず、文書候補一覧の中の判別対象の文書を保持しているデータベースに対応する属性情報を取得し（ステップＳ２０１）、そしてその取得した属性情報に基づいて、当該データベースがアクセス可否の判定が必要なデータベースであるか否か、つまりアクセス権が設定されたデータベースであるか否かを判別する（ステップＳ２０２）。
【００５８】
アクセス可否の判定が不要なデータベース、つまりアクセス権が設定されておらず全てのユーザが閲覧可能なデータベースであれば（ステップＳ２０２のＮＯ）、アクセス制御情報確認部１７は、データベースへの問い合わせによるアクセス可否の確認を省略して、当該文書はユーザ１９が閲覧可能な文書であると直ちに判別する（ステップＳ２０７）。
【００５９】
一方、アクセス可否の判定が必要なデータベース、つまりアクセス権が設定されているデータベースであれば（ステップＳ２０２のＹＥＳ）、アクセス制御情報確認部１７は、ステップＳ２０１で取得した属性情報に基づき、当該データベースがデータベース全体でのアクセス可否の確認のみで良いデータベースであるかどうか、つまりデータベース全体に対してのアクセス権のみを管理しているデータベースであるか、データベースに蓄積されている文書情報毎にアクセス権を管理しているデータベースであるかを判別する（ステップＳ２０３）。
【００６０】
データベースに蓄積されている文書情報毎にアクセス権を管理しているデータベースであるならば（ステップＳ２０３のＮＯ）、アクセス制御情報確認部１７は、ユーザ認証部１５によって認証されたユーザ１９が閲覧可能な文書であるかどうかを、その文書を保持しているデータベースに問い合わせる処理を実行して、アクセス可否を判定する（ステップＳ２０４）。この問い合わせは、実際には、当該データベースを管理しているデータベースサーバに発行される。
【００６１】
一方、データベース全体でのアクセス可否の確認のみで良いデータベース、つまりデータベース全体に対してのアクセス権のみを管理しているデータベースであるならば（ステップＳ２０３のＹＥＳ）、アクセス制御情報確認部１７は、ユーザ１９が閲覧可能なデータベースであるかどうかのアクセス可否の確認を既に行ったデータベースであるか否かを判別する（ステップＳ２０５）。
【００６２】
アクセス可否が確認済みではないデータベースであれば（ステップＳ２０５のＮＯ）、アクセス制御情報確認部１７は、ユーザ認証部１５によって認証されたユーザ１９が閲覧可能なデータベースであるかどうかを、その文書を保持しているデータベースに問い合わせる処理を実行して、当該文書のアクセス可否を判定する（ステップＳ２０６）。この問い合わせは、実際には、当該データベースを管理しているデータベースサーバに発行される。一方、アクセス可否の確認済みのデータベースであれば（ステップＳ２０５のＹＥＳ）、アクセス制御情報確認部１７は、データベースへの問い合わせを省略し、ステップＳ２０６における前回のアクセス可否の判定結果に基づいて、ユーザ１９が閲覧可能な文書であるかどうかを直ちに判別する（ステップＳ２０７）。
【００６３】
このようして、個々のデータベースの属性に合ったアクセス可否判定処理を行なうことにより、アクセス可否判定処理の効率化を図ることが可能となる。
【００６４】
以上のように、本実施形態の情報検索システム１１によれば、複数のデータベース３１〜３３の内容をそれぞれのデータのアクセス制御情報に配慮しながら、横断的に効率よく検索することが可能となる。
【００６５】
なお、情報検索システム１１によって実行される上述の処理はすべてコンピュータプログラムによって実現することが出来るので、そのコンピュータプログラムを記憶した記憶媒体を通じてそのプログラムをネットワーク上のコンピュータに導入するだけで、本実施形態と同様の効果を容易に得ることが出来る。
【００６６】
また、本発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。例えば、検索対象のデータベースは一個であっても良く、また各データベースのアクセス権の更新を考慮しなければ、アクセス制御情報を情報検索システム１１内に保持しておくようにしても良い。また、本実施形態では、最後に閲覧可能であることが判別された文書の位置＋１を次検索ポインタとして記憶したが、最後に閲覧可能であることが判別された文書の位置を検索ポインタとして記憶しておき、次の検索結果を表示する際には検索ポインタ＋１で指定される文書からアクセス可否を確認するようにしても良い。
【００６７】
更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件から幾つかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【００６８】
【発明の効果】
以上説明したように、本発明によれば、データベースのアクセス権を考慮した検索を、効率よく実行することが可能となる。
【図面の簡単な説明】
【図１】本発明の一実施形態に係る情報検索システムの機能構成の一例を示すブロック図。
【図２】図１の情報検索システムによって実行される検索処理の概要を説明するためのブロック図。
【図３】図１の情報検索システムによってクライアント端末に提供される検索画面の一例を示す図。
【図４】図１の情報検索システムによって管理される次検索ポインタを説明するための図。
【図５】図１の情報検索システムによって実行される検索処理におけるデータの生成過程を模式的に示す図。
【図６】図１の情報検索システムによって実行される検索処理の手順を示すフローチャート。
【図７】図１の情報検索システムによって実行されるアクセス可否判定処理の手順を示すフローチャート。
【符号の説明】
１１…情報検索システム
１２…索引情報記憶部
１３…索引情報管理部
１４…検索部
１５…ユーザ認証部
１８…クライアント端末
２１〜２３…データベースサーバ
３１〜３３…データベース
１２１〜１２３…インデックス記憶部
１３１〜１３３…データベース属性情報記憶部
１４１…次検索ポインタ記憶部
【図１】
0003702268.tif 000002
【図２】
0003702268.tif 000003
【図３】
0003702268.tif 000004
【図４】
0003702268.tif 000005
【図５】
0003702268.tif 000006
【図６】
0003702268.tif 000007
【図７】
0003702268.tif 000008