処理装置と、前記処理装置に接続される記憶装置と、前記処理装置によって処理された情報を出力する表示装置と、前記処理装置によって処理される情報を入力する入力装置と、を有する情報検索システムであって、前記記憶装置は、検索対象のデータを保持し、前記表示装置に表示される複数の質問と、前記各質問に対する複数の回答候補と、を対応付ける情報を含む質問生成ルールを保持し、前記処理装置は、前記質問生成ルールに基づいて、前記複数の質問のうち第1の質問及びそれに対応する前記複数の回答候補を選択し、前記表示装置は、前記第1の質問及びそれに対応する前記複数の回答候補を表示し、前記処理装置は、前記入力装置を介して前記複数の回答候補の一つを回答として選択されると、今回選択された前記回答と、今回以前に選択された回答との組み合わせを検索キーとして前記検索対象のデータを検索し、前記表示装置は、前記検索の結果を表示することを特徴とする情報検索システム。前記処理装置は、前記第1の質問及びそれに対応する前記複数の回答候補を選択した後、今回選択された前記複数の回答候補の各々と、前回以前に選択された回答との組み合わせを検索キーとして前記検索対象のデータを検索し、いずれかの組み合わせを検索キーとしたときに検索結果を得られず、それとは別の組み合わせを検索キーとしたときに一つ以上の検索結果を得られた場合、検索結果を得られた組み合わせに含まれる今回選択された回答候補を有効化し、前記表示装置は、前記第1の質問及びそれに対応する前記複数の回答候補のうち有効化されたものを表示することを特徴とする請求項1に記載の情報検索システム。前記処理装置は、いずれの組み合わせを検索キーとしても検索結果を得られなかった場合、前記選択された第1の質問を無効化し、前記無効化された第1の質問以外の質問及びそれに対応する前記複数の回答候補を、新たな前記第1の質問及びそれに対応する前記複数の回答候補として選択し、前記表示装置は、無効化されていない前記第1の質問、及び、それに対応する前記複数の回答候補のうち有効化されたものを表示することを特徴とする請求項2に記載の情報検索システム。前記処理装置は、前記複数の回答候補の全ての組み合わせの各々を検索キーとして前記検索対象のデータを検索し、それによって得られた検索結果の数を絞り込み件数マップとして前記記憶装置に保持し、前記第1の質問及びそれに対応する前記複数の回答候補を選択した後、今回選択された前記複数の回答候補の各々と、前回以前に選択された回答との組み合わせを検索キーとして前記検索対象のデータを検索したときに検索結果を得られるか否かを前記絞込み件数マップに基づいて判定し、いずれかの組み合わせを検索キーとしたときに検索結果を得られず、それとは別の組み合わせを検索キーとしたときに一つ以上の検索結果を得られると判定された場合、検索結果を得られた組み合わせに含まれる今回選択された回答候補を有効化し、前記表示装置は、前記第1の質問及びそれに対応する前記複数の回答候補のうち有効化されたものを表示することを特徴とする請求項1に記載の情報検索システム。前記処理装置は、いずれの組み合わせを検索キーとしても検索結果を得られないと判定された場合、前記選択された第1の質問を無効化し、前記無効化された第1の質問以外の質問及びそれに対応する前記複数の回答候補を、新たな前記第1の質問及びそれに対応する前記複数の回答候補として選択し、前記表示装置は、無効化されていない前記第1の質問、及び、それに対応する前記複数の回答候補のうち有効化されたものを表示することを特徴とする請求項4に記載の情報検索システム。前記記憶装置は、前記複数の質問のうち第1の質問と、前記第1の質問に対応する前記複数の回答候補のうち第1の回答候補と、前記第1の回答候補が選択された場合に次に表示されるべき第2の質問と、を対応付ける質問親子関係ルールをさらに保持し、前記処理装置は、前記第1の質問に対応する前記複数の回答候補のうち、前記第1の回答候補が回答として選択された場合、前記第2の質問及びそれに対応する前記複数の回答候補を選択し、前記表示装置は、前記検索の結果と、前記選択された第2の質問及びそれに対応する前記複数の回答候補と、を表示することを特徴とする請求項1に記載の情報検索システム。前記質問生成ルールは、さらに、前記各質問の優先度を示す情報を含み、前記処理装置は、前記第1の質問及びそれに対応する前記複数の回答候補を選択した後、前記優先度に基づいて前記複数の質問のうち第2の質問及びそれに対応する前記複数の回答候補を選択し、前記表示装置は、前記検索の結果と、前記選択された第2の質問及びそれに対応する前記複数の回答候補と、を表示することを特徴とする請求項1に記載の情報検索システム。前記処理装置は、前記複数の質問のうち、第1の優先度が付与され、かつ、まだ選択されていないものを前記第2の質問として選択し、前記第1の優先度が付与され、かつ、まだ選択されていない質問がない場合には、前記複数の質問のうち、前記第1の優先度より一段階低い優先度が付与され、かつ、まだ選択されていないものを前記第2の質問として選択することを特徴とする請求項7に記載の情報検索システム。前記処理装置は、前記複数の質問のうち、第1の優先度が付与されたものを前記第1の質問として選択した場合、前記複数の質問のうち、前記第1の優先度又は前記第1の優先度より一段階低い第2の優先度のいずれかが付与され、かつ、まだ選択されていないものを前記第2の優先度として選択することを特徴とする請求項7に記載の情報検索システム。前記記憶装置は、前記検索対象のデータに含まれる情報を、前記各回答候補に対応するように分類するための定義を含む検索データ生成ルールをさらに保持し、前記処理装置は、前記検索データ生成ルールに基づいて前記検索対象のデータを分類した結果を検索用データとして前記記憶装置に保持し、前記入力装置を介して前記複数の回答候補の一つを回答として選択されると、今回選択された前記回答と、今回以前に選択された回答との組み合わせをキーとして、前記検索用データを検索し、検索された検索用データに対応する前記検索対象のデータを検索結果として取得することを特徴とする請求項1に記載の情報検索システム。処理装置と、前記処理装置に接続される記憶装置と、前記処理装置によって処理された情報を出力する表示装置と、前記処理装置によって処理される情報を入力する入力装置と、を有する情報検索システムが実行する情報検索方法であって、前記記憶装置は、検索対象のデータを保持し、前記表示装置に表示される複数の質問と、前記各質問に対する複数の回答候補と、を対応付ける情報を含む質問生成ルールを保持し、前記情報検索方法は、前記処理装置が、前記質問生成ルールに基づいて、前記複数の質問のうち第1の質問及びそれに対応する前記複数の回答候補を選択する第1手順と、前記表示装置が、前記第1の質問及びそれに対応する前記複数の回答候補を表示する第2手順と、前記入力装置を介して前記複数の回答候補の一つを回答として選択されると、前記処理装置が、今回選択された前記回答と、今回以前に選択された回答との組み合わせを検索キーとして前記検索対象のデータを検索する第3手順と、前記表示装置が、前記検索の結果を表示する第4手順と、を含むことを特徴とする情報検索方法。前記第1手順は、前記処理装置が、今回選択された前記複数の回答候補の各々と、前回以前に選択された回答との組み合わせを検索キーとして前記検索対象のデータを検索する手順と、いずれかの組み合わせを検索キーとしたときに検索結果を得られず、それとは別の組み合わせを検索キーとしたときに一つ以上の検索結果を得られた場合、前記処理装置が、検索結果を得られた組み合わせに含まれる今回選択された回答候補を有効化する手順と、を含み、前記第2手順は、前記表示装置が、前記第1の質問及びそれに対応する前記複数の回答候補のうち有効化されたものを表示する手順を含むことを特徴とする請求項11に記載の情報検索方法。前記第1手順は、いずれの組み合わせを検索キーとしても検索結果を得られなかった場合、前記処理装置が、前記選択された第1の質問を無効化する手順と、前記処理装置が、前記無効化された第1の質問以外の質問及びそれに対応する前記複数の回答候補を、新たな前記第1の質問及びそれに対応する前記複数の回答候補として選択する手順と、を含み、前記第2手順は、前記表示装置が、無効化されていない前記第1の質問、及び、それに対応する前記複数の回答候補のうち有効化されたものを表示する手順を含むことを特徴とする請求項12に記載の情報検索方法。前記情報検索方法は、前記処理装置が、前記複数の回答候補の全ての組み合わせの各々を検索キーとして前記検索対象のデータを検索し、それによって得られた検索結果の数を絞り込み件数マップとして前記記憶装置に保持する第6手順をさらに含み、前記第1手順は、前記処理装置が、今回選択された前記複数の回答候補の各々と、前回以前に選択された回答との組み合わせを検索キーとして前記検索対象のデータを検索したときに検索結果を得られるか否かを前記絞込み件数マップに基づいて判定する手順と、いずれかの組み合わせを検索キーとしたときに検索結果を得られず、それとは別の組み合わせを検索キーとしたときに一つ以上の検索結果を得られると判定された場合、前記処理装置が、検索結果を得られた組み合わせに含まれる今回選択された回答候補を有効化する手順と、を含み前記第2手順は、前記表示装置が、前記第1の質問及びそれに対応する前記複数の回答候補のうち有効化されたものを表示する手順を含むことを特徴とする請求項11に記載の情報検索方法。前記第1手順は、いずれの組み合わせを検索キーとしても検索結果を得られないと判定された場合、前記処理装置が、前記選択された第1の質問を無効化する手順と、前記処理装置が、前記無効化された第1の質問以外の質問及びそれに対応する前記複数の回答候補を、新たな前記第1の質問及びそれに対応する前記複数の回答候補として選択する手順と、を含み、前記第2手順は、前記表示装置が、無効化されていない前記第1の質問、及び、それに対応する前記複数の回答候補のうち有効化されたものを表示する手順を含むことを特徴とする請求項14に記載の情報検索方法。前記記憶装置は、前記複数の質問のうち第1の質問と、前記第1の質問に対応する前記複数の回答候補のうち第1の回答候補と、前記第1の回答候補が選択された場合に次に表示されるべき第2の質問と、を対応付ける質問親子関係ルールをさらに保持し、前記情報検索方法は、前記第1の質問に対応する前記複数の回答候補のうち、前記第1の回答候補が回答として選択された場合、前記処理装置が、前記第2の質問及びそれに対応する前記複数の回答候補を選択する手順と、前記表示装置が、前記検索の結果と、前記選択された第2の質問及びそれに対応する前記複数の回答候補と、を表示する手順と、をさらに含むことを特徴とする請求項11に記載の情報検索方法。前記質問生成ルールは、さらに、前記各質問の優先度を示す情報を含み、前記情報検索方法は、前記第1の質問及びそれに対応する前記複数の回答候補が選択された後、前記処理装置が、前記優先度に基づいて前記複数の質問のうち第2の質問及びそれに対応する前記複数の回答候補を選択する第5手順と、前記表示装置が、前記検索の結果と、前記選択された第2の質問及びそれに対応する前記複数の回答候補と、を表示する手順と、を含むことを特徴とする請求項11に記載の情報検索方法。前記第5手順は、前記処理装置が、前記複数の質問のうち、第1の優先度が付与され、かつ、まだ選択されていないものを前記第2の質問として選択する手順と、前記第1の優先度が付与され、かつ、まだ選択されていない質問がない場合には、前記処理装置が、前記複数の質問のうち、前記第1の優先度より一段階低い優先度が付与され、かつ、まだ選択されていないものを前記第2の質問として選択する手順と、を含むことを特徴とする請求項17に記載の情報検索方法。前記第5手順は、前記複数の質問のうち、第1の優先度が付与されたものが前記第1の質問として選択された場合、前記処理装置が、前記複数の質問のうち、前記第1の優先度又は前記第1の優先度より一段階低い第2の優先度のいずれかが付与され、かつ、まだ選択されていないものを前記第2の優先度として選択する手順を含むことを特徴とする請求項17に記載の情報検索方法。前記記憶装置は、前記検索対象のデータに含まれる情報を、前記各回答候補に対応するように分類するための定義を含む検索データ生成ルールをさらに保持し、前記情報検索方法は、前記処理装置が、前記検索データ生成ルールに基づいて前記検索対象のデータを分類した結果を検索用データとして前記記憶装置に保持する手順をさらに含み、前記第3手順は、前記入力装置を介して前記複数の回答候補の一つを回答として選択されると、前記処理装置が、今回選択された前記回答と、今回以前に選択された回答との組み合わせをキーとして、前記検索用データを検索し、検索された検索用データに対応する前記検索対象のデータを検索結果として取得する手順を含むことを特徴とする請求項11に記載の情報検索方法。前述のとおり、特許文献1などの技術によれば、ユーザに対して質問とその質問に対する回答候補を提示し、ユーザからの回答に基づいて情報を検索あるいは絞り込んでいくことで、大量の情報の中からユーザが興味のある情報を効率的に検索あるいは絞り込むことが可能となる。しかしながら、特許文献1などの技術では、ユーザの回答履歴に応じて質問の順序を制御するため、情報検索システムの処理量が多く、コストが高くなるという問題がある。また、特許文献1などの技術では、対話シナリオに基づいて質問順序を制御できるが、当該対話シナリオを作成することが困難であるという問題がある。また、特許文献1などの技術では、上述の通り対話シナリオによって、質問順序を制御できるが、質問に対する回答に起因する質問間の親子関係又は重要度を定義することが困難であり、結果的に質問間の親子関係又は重要度を考慮した効果的な質問と回答による情報の絞込みを行うシステムを構築することが困難であった。さらに、特許文献1などの技術では、検索対象の情報が、ユーザに提示される質問とその質問に対して得られる回答に応じた構成となっていないため、質問に対するユーザからの回答結果を元にして情報を検索する際には多くの時間を要してしまうという問題があった。さらに、特許文献1などの技術では、ユーザに対する質問とその質問の回答候補を提示するが、提示された質問及び回答候補を元に、ユーザが回答を行った結果、情報の検索あるいは絞り込み結果が0件となってしまうことを考慮しておらず、検索あるいは絞り込み結果が0件となってしまった場合に、ユーザが不快感を得てしまうという問題があった。本発明の課題は、これらの問題を解決し、ユーザに対して質問とその質問に対する回答候補を提示し、ユーザからの回答に基づいて情報を検索あるいは絞り込んでいく情報検索システムにおいて、可能な限り処理量を抑えることで低コスト化を図ると共に、大量の情報の中からユーザが興味のある情報を可能な限り効率的に検索可能とする情報検索システムを提供することである。また、特に、可能な限り単純な構成で質問の重要度や親子関係に応じた質問順序を制御可能とすることが課題である。さらに、検索対象の情報を、ユーザに提示される質問とその質問に対して得られる回答に応じた構成とすることで、質問に対するユーザからの回答結果を元にして、高速に情報の検索を行うことが出来る情報検索システムを提供することが課題である。さらに、ユーザに対する質問とその質問の回答候補を提示する際、提示された質問及び回答候補を元に、ユーザが回答を行った結果、情報の検索あるいは絞り込み結果が0件となることのないようにすることで、ユーザが不快感を得ることのない情報検索システムを提供することが課題である。本発明は、処理装置と、前記処理装置に接続される記憶装置と、前記処理装置によって処理された情報を出力する表示装置と、前記処理装置によって処理される情報を入力する入力装置と、を有する情報検索システムであって、前記記憶装置は、検索対象のデータを保持し、前記表示装置に表示される複数の質問と、前記各質問に対する複数の回答候補と、を対応付ける情報を含む質問生成ルールを保持し、前記処理装置は、前記質問生成ルールに基づいて、前記複数の質問のうち第1の質問及びそれに対応する前記複数の回答候補を選択し、前記表示装置は、前記第1の質問及びそれに対応する前記複数の回答候補を表示し、前記処理装置は、前記入力装置を介して前記複数の回答候補の一つを回答として選択されると、今回選択された前記回答と、今回以前に選択された回答との組み合わせを検索キーとして前記検索対象のデータを検索し、前記表示装置は、前記検索の結果を表示することを特徴とする。本発明によれば、コストを抑えて、高速かつ効率的にユーザの所望する情報を検索すると共に、ユーザの不満の少ない情報検索システムを提供可能となる。<第1の実施形態>以下、本発明の第1の実施形態を、図面を参照して説明する。なお、本実施形態において、実質的に同一の機能及び構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。まず、本実施形態に係る情報検索システムのシステム構成の一例について説明する。図1は、本発明の第1の実施形態に係る情報検索システムのシステム構成の一例を示す図である。本発明の情報検索システムは、サーバと、テレビ、PC、レコーダ、携帯電話、又は携帯端末などの単体あるいはこれらの組み合わせによって実現できるが、図1は、このうち特にサーバと携帯端末によって構成した例を示す。本実施形態においては便宜的に本発明の情報検索システムをサーバと携帯端末によって構成する例をもって説明する。図1に示すとおり、本発明の実施形態に係る情報検索システムは、サーバ101と、ネットワーク102と、基地局103と、携帯端末104と、を有する。サーバ101は、ネットワーク通信機能を持つ公知のコンピュータシステム等の情報処理装置とすることができ、携帯端末104からのリクエストを処理して、レスポンスを携帯端末104に送る。携帯端末104は、ネットワーク通信機能を持つPDAPersonalDigitalAssistance又は携帯電話等の公知の機器とすることができる。携帯端末104は、ユーザが操作することによってサーバ101に基地局103及びネットワーク102を介して接続し、ユーザが所望のサービスを受けるために、サーバにリクエストを送り、サーバ101からのレスポンスに対応して、ユーザに情報を提供する端末装置である。ネットワーク102は、例えば、携帯電話網、又は、LANLocalAreaNetwork若しくはWANWideAreaNetworkなどのイントラネット網又はインターネット網であり、基地局103と協働してサーバ101と携帯端末104の間でリクエスト及びレスポンスデータの送受信を可能とする。基地局103は、例えば、携帯電話網の末端装置又は無線LANなどのアクセスポイント等であり、上述の通り、ネットワーク102と協働してサーバ101と携帯端末104の間でリクエスト及びレスポンスデータの送受信を可能とする。本実施形態では、本システム構成において、特に、サーバ101が、情報検索に必要となるユーザに対する質問とその質問に対する回答候補を携帯端末104に送信し、携帯端末104が、ユーザからの回答をサーバ101に送信する。また、サーバ101が、携帯端末104から送信されたユーザからの回答を元に情報の検索及び絞り込み処理を行い、その検索及び絞り込み結果を携帯端末104に送信し、携帯端末104が、サーバ101から送信された情報の検索及び絞り込み結果を表示する。次に、本発明の第1の実施形態に係るサーバ101及び携帯端末104のハードウェア構成の一例について説明する。まずは、本実施形態に係るサーバ101のハードウェア構成の一例について説明する。図2は、本発明の第1の実施形態に係るサーバ101のハードウェア構成の一例を示す図である。既に上述したとおり、本実施例に係るサーバ101はネットワーク通信機能を持つ公知のコンピュータシステム等の情報処理装置とすることができるが、図2に示すとおり、少なくとも通信装置201と、中央処理装置202と、記憶装置203と、二次記憶装置204と、を有する。なお、各装置は、バス205によって接続され、各装置間で相互にデータの送受信が可能である。通信装置201は、例えばLANカードなどのネットワークカードユニットとすることができ、サーバ101をネットワーク102に接続可能とする。中央処理装置202は、マイクロプロセッサを主体に構成され、記憶装置203又は二次記憶装置204に格納されているプログラムを実行し、サーバ101における処理を制御する。記憶装置203は、例えばランダムアクセスメモリRAM等によって実現され、中央処理装置202によって実行されるプログラム及び携帯端末104から受信したデータ等のサーバ101において処理されるデータ等を格納する。二次記憶装置204は、例えばハードディスク装置又は不揮発性メモリ等とすることができ、検索対象の情報、当該検索対象の情報を含むデータベース又は後述の本情報検索システムで構築する各種データ及びデータベースを格納する。次に、本実施形態に係る携帯端末104のハードウェア構成の一例について説明する。図3は、本発明の第1の実施形態に係る携帯端末104のハードウェア構成の一例を示す図である。既に上述したとおり、本実施形態に係る携帯端末104はネットワーク通信機能を持つPDA又は携帯電話等の公知の機器とすることができるが、図3に示すとおり、少なくとも通信装置301と、中央処理装置302と、入力装置303と、記憶装置304と、表示装置305と、を有する。なお、各装置は、バス306によって接続され、各装置間で相互にデータの送受信が可能である。通信装置301は、例えば既に知られる携帯電話における携帯電話網接続モジュールとそのドライバ、又は、無線LAN接続モジュールとそのドライバ等によって実現され、携帯端末104をネットワーク102に接続可能とする。中央処理装置302は、マイクロプロセッサを主体に構成され、記憶装置304に格納されているプログラムを実行し、携帯端末104における処理を制御する。入力装置303は、既に知られるPDA等におけるタッチパネル及びそのドライバ等によって構成され、ユーザが携帯端末104に対して動作指示を入力可能とする。本実施例では、特に、本入力装置303によって、ユーザが、情報の検索開始指示を入力したり、サーバ101から提示された質問の回答候補に対して回答を入力したりすることができる。記憶装置304は、例えばランダムアクセスメモリRAM等によって実現され、中央処理装置302によって実行されるプログラム及びサーバ101から受信したデータ等の携帯端末104において処理されるデータ等を格納する。表示装置305は、例えば既に知られるPDA等における液晶パネル及びそのドライバ等によって構成され、携帯端末104内の情報を表示する。本実施形態の表示装置305は、特に、後述のとおり、サーバ101から受信した質問とその回答候補、及び情報の検索結果を表示する。次に、本発明の第1の実施形態に係るサーバ101及び携帯端末104の機能ブロックの一例について説明する。まずは、本実施形態に係るサーバ101の機能ブロックの一例について説明する。図4は、本発明の第1の実施形態に係るサーバ101の機能ブロックの一例を示す図である。なお、本実施形態においては、これらの機能ブロックの全てが中央処理装置202によって実行されるソフトウェアプログラムであるものとして説明するが、これらの機能ブロックの一部あるいは全ては、ハードウェアとして実現されてもよい。その場合、これらの機能ブロックを実現するための一つ以上の処理装置がサーバ101に追加され、記憶装置304等と接続されてもよいし、中央処理装置202がそのような一つ以上の処理装置によって置き換えられてもよい。また、本来は、これらの機能ブロックに加え、各機能ブロックの起動及び動作管理等を行うOSOperatingSystem及び制御プログラム等図示省略が存在する。本実施形態では、これらの機能ブロックの連係動作を適宜説明するが、OS及び制御プログラムがここで適宜説明された連係動作に必要となる機能ブロックの起動及び動作管理を行うことは自明であるので、これらOS及び制御プログラムについては説明及び記載を省略する。さて、本発明の実施例に係るサーバ101は、機能ブロックとして、図4に示すとおり、DB更新部401と、検索対象DB構築部402と、検索対象DB403と、質問生成ルール404と、質問間親子関係ルール405と、質問DB生成部406と、質問DB407と、検索データ生成ルール408と、検索DB生成部409と、検索DB410と、リクエストレスポンス送受信部411と、リクエストレスポンス処理部412と、質問回答生成部413と、検索部414と、検索対象データ取得部415と、を有する。DB更新部401は、検索対象の情報がユーザ又は管理者によって作成、更新、又は追加された際に、後述する検索対象DB構築部402、質問DB生成部406、及び、検索DB生成部409によって、後述する検索対象DB403、質問DB407、及び、検索DB410をそれぞれ作成、更新、又は追加する。検索対象DB構築部402は、DB更新部401の指示によって起動し、作成、更新、又は追加された検索対象の情報を元に、後述する検索対象DB403を作成、更新、又は追加する。検索対象DB403は、検索対象の情報を元に生成されたデータベースであり、請求項記載の検索対象データに相当する。なお、本検索対象DB403の詳細については後述する。質問生成ルール404は、実際にユーザに提示される質問文などを含み、ユーザに対する質問とその回答候補を生成するためのルールであり、後述の質問DB407を生成するために、後述する質問DB生成部406によって参照される。なお、本質問生成ルール404の詳細については後述する。質問間親子関係ルール405は、質問とその質問に対する回答候補を生成する際の質問間の親子関係を定義したルールであり、後述の質問DB407を生成するために、質問生成ルール404と共に、後述する質問DB生成部406によって参照される。本実施形態では、質問回答生成部413が、本質問間親子関係ルール405に基づいて、質問間の親子関係を考慮した質問順序でユーザに対して質問を提示できるように、質問DB407を生成することができる。なお、本質問間親子関係ルール405については後述する。質問DB生成部406は、DB更新部401の指示によって起動し、作成、更新、又は追加された質問生成ルール404及び質問間親子関係ルール405を元に、後述する質問DB407を作成、更新、又は追加する。質問DB407は、ユーザに対する質問とそれに対する回答候補とを対応付けて格納したデータベースであり、後述する質問回答データ生成手段に相当する質問回答生成部413により参照され、これに基づいてユーザに対する質問とそれに対する回答候補が選択される。なお、本質問DB407の詳細については後述する。検索データ生成ルール408は、請求項記載の検索データ生成ルールに相当し、後述する検索DB生成部409によって参照され、検索対象の情報を元に、後述する検索DB410を生成可能とする。なお、本検索データ生成ルール408の詳細については後述する。検索DB生成部409は、DB更新部401の指示によって起動し、作成、更新、又は追加された検索対象の情報と、検索データ生成ルール408とを元に、後述する検索DB410を作成、更新、又は追加する。検索DB410は、検索データ生成ルール408と検索対象の情報とを元に生成されたデータベースであり、後述する検索部414によって検索されるデータベースである。後述の通り、本検索DB410を質問DB生成部406で生成される回答に対応した検索用のデータ構造とすることで、検索部414は、ユーザが所望する情報を高速に検索可能となる。なお、上記質問DB、検索DB、及び、検索対象DBは、二次記憶装置204に構築され、それぞれ必要なときに記憶装置203に一時的に記憶されて使用されるように構成される。リクエストレスポンス送受信部411は、携帯端末104からのリクエストデータ及び携帯端末へのレスポンスデータを通信装置201経由で送受信する。特に、サーバ101は、本リクエストレスポンス送受信部411によって、情報検索に必要となるユーザに対する質問とその質問に対する回答候補を携帯端末104に送信し、携帯端末104で取得したユーザからの回答を受信する。リクエストレスポンス処理部412は、リクエストレスポンス送受信部411が送受信するデータ、すなわち、サーバ101と携帯端末104との間で送受信されるデータを処理する。具体的には、リクエストレスポンス処理部412は、携帯端末104で取得したユーザからの回答をリクエストレスポンス送受信部411経由で取得し、検索部414が検索DB410内の情報を検索する。そして、この検索結果の情報をキーとして、後述する検索対象データ取得部415が検索対象DB403から対応する情報を取得する。これによって実際の検索対象の情報からユーザの所望の情報が検索され、リクエストレスポンス処理部412は、その検索結果をリクエストレスポンス送受信部411経由で携帯端末104に送信する。また、リクエストレスポンス処理部412は、後述する質問回答生成部413で生成した情報検索に必要となるユーザに対する質問とその質問に対する回答候補をリクエストレスポンス送受信部411経由で携帯端末104に送信する。質問回答生成部413は、ユーザに対する質問とユーザからの回答候補を生成する。このとき、質問回答生成部413は、詳細については後述するが、質問DB407から、質問の優先度及び質問間の親子関係に基づいて、1つの質問と回答候補を選択することで、ユーザに対する質問とユーザからの回答候補を生成する。検索部414は、詳細は後述するが、リクエストレスポンス送受信部411とリクエストレスポンス処理部412によって取得したユーザからの回答を元に、検索DB410内の情報を検索する。検索対象データ取得部415は、検索部414による検索DB410内の情報の検索結果をキーとして、検索対象DB403から対応する情報を取得することで、実際の検索対象の情報からユーザの所望の情報を検索する。このとき、検索対象データ取得部415は、携帯端末104から位置情報又は時刻情報を取得して、これらに基づいて、検索対象DB403から取得する情報をフィルタリングしてもよい。次に、本実施形態に係る携帯端末104の機能ブロックの一例について説明する。図5は、本発明の第1の実施形態に係る携帯端末104の機能ブロックの一例を示す図である。なお、本実施形態においては、これらの機能ブロックの全てが中央処理装置302によって実行されるソフトウェアプログラムであるものとして説明するが、これらの機能ブロックの一部あるいは全ては、ハードウェアとして実現されてもよい。また、本来は、これらの機能ブロックに加え、各機能ブロックの起動及び動作管理等を行うOSOperatingSystem及び制御プログラム等図示省略が存在する。本実施形態では、これらの機能ブロックの連係動作を適宜説明するが、OS及び制御プログラムがここで適宜説明された連係動作に必要となる機能ブロックの起動や動作管理を行うことは自明であるので、これらOS及び制御プログラムについては説明及び記載を省略する。図5に示すとおり、本発明の実施例に係る携帯端末104は、入力部501と、リクエストレスポンス送受信部502と、リクエストレスポンス処理部503と、表示部504と、を有する。入力部501は、ユーザからの検索実行指示及び質問に対するユーザからの回答を入力する。これは、後述する表示部504によって表示装置305に表示された情報に対して、ユーザが入力装置303を操作した情報を取得することによって実現可能となる。リクエストレスポンス送受信部502は、通信装置301を介して、サーバ101からのユーザに対する質問とその回答候補、及び、検索対象の情報の検索結果を受信する。また、入力部501によって取得したユーザからの検索実行指示又は質問に対するユーザからの回答を、通信装置301を介してサーバ101に送信する。リクエストレスポンス処理部503は、リクエストレスポンス送受信部502で受信した、サーバ101からのユーザに対する質問とその回答候補及び検索対象の情報の検索結果を元に、図16で例示する質問及び検索結果の出力画面を生成する。なお、本出力画面の詳細については後述する。表示部504は、リクエストレスポンス処理部503で生成した質問及び検索結果の出力画面を表示装置305に表示する。次に、本実施形態に係る情報検索システムで使用するデータ及びデータ構造について説明する。まず、検索対象DB構築部402で生成され、検索対象データ取得部415で参照される検索対象DB403のデータ及びデータ構造について説明する。図6は、本発明の第1の実施形態に係る検索対象DB403のデータ及びデータ構造の一例を説明する図であり、特に、検索対象の情報がレストランの情報である場合の一例である。図6に示すとおり、検索対象DB403は、ID601と、店名602と、位置603と、説明604と、からなる。これら個々の情報はユーザ又は管理者が作成し、DB更新部401から入力される。ID601は、レストランを一意に識別するための識別子であり、本検索対象DB403に含まれる、個々のレストラン固有のIDである。店名602は、レストランの名称であり、店の名前である。位置603は、レストランの所在地であり、店の住所である。説明604は、レストランの説明であり、そのレストランの種類、料金必要な予算、又は駐車場の収容台数など、そのレストランの特徴及びアピールポイント等の売り文句又はキャッチフレーズなどである。レコード611乃至613は、それぞれ、個々のレストランに関する情報を含む。すなわち、レコード611乃至613は、それぞれ、検索対象DB403におけるレコードであり、601乃至604が、フィールドとなっている。本実施形態では、ユーザ又は管理者から、レストランの情報が入力され、それらがDB更新部401によって検索対象DB構築部402に通知されると、検索対象DB構築部402が、対応するレコード及びフィールドの情報を検出して、各レコード及びフィールドのデータを作成、追加、又は更新することで検索対象DB403を構築する。なお、図6には、上記のようにレストランに関する情報を含む検索対象DB403を例示し、以下の本実施形態の説明もこの例に沿って行う。これは、例えばこれから食事をしようとしているユーザがレストランを探すために本情報検索システムを使用することを想定した例である。しかし、本発明は、レストラン以外の対象、例えば、任意の店舗、施設又はイベント等に関する情報についても適用することができる。次に、検索DB生成部409によって参照され、検索DB410を生成するための検索データ生成ルール408のデータ及びデータ構造について説明する。図7は、本発明の第1の実施形態に係る検索データ生成ルール408のデータ及びデータ構造の一例を説明する図であり、特に、検索対象の情報がレストランの情報である場合の一例である。図7に示すとおり、検索データ生成ルール408は、グループ名701と、属性702と、定義703と、からなる。これら個々の情報はユーザ又は管理者が定義する。グループ名701は、検索対象の情報をグループ分けする際のグループ名であり、例えば、検索対象の情報がレストランに関する情報の場合、レストランが扱う料理の種別として肉全般又は魚全般、レストランでかかる大まかな予算として、予算高、予算中又は予算低等をグループ名として記述すればよい。これらは本検索データ生成ルール408を作成するユーザ又は管理者が任意に記述することができる。属性702は、グループ名701のグループが属する属性であり、例えば、グループ名が肉全般又は魚全般等の場合には、属性702として料理種類等を記述し、グループ名が予算高、予算中又は予算低等の場合には、予算等を属性として記述すればよい。これらについてもユーザ又は管理者がグループ名701に記載したグループ名に基づいて任意の属性を記述すればよい。定義703は、検索対象の情報、すなわち本例の場合、レストランに関する情報が、グループ名701に記載されたグループに属するための定義であり、レストランの説明すなわち図6における説明604に記載されている説明文からグループを判断するための定義である。例えば、レコード711の場合、定義703として焼肉|とんかつ|を記載することで、レストランの説明に焼肉というキーワード又はとんかつといったキーワードが含まれていた場合に、そのレストランに関する情報が肉全般というグループ名の情報に属することを定義している。また、レコード712では、レストランの説明に寿司というキーワード又は刺身といったキーワードが含まれていた場合に、そのレストランに関する情報が魚全般というグループ名の情報に属することを定義している。同様に、レコード714、715、及び716では、レストランの説明に予算が書かれていて、この予算が5000円以上の場合には、予算高のグループに、書かれていた予算が3000円以上5000円未満の場合には予算中のグループに、3000未満の場合には予算低のグループに、当該レストランに関する情報が属することを定義している。なお、本例では、定義703において、レストランの説明からキーワードを解析し、定義703で記述されたキーワードと照合して、検索対象の情報がグループに属するか否かを判断できるようにしているが、例えば、検索対象の情報がすでに料理種類又は予算等の属性又は識別子を持っている場合には、定義703において、これらを参照することによってグループを判断できるようにしてもよい。次に、検索DB生成部409によって生成され、検索部414で参照される検索DB410のデータ及びデータ構造について説明する。図8は、本発明の第1の実施形態に係る検索DB410のデータ及びデータ構造の一例を説明する図であり、特に、図7の検索データ生成ルール408に基づいた検索DB410の例である。図8に示すとおり、検索DB410は、ID801と、属性802乃至806と、からなる。ID801は、レストランを一意に識別するための識別子であり、レストランごとに図6の検索対象DB403におけるID601で記した個々のレストラン固有のIDと一致したIDである。属性802乃至806には、検索データ生成ルール408の定義703として記載された各属性が列挙され、それぞれの属性値として、検索データ生成ルール408のグループ名を格納する。検索DB410は、検索DB生成部409によって、DB更新部401経由で入力される検索対象の情報に対して、検索データ生成ルール408を参照して作成される。すなわち、検索DB生成部409は、まず、検索データ生成ルール408の属性702に記載されている全ての属性を検索DB410の属性802乃至806として列挙する。次に、検索DB生成部409は、DB更新部401で入力した各レストランの情報に対して、検索対象DB403で付したID601と同じIDをレコード811乃至813に付していく。当該IDで識別される各レストランの説明すなわち図6における説明604に記載されている説明文の中に、検索データ生成ルール408における定義703が含まれていた場合に、検索DB生成部409は、対応する属性を示すフィールドに、定義703が該当したグループ名を記していく。このようにして、検索DB410が生成される。これによって、例えば、図6におけるレコード611の情報が入力された場合には、図8におけるレコード811が生成される。具体的には、図6におけるレコード611の場合、ID1をID801に格納し、説明文炭火で焼く焼肉屋。予算6000円に、図7の検索データ生成ルール408におけるレコード711、714、及び717の定義703で定義されるキーワードすなわち焼肉及び予算6000円が含まれるため、これらのレコードの属性である料理種類と、予算と、肉料理のフィールドそれぞれ図8におけるフィールと802、803、804に、それぞれレコード711、714、及び717のグループ名701である肉全般、予算高、焼肉を格納することによってレコード811が完成する。検索DB生成部409は、これを全てのレストランについて実施することで、検索DB410を完成させる。なお、図8に示す検索DB410は、検索対象DB403の検索を容易にするために作成されるものである。具体的には、検索対象DB403に含まれる情報を、検索データ生成ルール408に基づいて、回答候補に対応するように分類することによって、検索DB410が作成される。後述するように、検索DB410を対象として、ユーザによって選択された回答をキーとした検索が実行されるが、それによって得られた検索結果に対応する検索対象DB403のデータが最終的な検索結果として取得される。例えば、検索DB410の検索によってレコード811が取得された場合、それに対応するレコード611の情報が検索結果として取得される図14Aのステップ1402、1403等参照。次に、質問DB生成部406によって参照され、質問DB407を生成するための質問生成ルール404のデータ及びデータ構造について説明する。図9は、本発明の第1の実施形態に係る質問生成ルール404のデータ及びデータ構造の一例を説明する図であり、特に、検索対象の情報がレストランの情報である場合の一例である。図9に示すとおり、質問生成ルール404は、質問名901と、優先度902と、質問文903と、回答候補904と、からなり、レコード911乃至915がそれぞれユーザに対する質問の内容を定義している。なお、これら個々の情報はユーザあるいは管理者が定義する。質問名901は、ユーザに対する質問を一意に識別するための名称であり、本質問生成ルール404で定義する各質問及び後述する質問DB407における各質問を個別に識別するための識別子としても使用する。また、本質問名901は、検索データ生成ルール408における属性702と対応させ、この記述と一致させる。これによって、後述のとおり、検索部414がユーザからの質問に対する回答を元に検索DB410を検索することで、ユーザの回答に合った情報を高速に検索することが可能となる。優先度902は、本質問生成ルール404で定義されるユーザに対する質問の優先度又は重要度を示す値であり、例えば数値が小さいほど優先度又は重要度が高いことを示している。本実施形態では、後述するとおり、質問回答生成部413が、本優先度902で記載された優先度にしたがって、ユーザに対する質問を生成する。なお、優先度902の値は、例えば、予め本情報検索システムの管理者等によって設定される。管理者等は、早い段階で提示したほうがよいと思われる質問例えば、以後の質問の方向性を左右する重要な質問等の優先度が高くなるように優先度902を設定することができる。複数の質問に同一の優先度が設定されてもよい。適切な優先度が設定されていれば、それに従ってユーザに対する質問を生成することによって、ユーザが所望する情報を的確に絞り込むことができ、それによってユーザの利便性が向上する。なお、優先度に基づく具体的な質問の生成提示の手順については後述する図14B参照。質問文903は、ユーザに提示される質問文である。後述するとおり、本実施形態では、質問文903で記載された文がユーザに提示されるように情報検索システムを構成する。回答候補904は、ユーザに提示される質問に対して、同時にユーザに提示される回答候補である。後述するとおり、本実施形態では、質問文903で記載された文がユーザに提示された際、同時に回答候補904で記載された回答候補又はその一部がユーザに提示されるように情報検索システムを構成する。ここで、本実施形態では、特に本回答候補904における、は複数回答候補がある場合のデリミタであり、さらに;の後ろがユーザに提示される回答候補文字列、;の前が回答に対応して検索する検索DB410のグループ名である。したがって、例えば、図9におけるレコード911の質問では、回答候補904として、肉全般;肉、魚全般;魚、と記載されているが、これは、ユーザに対する何をメインにするという質問文903に対して、肉及び魚等の回答候補文字列がユーザに提示されることを想定している。そして、例えばユーザから肉と回答されたときすなわち、肉が選択されたとき、その回答のグループ名である肉全般と、質問名901に記載されている料理種類をキーとして、検索部414が検索DB410から検索することが可能である。すなわち、検索部414は、検索DB410の料理種類フィールド図8におけるフィールド802が肉全般となっているレコード図8におけるレコード811を検索することで、ユーザの回答に基づく情報を検索する。なお、検索部414における検索動作については後述する。次に、質問DB生成部406が質問DB407を生成するために参照する質問間親子関係ルール405のデータ及びデータ構造について説明する。図10は、本発明の第1の実施形態に係る質問間親子関係ルール405のデータ及びデータ構造の一例を説明する図であり、特に、検索対象の情報がレストランの情報である場合の一例である。図10に示すとおり、質問間親子関係ルール405は、親質問名1001と、親質問回答1002と、子質問名1003と、からなり、これら個々の情報はユーザ又は管理者が定義する。親質問名1001は、質問間の親子関係を定義する際の親の質問名であり、質問生成ルール404において、親の質問として定義する質問の質問名901と一致させる。親質問回答1002は、親質問名1001の質問がユーザに対して行われた際のユーザからの回答であり、質問生成ルール404における回答候補904と一致させる。子質問名1003は、親質問名1001の質問がユーザに対してなされ、親質問回答1002の回答がユーザからなされたときに、次に質問すべき子質問の質問名であり、1011の例では、ユーザに料理種類の質問がされて、ユーザからの回答が肉であった場合に、次に肉料理の質問がなされることを示している。図10に示す親子関係は、優先度902と同様に、管理者等によって予め設定される。親質問の回答が示すカテゴリをさらに細分化するような質問が子質問となるように親子関係が設定されることが望ましい。例えば、レコード1011に示すように親質問名料理種類に対する回答が肉すなわち肉料理全般であった場合の子質問肉料理は、焼肉、とんかつといった、肉料理のカテゴリをさらに細分化する回答候補に対応する。このように設定された親子関係に従う順序で質問を提示することによって、質問の流れが自然になり、ユーザにストレスを感じさせずに所望の情報を絞り込むことができる。なお、親子関係に基づく具体的な質問の生成提示の手順については後述する図14B参照。本質問間親子関係ルール405及び先に示した質問生成ルール404に従って、質問DB生成部406が、後述する質問DB407を生成する。この質問DB407によって、後述の通り、質問回答生成部413が、質問間の親子関係に沿った順序で質問をユーザに提示可能となる。次に、質問DB生成部406で生成され、質問回答生成部413で参照される質問DB407のデータ及びデータ構造について説明する。図11は、本発明の第1の実施形態に係る質問DB407のデータ及びデータ構造の一例を説明する図であり、特に、検索対象の情報がレストランの情報である場合の一例である。図11に示すとおり、質問DB407は、質問名1101と、親質問名1102と、優先度1103と、質問文1104と、回答数1105と、回答候補とその回答候補がユーザから選ばれた場合の子質問名1106乃至1109と、からなる。これらは質問生成ルール404及び質問間親子関係ルール405を参照して、質問DB生成部406が生成する。質問名1101は、質問生成ルール404における質問名901であり、質問DB生成部406が本質問DB407を作成する際に、質問生成ルール404における質問名901を参照して生成する。親質問名1102は、質問名1101の質問に対する親質問が存在する場合の親質問名である。質問DB生成部406は、本質問DB407を作成する際に、質問名1101の質問名を、質問間親子関係ルール405の子質問名1003から探し出し、これが見つかった場合に、その質問間親子関係ルール405における親質問名1001を格納することで親質問名1102を生成する。なお、質問名1101の質問名が質問間親子関係ルール405の子質問名1003に見つからなかった場合には空欄にして置けばよい。優先度1103は、質問生成ルール404における優先度902であり、質問DB生成部406が、本質問DB407を作成する際に、質問名1101に対応する質問名901の優先度902を格納することによって生成する。質問文1104は、質問生成ルール404における質問文903であり、質問DB生成部406が、本質問DB407を作成する際に、質問名1101に対応する質問名901の質問文903を格納することによって生成する。回答数1105は、ユーザに提示される回答候補の数であり、質問DB生成部406が本質問DB407を作成する際に、質問名1101に対応する回答候補904における回答候補数を数えて、その数を格納することによって生成する。特に、本実施形態の場合、図9で示したとおり、回答候補904は、、を各回答候補のデリミタとしているため、質問DB生成部406は、回答候補904の文字列を、によって分割した分割数を格納することによって生成できる。回答候補及び子質問名図11のフィールド1106乃至1109は、それぞれユーザに対して提示される1つの回答候補とその回答候補が選ばれた際の子質問とのセットを回答数1105分並べた構成となっている。質問DB生成部406は、本質問DB407を作成する際に、質問名1101に対応する回答候補904におけるデリミタ、で分割された各回答候補を本回答候補1106等に格納するとともに、その回答候補を質問間親子関係ルール405の親質問回答1002から探し出し、これが見つかった場合に、その質問間親子関係ルール405における子質問名1003を子質問名1107等に格納することで、回答候補及び子質問名フィールド1106乃至1109を生成する。なお、回答候補に対する子質問が見つからなかった場合には、その回答候補に対応する子質問名のフィールドを空欄とすればよい。本質問DB407によって、後述するとおり、質問回答生成部413がユーザに対する質問及び回答候補を生成することが出来るだけでなく、質問の順序も制御可能となる。次に、本発明の実施形態に係る情報検索システムの動作を説明する。本実施形態に係る情報検索システムにおいては、検索対象の情報が作成、追加、更新された場合、あるいは検索データ生成ルール408、質問生成ルール404、及び、質問間親子関係ルール405等のルールが作成、追加、更新された場合に、サーバ101が、検索対象DB403、質問DB407、及び、検索DB410を更新する。また、サーバ101と携帯端末104が連動してユーザが所望する情報を検索する。まず、サーバ101におけるデータベース更新処理動作を説明する。図12は、本発明の第1の実施形態に係るサーバ101におけるデータベース更新処理動作の一例を説明する動作フロー図である。図12aに示すとおり、サーバ101は、タイマ図示省略などによって定期的にDB更新対象データがあるか否かを判断しステップ1201、DB更新対象データがある場合に、DB更新部401を起動してDBを更新しステップ1202、DB更新対象データが無い場合には、DB更新作業は行わない。なお、サーバ101は、検索対象の情報、検索データ生成ルール408、質問生成ルール404、又は、質問間親子関係ルール405のいずれかが作成、追加、又は更新された場合にDB更新対象データがあると判断し、これらのいずれも作成、追加、又は更新されていない場合には、DB更新対象データが無いと判断する。DBの更新はDB更新部401を起動することで、図12bの通り実施される。また、本DB更新処理は、必ずしも定期的にDB更新対象データがあるか否かを判断することで実施される必要は無い。例えば、管理者又はユーザによって、検索対象の情報、検索データ生成ルール408、質問生成ルール404、又は、質問間親子関係ルール405のいずれかが作成、追加、又は更新された場合にサーバ101がDB更新部401を起動して本DB更新処理を実施してもよい。さて、本実施形態では、DB更新部401が起動されると、図12bに示すとおり、以下の処理が実行される。まず、サーバ101は、検索対象の情報が作成、追加、又は更新されたか否かを判断しステップ1203、検索対象の情報が作成、追加、又は更新された場合には、検索対象DB構築部402を起動して、検索対象DB403を生成するステップ1204。検索対象DB構築部402は、DB更新部401から、ユーザ又は管理者によって入力された各レストランのID601、店名602、位置603及び説明604に対応する情報を元に、これらを所定のフィールドに格納することで、検索対象DB403を構築する。なお、検索対象DB403を作成する際、例えば、検索対象の情報が追加又は更新された場合には、当該追加又は更新された情報に関してのみ検索対象DB403を追加あるいは更新すればよく、検索対象の情報が新たに作成された場合には検索対象の情報すべてについて検索対象DB403を生成すればよい。次に、DB更新部401は、検索対象の情報又は検索データ生成ルール408が作成、追加、又は更新されたか否かを判断しステップ1205、これらのいずれかが作成、追加、又は更新された場合には、検索DB生成部409を起動して、検索DB410を生成するステップ1206。検索DB生成部409は、DB更新部401から、ユーザ又は管理者によって入力された各レストランの情報と検索データ生成ルール408を元に検索DB410を生成する。具体的には、検索DB生成部409は、まず、検索データ生成ルール408の属性702に記載されている全ての属性を検索DB410の属性802乃至806として列挙し、次に、DB更新部401で入力した各レストランの情報に対して、検索対象DB403で付したID601と同じIDをレコード811乃至813のID801として付し、当該IDで識別される各レストランの説明すなわち図6における説明604に記載されている説明文の中に、検索データ生成ルール408における定義703が含まれていた場合に、対応する属性を示すフィールドに、定義703が該当したグループ名を記していくことで、検索DB410を生成する。例えば、図6におけるレコード611の情報が入力された場合には、図8におけるレコード811が生成される。具体的には、図6におけるレコード611の場合、検索DB生成部409は、ID1をID801に格納する。説明文炭火で焼く焼肉屋。予算6000円に、図7の検索データ生成ルール408におけるレコード711、714、及び717の定義703で定義されるキーワードが含まれるため、検索DB生成部409は、これらのレコードの属性である料理種類、予算及び肉料理のフィールドそれぞれ図8におけるフィールド802、803、804に、それぞれレコード711、714、及び717のグループ名701である肉全般、予算高、及び焼肉を格納する。これによってレコード811が完成する。検索DB生成部409は、上記の処理を全てのレストランについて実施することで、検索DB410を完成させる。なお、検索DB410を作成する際、例えば、検索対象の情報が追加又は更新された場合には、当該追加又は更新された情報に関してのみ検索DB410を追加又は更新すればよいが、検索対象の情報が新たに作成された場合又は検索データ生成ルールが作成、追加、更新された場合には検索対象の情報すべてについて検索DB410を生成するとよい。続いて、DB更新部401は、質問生成ルール404、又は、質問間親子関係ルール405のいずれかが作成、追加、又は更新されたか否かを判断しステップ1207、これらのいずれかが作成、追加、又は更新された場合には、質問DB生成部406を起動して、質問DB407を生成するステップ1208。なお、質問DB生成部406は、以下の通り質問DB407を生成する。1質問生成ルール404における質問名901を質問名1101に格納する。2質問名1101の質問名を、質問間親子関係ルール405の子質問名1003から探し出して、これが見つかった場合に、その質問間親子関係ルール405における親質問名1001を親質問名1102に格納し、見つからなかった場合には親質問名1102を空欄とする。3質問名1101に対応する質問名901の優先度902を優先度1103に格納する。4質問名1101に対応する質問名901の質問文903を質問文1104に格納する。5質問名1101に対応する回答候補904における回答候補数を数えて、その数を回答数1105に格納する。これは、本実施例の場合、回答候補904の文字列を、によって分割した分割数を回答数1105に格納することによって実現できる。6質問名1101に対応する回答候補904における各回答候補の文字列を回答候補に格納するとともに、その回答候補を質問間親子関係ルール405の親質問回答1002から探し出し、これが見つかった場合に、その質問間親子関係ルール405における子質問名1003を子質問名に格納する。これは、本実施例の場合、デリミタ、で分割された回答候補毎に、回答候補1、回答候補2等に格納し、それらに対応する子質問名を子質問名1、子質問名2等に格納する。なお、回答候補に対する子質問が見つからなかった場合には、空欄とする。以上の処理を質問DB生成部406が質問生成ルール404における全ての質問名901に対して実施することで、質問DB407が生成できる。次に、サーバ101と携帯端末104が連動してユーザが所望する情報を検索する際のサーバ101と携帯端末104の動作を説明する。図13は、本発明の第1の実施形態においてユーザが所望する情報を検索する際のサーバ101と携帯端末104の動作の一例を説明する動作フロー図である。なお、本情報検索システムでは、図13に示す動作によって、ユーザに対する質問と回答候補の提示とユーザからの回答の入力を繰り返すことによって、検索対象の情報を検索して絞り込んでいく。図13に示すとおり、本実施例に係る情報検索システムでは、まず、携帯端末104が、ユーザに提示された質問と、回答候補に対するユーザからの回答とを入力する。これは、携帯端末の表示部504及び表示装置305に表示された回答候補を、ユーザが入力装置303及び入力部501を介して選択し、当該入力装置303及び入力部501が、選択された回答候補を回答として取得することによって実現できる。ただし、最初の検索では、ユーザに提示される質問及び回答候補は存在せず、ユーザからの検索要求が入力されるステップ1301。なお、この際の表示画面の詳細については後述する。次に、携帯端末104のリクエストレスポンス処理部503は、ユーザに提示された質問とユーザが入力した回答をセットにして、サーバ101に対する検索リクエスト生成し、生成したリクエストを、リクエストレスポンス送受信部502及び通信装置301を介して、サーバ101に送信するステップ1302。なお、携帯端末104のリクエストレスポンス処理部503は、1回目の検索では、式1の通り、空のリクエストを生成し、2回目以降の検索では、式2の通り、質問と回答のセットをつなげたリクエストを生成する。リクエスト=式1リクエスト=2回目の質問名2回目の回答3回目の質問名3回目の回答式2例えば、2回目の質問名が料理種類で、その回答が肉の場合には、リクエストレスポンス処理部503は、リクエスト=料理種類肉全般;肉というリクエストを生成し、3回目の質問名が肉料理で、その回答が焼肉の場合には、リクエストレスポンス処理部503は、リクエスト=料理種類肉全般;肉肉料理焼肉;焼肉というリクエストを生成する。次に、サーバ101が、通信装置201及びリクエストレスポンス送受信部411を介して、携帯端末104からリクエストを受信するステップ1303。サーバ101のリクエストレスポンス処理部412は、受信したリクエストを処理し、ユーザからの回答を基にした検索対象の情報に対する検索結果と、ユーザに対する次の質問と、回答候補と、を基にしたレスポンスを生成するステップ1304。なお、本リクエストレスポンス処理部412の処理内容の詳細については後述するが、本リクエストレスポンス処理部412で生成したレスポンスは、例えば、式3の通りである。レスポンス=次の質問名次の質問文次の回答候補今回の回答による検索結果式3ここで、次の質問名は、例えば、予算等であり、次の質問文は、予算は等、図11における質問DB407の質問名1101に対応する質問文1104である。また、次の回答候補は、図11における質問DB407の質問名1101に対応する回答候補1~nを、で接続した文字列であり、例えば予算高;かなりある、予算中;普通等である。また、今回の回答による検索結果は、検索結果の情報を文字列として接続したものであり、例えば、レストランに関する情報の場合、<検索結果1>レストランの情報<検索結果2>レストランの情報<検索結果3>のように各検索結果のレストランの情報ごとにタグ付けしてそれらを接続した文字列である。続いて、サーバ101は、リクエストレスポンス送受信部411及び通信装置201を介して、リクエストレスポンス処理部412で生成したレスポンスを携帯端末1306に送信してステップ1305、サーバ101による処理を終了する。一方、携帯端末104は、通信装置301及びリクエストレスポンス送受信部502を介して、サーバ101から送信されたレスポンスを受信するステップ1306。リクエストレスポンス処理部503は、レスポンスに含まれる今回の回答による検索結果と次の質問文及び次の回答候補を携帯端末104の表示部504及び表示装置305に表示するステップ1307。なお、次の回答候補を表示する際には、デリミタ、を検出することにより個々の回答候補に分割し、さらに、;の後の回答候補文字列のみを表示すると良い。なお、表示画面の一例については後述する図15参照。続いて、携帯端末104は、表示部504及び表示装置305に表示された画面に基づいて、入力装置303及び入力部501を介して、ユーザから検索終了の指示があったか否かを判断しステップ1308、ユーザから検索終了指示があった場合には、携帯端末104における処理を終了する。一方、携帯端末104は、上記ステップ1308の判断の結果、ユーザから検索終了指示が無かった場合には、ステップ1301に戻り、先にステップ1307で表示された次の質問文及び次の回答候補に対するユーザからの回答を入力し、上記ステップ1301乃至1308を実行する。このように、本情報検索システムは、ステップ1307においてユーザから検索終了指示があるまでステップ1301乃至1308を繰り返すことで、ユーザに対する質問を提示し、提示された質問に対する回答を元に検索対象の情報を検索及び絞り込むことが出来る。次に、本発明の第1の実施形態に係るサーバ101におけるリクエストレスポンス処理部412の処理内容の詳細を説明する。図14Aは、本発明の第1の実施形態に係るサーバ101におけるリクエストレスポンス処理部412の処理内容を説明する動作フロー図である。図14Aに示すとおり、サーバ101におけるリクエストレスポンス処理部412は、通信装置201及びリクエストレスポンス送受信部411を介して、携帯端末104から受信したリクエストが空のリクエスト、すなわち式1で示したリクエスト=であるか否かを判断するステップ1401。受信したリクエストが空のリクエストであると判断した場合には、リクエストレスポンス処理部412は、後段のステップ1402の検索実行及びステップ1403の検索対象データ取得を行わず、ステップ1404の処理に移る。一方、上記ステップ1401における判断の結果、携帯端末104から受信したリクエストが空のリクエストではない、すなわち、式2で示す、例えばリクエスト=料理種類肉全般;肉肉料理焼肉;焼肉など、リクエスト=の後に文字列があると判断された場合には、受信したリクエストにおけるユーザからの回答肉全般;肉及び焼肉;焼肉等における;の前の文字列、すなわち回答に対応するグループ名に基づいて、検索部414が検索DB410を検索するステップ1402。具体的には、リクエストが例えばリクエスト=料理種類肉全般;肉肉料理焼肉;焼肉の場合には、検索部414は、SELECTFROMtableWHERE料理種類=肉全般AND肉料理=焼肉などのSQL文で検索DB410を検索する。これによって、例えば図8の検索DB410の場合には、レコード811等を容易に検索することが可能となる。次に、サーバ101におけるリクエストレスポンス処理部412は、検索部414による検索DB410の検索結果を元に、検索対象データ取得部415を用いて検索対象DB403を検索し、検索結果に対する全情報を取得するステップ1403。これは、検索部414による検索DB410の検索結果のID801と同一のIDをもつレコードの各フィールドのデータを取得することによって実現する。例えば、上記の例で検索結果としてレコード811が検索された場合、このレコード811のID1と同一のID1のレコードを検索対象DB403から取得し、そのレコードの各フィールドの文字列をフィールド名でタグ付けた文字列をユーザに提示する検索結果とする。なお、本実施形態に係る情報検索システムでは必ずしも、本ステップ1403の処理を行う必要は無く、ステップ1402で取得した検索DB410の検索結果を基に各フィールドの文字列をフィールド名でタグ付けた文字列をユーザに提示する検索結果として取得してもよいし、単に検索結果の件数を元に検索結果は○○件ですという文字列をユーザに提示する検索結果として取得してもよい。この場合、ユーザには検索対象の全ての情報は提示されないが、ユーザから全情報を提示するように指示された場合にリクエストレスポンス処理部412が上記ステップ1403に相当する処理を行い、全情報を提示すれば良い。これによって、検索及び絞込みを行うために要する全処理時間のうち、各検索及び検索結果の表示に係る処理時間を低減することが可能となる。さて、サーバ101におけるリクエストレスポンス処理部412は、次にステップ1404において、質問回答生成部413を用いて、ユーザに提示する質問及び回答候補を生成する。これは、基本的には質問DB407からまだユーザに提示されていない質問のレコードを選択することによって実現する。この処理について、図14Bを参照して説明する。図14Bは、本発明の第1の実施形態に係るサーバ101における質問回答生成部413の処理内容を説明する動作フロー図である。質問回答生成部413は、質問DB407における優先度1103に基づき、高い優先度のレコードを優先的に選択するステップ1411。例えば、優先度1のレコードA、B、Cと、優先度2のレコードD、E、Fと、優先度3のレコードG、H、Iが存在し、これらがまだユーザに対する質問として選択されていない場合、質問回答生成部413は、まず、レコードA、B、Cの中から任意のレコードを選択する。そして、ここで例えばレコードAが選択された場合には、次にユーザに提示する質問を選択するときには、質問回答生成部413は、優先度1のレコードのうちまだ選択されていないものと、次に優先度の高い優先度2のレコードと、の中から任意のレコードを選択する。すなわち、先の例では、質問回答生成部413は、レコードB、C、D、E、Fの中から任意のレコードを選択する。そして、例えばここでレコードEが選択された場合には、さらに次にユーザに提示する質問を選択するときには、質問回答生成部413は、優先度1及び2のレコードと次に優先度の高い優先度3のレコードとのうちまだ選択されていないものの中から任意のレコードを選択する。上記の手順における任意のレコードの選択は、例えば、サーバ101が発生させた擬似的なランダム値を用いて、各レコードが選択される確率が概ね均等になるように実行されてもよい。上記の手順によれば、最初の質問を選択するときには、選択可能な質問に優先度の低いものが含まれておらず、質問を繰り返す回数が多くなるほど、より優先度の低い質問が選択可能となる。しかし、質問を繰り返す回数が多くなっても、優先度の高い質問は依然として選択可能であり、それらのうちどれを選択するかはランダムに行われる。このように、概ね優先度に従う順序で質問がされるものの、質問の選択にランダム性が加味されることによって、優先度の高い質問からいつも同じ順序で質問されるためにユーザが本情報検索システムを使用することに飽きてしまうことを防止することができる。上記のような優先度に基づく質問の選択方法第1の選択方法は一例であり、質問回答生成部413は、これ以外の方法によって質問を選択してもよい。例えば、質問回答生成部413は、必ず優先度が高い質問から順に選択し、同一の優先度の質問が複数存在する場合には、それらの質問をランダムな順序で選択してもよい。この場合、優先度1の質問がランダムに順次選択され、優先度1の質問が全て選択されたら、次に優先度2の質問がランダムに順次選択される。より低い優先度の質問も同様の手順で順次選択される。この方法第2の選択方法によって、優先度に従いながらも、質問の順序に変化が生じるため、ユーザが飽きることを防止できる。それぞれの質問の選択方法が採用された場合にユーザが感じる使い勝手のよさは、選択可能な質問の数、それぞれの質問に対して選択可能な回答候補の数、設定された優先度の階級数例えば1から3までの優先度が設定されているか、又は1から10までの優先度が設定されているか、等、それぞれの優先度が設定された質問の数例えば優先度1が付与された質問数が3個であるか20個であるか、等、検索対象の情報の種類に起因する優先度の設定しやすさ、といった種々のパラメータに依存する。このため、質問回答生成部413は、これらのパラメータに応じて自動的に質問の選択方法を決定してもよい。具体的には、例えば、各優先度が設定された質問の数が少ない場合には、第2の選択方法を採用すると質問の順序のバリエーションが限られるためにユーザが飽きるおそれがある。したがって、この場合には第1の選択方法を採用することによって質問の順序のバリエーションを増やすことが望ましい。反対に、各優先度が設定された質問の数が多い場合には、第2の選択方法を採用することによって、十分なバリエーションを確保しつつ、優先度に忠実な順序で質問を提示することによって的確に情報を絞り込むことができる。このため、質問回答生成部413は、例えば各優先度が設定された質問の数が所定の閾値を超えるか否かに基づいて質問の選択方法を決定してもよい。なお、質問DB407における優先度が空欄となっているレコードは優先度が最も低いものとして扱えばよいが、直前の質問に対する回答に対して、子質問名1107が記載されていた場合には、質問回答生成部413は、上記優先度によるレコードの選択よりも優先的に当該子質問名1107又は1109等で記載された質問名1101のレコードを選択する。すなわち、例えば、ある時点でレコード1111の質問を選択してユーザに質問を提示して、ユーザからの回答が魚であった場合には、回答候補魚全般;魚に当たる子質問名1107として魚料理が記載されているため、質問回答生成部413は、優先度によるレコードの選択は行わず、次の質問のレコードとして、質問名1101が魚料理である、レコード1113を選択する。そして、質問回答生成部413は、上記選択したレコードにおける質問名と質問文を取得する。結局、質問回答生成部413は、質問の親子関係が設定されている場合にはそれに従って質問を選択し、質問の親子関係が設定されていないが優先度が設定されている場合にはそれに従って質問を選択し、親子関係優先度のいずれも設定されていない場合には任意の質問を例えばランダムに選択する。次に、質問回答生成部413は、回答候補として、選択したレコードに対する各回答候補1106や1108等に対する検索結果が0件とならない回答候補を有効化する。例えば、質問回答生成部413は、上記ステップ1402で行ったのと同様にこれまでのユーザからの回答に追加して、上記選択したレコードにおける各回答候補1106又は1108等がユーザから選択されたと仮定して、ステップ1402と同様の動作で、検索部414により検索DB410を検索した結果数を取得するステップ1412。次に、質問回答生成部413は、1件以上の検索結果が取得されたか否かを判定するステップ1413。質問回答生成部413は、検索結果の数が0件とならなかった回答候補を有効化するステップ1414。上記選択したレコードにおける全ての回答候補による検索結果の数が0件となった場合には、質問回答生成部413は、この質問自体のレコードを無効化しステップ1415、改めてステップ1411にて別の質問のレコードを選択する。例えば、ステップ1411においてレコード1112すなわち肉料理が選択された場合、提示されるはずの回答候補は焼肉及びとんかつ等である。しかし、レコード1112についてステップ1412の検索が行われ、ステップ1413において検索結果の数が0件であると判定された場合、焼肉又はとんかつ等のいずれの回答候補が選択されたとしても、それに対する検索結果は0件となる。すなわち、ユーザは、どんな肉料理がいいレコード1112の質問文1114という質問に対して、提示された回答候補焼肉又はとんかつ等のいずれを選択しても1件も検索結果を得ることができない。このような質問を提示されたユーザは、時間と手間の浪費を強いられ、不快感を持つ。これを防ぐため、ステップ1412の検索によって検索結果が得られないことが判明した質問はユーザに提示しないよう、質問回答生成部413は当該質問を無効化しステップ1415、別の質問例えばレコード1113の魚料理等を選択するステップ1411。一方、上記の例のステップ1413において検索結果の数が1件以上あると判定された場合であっても、いずれかの回答候補に関する検索結果は0件となる場合、例えば、回答候補焼肉が選択された場合には1件以上の検索結果が得られるが、とんかつが選択された場合には1件も検索結果が得られない場合がある。このように検索結果が得られない回答候補を選択したユーザは、時間と手間の浪費を強いられ、不快感を持つ。これを防ぐため、ステップ1412の検索によって検索結果が得られないことが判明した回答候補はユーザに提示しないよう、質問回答生成部413は1件以上の検索結果が得られる回答候補を有効化するステップ1414。後述するステップ1405において、リクエストレスポンス処理部412は、有効化されなかったすなわち無効な回答候補を含まないレスポンスを生成する。その結果、有効化されなかった回答候補は図13のステップ1307において表示されないため、ユーザに選択されることはない。再び図14Aを参照する。質問回答生成処理ステップ1404が終了すると、次に、サーバ101におけるリクエストレスポンス処理部412は、レスポンスを生成してステップ1405、本リクエストレスポンス処理部412における処理を完了する。例えば、リクエストレスポンス処理部412は、式3で示したレスポンスの形式に対して、上記ステップ1403で得られた検索結果に対する情報をレストランごとに上述の通りタグで接続して今回の回答による検索結果とすると共に、上記ステップ1404で得られた質問名を次の質問名、質問文を次の質問文、有効な回答候補を次の回答候補とすることでレスポンスを生成する。なお、先に示したとおり、複数の有効な回答候補例えば回答候補1~nを次の回答候補とする場合には各回答候補を、で接続した文字列を生成すればよい。次に、本実施例に係る情報検索システムでユーザに提示される表示画面の一例を説明する。図15は、本発明の第1の実施形態に係る携帯端末104における表示部504を介して表示装置305の表示画面に表示される画面例を示す図である。図15aは、本実施例に係る携帯端末104の検索初期画面例であり、表示画面1501は、表示装置305によって表示される。図15aに示すとおり、初期画面では、検索開始ボタン1502が表示され、ユーザが本検索開始ボタン1502を押下することによって、携帯端末104が、ユーザからの検索要求の入力があったと判断することができる。図15bは検索及び絞り込みにおいて、質問と回答候補及びこれまでの絞り込み結果を提示する画面例であり、表示画面1501は、表示装置305によって表示される。図15bに示す質問文提示領域1503には、サーバ101からのレスポンス式3における、次の質問文に含まれる文字列が表示される。ボタン1504及び1505は、回答候補である。例えば、携帯端末104は、サーバ101からのレスポンス式3における、次の回答候補に含まれる文字列を、で分割することによって1つ以上の回答候補を取得してそれらを記憶しておき、さらに記憶した各回答候補に対応する;の後の回答候補文字列を取得して、これらをボタン1504及び1505として表示する。ユーザは所望の回答候補が表示されたボタン1504又は1505を押下することによって、質問に対する回答を入力することが可能となる。図15bの例では、回答候補焼肉に対応するボタン1504及び回答候補とんかつに対応するボタン1505等が表示されている。しかし、例えば図14Bのステップ1414において回答候補とんかつが有効化されなかったすなわちとんかつが選択された場合の検索結果の数が0件となる場合、ボタン1505は表示されない。なお、このとき、携帯端末104は、入力された回答に対応して、先に記憶した回答候補をもとにして、リクエストにおける○回目の回答を生成する。すなわち、リクエストにおける○回目の回答の形式をグループ名:回答候補文字列の形式に変換して、サーバに対してリクエストを生成するステップ1302参照。検索結果表示領域1506は、前の質問に対する回答を行った結果をもとに検索対象の情報の検索を行った結果を表示する領域である。ここには、サーバ101からのレスポンス式3における、今回の回答による検索結果に含まれる文字列がタグごとに分割して表示される。これによって、例えば検索対象がレストランに関する情報であり、検索結果が複数のレストランに関する情報を含む場合でも、個々のレストランに関する情報を改行する等して見やすく表示することが出来る。また、図15bにおいて、ユーザが検索終了ボタン1507を押下した場合に、携帯端末104は、ユーザからの検索終了要求の入力があったと判断することが可能となる。以上で説明した本発明の第1の実施形態によって、ユーザに対して効果的に質問とその質問に対する回答候補を提示し、ユーザからの回答に基づいて高速に情報を検索又は絞り込むことが出来る情報検索システムを提供可能となる。特に、ユーザに対する質問とその質問の回答候補を提示する際、提示された質問及び回答候補を元に、ユーザが回答を行った結果、情報の検索結果又は絞り込み結果が0件となることのないようにすることで、ユーザが不快感を得ることのない情報検索システムを提供することが可能となる。なお、本発明の第1の実施形態はレストランに関する情報を検索するシステムを例示したが、既に説明したとおり、それ以外の情報、例えば任意の種類の店舗、施設又はイベント等を検索するシステムにも本発明を適用することができる。さらに、本発明は、図1に示すようなサーバ101と携帯端末104とがネットワーク102等を介して接続された情報検索システムだけでなく、例えばスタンドアロンの機器又は計算機等、任意の形態の情報検索システムに適用することができる。一例を示せば、家庭用ビデオ記録装置における映像ファイルの検索等に本発明を適用してもよい。そのような形態の情報検索システムは、例えば図2に示すハードウェアに加えてさらに入力装置303及び表示装置305に相当する入力装置及び表示装置を備える。この場合、図13に示す検索リクエスト及び検索レスポンスの送受信は不要になり、全ての処理がスタンドアロンの情報検索システムの内部で行われる。このように、本発明は、情報を格納及び検索するサーバ、テレビ、PC、レコーダ、携帯電話又は携帯端末等の任意の装置、及びそれらの任意の組み合わせに適用できる。後述する本発明の第2の実施形態についても同様である。<第2の実施形態>第1の実施形態では、ユーザに提示する質問に対する回答候補が有効であるか否かを判断するために、ユーザに対する質問及びその質問の回答候補を生成するたびに、質問回答生成部413が、質問DB407において選択したレコードにおける各回答候補1106や1108等がユーザから選択されたと仮定して、検索部414を用いて検索DB410を検索した結果数を取得し、検索結果が0件とならなかった回答候補を有効と判断していた図14Bのステップ1412~1415。この場合、ユーザからの回答があるたびに次の質問に対する全ての回答候補に対して、これらの回答候補に基づいて検索部414が検索DB410を検索する必要があった。これは、本実施形態における検索DB等の構成が、検索を高速に行えるものであるために、実施可能であるが、それでも検索対象の情報量が多くなった場合には、リアルタイムに回答候補が有効であるか否かを判断することが困難となる場合がある。そこで、第2の実施形態では、後述する絞込み件数マップ生成部があらかじめ絞込み件数マップを生成し、質問回答生成部413が本絞込み件数マップを参照することで、高速にユーザに提示する質問に対する回答候補が有効であるか否かを判断できる情報検索システムを例示する。第2の実施形態では、第1の実施形態に対してサーバ101の機能ブロックと関連各部の動作を若干変更することで実現できる。以下、変更部分を説明し、変更されない部分についての説明は第1の実施形態と同様であるので省略する。図16は、本発明の第2の実施形態に係るサーバ101の機能ブロックの一例を説明する図である。図16に示すとおり、本実施形態に係るサーバ101の機能ブロックは、第1の実施形態に係るサーバ101の機能ブロックに対して、絞込み件数マップ生成部1601及び絞込み件数マップ1602を加えた構成である。絞込み件数マップ生成部1601は、検索データ生成ルール408で定義されているグループの組み合わせについて、あらかじめ検索部414を用いて検索結果数を取得することで、絞込み件数マップ1602を生成する。絞込み件数マップ1602は、検索データ生成ルール408で定義されているグループの組み合わせについて検索部414によって行われた検索DB410の検索結果の数を示すマップである。図17は、本発明の第2の実施形態に係る絞込み件数マップ1602のデータ及びデータ構造の一例を説明する図である。図17に示すとおり、本発明の第2の実施形態に係る絞込み件数マップ1602は、組み合わせ数1701と、グループ名1702乃至1706と、件数1707と、からなる。組み合わせ数1701は、検索におけるグループ名の組み合わせ数である。グループ名1702乃至1706は、検索データ生成ルール408で定義されているグループ名である。件数1707は、グループの組み合わせについて、検索部414が検索DB410を検索することによって得られた検索結果の件数である。絞込み件数マップ生成部1601は、レコード1711乃至1720に示すとおり、組み合わせ対象とするグループ名に○を記載し、当該組み合わせ対象としたグループ名の数を組み合わせ数1701に記載する。また、この組み合わせを検索部414が検索DB410において検索することによって得られた検索結果の数を件数1707に記載する。例えば、レコード1712の場合には、二つのグループ、すなわちグループ名1及びグループ名2の組み合わせが対象として選択されているため、組み合わせ数1701は2となり、件数1707の値800000は、SELECTFROMtableWHEREグループ名1の属性=クループ名1ANDグループ名2の属性=グループ名2なるSQL文にて検索した結果の数である。なお、グループ名の属性については検索データ生成ルール408における属性702から取得できる。なお、絞込み件数マップ生成部1601は、検索データ生成ルール408で定義されている全てのグループを組み合わせて絞込み件数マップ1602を作成する必要は無く、同じ属性のグループ名が2つ以上になる組み合わせについては絞込み件数マップ1602のレコードを生成する必要は無い。これは、一連の絞込みにおいて、例えば予算という属性の予算高、予算中、予算低がユーザから同時に選ばれることは無いことに起因する。さて、本実施形態においては、第1の実施形態と比較して、次の通りDB更新部401の動作及び質問回答生成部413の動作が変更される。すなわち、DB更新部401は、図12において、検索対象の情報又は検索データ生成ルール408が作成、追加、又は更新されたか否かを判断しステップ1205、これらのいずれかが作成、追加、又は更新された場合に、検索DB生成部409が検索DB410を生成ステップ1206した後に、絞込み件数マップ生成部1601を起動して、絞込み件数マップ1602を生成する処理を追加する。なお、本処理は、検索対象の情報又は検索データ生成ルール408が作成、追加、あるいは更新されるたびに、新規に絞込み件数マップ1602を生成するために実行されることが望ましい。また、質問回答生成部413が、回答候補として、選択したレコードに対する各回答候補図11におけるフィールド1106及び1108等に対する検索結果が0件とならない回答候補を有効化する処理図14Aのステップ1404は、次のように変更される。すなわち、質問回答生成部413は、ユーザからのこれまでの回答のグループ名と、上記選択したレコードにおける各回答候補図11における1106や1108等のグループ名との組み合わせについて、絞込み件数マップ1602の件数図17における件数1707を参照して、当該件数が0件とならなかった回答候補を有効と判断する。すなわち、本実施形態の質問回答生成部413は、図14Bのステップ1412において絞込み件数マップ1602を参照することによって、検索の実行を省略することができる。なお、この場合、ユーザからのこれまでの回答の数1を組み合わせ数として、この組み合わせ数が絞込み件数マップ1602における組み合わせ数1701と合致するレコードのみを参照して、絞込み件数マップ1602における組み合わせと合致するレコードを探し出せばよい。例えば、既に質問が2回提示され、それぞれに対してユーザが回答をし、その次にユーザに提示する質問を選択しようとするとき、質問回答生成部413は、組み合わせ数1701が3であるレコードのみを参照する。これによって、高速に所望の件数図17における件数1707を取得することが可能となる。以上によって、本発明の第2の実施形態に係る情報検索システムでは、ユーザに提示する質問に対する回答候補が有効であるか否かを判断するために、ユーザからの回答があるたびに、次の質問に対する全ての回答候補に対して、検索部414が検索DB410を検索する必要がなくなる。このため、高速に回答候補が有効であるか否かを判断することが可能となる。