(57)【要約】【課題】  基になるデータベースの構造は従来どおりとし、検索結果ファイルが一旦生成された後も絞り込み検索などのための再検索を可能としたデータベース検索システムを提供する。【解決手段】  所定の検索条件に該当するデータをデータベースから抽出し、その抽出データのデータベース上の格納場所を示すロケータを含む検索結果ファイルを生成する。再検索の際にはロケータによりデータベースを参照して再検索用データを取得し、再検索条件に該当するデータを抽出し、新たな検索結果ファイルとして生成する。【選択図】  図６
2005251002.tif 000002
【特許請求の範囲】
【請求項１】
所定の検索条件を読み取り、該検索条件に該当する該当データをデータベースから抽出し、その該当データの前記データベース上の格納場所を示すロケータを含む検索結果ファイルを生成する検索結果ファイル生成手段と、
再検索条件を読み取り、該再検索条件に該当するデータを前記検索結果ファイルの前記ロケータに基づいて前記データベースから抽出して新たな検索結果ファイルを生成する再検索手段と、
所定の出力条件を読み取り、該出力条件に該当するデータを前記検索結果ファイルから読み出して、または前記検索結果ファイルのロケータに基づいて前記データベースから読み出して、該読み出したデータを出力する手段と、
を備えたデータベース検索システム。
【請求項２】
所定の検索条件を読み取り、該検索条件に該当する該当データをデータベースから抽出し、その該当データの前記データベース上の格納場所を示すロケータを含む検索結果ファイルを生成するステップと、
再検索条件を読み取り、該再検索条件に該当するデータを前記検索結果ファイルの前記ロケータに基づいて前記データベースから抽出して新たな検索結果ファイルを生成するステップと、
所定の出力条件を読み取り、該出力条件に該当するデータを前記検索結果ファイルから読み出して、または前記検索結果ファイルのロケータに基づいて前記データベースから読み出して、該読み出したデータを出力するステップと、
を含むデータベース検索方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベースから所望の内容を検索するデータベース検索システムおよびデータベース検索方法に関するものである。
【背景技術】
【０００２】
一般に、コンピュータによるデータベース検索システムにおいては、複数の情報がそれぞれ文字や図形情報を含むコンテンツ、所定のキーワード、インデックス、コード等の複数の属性項目（ターム）から構成され、それらの属性項目のいずれかまたは任意の結合（以下これらを総称して「検索条件」と言う。）を指定することによってデータベースが検索される。また、その検索条件を満たす情報は例えば回答件数分の回答集合として出力される。そして、所定の属性項目を所定の形式で出力するように指定することによって、検索条件を満たす情報に関する検索結果が得られるように構成されている。
【０００３】
通常、サーチャーは所望の検索結果を得るために事前に検索条件を検討してから検索を行うが、実際に検索により得られた回答集合に属する情報の内容や該当件数に応じて、後に検索条件を変更することは度々ある。例えば検索結果による回答件数が予想に反して多過ぎる場合や、回答集合にノイズが多量に含まれているなどの場合には、新たなＡＮＤ条件（絞り込み条件）を付加したり検索条件を全体に見直したりしている。また、回答件数が予想に反して少な過ぎる場合は、検索漏れのおそれが大きいと見なして、新たなＯＲ条件を付加したり、検索条件を全体に見直したりしている。
【０００４】
このようにして回答集合の内容が妥当なものと判断されるようになったときに、所定の属性項目について所定フォーマットで出力されるように出力条件が指定される。
【０００５】
ところで、このようなデータベース検索システムにおいては、検索精度を高めるとともに検索に要する労力やコストを如何に抑えるかが課題の１つとなっている。たとえば、検索手法に習熟したサーチャーにより予め検索分野の情報を絞り込み、その絞り込んだ情報に対してインデックスを付与し、設計者がそれをキーワード検索するようにしたデータベース検索システムが特許文献１に提案されている。
【０００６】
また、複数の検索条件を与えて検索対象を絞り込む場合に、一度に複数の検索条件を考えておかなければならないという問題を解消するために、複数の属性によって定義されるデータが蓄積されたデータベースを検索する際、１つの検索条件に合致する検索結果を仮想データとして一時的に保存し、その保存されている仮想データに対して別の検索条件に基づく絞り込み検索を行うようにしたものが特許文献２に示されている。
【特許文献１】特開２００２−２７８９９１公報
【特許文献２】特開平９−３０５６１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
前述のように、検索結果に対して更に別の検索条件を掛け合わせて絞り込みを行う検索いわゆるハイアラーキーサーチを行うことによって効率的な検索が一般に可能である。
ところが、検索結果を表示出力や印刷出力させて一旦検索結果を得た後に、別の検索を割り込ませて行ったり、システムを再起動した場合には、一時的に生成されていた検索結果ファイルが消滅してしまう。そのため、既に検索結果を得た一連の検索作業に引き続いて、例えば更に絞り込み検索やその他の検索条件を付加した検索（以下「再検索」という。）などを行うことはできなかった。また、検索結果を検索結果ファイルとしてサーチャーが適当な名称を付けて一旦保存した場合でも、その検索結果ファイルは例えば図４の（Ａ），（Ｂ）で示されるような、いわゆる一覧表示や総括表示の各項目データしか含まないので、再検索は不可能であった。しかし利用者はこの最終的に出力された検索結果に対して新たな検索条件を更に掛け合わせて絞り込むような検索を、時を隔てて、あるいは随時に実行したい場面にしばしば遭遇する。例えば、一旦検索結果を得て、後日その内容を検討しているうちに、新たな検索条件で絞り込みたい場合や、別の検索条件も含むような検索を行いたい場合がある。また、例えばあるサーチャーがある程度絞り込んだ検索結果に対して、別のサーチャーが別の検索条件で検索を行いたい場合もある。
【０００８】
しかし、従来のデータベース検索システムでは、原理上このような機能は持たない。そのため、同じ目的を達成しようとすれば、振り出しに戻って検索を一からやり直す必要があった。このことはシステムに無駄な負荷がかかることになり、データベースの利用効率が低下するばかりでなく、利用者にとっても不便であり、業務能率も低下するものであった。特に複雑な検索の場合には予め相当の時間を掛けた上で検索に取り組む必要があり、効率的な検索ができなかった。
【０００９】
すなわち、従来は検索結果を一旦所定名称の検索結果ファイルとして保存しても、もはやその保存された検索結果ファイルに対して更に別の検索条件を付加して検索を行うことはできなかった。
この発明の目的は、基になるデータベースの構造は従来どおりとし、一連の検索処理を終了した後も、その検索結果に基づいて随時絞り込み検索などのための再検索を可能としたデータベース検索システムを提供することにある。
【課題を解決するための手段】
【００１０】
本発明では、まず所定の検索条件を読み取り、該検索条件に該当する該当データをデータベースから抽出する。また、その該当データの前記データベース上の格納場所を示すロケータを含む検索結果ファイルを生成し、再検索条件を読み取り、該再検索条件に該当するデータを前記検索結果ファイルの前記ロケータに基づいて前記データベースから抽出して新たな検索結果ファイルを生成する。そして、所定の出力条件を読み取り、該出力条件に該当するデータを前記検索結果ファイルから読み出して、または前記検索結果ファイルのロケータに基づいて前記データベースから読み出して、該読み出したデータを出力するように構成する。
【００１１】
本発明において「検索条件」とは、データベースに含まれている複数の属性項目に対してのマッチングパターンである。また、「出力条件」とは、データベースに含まれている複数の属性項目のうちどの属性項目についてどのようなフォーマットで出力するかを示す情報である。
【発明の効果】
【００１２】
本発明によれば、検索結果としての検索結果ファイルが一旦生成された後も、絞り込み検索などのための再検索が可能となり、データベースの利用効率が向上し、利用者にとっての利便性が高まり、業務能率も向上する。また、時間や空間の制限を超えた検索が可能となり、検索業務の分業や時系列的積み上げ業務が可能となる。例えば、一旦検索結果を得て、後日その内容を検討して新たな検索条件で絞り込むことや、別の検索条件を含むような検索を行うことが可能となる。また、例えばあるサーチャーがある程度絞り込んだ検索結果に対して、別のサーチャーが別の検索条件で検索を行うようなことも可能となる。
【発明を実施するための最良の形態】
【００１３】
図１は、本発明に係るデータベース検索システムが実現されるシステム構成図である。
図１において、サーバ１には複数種のデータベースのデータファイルを蓄積する外部記憶装置２，３，４が接続されている。サーバ１は、クライアント端末からの要求に応じて、予めインプリメントされているデータベース検索エンジンによって所望の情報を抽出し、クライアント端末に対して送信する。
【００１４】
複数のクライアント端末１０，１１，１２，・・・，２０はネットワーク（ＬＡＮ、イントラネット、インターネットを含む）を介して接続されている。各クライアント端末１０，１１，１２，・・・，２０ではＷＥＢクライアントプログラムが実行され、サーバ１ではＷＥＢサーバプログラムが実行され、ＷＥＢページを介してクライアント端末側からの指示に応じてサーバ上のＷＥＢサーバプログラムおよび検索エンジンプログラムが実行される。
【００１５】
図２は、上記データベースのデータファイル構造の例を示している。図２の（Ａ）に示すように、基本データファイルとして１組のデータについてそれぞれ複数のフィールド（属性項目）Ｆ０，Ｆ１，Ｆ２・・・・を備えた複数のレコードＲ０，Ｒ１，Ｒ２・・・・を記憶している。
【００１６】
また、所定のフィールドについては、（Ｂ）のようにインデックスファイルを作成していて、フィールドデータから該当のレコードを索引できるようにしている。
【００１７】
図３は、クライアント端末から検索条件を入力したことにより、データベースの検索エンジンが生成した検索結果ファイルである。ここでＳＦ０，ＳＦ１，ＳＦ２・・・は、検索条件に該当する複数のデータの各フィールドについて、それらのフィールドが図２の（Ａ）に示した基本データファイルのどのレコードのどのフィールドに相当するかを示す（その格納場所を示す）ロケータである。このように検索結果ファイルにロケータを含めた点が本発明の特徴の１つである。
【００１８】
このような検索結果ファイルが一旦生成されれば、クライアント端末から出力条件を指定することによって、データベースの検索エンジンまたはＷＥＢサーバプログラムはこの検索結果ファイルと基本データベースを基に、出力に必要な属性項目（出力ターム）を読み出して利用者に対して出力する。すなわち、出力に必要な属性項目に相当するフィールドのロケータを検索結果ファイルから読み出して、そのロケータで参照される基本データベースの所定レコードの所定フィールドの内容を読み出して、それらを出力条件の一つとして指定されたフォーマットで出力する。
【００１９】
なお、この図３に示した例では、各属性項目について基本データベースのロケータを検索結果ファイルに書き出すようにしたが、検索結果ファイルには基本データベースの対応レコードのロケータだけを書き出すようにしてもよい。その場合には、出力に必要な属性項目を得るために、まずそのロケータで示される基本データベースのレコードを読み出し、そのレコードから必要なフィールドを読み出すように構成すればよい。
【００２０】
また、この検索結果ファイルには、ロケータだけでなく、いくつかの属性項目の内容を含めるようにし、それらの属性項目については、出力の際に基本データベースを参照せずに出力できるようにしてもよい。
【００２１】
図４は、クライアント端末から指定される出力条件の違いによる出力フォーマットの例を示している。（Ａ）は出力タームとして公報種別，公報番号，発明の名称，出願人，ＩＰＣ，出願日，出願番号などを出力条件として指定した例である。（Ｂ）は、出力タームとして、公報番号，発明の名称，出願人，要約（請求項）・・・・，代表図を出力条件として指定した例である。このように、検索条件に該当したデータは、随時それらの属性項目のうち、指定された出力タームが指定されたフォーマットで出力される。
次に、検索処理の手順について、図５〜図７のフローチャートを基に説明する。
図５は１次検索の手順を示すフローチャートである。まず、クライアント端末から入力される検索条件を読み取り、データベースから該当のデータを検索する（Ｓ１→Ｓ２）。ここで「検索条件」は、検索可能な属性項目（検索ターム）を用いたマッチングパターンであり、例えば検索式で与えられる。その後、図３に示した検索結果ファイルを生成する（Ｓ３）。続いて、クライアント端末から入力される出力条件を読み取る（Ｓ４）。この「出力条件」は、どの出力タームをどのような出力フォーマットで出力するかを示すデータで構成されている。それに応じて図４の（Ａ）または（Ｂ）に示したような所定フォーマットで検索結果を出力する（Ｓ５）。すなわち、既に述べたように、出力に必要な属性項目に相当するフィールドのロケータを検索結果ファイルから読み出して、そのロケータで参照される基本データベースの所定レコードの所定フィールドの内容を読み出して、それらを指定されたフォーマットで出力する。
【００２２】
図６は、図４のように出力された検索結果を人が見て、その結果に対して例えば絞り込みを行うための再検索を行う処理手順を示している。まず、再検索条件を読み取る（Ｓ１１）。この処理は図５におけるステップＳ１と同様の処理である。続いて、検索結果ファイルに含まれているロケータによりデータベースを参照し、再検索用データを取得する（Ｓ１２）。そして、再検索用データから上記再検索条件に該当するデータを検索し、新たな検索結果ファイルを生成する（Ｓ１３→Ｓ１４）。この新たな検索結果ファイルには基本データベースの該当レコードの該当フィールドの位置を示す情報であるロケータを書き込む。続いて、出力条件を読み取り、それに応じた結果を出力する（Ｓ１５→Ｓ１６）。このステップＳ１４〜Ｓ１６の処理は図５に示したステップＳ３〜Ｓ５の処理と同様である。
【００２３】
図７は、図６のステップＳ１２の処理手順を示している。まず、カウンタｉに０を代入し、検索結果ファイルのｉ番目のデータの各ロケータ（ロケータｉ０，ロケータｉ１，ロケータｉ２，・・・であるが、ここでは単にロケータＬ（ｉ）として表している。）で示されるデータベースのデータＤＢ．Ｌ（ｉ）の内容を、ｉ番目の再検索用データＲ（ｉ）として格納する（Ｓ１２１→Ｓ１２２）。この処理を図６のステップＳ１４で求めた検索結果ファイルの該当件数ｎ分について繰り返し行う（Ｓ１２３→Ｓ１２２→・・・・）。
このようにして、一旦検索結果ファイルが生成された後も、その検索結果ファイルからデータベースの基本データファイルが参照できるため、再検索が可能となる。
【００２４】
次に、第２の実施形態に係るデータベース検索システムにおける再検索時の処理内容を図８・図９を基に説明する。
この第２の実施形態での１次検索は第１の実施形態の場合と同様である。図８は、１次検索により一旦検索結果ファイルが生成された後の再検索時の処理手順を示している。まず、再検索条件を読み取る（Ｓ２１）。続いて、検索結果ファイルに含まれているロケータによりデータベースを参照し、再検索用データを取得し、上記検索条件に該当データを検索し、新たな検索結果ファイルを生成する（Ｓ２２）。この時の出力条件としては１次検索の際に指定された出力条件をそのまま採用する。そして、その結果を出力する（Ｓ２３）。
【００２５】
図９は、図８のステップＳ２２の処理手順を示している。まず、カウンタｉに０を代入し、検索結果ファイルのｉ番目のデータの各ロケータ（ここでは単にロケータＬ（ｉ）として表している。）で示されるデータベースのデータＤＢ．Ｌ（ｉ）の内容を再検索用データのデータＲとして取得する（Ｓ２２１→Ｓ２２２）。続いて、この取得したデータＲが検索条件に該当するか否かを判定し、該当すれば、そのデータを新たな検索結果ファイルに書き込む（Ｓ２２３→Ｓ２２４）。以上の処理を１次検索の際の該当件数ｎだけ繰り返す（Ｓ２２５→Ｓ２２２→・・・・）。
【００２６】
なお、第１・第２の実施形態では、再検索を１度行うところまでしか説明していないが、再検索の処理で生成される新たな検索結果ファイルは１次検索の場合と同様にデータベースの格納場所を示すロケータを含むので、同様にして再出力の後に再び絞り込み検索等の再検索を行うことができる。
【００２７】
上記１次検索の際の検索結果ファイルや再検索の処理による新たな検索結果ファイルはサーバ側に記憶してもよく、クライアント端末側に記憶するようにしてもよい。サーバ側に検索結果ファイルや新たな検索結果ファイルを蓄積する場合には、どの検索結果に対して再検索条件を指定するかを明らかにするために、検索処理の識別情報を検索結果ファイルに予め付加しておき、再検索や再出力の際にその識別情報と共に再検索条件や再出力条件を指定するようにしてもよい。
【図面の簡単な説明】
【００２８】
【図１】第１の実施形態であるデータベース検索システムが適用されるシステム構成図
【図２】データベースの基本データファイルとインデックスファイルの例を示す図
【図３】検索結果ファイルの例を示す図
【図４】検索結果の出力フォーマットの例を示す図
【図５】１次検索の処理手順を示すフローチャート
【図６】再検索の処理手順を示すフローチャート
【図７】図６のステップＳ１２での処理手順を示すフローチャート
【図８】第２の実施形態に係る再検索の処理手順を示すフローチャート
【図９】図８のステップＳ２２での処理手順を示すフローチャート
【符号の説明】
【００２９】
１−サーバ
２〜４−データベースのデータファイル蓄積用外部記憶装置
１０〜１２，２０−クライアント端末
【図１】
2005251002.tif 000003
【図２】
2005251002.tif 000004
【図３】
2005251002.tif 000005
【図４】
2005251002.tif 000006
【図５】
2005251002.tif 000007
【図６】
2005251002.tif 000008
【図７】
2005251002.tif 000009
【図８】
2005251002.tif 000010
【図９】
2005251002.tif 000011