(57)【要約】【課題】複合文書を構成する要素文書を単位に作成されたインデックスを用いながら、ユーザからの検索要求に合致する複合文書を検索できるようにする。【解決手段】全文インデックス格納部１２は、複合文書の各々を構成する要素文書を単位に作成されたインデックスを格納する。抽出部１６０は、ユーザからの検索要求によって指定される検索語から論理記号によって結合される複数の文字列を抽出する。全文検索エンジン１７は、抽出された複数の文字列の各々を含む要素文書を全文検索インデックス格納部１２に格納されているインデックスを用いて検索する。構成要素評価機構１８は、全文検索エンジン１７によって検索された要素文書を含む複合文書を構成要素関連情報に基づいて特定し、特定された複合文書のうち、上記論理記号の示す論理条件を満たす複合文書を検索要求に対する検索結果として取得する。【選択図】      図１
2007079766.tif 000002
【特許請求の範囲】
【請求項１】
ユーザからの検索要求によって指定される、論理記号および当該論理記号によって結合される複数の文字列を含む検索語に基づいて、複数の文書から構成される複合文書を検索する複合文書検索システムにおいて、
検索の対象となる複数の複合文書と当該複数の複合文書の各々を構成する要素文書との関係を示す構成要素関連情報を格納する構成要素関連情報記憶手段と、
前記複合文書の各々を構成する要素文書を単位に作成されたインデックスを格納する全文検索インデックス記憶手段と、
前記検索語から当該検索語に含まれている前記論理記号によって結合される複数の文字列を抽出する抽出手段と、
前記抽出手段によって抽出された複数の文字列の各々を含む要素文書を前記全文検索インデックス記憶手段に格納されているインデックスを用いて検索する全文検索エンジンと、
前記全文検索エンジンによって検索された要素文書を含む複合文書を前記構成要素関連情報に基づいて特定し、当該特定された複合文書のうち、前記論理記号の示す論理条件を満たす複合文書を前記検索要求に対する検索結果として取得する構成要素評価機構と
を具備することを特徴とする複合文書検索システム。
【請求項２】
前記構成要素評価機構は、
前記抽出された複数の文字列の各々に対応するヒット文書ベクトルであって、前記全文検索エンジンによって検索された全ての要素文書の各々について当該対応する文字列が当該要素文書に含まれるかを第１の検索結果として示すヒット文書ベクトルを生成するヒット文書ベクトル生成手段と、
前記抽出された複数の文字列の各々に対応する複合文書ベクトルであって、前記特定された全ての複合文書の各々について当該対応する文字列が当該複合文書に含まれるかを第２の検索結果として示す複合文書ベクトルを当該文字列に対応する前記ヒット文書ベクトルに基づいて生成する複合文書ベクトル生成手段と、
前記複合文書ベクトル生成手段によって生成された複合文書ベクトルを用いて前記論理記号の示す論理条件に従う処理を実行する論理条件処理手段と
を含むことを特徴とする請求項１記載の複合文書検索システム。
【請求項３】
前記抽出された複数の文字列の各々に対応する前記ヒット文書ベクトルは、前記抽出された複数の文字列の少なくとも１つを含む全ての要素文書の各々を要素とすると共に、当該要素文書に対応する前記第１の検索結果を当該要素の値とし、
前記抽出された複数の文字列の各々に対応する前記複合文書ベクトルは、前記ヒット文書ベクトルの要素をなす要素文書を含む全ての複合文書の各々を要素とすると共に、当該複合文書に対応する前記第２の検索結果を当該要素の値とする
ことを特徴とする請求項２記載の複合文書検索システム。
【請求項４】
前記論理条件処理手段は、前記抽出された複数の文字列の各々に対して生成された前記複合文書ベクトルの各々に含まれる同一の要素に対応するそれぞれの値に対して、前記論理記号の示す論理条件に従う処理を実行することを特徴とする請求項３記載の複合文書検索システム。
【請求項５】
ユーザからの検索要求によって指定される、論理記号および当該論理記号によって結合される複数の文字列を含む検索語に基づいて、複数の文書から構成される複合文書を検索する複合文書検索方法において、
前記検索語から当該検索語に含まれている前記論理記号によって結合される複数の文字列を抽出するステップと、
前記抽出された複数の文字列の各々を含む要素文書を、前記全文検索インデックス記憶手段に格納されている、検索の対象となる複数の複合文書の各々を構成する要素文書を単位に作成されたインデックスを用いて検索するステップと、
前記検索された要素文書を含む複合文書を、構成要素関連情報記憶手段に格納されている、前記検索の対象となる複数の複合文書と当該複数の複合文書の各々を構成する要素文書との関係を示す構成要素関連情報に基づいて特定し、当該特定された複合文書のうち、前記論理記号の示す論理条件を満たす複合文書を前記検索要求に対する検索結果として取得するステップと
を具備することを特徴とする複合文書検索方法。
【請求項６】
ユーザからの検索要求によって指定される、論理記号および当該論理記号によって結合される複数の文字列を含む検索語に基づいて、複数の文書から構成される複合文書を検索するのに用いられるプログラムであって、
コンピュータに、
前記検索語から当該検索語に含まれている前記論理記号によって結合される複数の文字列を抽出するステップと、
前記抽出された複数の文字列の各々を含む要素文書を、前記全文検索インデックス記憶手段に格納されている、検索の対象となる複数の複合文書の各々を構成する要素文書を単位に作成されたインデックスを用いて検索するステップと、
前記検索された要素文書を含む複合文書を、構成要素関連情報記憶手段に格納されている、前記検索の対象となる複数の複合文書と当該複数の複合文書の各々を構成する要素文書との関係を示す構成要素関連情報に基づいて特定し、当該特定された複合文書のうち、前記論理記号の示す論理条件を満たす複合文書を前記検索要求に対する検索結果として取得するステップと
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の文書から構成される複合文書を検索する複合文書検索システム、複合文書検索方法およびプログラムに関する。
【背景技術】
【０００２】
電子化された膨大な文書の中から必要な情報を得るシステムとして、ユーザからの検索要求によって指定された検索語に基づいて文書を検索する検索システムが従来から知られている。
【０００３】
この種の検索システムの１つに、複数の文書から構成される複合文書を検索する複合文書検索システムがある。複合文書検索システムでは、検索の対象となる複数の複合文書の各々を構成する要素文書を単位にインデックスが作成される。複合文書としては、例えば電子メールおよび当該メールに添付されるファイル（添付ファイル）から構成される複合文書が知られている。また、複数のファイルから構成される複合ファイル（例えばアーカイブファイルなど）も、複合文書として知られている。
【０００４】
従来の複合文書検索システムでは、ユーザからの検索要求によって複数の文字列を含む検索語（検索条件）が指定された場合、複合文書中に当該複数の文字列を全て含む要素文書があれば、その複合文書が検索される。つまり検索要求（検索条件）に合致（ヒット）する複合文書が検索される。しかし、複合文書を構成する要素文書それぞれが上記複数の文字列のうちのいくつかの文字列しか含まない場合、複合文書全体としては当該複数の文字列を全て含んでいたとしても、当該複合文書は検索されないという問題がある。
【０００５】
以下、上記の問題について具体例を挙げて説明する。今、検索語として、「“東京  かつ  電気”」が指定されたとする。この場合、複合文書を構成する要素文書を単位にインデックスが作成される複合文書検索システムでは、文字列「東京」と文字列「電気」の両方を含む要素文書が存在するならば、その要素文書を含む複合文書が検索される。しかし、各要素文書それぞれでは文字列「東京」、文字列「電気」のどちらか一方しか含まない場合、たとえ複合文書全体としては文字列「東京」も文字列「電気」も含んでいるとしても、当該複合文書は検索されないことになる。
【０００６】
そこで、例えば特許文献１には、複合文書単位でインデックスを作成することで、複合文書単位で文書を検索する技術（以下、先行技術と称する）が開示されている。この先行技術によれば、検索語として「“東京  かつ  電気”」が指定された上記の例であれば、複合文書を構成する要素文書の各々が文字列「東京」および「電気」の両方を含まない場合でも、複合文書全体として当該文字列「東京」および「電気」の両方を含むならば、その複合文書をユーザからの検索要求に合致する複合文書として検索することが可能となる。
【特許文献１】特開２０００−２５９６４８号公報（段落０００７乃至０００９）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記したように、先行技術によれば、複合文書単位でインデックスを作成することによって、複合文書単位で文書を検索することが可能である。
【０００８】
しかしながら、上記の先行技術においては、複合文書単位でインデックスが作成されるので、インデックス量（データ量）が大きくなるという問題がある。また、インデックス量が大きくなることにより、ヒットする語の重みが相対的に低くなることによる精度悪化という問題もある。
【０００９】
また、上記の先行技術では、複合文書単位で文書を検索することは可能であるが、複数の文字列全てを有する複合文書を構成する要素文書単体を検索することはできないという問題がある。
【００１０】
本発明は、上記事情を考慮してなされたもので、複合文書を構成する要素文書を単位に作成されたインデックスを用いながら、ユーザからの検索要求に合致する複合文書を検索することが可能な複合文書検索システム、複合文書検索方法およびプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
本発明の１つの態様によれば、ユーザからの検索要求によって指定される、論理記号および当該論理記号によって結合される複数の文字列を含む検索語に基づいて、複数の文書から構成される複合文書を検索する複合文書検索システムが提供される。このシステムは、検索の対象となる複数の複合文書と当該複数の複合文書の各々を構成する要素文書との関係を示す構成要素関連情報を格納する構成要素関連情報記憶手段と、前記複合文書の各々を構成する要素文書を単位に作成されたインデックスを格納する全文検索インデックス記憶手段と、前記検索語から当該検索語に含まれている前記論理記号によって結合される複数の文字列を抽出する抽出手段と、前記抽出手段によって抽出された複数の文字列の各々を含む要素文書を前記全文検索インデックス記憶手段に格納されているインデックスを用いて検索する全文検索エンジンと、前記全文検索エンジンによって検索された要素文書を含む複合文書を前記構成要素関連情報に基づいて特定し、当該特定された複合文書のうち、前記論理記号の示す論理条件を満たす複合文書を前記検索要求に対する検索結果として取得する構成要素評価機構とを具備する。
【発明の効果】
【００１２】
本発明によれば、複合文書を構成する要素文書を単位に作成されたインデックスを用いながら、ユーザからの検索要求に合致する複合文書を検索することが可能となる。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照して本発明の実施形態を説明する。  
まず、図１を参照して、本発明の一実施形態に係る複合文書検索システムの構成について説明する。
【００１４】
図１は、複合文書検索システムの構成を示すブロック図である。この複合文書検索システムは、情報収集機構１１と、全文検索インデックス格納部１２と、構成要素関連情報記憶部１３と、ユーザインタフェース１４と、検索実行／応答サーバ１５と、検索式解析機構１６と、全文検索エンジン１７と、構成要素評価機構１８とから構成される。
【００１５】
情報収集機構１１は、検索対象となる複合文書を情報ソース１０から収集する。情報ソース１０は、例えばファイルシステムおよびメールサーバを含む。また、情報収集機構１１は、自身が収集した複合文書を構成する要素文書を単位にインデックスを作成する。情報収集機構１１は、作成されたインデックスを全文検索インデックス格納部１２に格納する。このように全文検索インデックス格納部１２は、検索対象となる複合文書を構成する要素文書を単位に作成されたインデックスを格納する記憶手段として用いられる。
【００１６】
このとき情報収集機構１１は、要素文書単位でのインデックス作成に用いられた複合文書と当該複合文書を構成する要素文書との関係を示す構成要素関連情報を生成する。情報収集機構１１は、生成された構成要素関連情報を、構成要素関連情報記憶部１３に格納する。このように構成要素関連情報記憶部１３は、検索対象となる複合文書と当該複合文書を構成する要素文書との関係を示す構成要素関連情報を格納する記憶手段として用いられる。
【００１７】
ユーザインタフェース１４は、ユーザからの検索要求を受け付けると共に検索結果をユーザに提示するインタフェース機能を有する。本実施形態において、ユーザインタフェース１４は、複合文書検索システムの一部を構成しているが、これに限るものではない。例えば、ユーザインタフェース１４が、図１の複合文書検索システムと通信回線（例えばネットワーク）を介して接続されたクライアント端末に設けられる構成であっても構わない。
【００１８】
検索実行／応答サーバ１５は、ユーザインタフェース１４によって受け付けられたユーザからの検索要求の示す検索語（検索条件）を解析するために、当該検索語を検索式解析機構１６に渡す。検索実行／応答サーバ１５は、検索式解析機構１６によって解析された検索語を受け取り、検索実行のために解析済みの検索語を全文検索エンジン１７に送信する。また、検索実行／応答サーバ１５は、全文検索エンジン１７による検索結果を本複合文書検索システムの検索結果としてユーザインタフェース１４によってユーザに提示させる。
【００１９】
検索式解析機構１６は、ユーザからの検索要求の示す検索語（検索条件）を解析する。検索式解析機構１６は、検索語が論理記号（例えばＡＮＤまたはＯＲ）及び当該論理記号によって結合される複数の文字列を含む場合、当該複数の文字列を抽出する抽出部１６０を含む。また、検索式解析機構１６は、検索語に含まれる論理記号を解析する。検索式解析機構１６は、解析済みの検索語を検索実行／応答サーバ１５に送信する。
【００２０】
全文検索エンジン１７は、検索式解析機構１６によって解析された検索語を受け取り、当該検索語に含まれている論理記号で結合されている文字列毎に全文検索インデックス格納部１２を用いて検索を実行する。ここで、全文検索インデックス格納部１２には複合文書を構成する要素文書を単位に作成されたインデックスが格納されている。そこで全文検索エンジン１７は、複合文書を構成する要素文書を検索対象として上記文字列ごとの検索を実行する。全文検索エンジン１７は、全ての文字列について要素文書の検索を実行すると、その文字列毎の検索結果（要素文書検索結果）およびそれぞれの文字列を結合する論理記号を構成要素評価機構１８に送信する。
【００２１】
構成要素評価機構１８は、全文検索エンジン１７から送られた文字列ごとの要素文書検索結果および構成要素関連情報記憶部１３に格納されている構成要素関連情報に基づいて、ユーザからの検索要求に対する検索結果となる複合文書を取得する。構成要素評価機構１８は、検索結果を検索実行／応答サーバ１５に送信する。
【００２２】
情報収集機構１１、ユーザインタフェース１４、検索実行／応答サーバ１５、検索式解析機構１６、全文検索エンジン１７及び構成要素評価機構１８は、コンピュータにインストールされた特別のソフトウェアプログラムを当該コンピュータ（内のＣＰＵ）が読み取って実行することにより実現される。このプログラムは、コンピュータで読み取り可能な記憶媒体に予め格納して頒布可能である。また、このプログラムが、ネットワークを介してダウンロード（頒布）されても構わない。
【００２３】
次に、図２を参照して構成要素評価機構１８の構成について説明する。  
図２は構成要素評価機構１８の構成を示すブロック図である。この構成要素評価機構１８は、ヒット文書ベクトル生成部２１と、複合文書ベクトル生成部２２と、論理条件処理部２３とを備える。
【００２４】
ヒット文書ベクトル生成部２１は、全文検索エンジン１７が実行した文字列ごとの要素文書検索結果（第１の検索結果）を示すヒット文書ベクトルを当該文字列ごとに生成する。この文字列ごとのヒット文書ベクトルは、全文検索エンジン１７によって検索された全ての要素文書、即ち検索語に含まれている複数の文字列のうち少なくとも１つの文字列を含む全ての要素文書を要素とする。また、上記文字列ごとのヒット文書ベクトルの各要素の値は、その要素に対応する文書（要素文書）に対する検索結果、つまり、その要素に対応する要素文書に当該ヒット文書ベクトルに対応する文字列が含まれている（ヒットである）かまたは含まれていない（ミスヒットである）かを示す。
【００２５】
複合文書ベクトル生成部２２は、上記文字列ごとのヒット文書ベクトルに基づいて複合文書に対する検索結果（第２の検索結果）を示す複合文書ベクトルを当該文字列ごとに生成する。この文字列ごとの複合文書ベクトルは、ヒット文書ベクトルの要素をなす要素文書を含む全ての複合文書を要素とする。また、上記文字列ごとの複合文書ベクトルの各要素の値は、ヒット文書ベクトルの値と同様に、その要素に対応する複合文書に対する検索結果（ヒットまたはミスヒット）を示す。
【００２６】
論理条件処理部２３は、上記文字列ごとの複合文書ベクトルの各要素の値を用いて、当該文字列の各々（つまり抽出部１６０によって抽出された文字列の各々）を結合する論理記号の示す論理条件に従う処理を実行する。論理条件処理部２３は、この処理を実行することによってユーザからの検索要求に対する検索結果となる複合文書を決定する。
【００２７】
次に図１の複合文書検索システムの動作について、図３のフローチャートを参照して、検索結果実行から複合文書へ置換する処理を例に説明する。  
情報収集機構１１が収集した複合文書の集合は、図４Ａおよび図４Ｂにそれぞれ示すような圧縮ファイル＃１および圧縮ファイル＃２を含むものとする。圧縮ファイル＃１は、ファイル＃Ａおよびファイル＃Ｂを要素文書とする。また、圧縮ファイル＃２は、ファイル＃Ｘおよびファイル＃Ｙを要素文書とする。
【００２８】
ここで、ユーザインタフェース１４が、ユーザからの検索要求を受け付けたものとする。この検索要求で指定される検索語（検索条件）が「“自動車”ＡＮＤ“電話”」、つまり論理記号ＡＮＤと当該論理記号によって結合される２つの文字列「自動車」および「電話」とを含むものとする。ユーザインタフェース１４によって受け付けられた検索要求で指定される検索語は、検索実行／応答サーバ１５によって検索式解析機構１６に渡される。
【００２９】
検索式解析機構１６の抽出部１６０は、検索実行／応答サーバ１５から渡された検索語から論理記号と当該論理記号によって結合された文字列とを抽出する（ステップＳ１）。ここでは、論理記号ＡＮＤと文字列「自動車」および「電話」とが抽出される。つまり、ユーザからの検索要求によって指定された検索語としての検索条件（ＡＮＤ条件）「“自動車”ＡＮＤ“電話”」が、文字列単位に分解される。抽出部１６０によって抽出された論理記号ＡＮＤと文字列「自動車」および「電話」（つまり解析済みの検索語）は検索実行／応答サーバ１５に返される。
【００３０】
検索実行／応答サーバ１５は、検索式解析機構１６の抽出部１６０によって抽出された文字列（「自動車」および「電話」）の中から１つの未処理の文字列、例えば「自動車」を取り出す（ステップＳ２）。取り出された文字列「自動車」は全文検索エンジン１７に渡される。全文検索エンジン１７は、検索実行／応答サーバ１５から渡された文字列「自動車」について、当該文字列「自動車」を含む要素文書を検索するための全文検索を、全文検索インデックス格納部１２に格納されているインデックスを用いて実行する（ステップＳ３）。このステップＳ３において構成要素評価機構１８のヒット文書ベクトル生成部２１は、全文検索エンジン１７による検索結果に基づいてヒット文書ベクトルを生成する。
【００３１】
図５Ａは文字列「自動車」を含む要素文書の検索結果に基づいて生成されたヒット文書ベクトル３１を示す。このようなヒット文書ベクトル３１を、文字列「自動車」に対するヒット文書ベクトル３１と呼ぶこともある。このヒット文書ベクトル３１は、圧縮ファイル＃１を構成する全ての要素文書であるファイル＃Ａおよびファイル＃Ｂ並びに圧縮ファイル＃２を構成する全ての要素文書であるファイル＃Ｘおよび＃Ｙを、それぞれ要素とする。また、ヒット文書ベクトル３１の各要素の値は、文字列「自動車」について実行された当該要素をなす要素文書に対する検索結果（ヒットまたはミスヒット）を示す。図５Ａの例では、ファイル＃Ａに対応するヒット文書ベクトル３１の要素の値はヒットを示し、ファイル＃Ｂに対応するヒット文書ベクトル３１の要素の値はミスヒット（ミス）を示す。また、ファイル＃Ｘに対応するヒット文書ベクトル３１の要素の値はヒットを示し、ファイル＃Ｙに対応するヒット文書ベクトル３１の要素の値はミスを示す。
【００３２】
検索実行／応答サーバ１５は、構成要素評価機構１８のヒット文書ベクトル生成部２１によってヒット文書ベクトル（ここではヒット文書ベクトル３１）が生成されると、検索式解析機構１６の抽出部１６０によって抽出された文字列の中に未処理の文字列が存在するかを判定する（ステップＳ５）。もし、未処理の文字列が存在するならば、検索実行／応答サーバ１５は、１つの未処理の文字列、例えば「電話」を取り出す（ステップＳ２）。
【００３３】
全文検索エンジン１７は、検索実行／応答サーバ１５によって取り出された文字列「電話」について、当該文字列「電話」を含む要素文書を検索するための全文検索を実行する（ステップＳ３）。このステップＳ３において構成要素評価機構１８のヒット文書ベクトル生成部２１は、文字列「電話」を含む要素文書の検索結果に基づいてヒット文書ベクトルを生成する。
【００３４】
図５Ｂは文字列「電話」を含む要素文書の検索結果に基づいて生成されたヒット文書ベクトル３２を示す。このようなヒット文書ベクトル３２を、文字列「電話」に対するヒット文書ベクトル３２と呼ぶこともある。このヒット文書ベクトル３２は、圧縮ファイル＃１を構成する要素文書ファイル＃Ａおよび＃Ｂ並びに圧縮ファイル＃２を構成する要素文書ファイル＃Ｘおよび＃Ｙを、それぞれ要素とする。また、ヒット文書ベクトル３２の各要素の値は、文字列「電話」について実行された当該要素をなす要素文書に対する検索結果（ヒットまたはミス）を示す。図５Ｂの例では、ファイル＃Ａに対応するヒット文書ベクトル３２の要素の値はミスを示し、ファイル＃Ｂに対応するヒット文書ベクトル３２の要素の値はヒットを示す。また、ファイル＃Ｘに対応するヒット文書ベクトル３２の要素の値はミスを示し、ファイル＃Ｙに対応するヒット文書ベクトル３２の要素の値はミスを示す。
【００３５】
上述の全文検索エンジン１７による全文検索および構成要素評価機構１８のヒット文書ベクトル生成部２１によるヒット文書ベクトルの生成（ステップＳ３）は、抽出部１６０によって抽出された全ての文字列について繰り返し実行される（ステップＳ４）
抽出された全ての文字列について全文検索が実行された場合（ステップＳ４）、構成要素評価機構１８の複合文書ベクトル生成部２２は、ヒット文書ベクトル生成部２１によってステップＳ３において生成されたヒット文書ベクトルの中から１つの未処理のヒット文書ベクトルを取り出す（ステップＳ５）。
【００３６】
複合文書ベクトル生成部２２は、取り出されたヒット文書ベクトルおよび構成要素関連情報記憶部１３に格納されている構成要素関連情報に基づいて複合文書ベクトルを生成する（ステップＳ６）。構成要素関連情報の一例を図６に示す。この構成要素関連情報は、圧縮ファイル＃１がファイル＃Ａおよびファイル＃Ｂから構成されることを示す。構成要素関連情報はまた、圧縮ファイル＃２がファイル＃Ｘおよびファイル＃Ｙから構成されることを示す。
【００３７】
ここで、ステップＳ６における複合文書ベクトルの生成手順について、ステップＳ５で図５Ａに示すヒット文書ベクトル３１が取り出された場合を例に、図７を参照して説明する。ヒット文書ベクトル３１、即ち文字列「自動車」に対するヒット文書ベクトル３１は、文字列「自動車」を含む要素文書の検索結果を示す。
【００３８】
複合文書ベクトル生成部２２は、図６に示す構成要素関連情報に基づいて、ヒット文書ベクトル３１の各要素の示す要素文書を含む複合文書を特定し、当該ヒット文書ベクトル３１の各要素を当該特定された複合文書に対応付ける。つまり複合文書ベクトル生成部２２は、ヒット文書ベクトル３１から、図７において矢印７１で示すように、当該ヒット文書ベクトル３１の各要素が複合文書に対応付けられたヒット文書ベクトル３１ａを生成する。ヒット文書ベクトル３１ａでは、ファイル（要素文書）＃Ａおよび＃Ｂを示す要素が圧縮ファイル（複合文書）＃１に対応付けられ、ファイル（要素文書）＃Ｘおよび＃Ｙを示す要素が圧縮ファイル（複合文書）＃２に対応付けられる。
【００３９】
複合文書ベクトル生成部２２は、ヒット文書ベクトル３１ａから、図７において矢印７２で示すように、当該ヒット文書ベクトル３１ａによってヒット文書ベクトル３１の各要素に対応付けられた複合文書、即ち圧縮ファイル＃１および＃２を要素とする複合文書ベクトル４１を生成する。この複合文書ベクトル４１を、文字列「自動車」に関する複合文書ベクトル４１と呼ぶこともある。
【００４０】
複合文書ベクトル４１の各要素の値は、当該要素の示す複合文書を構成する要素文書に対応するヒット文書ベクトル３１（３１ａ）の値に基づいて決定される。即ち、複合文書を構成する複数の要素文書の各々に対応するヒット文書ベクトル３１（３１ａ）の値の少なくとも１つがヒットを示す場合、そのヒットを示す値が優先されて、当該複合文書に対応する複合文書ベクトル４１の値（要素の値）として決定される。
【００４１】
本実施形態において、圧縮ファイル＃１を構成するファイル＃Ａおよび＃Ｂに対応するヒット文書ベクトル３１（３１ａ）の値は、それぞれヒットおよびミスを示す。一方、圧縮ファイル＃２を構成するファイル＃Ｘおよび＃Ｙに対応するヒット文書ベクトル３１（３１ａ）の値は、それぞれヒットおよびミスを示す。よって、圧縮ファイル＃１および＃２に対応する複合文書ベクトル４１の値は、いずれもヒットを示す。このことは、圧縮ファイル＃１および＃２に、文字列「自動車」を含む要素文書が存在することを表す。
【００４２】
図８は、ステップＳ５で図５Ｂに示すヒット文書ベクトル３２が取り出された場合における複合文書ベクトルの生成手順を示す。ヒット文書ベクトル３２、即ち文字列「電話」に対するヒット文書ベクトル３２は、文字列「電話」を含む要素文書の検索結果を示す。
【００４３】
図８の例では、ヒット文書ベクトル３２から、矢印８１で示すように、当該ヒット文書ベクトル３２の各要素が複合文書に対応付けられたヒット文書ベクトル３２ａが生成される。このヒット文書ベクトル３２ａでは、先のヒット文書ベクトル３１ａと同様に、ファイル（要素文書）＃Ａおよび＃Ｂを示す要素が圧縮ファイル（複合文書）＃１に対応付けられ、ファイル（要素文書）＃Ｘおよび＃Ｙを示す要素が圧縮ファイル（複合文書）＃２に対応付けられる。
【００４４】
次に、図８において矢印８２で示すように、ヒット文書ベクトル３２ａによってヒット文書ベクトル３２の各要素に対応付けられた複合文書、即ち圧縮ファイル＃１および＃２を要素とする複合文書ベクトル４２が生成される。この複合文書ベクトル４２を、文字列「電話」に関する複合文書ベクトル４２と呼ぶこともある。
【００４５】
本実施形態において、圧縮ファイル＃１を構成するファイル＃Ａおよび＃Ｂに対応するヒット文書ベクトル３２（３２ａ）の値は、それぞれ、ミスおよびヒットを示す。一方、圧縮ファイル＃２を構成するファイル＃Ｘおよび＃Ｙに対応するヒット文書ベクトル３２（３２ａ）の値は、いずれもミスを示す。よって、圧縮ファイル＃１および＃２に対応する複合文書ベクトル４２の値は、それぞれヒットおよびミスを示す。このことは、圧縮ファイル＃１および＃２のうちの圧縮ファイル＃１に、文字列「電話」を含む要素文書が存在することを表す。
【００４６】
上述の複合文書ベクトル生成部２２による複合文書ベクトルの生成（ステップＳ６）は、ステップＳ３において生成された全てのヒット文書ベクトルについて繰り返し実行される（ステップＳ７）。
【００４７】
やがて、生成された全てのヒット文書ベクトルについて複合文書ベクトルの生成が実行されたものとする。この場合、構成要素評価機構１８の論理条件処理部２３は、ステップＳ６において生成された複合文書ベクトルを用いて、ステップＳ１で抽出された論理記号の示す論理条件に従う処理を行う（ステップＳ８）。
【００４８】
本実施形態において、ステップＳ１で抽出された論理記号は「ＡＮＤ」である。また、ステップＳ６において生成された複合文書ベクトルは、文字列「自動車」に関する図７に示す複合文書ベクトル４１、および文字列「電話」に関する図８に示す複合文書ベクトル４２である。したがってステップＳ８では、複合文書ベクトル４１および４２の要素間の、論理記号ＡＮＤ（文字列「自動車」と文字列「電話」を結合する論理記号ＡＮＤ）の示すＡＮＤ条件に従う処理が実行される。
【００４９】
具体的には、複合文書ベクトル４１および４２の圧縮ファイル＃１に対応する要素の値に対して、論理記号ＡＮＤの示す論理処理、即ちＡＮＤ（論理積）演算を実行する処理が、論理条件処理部２３によって実行される。ここで、文字列「自動車」に関する複合文書ベクトル４１において、圧縮ファイル＃１および＃２に対応する要素の値は、いずれもヒットを示す。一方、文字列「電話」に関する複合文書ベクトル４２において、圧縮ファイル＃１および＃２に対応する要素の値は、それぞれ、ヒットおよびミスを示す。
【００５０】
この場合、複合文書ベクトル４１および４２の圧縮ファイル＃１に対応する要素の値に対するＡＮＤ演算の結果はヒットを示す。この結果は、圧縮ファイル＃１が、論理記号ＡＮＤと当該論理記号ＡＮＤで結合される文字列「自動車」および文字列「電話」を含む検索語の示す検索条件に合致する複合文書、つまりヒット文書であることをを示す。
【００５１】
これに対し、複合文書ベクトル４１および４２の圧縮ファイル＃２に対応する要素の値に対するＡＮＤ演算の結果はミスを示す。この結果は、圧縮ファイル＃２が、上記検索語の示す検索条件に合致しない複合文書、つまりミスヒット文書であることを示す。複合文書ベクトル４１および４２の各々の、圧縮ファイル＃１および＃２に対応する要素の値に対するＡＮＤ演算の結果を図９に示す。
【００５２】
よって、論理条件処理部２３は、圧縮ファイル＃１を上記検索語の示す検索条件に合致する複合文書、つまり上記検索語を指定する検索要求に対する検索結果（検索結果複合文書）とする（ステップＳ９）。
【００５３】
上記実施形態では、検索語に含まれる論理記号が「ＡＮＤ」ある場合について説明した。しかし、検索語に含まれる論理記号が「ＯＲ」の場合にも、論理条件処理部２３の論理演算処理がＯＲ（論理和）演算となる以外は、上記実施形態と同様の手順で検索要求に対する検索結果（検索結果複合文書）を取得できる。また上記実施形態では、検索の対象となる複数の複合文書の各々を構成する要素文書を単位に作成されるインデックスを用いて、要素文書が検索されることから、要素文書単体を検索することも可能である。
【００５４】
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその用紙を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素からいくつかの構成要素を削除してもよい。
【図面の簡単な説明】
【００５５】
【図１】本発明の一実施形態に係る複合文書検索システムの構成を示すブロック図。
【図２】図１中の構成要素評価機構１８の構成を示すブロック図。
【図３】図１の複合文書検索システムの検索結果実行から複合文書へ置換する処理手順を示すフローチャート。
【図４Ａ】圧縮ファイル＃１の内容例を示す図。
【図４Ｂ】圧縮ファイル＃２の内容例を示す図。
【図５Ａ】文字列「自動車」に対するヒット文書ベクトル３１のデータ構造例を示す図。
【図５Ｂ】文字列「電話」に対するヒット文書ベクトル３２のデータ構造例を示す図。
【図６】構成要素関連情報のデータ構造例を示す図。
【図７】文字列「自動車」に対する複合文書ベクトル４１の生成手順を示す図。
【図８】文字列「電話」に対する複合文書ベクトル４２の生成手順を示す図。
【図９】図７および図８にそれぞれ示す複合文書ベクトル４１および４２に対するＡＮＤ条件に従う処理の処理結果を示す図。
【符号の説明】
【００５６】
１１…情報収集機構、１２…全文検索インデックス格納部、１３…構成要素関連情報記憶部、１４…ユーザインタフェース、１５…検索実行／応答サーバ、１６…検索式解析機構、１７…全文検索エンジン、１８…構成要素評価機構、２１…ヒット文書ベクトル生成部、２２…複合文書ベクトル生成部、２３…論理条件処理部、３１，３２…ヒット文書ベクトル、４１，４２…複合文書ベクトル、１６０…抽出部。
【図１】
2007079766.tif 000003
【図２】
2007079766.tif 000004
【図３】
2007079766.tif 000005
【図４Ａ】
2007079766.tif 000006
【図４Ｂ】
2007079766.tif 000007
【図５Ａ】
2007079766.tif 000008
【図５Ｂ】
2007079766.tif 000009
【図６】
2007079766.tif 000010
【図７】
2007079766.tif 000011
【図８】
2007079766.tif 000012
【図９】
2007079766.tif 000013