本発明の実施の形態の概要を図1を用いて説明する。本実施の形態では、ユーザが、予め用意されたテンプレートの中から目的に合ったテンプレートを選択し、表題(タイトル)及び項目名(列項目や行項目)を入力すると、入力された表題又は項目名から検索式を自動生成し、当該検索式に基づき検索を実行する。そして、検索結果(URL)を表中の各セルに埋め込むことにより、表を完成させ、ユーザに提示する。
例えば、A社のホームページが図1に示すような階層構造である場合、A社の「売上」については、検索結果として財務データ(1)のページのURLが得られ、表中には当該URLが埋められている。また、A社の「社員数」については、検索結果として会社概要(2)のページのURLが得られ、表中には当該URLが埋められている。さらに、A社の「事業内容」、「ソリューション」及び「製品・サービス」については、検索結果として事業内容/ソリューション/製品・サービス(3)のページのURLが得られ、表中には当該URLが埋められている。
本発明の一実施の形態に係る情報検索システムの概要を図2に示す。例えばインターネットであるネットワーク1には、ユーザ端末(図2ではA及びB)と、本実施の形態における主要な処理を実施する情報検索装置3とが接続されている。なお、図2では、ユーザ端末が2台の例を示しているが、ユーザ端末の台数はこれに限定されない。
情報検索装置3は、後で説明するキーワード辞書、同義語辞書、検索式生成ルール辞書及び検索場所設定辞書を格納している辞書格納部35と、ユーザからテンプレートの選択入力などを受け付ける検索テンプレート受付部31と、ユーザから入力されたデータ及び辞書格納部35に格納されている辞書に基づき検索式を生成する処理を実施する検索式生成部32と、検索式生成部32の生成した検索式を格納する検索式格納部36と、検索式格納部36に格納された検索式に基づき検索処理を実施する検索処理部33と、検索処理部33による検索の検索結果を格納する検索結果格納部37と、検索結果格納部37に格納された検索結果を表示するための処理を実施する検索結果表示処理部34と、ワークメモリ38とを含む。なお、ワークメモリ38は、情報検索装置3内のメインメモリなどに確保される。
辞書格納部35に格納されるキーワード辞書には、キーワードとなる単語が登録されている。なお、各単語には、重み付けが設定されており、検索範囲を特定するために用いられる。また、辞書格納部35に格納される同義語辞書には、特定の単語と同義語とみなされる単語が登録されている。さらに、辞書格納部35に格納される検索式生成ルール辞書には、検索式生成ルールが表のフォーマット毎に登録されている。また、辞書格納部35に格納される検索場所設定辞書には、検索場所に関する情報が登録されている。なお、本実施の形態では、後で説明する狭域、中域及び広域の3つのパターンを用いる。
図3乃至図5に検索結果格納部37に格納されるデータの例を示す。まず、一次元形式のテンプレートのデータ構造の一例を図3に示す。一次元形式のテンプレートは、図3(a)に示すように、列項目(m1〜mN)と、データ部(dn1m1〜dnNmN)とから構成され、図3(b)に示すようなデータ構造で管理される。具体的には、列項目(m1〜mN)についてのデータ構造は、利用者識別と、テンプレート識別と、テンプレート名称と、列数と、列m1の値と、列m2の値と、・・・、列mNの値とを含む。また、データ部(dn1m1〜dnNmN)についてのデータ構造は、利用者識別と、テンプレート識別と、テンプレート名称と、フィールド数と、フィールド番号(dn1m1)と、インデックス値と、スクリーンショットと、実値と、・・・、フィールド番号(dnNmN)と、インデックス値と、スクリーンショットと、実値とを含む。テンプレート識別には、例えば「テンプレートNo+一次元形式のテンプレートの番号」などで表される識別情報が設定される。また、テンプレート名称には、表題の内容が設定される。なお、インデックス値とは、検索結果として得られたURLなどが登録される。
また、二次元形式のテンプレートのデータ構造の一例を図4に示す。二次元形式のテンプレートは、図4(a)に示すように、行項目(n1〜nN)と、列項目(m1〜mN)と、データ部(dn1m1〜dnNmN)とから構成され、図4(b)に示すようなデータ構造で管理される。具体的には、行項目(n1〜nN)についてのデータ構造は、利用者識別と、テンプレート識別と、テンプレート名称と、行数と、列n1の値と、列n2の値と、・・・、列nNの値とを含む。また、列項目(m1〜mN)及びデータ部(dn1m1〜dnNmN)についてのデータ構造は、図3(b)で示したデータ構造と同じであるため、説明は省略する。
また、多次元形式のテンプレートのデータ構造の一例を図5に示す。多次元形式のテンプレートは、図5(a)に示すように、2階層の行項目(n1〜nN、n11〜nNM)と、2階層の列項目(m1〜mN、m11〜mNM)と、データ部(dn11m11〜dnNMmNM)とから構成され、図5(b)に示すようなデータ構造で管理される。具体的には、行項目(n1〜nN、n11〜nNM)についてのデータ構造は、利用者識別と、テンプレート識別と、テンプレート名称と、項目の段数と、1段目の行項目数と、行n1の値と、2段目の行項目数と、行n11の値と、行n12の値と、・・・、行nNの値と、2段目の行項目数と、行nNNの値と、行nNMの値とを含む。また、列項目(m1〜mN、m11〜mNM)についてのデータ構造は、利用者識別と、テンプレート識別と、テンプレート名称と、項目の段数と、1段目の列項目数と、列m1の値と、2段目の列項目数と、列m11の値と、列m12の値と、・・・、列mNの値と、2段目の列項目数と、列mNNの値と、列mNMの値とを含む。さらに、データ部(dn11m11〜dnNMmNM)についてのデータ構造は、利用者識別と、テンプレート識別と、テンプレート名称と、フィールド数と、フィールド番号(dn11m11)と、インデックス値と、スクリーンショットと、実値と、・・・、フィールド番号(dnNMmNM)と、インデックス値と、スクリーンショットと、実値とを含む。
次に、図6乃至図27を用いて、図2に示した情報検索システムの処理を説明する。まず、図6乃至図17を用いて、情報検索システム全体の処理フローを説明する。例えば、ユーザは、市場調査や業界動向などを表形式でまとめようとした場合、ユーザ端末を操作して、情報検索装置3にアクセスさせる。なお、以下では、このようなクライアント・サーバ・システムで実施する例を説明するが、情報検索装置3をスタンドアロン型のコンピュータとして実現する場合もある。
情報検索装置3の検索テンプレート受付部31は、ユーザ端末からのアクセスに応じて、テンプレート選択画面データをユーザ端末に送信する。そして、ユーザ端末は、情報検索装置3からテンプレート選択画面データを受信し、表示装置に表示する。例えば図6に示すような画面が表示される。図6の例では、テンプレート選択画面には、例えばリストボックスであるテンプレート選択欄601と、「次へ」ボタン602とが設けられている。なお、テンプレート選択欄601には、過去にユーザが利用したテンプレートがある場合には、そのテンプレート名称(図6の例では、「○△一覧表」や「性能比較○○」)が表示される。
そして、ユーザは、テンプレート選択欄601から作成しようとしている表のテンプレートを選択し、「次へ」ボタン602をクリックする。ユーザ端末は、テンプレートの選択入力を受け付け(図7:ステップS1)、情報検索装置3に送信する。そして、情報検索装置3の検索テンプレート受付部31は、ユーザ端末からテンプレートの選択情報を受信し、選択されたテンプレートが既存のテンプレートであるか判断する(ステップS3)。なお、テンプレートの選択情報は、ワークメモリ38に格納される。
選択されたテンプレートが既存のテンプレートでないと判断された場合(ステップS3:Noルート)、情報検索装置3の検索テンプレート受付部31は、項目入力画面データを生成し、ユーザ端末に送信する。ユーザ端末は、情報検索装置3から項目入力画面データを受信し、表示装置に表示する。例えば図8に示すような画面が表示される。図8の例では、項目入力画面には、目的の入力欄801と、表タイトル(すなわち、表題)の入力欄802と、列項目の入力欄803と、行項目の入力欄804と、確認ボタン805とが設けられている。表タイトルの入力欄802及び行項目の入力欄804は、例えばコンボボックスとしての機能を有し、選択肢の中から選択したり、直接入力したりすることができるようになっている。
そして、ユーザは、表題及び項目名を入力し、確認ボタン805をクリックする。ユーザ端末は、表題及び項目名の入力を受け付け(ステップS7)、情報検索装置3に送信する。そして、情報検索装置3の検索テンプレート受付部31は、ユーザ端末から表題及び項目名を受信し、ワークメモリ38に格納する。そして、検索テンプレート受付部31は、検索内容確認画面データを生成し、ユーザ端末に送信する。ユーザ端末は、情報検索装置3から検索内容確認画面データを受信し、表示装置に表示する。例えば図9に示すような画面が表示される。図9の例では、検索内容確認画面には、目的の表示欄901と、表タイトルの表示欄902と、検索結果の出力イメージ903と、検索ボタン904とが設けられている。
一方、ステップS3において、選択されたテンプレートが既存のテンプレートであると判断された場合(ステップS3:Yesルート)、情報検索装置3の検索テンプレート受付部31は、検索結果格納部37から表題及び項目名を抽出し(ステップS5)、一旦ワークメモリ38に格納する。そして、検索テンプレート受付部31は、抽出した表題及び項目名に基づき検索内容確認画面データを生成し、ユーザ端末に送信する。ユーザ端末は、情報検索装置3から検索内容確認画面データを受信し、表示装置に表示する。すなわち、図9に示したような検索内容確認画面が表示される。
ユーザは、検索内容確認画面の検索内容を確認し、問題がなければ、検索ボタン904(図9)をクリックする。ユーザ端末は、検索開始指示を受け付け(ステップS9)、情報検索装置3に送信する。そして、ユーザ端末からの検索開始指示を受信すると、情報検索装置3の検索式生成部32は、選択されたテンプレートのフォーマットが一次元形式であるか判断する(ステップS11)。選択されたテンプレートのフォーマットが一次元形式であると判断された場合(ステップS11:Yesルート)、検索式生成部32は、辞書格納部35及びワークメモリ38に格納されたデータに基づき、一次元検索式生成処理を実施する(ステップS13)。なお、詳細は後で説明するが、一次元検索式生成処理では、一次元形式についての検索式生成ルールに従って、検索式を生成し、検索式格納部36に格納する。その後、端子Aを介してステップS21(図10)の処理に移行する。
一方、選択されたテンプレートのフォーマットが一次元形式でないと判断された場合(ステップS11:Noルート)、検索式生成部32は、選択されたテンプレートのフォーマットが二次元形式であるか判断する(ステップS15)。選択されたテンプレートのフォーマットが二次元形式であると判断された場合(ステップS15:Yesルート)、検索式生成部32は、辞書格納部35及びワークメモリ38に格納されたデータに基づき、二次元検索式生成処理を実施する(ステップS17)。なお、詳細は後で説明するが、二次元検索式生成処理では、二次元形式についての検索式生成ルールに従って、検索式を生成し、検索式格納部36に格納する。その後、端子Aを介してステップS21(図10)の処理に移行する。
一方、選択されたテンプレートのフォーマットが二次元形式でないと判断された場合(ステップS15:Noルート)、すなわち、選択されたテンプレートのフォーマットが多次元形式である場合、検索式生成部32は、辞書格納部35及びワークメモリ38に格納されたデータに基づき、多次元検索式生成処理を実施する(ステップS19)。なお、詳細は後で説明するが、多次元検索式生成処理では、多次元形式についての検索式生成ルールに従って、検索式を生成し、検索式格納部36に格納する。その後、端子Aを介してステップS21(図10)の処理に移行する。
図10の説明に移行して、端子Aの後、情報検索装置3の検索処理部33は、辞書格納部35に格納された検索場所設定辞書に従って、検索範囲を特定する(図10:ステップS21)。なお、本実施の形態では、検索範囲として3つのパターン(狭域、中域及び広域)が設定されているものとする。具体的には、例えば検索式に自社製品名などが含まれている場合には、狭域が検索範囲として特定される。狭域の場合、「PC(すなわち、ユーザ端末)内」、「イントラネット内」、「インターネット上」の3つの検索場所を順に検索する。また、例えば検索式に自社名などが含まれている場合には、中域が検索範囲として特定される。中域の場合、「イントラネット内」、「インターネット上」の2つの検索場所を順に検索する。さらに、狭域及び中域のいずれにも該当しなければ、広域が検索範囲として特定される。広域の場合、「インターネット上」のみを検索する。
そして、検索処理部33は、検索範囲が狭域であるか判断する(ステップS23)。検索範囲が狭域であると判断された場合(ステップS23:Yesルート)、検索処理部33は、検索式格納部36に格納された検索式に基づきPC検索処理を実施する(ステップS25)。なお、PC検索処理については、後で詳細に説明する。その後、検索処理部33は、検索結果格納部37を参照し、検索が完了したか判断する(ステップS27)。すなわち、PC検索処理により、目的の情報が全て得られたか判断する。検索が完了したと判断された場合(ステップS27:Yesルート)、端子Bを介してステップS37(図11)の処理に移行する。
一方、検索が完了していないと判断された場合(ステップS27:Noルート)、検索処理部33は、イントラネット検索処理を実施する(ステップS31)。なお、イントラネット検索処理については、後で詳細に説明する。その後、検索処理部33は、検索が完了したか判断する(ステップS33)。すなわち、イントラネット検索処理により、目的の情報が全て得られたか判断する。検索が完了したと判断された場合(ステップS33:Yesルート)、端子Bを介してステップS37(図11)の処理に移行する。
一方、検索が完了していないと判断された場合(ステップS33:Noルート)、検索処理部33は、インターネット検索処理を実施する(ステップS35)。なお、インターネット検索処理については、後で詳細に説明する。その後、端子Bを介してステップS37(図11)の処理に移行する。
一方、ステップS23において、検索範囲が狭域でないと判断された場合(ステップS23:Noルート)、検索処理部33は、検索範囲が中域であるか判断する(ステップS29)。検索範囲が中域であると判断された場合(ステップS29:Yesルート)、ステップS31の処理に移行する。すなわち、検索処理部33は、イントラネット検索処理を実施し、検索が完了しなければ、続いてインターネット検索処理を実施する。
一方、検索範囲が中域でないと判断された場合(ステップS29:Noルート)、すなわち検索範囲が広域の場合、ステップS35の処理に移行する。すなわち、検索処理部33は、インターネット検索処理を実施する。
図11の説明に移行して、端子Bの後、情報検索装置3の検索結果表示処理部34は、検索結果格納部37に格納されたデータに基づき検索結果画面データを生成し、ユーザ端末に送信する(図11:ステップS37)。そして、ユーザ端末は、情報検索装置3から検索結果画面データを受信し、表示装置に表示する。例えば図12のような画面が表示される。
図12の例では、検索結果画面には、検索結果の表示欄1201と、選択セル表示欄1202と、データ入力欄1203と、入力ボタン1204と、全確定ボタン1205とが設けられている。また、本実施の形態では、検索結果の表示欄1201の各セルには、当該セルに対応するデータが開示されているとみなされるWebページのスクリーンショットへのリンクが設定される。例えば、d13がクリックされた場合、C株式会社の売上高が開示されているとみなされるWebページのスクリーンショットを含むタグ1206が表示される。なお、このスクリーンショットは、後で説明するPC検索処理、イントラネット検索処理又はインターネット検索処理において取得する。また、d13がクリックされると、選択セル表示欄1202には「d13」が表示され、データ入力欄1203にはC株式会社の売上高とみなされる値「120000」が表示される。
そして、ユーザ端末は、入力指示を受け付けたか判断する(ステップS39)。例えば、ユーザは、検索結果画面の表示内容を確認し、C株式会社の売上高が「120000」で問題なければ、入力ボタン1204をクリックする。一方、C株式会社の売上高が「120000」でなければ、ユーザが正しい値をデータ入力欄1203に入力し、入力ボタン1204をクリックする。
ユーザ端末は、入力指示を受け付けると(ステップS39:Yesルート)、検索結果の表示欄1201に反映させる(ステップS41)。具体的には、上の例であれば、C株式会社の売上高のセルに「120000」が設定される。一方、入力指示を受け付けていなければ(ステップS39:Noルート)、ステップS41の処理をスキップし、ステップS43の処理に移行する。
そして、ユーザ端末は、全確定ボタン1205がクリックされたか判断する(ステップS43)。例えば、全てのセルについて入力指示が完了すると、図13のような検索結果画面が表示される。その後、ユーザは、全確定ボタン1305をクリックする。
ユーザ端末は、全確定指示を受け付けると(ステップS43:Yesルート)、入力データを情報検索装置3に送信する。そして、情報検索装置3の検索結果表示処理部34は、ユーザ端末から入力データを受信し、検索結果格納部37を更新し、各セルのデータの登録を確定する(ステップS45)。一方、全確定指示を受け付けていなければ(ステップS43:Noルート)、ステップS39の処理に戻る。そして、ステップS45の後、本処理を終了する。
なお、上では、選択されたテンプレートが二次元形式の場合の画面例(図8、図9、図12及び図13)を示したが、例えば一次元形式の場合には、図8の代わりに図14に示すような項目入力画面が表示される。また、図9の代わりに図15に示すような検索内容確認画面が表示され、図12の代わりに図16に示すような検索結果画面が表示され、図13の代わりに図17に示すような検索結果画面が表示される。なお、図15における表の行数は任意に設定される。
以上のような処理を実施することにより、ユーザが検索式を指定することなく、目的の情報を収集できるようになる。
次に、図18乃至図21を用いて、情報検索装置3の検索式生成部32による一次元検索式生成処理、二次元検索式生成処理及び多次元検索式生成処理を説明する。図18に、一次元検索式生成処理の処理フローを示す。まず、検索式生成部32は、ワークメモリ38に格納された表題から文字列を抽出する(図18:ステップS51)。例えば表題が文章で表現されている場合には、いくつかの文字列に区切って抽出する。
そして、検索式生成部32は、辞書格納部35に格納されたキーワード辞書に基づき、抽出された文字列のうち、キーワードとなる文字列を特定し、検索条件としてワークメモリ38に格納する(ステップS53)。例えば、キーワードにふさわしくないような単語は除外される。
また、検索式生成部32は、各列項目の項目名をテキストマイニングキーとしてワークメモリ38に格納する(ステップS55)。そして、検索式生成部32は、辞書格納部35に格納された同義語辞書から各テキストマイニングキーに対応する同義語を抽出し、ワークメモリ38に格納する(ステップS57)。なお、このとき、テキストマイニングキーと、その同義語とをOR条件にて組み合わせておく。
そして、検索式生成部32は、一次元形式についての検索式生成ルールに従って、ワークメモリ38に格納された検索条件から検索式を生成し、検索式格納部36に格納する(ステップS59)。具体的には、一次元形式についての検索式生成ルールに従って、検索条件に含まれるキーワードをANDやORにて組み合わせることにより、各セルの検索式を生成する。なお、どのセルに対応する検索式であるかを表す情報もワークメモリ38に格納される。そして、一次元検索式生成処理を終了し、元の処理に戻る。
すなわち、テンプレートが一次元形式の場合には、図19(a)に示すように、表題からキーワードを抽出し、列項目からテキストマイニングキーを抽出する。
図20に、二次元検索式生成処理の処理フローを示す。まず、検索式生成部32は、ワークメモリ38に格納された表題から文字列を抽出する(図20:ステップS61)。例えば表題が文章で表現されている場合には、いくつかの文字列に区切って抽出する。
そして、検索式生成部32は、辞書格納部35に格納されたキーワード辞書に基づき、抽出された文字列のうち、キーワードとなる文字列を特定し、第1検索条件としてワークメモリ38に格納する(ステップS63)。例えば、キーワードにふさわしくないような単語は除外される。
また、検索式生成部32は、各列項目の項目名を第2検索条件としてワークメモリ38に格納する(ステップS65)。そして、検索式生成部32は、辞書格納部35に格納された同義語辞書から各列項目の項目名に対応する同義語を抽出し、ワークメモリ38に格納する(ステップS67)。このとき、項目名と、その同義語とをOR条件にて組み合わせておく。
そして、検索式生成部32は、各行項目の項目名をテキストマイニングキーとしてワークメモリ38に格納する(ステップS69)。そして、検索式生成部32は、辞書格納部35に格納された同義語辞書から各テキストマイニングキーに対応する同義語を抽出し、ワークメモリ38に格納する(ステップS71)。このとき、テキストマイニングキーと、その同義語とをOR条件にて組み合わせておく。
そして、検索式生成部32は、二次元形式についての検索式生成ルールに従って、ワークメモリ38に格納された第1及び第2の検索条件から検索式を生成し、検索式格納部36に格納する(ステップS73)。具体的には、二次元形式についての検索式生成ルールに従って、第1及び第2検索条件に含まれるキーワードをANDやORにて組み合わせることにより、各セルの検索式を生成する。なお、どのセルに対応する検索式であるかを表す情報もワークメモリ38に格納される。そして、二次元検索式生成処理を終了し、元の処理に戻る。
すなわち、テンプレートが二次元形式の場合には、図19(b)に示すように、表題及び列項目からキーワードを抽出し、行項目からテキストマイニングキーを抽出する。
図21に、多次元検索式生成部処理の処理フローを示す。まず、検索式生成部32は、ワークメモリ38に格納された表題から文字列を抽出する(図21:ステップS75)。例えば表題が文章で表現されている場合には、いくつかの文字列に区切って抽出する。
そして、検索式生成部32は、辞書格納部35に格納されたキーワード辞書に基づき、抽出された文字列のうち、キーワードとなる文字列を特定し、第1検索条件としてワークメモリ38に格納する(ステップS77)。例えば、キーワードにふさわしくないような単語は除外される。
また、検索式生成部32は、最上段の各列項目の項目名を第2検索条件としてワークメモリ38に格納する(ステップS79)。そして、検索式生成部32は、辞書格納部35に格納された同義語辞書から各列項目の項目名に対応する同義語を抽出し、ワークメモリ38に格納する(ステップS81)。このとき、項目名と、その同義語とをOR条件にて組み合わせておく。
そして、検索式生成部32は、二段目以降の各列項目の項目名をテキストマイニングキーとしてワークメモリ38に格納する(ステップS83)。また、検索式生成部32は、各行項目の項目名をテキストマイニングキーとしてワークメモリ38に格納する(ステップS85)。そして、検索式生成部32は、辞書格納部35に格納された同義語辞書から各テキストマイニングキーに対応する同義語を抽出し、ワークメモリ38に格納する(ステップS87)。このとき、テキストマイニングキーと、その同義語とをOR条件にて組み合わせておく。
そして、検索式生成部32は、多次元形式についての検索式生成ルールに従って、ワークメモリ38に格納された第1及び第2の検索条件から検索式を生成し、検索式格納部36に格納する(ステップS89)。具体的には、多次元形式についての検索式生成ルールに従って、第1及び第2検索条件に含まれるキーワードをANDやORにて組み合わせることにより、各セルの検索式を生成する。なお、どのセルに対応する検索式であるかを表す情報もワークメモリ38に格納される。そして、多次元検索式生成処理を終了し、元の処理に戻る。
すなわち、テンプレートが多次元形式の場合には、図19(c)に示すように、表題及び最上段の列項目からキーワードを抽出し、行項目及び二段目以降の列項目からテキストマイニングキーを抽出する。
以上のような処理を実施することにより、表題及び項目名から、各セルに対応する検索式を自動生成することができる。
次に、図22及び図23を用いて、情報検索装置3の検索処理部33によるPC検索処理を説明する。まず、検索処理部33は、未処理のセルを特定し、特定セルに対応する検索式を検索式格納部36から抽出する(図22:ステップS101)。そして、検索処理部33は、抽出した検索式に基づきPC内検索を実行する(ステップS103)。具体的には、PC内を検索する所定の検索エンジンに検索式を出力し、検索エンジンからの検索結果(例えば、ファイルの所在地を表す情報など)をワークメモリ38に格納する。なお、検索エンジンに必要な設定については、予め設定しておく。
そして、検索処理部33は、検索結果にファイルの所在地を表す情報が含まれるか判断する(ステップS105)。検索結果にファイルの所在地を表す情報が含まれると判断された場合(ステップS105:Yesルート)、検索処理部33は、当該ファイルを取得し、当該ファイルのスクリーンショットを検索結果格納部37に格納する(ステップS107)。そして、特定セルに関連するテキストマイニングキーをワークメモリ38から抽出し、抽出したテキストマイニングキーに基づきファイル内の内部検索を実行する(ステップS109)。なお、内部検索においては、テキストマイニングキーに関連するデータ(以下、マイニングデータと呼ぶ)などが検索結果として抽出される。例えば、テキストマイニングキーが「売上高」の場合、売上高とみなされる金額が抽出される。内部検索については従来の処理と変わらないため、ここでは説明は省略する。
そして、検索処理部33は、ステップS109の処理結果として、マイニングデータが検出されたか判断する(ステップS111)。マイニングデータが検出された場合(ステップS111:Yesルート)、端子Cを介してステップS125(図23)の処理に移行する。一方、マイニングデータが検出されなかった場合(ステップS111:Noルート)、検索処理部33は、テキストマイニングキーをステップS103において抽出した検索式に追加することにより、第2検索式を生成し、検索式格納部36に格納する(ステップS113)。その後、端子Dを介してステップS115(図23)の処理に移行する。
一方、ステップS105において、検索結果にファイルの所在地を表す情報が含まれないと判断された場合(ステップS105:Noルート)、ステップS107乃至ステップS111の処理をスキップし、ステップS113の処理に移行する。そして、ステップS113の処理を実施した後、端子Dを介してステップS115(図23)の処理に移行する。
図23の説明に移行して、端子Dの後、検索処理部33は、第2検索式に基づきPC内検索を実行する(図23:ステップS115)。なお、PC内検索についてはステップS103の処理と変わらないため、ここでは説明は省略する。
そして、検索処理部33は、検索結果にファイルの所在地を表す情報が含まれるか判断する(ステップS117)。検索結果にファイルの所在地を表す情報が含まれると判断された場合(ステップS117:Yesルート)、検索処理部33は、当該ファイルを取得し、当該ファイルのスクリーンショットを検索結果格納部37に格納する(ステップS119)。そして、特定セルに関連するテキストマイニングキーをワークメモリ38から抽出し、抽出したテキストマイニングキーに基づきファイル内の内部検索を実行する(ステップS121)。なお、内部検索についてはステップS109の処理と変わらないため、ここでは説明は省略する。
そして、検索処理部33は、ステップS121の処理結果として、マイニングデータが検出されたか判断する(ステップS123)。マイニングデータが検出された場合(ステップS123:Yesルート)、検索処理部33は、マイニングデータを特定セルの実値として検索結果格納部37に格納する(ステップS125)。
一方、検索結果にファイルの所在地を表す情報が含まれないと判断された場合(ステップS117:Noルート)、又は、マイニングデータが検出されなかった場合(ステップS123:Noルート)、未検出を表す情報を検索結果格納部37に格納する(ステップS127)。
そして、検索処理部33は、全てのセルについて処理が完了したか判断する(ステップS129)。全てのセルについて処理が完了した場合(ステップS129:Yesルート)、PC検索処理を終了し、元の処理に戻る。一方、全てのセルについて処理が完了していなければ(ステップS129:Noルート)、端子Eを介してステップS101(図22)の処理に戻る。
次に、図24及び図25を用いて、情報検索装置3の検索処理部33によるイントラネット検索処理を説明する。まず、検索処理部33は、処理対象となるセルを特定する(図24:ステップS131)。例えば、検索範囲が狭域の場合には、本処理の前にPC検索処理を実施しているため、本処理では、PC検索処理において未検出を表す情報が設定されたセルを処理対象のセルとして特定する。そして、検索処理部33は、処理対象のセルのうち未処理のセルを特定し、特定セルに対応する検索式を検索式格納部36から抽出する(ステップS133)。
そして、検索処理部33は、抽出した検索式に基づきイントラネット内検索を実行する(ステップS135)。具体的には、イントラネット内を検索する所定の検索エンジンに検索式を出力し、検索エンジンからの検索結果(例えば、URLなど)をワークメモリ38に格納する。なお、検索エンジンに必要な設定については、予め設定しておく。
そして、検索処理部33は、検索結果にURLが含まれるか判断する(ステップS137)。検索結果にURLが含まれると判断された場合(ステップS137:Yesルート)、検索処理部33は、URLページデータを取得し、当該URLページのスクリーンショットを検索結果格納部37に格納する(ステップS139)。そして、特定セルに関連するテキストマイニングキーをワークメモリ38から抽出し、抽出したテキストマイニングキーに基づきURLページ内の内部検索を実行する(ステップS141)。
そして、検索処理部33は、ステップS141の処理結果として、マイニングデータが検出されたか判断する(ステップS143)。マイニングデータが検出された場合(ステップS143:Yesルート)、端子Fを介してステップS157(図25)の処理に移行する。一方、マイニングデータが検出されなかった場合(ステップS143:Noルート)、検索処理部33は、テキストマイニングキーをステップS133において抽出した検索式に追加することにより、第2検索式を生成し、検索式格納部36に格納する(ステップS145)。その後、端子Gを介してステップS147(図25)の処理に移行する。
一方、ステップS137において、検索結果にURLが含まれないと判断された場合(ステップS137:Noルート)、ステップS139乃至ステップS143の処理をスキップし、ステップS145の処理に移行する。
図25の説明に移行して、端子Gの後、検索処理部33は、第2検索式に基づきイントラネット内検索を実行する(図25:ステップS147)。なお、イントラネット内検索についてはステップS135の処理と変わらないため、ここでは説明は省略する。
そして、検索処理部33は、検索結果にURLが含まれるか判断する(ステップS149)。検索結果にURLが含まれると判断された場合(ステップS149:Yesルート)、検索処理部33は、URLページデータを取得し、当該URLページのスクリーンショットを検索結果格納部37に格納する(ステップS151)。そして、特定セルに関連するテキストマイニングキーをワークメモリ38から抽出し、抽出したテキストマイニングキーに基づきURLページ内の内部検索を実行する(ステップS153)。
そして、検索処理部33は、ステップS153の処理結果として、マイニングデータが検出されたか判断する(ステップS155)。マイニングデータが検出された場合(ステップS155:Yesルート)、検索処理部33は、マイニングデータを特定セルの実値として検索結果格納部37に格納する(ステップS157)。
一方、検索結果にURLが含まれないと判断された場合(ステップS149:Noルート)、又は、マイニングデータが検出されなかった場合(ステップS155:Noルート)、未検出を表す情報を検索結果格納部37に格納する(ステップS159)。
そして、検索処理部33は、処理対象の全てのセルについて処理が完了したか判断する(ステップS161)。処理対象の全てのセルについて処理が完了した場合(ステップS161:Yesルート)、イントラネット検索処理を終了し、元の処理に戻る。一方、処理対象の全てのセルについて処理が完了していなければ(ステップS161:Noルート)、端子Hを介してステップS133(図24)の処理に戻る。
次に、図26及び図27を用いて、情報検索装置3の検索処理部33によるインターネット検索処理を説明する。まず、検索処理部33は、処理対象となるセルを特定する(図26:ステップS163)。例えば、検索範囲が狭域の場合には、本処理の前にPC検索処理及びイントラネット検索処理を実施しているため、本処理では、PC検索処理及びイントラネット検索処理において未検出を表す情報が設定されたセルを処理対象のセルとして特定する。そして、検索処理部33は、処理対象のセルのうち未処理のセルを特定し、特定セルに対応する検索式を検索式格納部36から抽出する(ステップS165)。
そして、検索処理部33は、抽出した検索式に基づきインターネット検索を実行する(ステップS167)。具体的には、インターネット上を検索する所定の検索エンジンに検索式を出力し、検索エンジンからの検索結果(例えば、URLなど)をワークメモリ38に格納する。なお、検索エンジンに必要な設定については、予め設定しておく。
そして、検索処理部33は、検索結果にURLが含まれるか判断する(ステップS169)。検索結果にURLが含まれると判断された場合(ステップS169:Yesルート)、検索処理部33は、URLページデータを取得し、当該URLページのスクリーンショットを検索結果格納部37に格納する(ステップS171)。そして、特定セルに関連するテキストマイニングキーをワークメモリ38から抽出し、抽出したテキストマイニングキーに基づきURLページ内の内部検索を実行する(ステップS173)。
そして、検索処理部33は、ステップS173の処理結果として、マイニングデータが検出されたか判断する(ステップS175)。マイニングデータが検出された場合(ステップS175:Yesルート)、端子Iを介してステップS189(図27)の処理に移行する。一方、マイニングデータが検出されなかった場合(ステップS175:Noルート)、検索処理部33は、テキストマイニングキーをステップS165において抽出した検索式に追加することにより、第2検索式を生成し、検索式格納部36に格納する(ステップS177)。その後、端子Jを介してステップS179(図27)の処理に移行する。
一方、ステップS169において、検索結果にURLが含まれないと判断された場合(ステップS169:Noルート)、ステップS171乃至ステップS175の処理をスキップし、ステップS177の処理に移行する。
図27の説明に移行して、端子Jの後、検索処理部33は、第2検索式に基づきインターネット検索を実行する(図27:ステップS179)。なお、インターネット検索についてはステップS167の処理と変わらないため、ここでは説明は省略する。
そして、検索処理部33は、検索結果にURLが含まれるか判断する(ステップS181)。検索結果にURLが含まれると判断された場合(ステップS181:Yesルート)、検索処理部33は、URLページデータを取得し、当該URLページのスクリーンショットを検索結果格納部37に格納する(ステップS183)。そして、特定セルに関連するテキストマイニングキーをワークメモリ38から抽出し、抽出したテキストマイニングキーに基づきURLページ内の内部検索を実行する(ステップS185)。
そして、検索処理部33は、ステップS185の処理結果として、マイニングデータが検出されたか判断する(ステップS187)。マイニングデータが検出された場合(ステップS187:Yesルート)、検索処理部33は、マイニングデータを特定セルの実値として検索結果格納部37に格納する(ステップS189)。
一方、検索結果にURLが含まれないと判断された場合(ステップS181:Noルート)、又は、マイニングデータが検出されなかった場合(ステップS187:Noルート)、未検出を表す情報を検索結果格納部37に格納する(ステップS191)。
そして、検索処理部33は、処理対象の全てのセルについて処理が完了したか判断する(ステップS193)。処理対象の全てのセルについて処理が完了した場合(ステップS193:Yesルート)、インターネット検索処理を終了し、元の処理に戻る。一方、処理対象の全てのセルについて処理が完了していなければ(ステップS193:Noルート)、端子Kを介してステップS165(図26)の処理に戻る。
以上のような処理を実施することにより、自動生成された検索式に基づく検索を行うことができ、ユーザが、表中のセル毎に検索条件などを指定しなくとも、必要な情報を収集できるようになる。
以上本発明の一実施の形態について説明したが、本発明はこれに限定されるものではない。例えば、上で説明した機能ブロック図は必ずしも実際のプログラムモジュール構成に対応するものではない。例えば情報検索装置3は、1台のコンピュータではなく複数台のコンピュータで実現するようにしても良い。
また、上で説明したデータ構造は一例であって、必ずしも上記のような構造でなければならないわけではない。さらに、上で述べた画面例は一例であって、同様の内容を表示する他の画面構成を採用することも可能である。
また、処理フローについても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。
なお、情報検索装置3及びユーザ端末は、図28のようなコンピュータ装置であって、メモリ2501(記憶装置)とCPU2503(処理装置)とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施の形態における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。必要に応じてCPU2503は、表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ2501に格納され、必要があればHDD2505に格納される。本発明の実施の形態では、上で述べた処理を実施するためのアプリケーション・プログラムはリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
(付記1)
1以上の項目部と前記項目部に対応するデータ部とからなる表のフォーマット毎に検索式生成ルールを格納している検索式情報格納部と、検索結果格納部とを有するコンピュータにより実行される情報検索方法であって、
前記表のフォーマットの指定、並びに、表に関する表題のデータ及び各前記項目部の項目名の入力を受け付け、記憶装置に格納するステップと、
各前記データ部について、指定された前記表のフォーマットに対応し且つ前記検索式情報格納部に格納される前記検索式生成ルールに従って、前記表題のデータ、又は前記表題のデータ及び当該データ部に対応する前記項目部の項目名から、当該データ部に対応する検索式を生成するステップと、
各前記データ部について、当該データ部に対応する前記検索式を所定の検索エンジンに出力して、前記所定の検索エンジンから当該データ部に設定すべきデータの所在地を表す情報を含む検索結果を取得し、当該データ部の表中の位置を表す情報に対応付けて前記検索結果格納部に格納する検索ステップと、
前記検索結果格納部に格納されたデータに基づき、前記設定すべきデータの所在地を表す情報を各前記データ部に設定することにより、表示データを生成するステップと、
を含む情報検索方法。
(付記2)
各前記データ部について、前記検索式情報格納部に格納された前記検索式生成ルールに従って、当該データ部に対応する前記項目部の項目名から内部検索用のキーワードを抽出するキーワード抽出ステップと、
各前記データ部について、前記設定すべきデータの所在地を表す情報により特定されるウェブページ・データ又はファイルを取得し、当該データ部に対応する前記内部検索用のキーワードに基づき、前記ウェブページ・データ又はファイル内を検索する内部検索ステップと、
をさらに含む付記1記載の情報検索方法。
(付記3)
前記内部検索ステップにおいて前記内部検索用のキーワードが検出されなかった場合、前記データ部に対応する前記検索式に当該内部検索用のキーワードを追加することにより、新たな検索式を生成するステップと、
前記新たな検索式を用いて、前記検索ステップ以降のステップを実施するステップと、
をさらに含む付記2記載の情報検索方法。
(付記4)
前記検索ステップが、
前記記憶装置に格納された前記表題のデータ及び前記項目部の項目名に基づき、検索範囲を特定するステップ
を含む付記1記載の情報検索方法。
(付記5)
前記表のフォーマットが、列項目及び行項目のいずれかを有する第1のフォーマットと、1の階層の列項目及び行項目を有する第2のフォーマットと、複数の階層の列項目及び行項目を有する第3のフォーマットとを含む
ことを特徴とする付記1記載の情報検索方法。
(付記6)
1以上の項目部と前記項目部に対応するデータ部とからなる表のフォーマットの指定、並びに、表に関する表題のデータ及び各前記項目部の項目名の入力を受け付け、記憶装置に格納するステップと、
各前記データ部について、前記表のフォーマット毎に検索式生成ルールを格納している検索式情報格納部に格納され、指定された前記表のフォーマットに対応する前記検索式生成ルールに従って、前記表題のデータ、又は前記表題のデータ及び当該データ部に対応する前記項目部の項目名から、当該データ部に対応する検索式を生成するステップと、
各前記データ部について、当該データ部に対応する前記検索式を所定の検索エンジンに出力して、前記所定の検索エンジンから当該データ部に設定すべきデータの所在地を表す情報を含む検索結果を取得し、当該データ部の表中の位置を表す情報に対応付けて検索結果格納部に格納する検索ステップと、
前記検索結果格納部に格納されたデータに基づき、前記設定すべきデータの所在地を表す情報を各前記データ部に設定することにより、表示データを生成するステップと、
をコンピュータに実行させるための情報検索プログラム。
(付記7)
1以上の項目部と前記項目部に対応するデータ部とからなる表のフォーマットの指定、並びに、表に関する表題のデータ及び各前記項目部の項目名の入力を受け付け、記憶装置に格納する手段と、
各前記データ部について、前記表のフォーマット毎に検索式生成ルールを格納している検索式情報格納部に格納され、指定された前記表のフォーマットに対応する前記検索式生成ルールに従って、前記表題のデータ、又は前記表題のデータ及び当該データ部に対応する前記項目部の項目名から、当該データ部に対応する検索式を生成する手段と、
各前記データ部について、当該データ部に対応する前記検索式を所定の検索エンジンに出力して、前記所定の検索エンジンから当該データ部に設定すべきデータの所在地を表す情報を含む検索結果を取得し、当該データ部の表中の位置を表す情報に対応付けて検索結果格納部に格納する検索手段と、
前記検索結果格納部に格納されたデータに基づき、前記設定すべきデータの所在地を表す情報を各前記データ部に設定することにより、表示データを生成する手段と、
を有する情報検索装置。