(57)【要約】【課題】  ファクトクエリへの返答のソースドキュメントのスニペットを提供する方法およびシステムが開示される。【解決手段】  ソースドキュメントのスニペットは、ファクトクエリへのファクト返答が抽出されたソースドキュメントへのユーザ要求に応答して提供することができる。スニペットは、ファクトクエリ用語および返答用語を含む。スニペットは、ソースドキュメントのユニフォームリソースロケータ（ＵＲＬ）と共に表示することができる。【選択図】  図１
2008535095.tif 000002
【特許請求の範囲】
【請求項１】
ファクトのソースを表示する方法であって、
１つ以上の用語を含むファクトクエリを受け取ること、
１つ以上の用語を含む、前記ファクトクエリへの返答を特定すること、
前記ファクトクエリの１つ以上の用語および前記返答の１つ以上の用語を含むソースドキュメントを特定すること、
前記ソースドキュメントの少なくとも１つのスニペットを生成することであって、前記スニペットは、前記ファクトクエリの１つ以上の用語および前記返答の１つ以上の用語を含むこと、および
前記スニペットを含む応答を生成すること、
を含む方法。
【請求項２】
前記応答を生成することは、前記ファクトクエリの１つ以上の用語および前記返答の１つ以上の用語を前記スニペット内で強調表示することをさらに含む、請求項１に記載の方法。
【請求項３】
前記ファクトクエリへの前記返答の表示された表現内のリンクのユーザ選択に応答することをさらに含む、請求項１に記載の方法。
【請求項４】
前記応答を生成することは、前記リンクの前記ユーザ選択に応答して行われる、請求項１に記載の方法。
【請求項５】
前記ソースドキュメントの１つ以上をリストする要求を受け取ることをさらに含む、請求項１に記載の方法。
【請求項６】
応答を生成することは、前記ソースドキュメントの１つ以上をリストする要求に応答して行われる、請求項５に記載の方法。
【請求項７】
ファクトのソースを表示するシステムであって、
１つ以上の用語を含むファクトクエリを受け取るクエリレシーバと、
１つ以上の用語を含む、前記ファクトクエリへの返答を特定する返答特定器と、
前記ファクトクエリの１つ以上の用語および前記返答の１つ以上の用語を含むソースドキュメントを特定するソースドキュメント特定器と、
前記ソースドキュメントの少なくとも１つのスニペットを生成するスニペットジェネレータであって、前記スニペットは、前記ファクトクエリの１つ以上の用語および前記返答の１つ以上の用語を含む、スニペットジェネレータと、
前記スニペットを含む応答を生成する応答ジェネレータと、
を備えるシステム。
【請求項８】
前記応答ジェネレータは、前記ファクトクエリの１つ以上の用語および前記返答の１つ以上の用語を前記生成されたスニペット内で強調表示する命令をさらに含む、請求項７に記載のシステム。
【請求項９】
前記クエリレシーバは、前記ソースドキュメントの１つ以上をリストする要求を受け取る命令をさらに含む、請求項７に記載のシステム。
【請求項１０】
前記クエリレシーバは、前記ファクトクエリへの表示された返答内のリンクのユーザ選択に応答する命令をさらに含む、請求項７に記載のシステム。
【請求項１１】
ファクトのソースを表示するシステムであって、
１つ以上の用語を含むファクトクエリを受け取る手段と、
１つ以上の用語を含む、前記ファクトクエリへの返答を特定する手段と、
前記ファクトクエリの１つ以上の用語および前記返答の１つ以上の用語を含むソースドキュメントを特定する手段と、
前記ソースドキュメントの少なくとも１つのスニペットを生成する手段であって、前記スニペットは、前記ファクトクエリの１つ以上の用語および前記返答の１つ以上の用語を含む手段と、
前記スニペットを含む応答を生成する手段と、
を備えるシステム。
【請求項１２】
コンピュータシステムと併せて使用され、コンピュータ可読記憶媒体および内部に埋め込まれたコンピュータプログラムメカニズムを備えるコンピュータプログラム製品であって、前記コンピュータプログラムメカニズムは、
１つ以上の用語を含むファクトクエリを受け取ること、
１つ以上の用語を含む、前記ファクトクエリへの返答を特定すること、
前記ファクトクエリの１つ以上の用語および前記返答の１つ以上の用語を含むソースドキュメントを特定すること、
前記ソースドキュメントの少なくとも１つのスニペットを生成することであって、前記スニペットは、前記ファクトクエリの１つ以上の用語および前記返答の１つ以上の用語を含むこと、および
前記スニペットを含む応答を生成すること、
を含む、コンピュータプログラム製品。
【請求項１３】
前記コンピュータプログラムメカニズムは、前記ファクトクエリの１つ以上の用語および前記返答の１つ以上の用語を前記スニペット内で強調表示することをさらに含む、請求項１２に記載のコンピュータプログラム製品。
【請求項１４】
前記コンピュータプログラムメカニズムは、前記ソースドキュメントの１つ以上をリストする要求を受け取ることをさらに含む、請求項１２に記載のコンピュータプログラム製品。
【請求項１５】
前記コンピュータプログラムメカニズムは、前記ファクトクエリへの表示された返答内のリンクのユーザ選択に応答することをさらに含む、請求項１２に記載のコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
本出願は、参照により本明細書にそれぞれ援用される以下の出願に関連する。
米国特許出願第１１／０９７，６８８号明細書、名称「Ｃｏｒｒｏｂｏｒａｔｉｎｇ  Ｆａｃｔｓ  Ｅｘｔｒａｃｔｅｄ  ｆｒｏｍ  Ｍｕｌｔｉｐｌｅ  Ｓｏｕｒｃｅｓ」、２００５年３月３１日出願、
米国特許出願第１１／０９７，６７６号明細書、名称「Ｂｌｏｏｍ  Ｆｉｌｔｅｒｓ  ｆｏｒ  Ｑｕｅｒｙ  Ｓｉｍｕｌａｔｉｏｎ」、２００５年３月３１日出願、
米国特許出願第１１／０９７，６９０号明細書、名称「Ｓｅｌｅｃｔｉｎｇ  ｔｈｅ  Ｂｅｓｔ  Ａｎｓｗｅｒ  ｔｏ  ａ  Ｆａｃｔ  Ｑｕｅｒｙ  ｆｒｏｍ  Ａｍｏｎｇ  ａ  Ｓｅｔ  ｏｆ  Ｐｏｔｅｎｔｉａｌ  Ａｎｓｗｅｒｓ」、２００５年３月３１日出願、および
米国特許出願第１１／０２４，７８４号明細書、名称「Ｓｕｐｐｌｅｍｅｎｔｉｎｇ  Ｓｅａｒｃｈ  Ｒｅｓｕｌｔｓ  ｗｉｔｈ  Ｉｎｆｏｒｍａｔｉｏｎ  ｏｆ  Ｉｎｔｅｒｅｓｔ」、２００４年１２月３０日出願。
【０００２】
技術分野
開示する実施形態は、包括的にはファクトクエリに関し、詳細には、ファクトクエリエンジン並びにクエリ用語及び返答用語を有するソースのスニペットのユーザインタフェースに関する。
【背景技術】
【０００３】
ワールドワイドウェブ（「ウェブ」としても知られている）およびウェブ内のウェブページは、ファクト情報の膨大なソースである。ユーザはウェブページを見て、「ポーランドの首都はどこか」または「ジョージワシントンの生年月日はいつか」等のファクトクエリに対する答えを得ることができる。しかし、ウェブサーチエンジンは、一般に、上述したようなファクトクエリに対して単純で簡明な返答を提供しないため、これに関連してはユーザの助けにならないことがある。ウェブサーチエンジンは、単純で簡明な答えを提供せずに、クエリにマッチしたと判断されたウェブページリストをユーザに提供し、ユーザがマッチしたウェブページを調べて答えを見つける必要がある。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ファクトクエリに対して素早い返答を提供することができるサーチエンジンを構築しようというこれまでの試みには、それぞれ固有の欠点がある。例えば、サーチエンジンによっては、特定の百科事典等の単一ソースからファクトを引き出すものがある。これは、こういったエンジンが返答できるクエリの種類を制限する。例えば、百科事典をベースとしたサーチエンジンは、映画、歌等についてのクエリ等の人気のあるカルチャーに関する多くのクエリに答えられる可能性が低く、製品、サービス、小売業、および卸売業等についての多くのクエリに対して答えられる可能性も低い。仮に、このようなサーチエンジンが使用するソースセットが拡張されるとしたならば、このような拡張により、ファクトクエリに対して、いくつかが矛盾または曖昧であり得る複数の返答候補がもたらされる可能性がある。さらに、ソースの母集団が拡張するにつれて、信頼性の低いソースまたは信頼性が未知のソースから情報が引き出される可能性がある。
【課題を解決するための手段】
【０００５】
本発明の態様によれば、ファクトのソースを表示する方法は、１つ以上の用語を含むファクトクエリを受け取ること、ファクトクエリに対する、１つ以上の用語を含む返答を特定すること、クエリの１つ以上の用語および返答の１つ以上の用語を含む１つ以上のソースドキュメントを特定すること、少なくとも１つの情報ソースのスニペットを生成することであって、スニペットは、クエリの１つ以上の用語および返答の１つ以上の用語を含むこと、およびスニペットを含む応答を生成することを含む。
【０００６】
同様の参照番号は、全図面を通して対応する部分を指す。
【発明を実施するための最良の形態】
【０００７】
クエリエンジンは、多くの別々のソースから集められたファクト情報を記憶し、ユーザからのファクト情報（または「ファクトクエリ」）に対するクエリに応答して返答を返すことができる。多くのソースから情報を集めることにより、クエリエンジンで利用できるファクト情報の範囲が拡張するが、複数の返答候補が生じる可能性ももたらされる。クエリエンジンは、返答候補を特定し、返答候補から最良の返答を選択してユーザに提示するか、または返答候補のいずれもユーザに提示しないと判断することができる。クエリエンジンは、各ソースからのテキストの部分を含む返答のソースリストを提供することもできる。テキストの１つ以上の部分はスニペットと呼ばれ、ファクトクエリ用語および返答用語を含むことができる。スニペットは、サーチエンジンにより特定または選択された返答を示すが、ソースリストは、返答のための基礎をユーザに提供し、ユーザが返答の正確度を評価するのを助けることができる。
【０００８】
図１は、本発明のいくつかの実施形態によるネットワーク１００を示す。ネットワーク１００は、１つ以上のクライアント１０２およびクエリエンジン１０６を含む。クライアント１０２はクライアントアプリケーション（図示せず）を含むことができる。ネットワーク１００は、これら構成要素を結合する１つ以上の通信ネットワーク１０４も含む。
【０００９】
クライアントアプリケーションは、クエリエンジン１０６へのインタフェースをクライアント１０２のユーザ（図示せず）に提供する。ユーザは、クライアント１０２で実行されるクライアントアプリケーションを使用して、ドキュメントサーチ（たとえば、ウェブサーチ）およびファクトクエリをクエリエンジン１０６に提出し、クエリエンジン１０６からの応答を見ることができる。クライアントアプリケーションはウェブブラウザを含むことができる。ウェブブラウザの例として、ファイアフォックス（ＦＩＲＥＦＯＸ（商標））、インターネットエクスプローラ（ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲ（商標））、およびオペラ（ＯＰＥＲＡ（商標））が挙げられる。
【００１０】
クエリエンジン１０６は、ファクト情報を記憶し、ファクトクエリに応答するとともに、他の種類のサーチを処理するプラットフォームを提供する。クエリエンジン１０６は、ウェブサーチ等のドキュメントサーチおよびファクト情報のクエリを処理することができる。クエリエンジン１０６はクエリサーバ１０８を含む。クエリサーバ１０８は、フロントエンドをクエリエンジン１０６に提供する。クエリサーバ１０８は、クライアント１０２からクエリを受け取り、ファクトクエリ及び他のサーチを処理するクエリエンジン１０６の構成要素にクエリを送り、応答を生成し、応答をクライアント１０２に送る。クエリサーバ１０８は複数のコンピュータに分散してよい。他の実施形態では、クエリエンジンはより多数または少数の機能を処理してよい。たとえば、他の実施形態では、応答生成をクエリエンジン１０６内のどの場所で処理してもよい。
【００１１】
クエリエンジン１０６は、ドキュメントサーチを処理するための第１のサーチコントローラ１１０、第１のキャッシュ１１２、ドキュメントインデックス１１４、およびドキュメントデータベース１１６を含む。いくつかの実施形態では、これら構成要素を複数のコンピュータに配備させて、大量のドキュメントの高速アクセスを提供することができる。たとえば、ドキュメントデータベース１１６をＮ台のサーバに配備させることができ、「モジュロＮ」関数等のマッピング関数を使用して、Ｎ台の各サーバにどのドキュメントが記憶されているかを判断する。Ｎは２以上の整数であってよく、たとえば、２〜８１９６の整数である。同様に、ドキュメントインデックス１１４も複数のサーバに分散させることができ、第１のキャッシュ１１２も複数のサーバに分散させることができる。さらに、第１のサーチコントローラ１１０も複数のコンピュータに分散させることができる。
【００１２】
第１のサーチコントローラ１１０はクエリサーバ１０８に結合される。第１のサーチコントローラ１１０は、第１のキャッシュ１１２、ドキュメントインデックス１１４、およびドキュメントデータベース１１６にも結合される。第１のサーチコントローラ１１０は、ドキュメントサーチクエリをクエリサーバ１０８から受け取り、クエリを第１のキャッシュ１１２、ドキュメントインデックス１１４、およびドキュメントデータベース１１６に送るように構成することができる。第１のキャッシュ１１２を使用して、前に見つけられたサーチ結果を一時的に記憶することによってサーチ効率を増大させることができる。
【００１３】
第１のサーチコントローラ１１０は、ドキュメントサーチ結果を第１のキャッシュ１１２および／またはドキュメントインデックス１１４から受け取り、順序付きサーチ結果リストを構築する。次に、第１のサーチコントローラ１１０は、見つけられたドキュメントのリストをクエリサーバ１０８に返し、クライアント１０２に転送する。第１のサーチコントローラ１１０が第１のキャッシュ１１２および／またはドキュメントインデックス１１４から受け取るドキュメントサーチ結果は、サーチ結果内の見つけられたドキュメントのスニペットを伴うことができる。
【００１４】
クエリエンジン１０６は、第２のサーチコントローラ１１８、第２のキャッシュ１２０、ファクトインデックス１２２、およびファクトリポジトリ１２４も含む。いくつかの実施形態では、これら構成要素を複数のコンピュータに配備させて、大量のファクトへの高速アクセスを提供することができる。例えば、ファクトリポジトリ１２４をＮ台のサーバに配備させることができ、「モジュロＮ」関数等のマッピング関数を使用して、Ｎ台の各サーバにどのファクトが記憶されているかを判断する。Ｎは２以上の整数であってよく、たとえば、２〜８１９６の整数である。同様に、ファクトインデックス１２２も複数のサーバに分散させることができ、第２のキャッシュ１２０も複数のサーバに分散させることができる。さらに、第２のサーチコントローラ１１８も複数のコンピュータに分散させることができる。
【００１５】
第２のサーチコントローラ１１８はクエリサーバ１０８に結合される。第２のサーチコントローラ１１８は、第２のキャッシュ２０、ファクトインデックス１２２、およびファクトリポジトリ１２４にも結合される。第２のサーチコントローラ１１８は、ファクトクエリに対する返答のクエリを受け取り、クエリを第２のキャッシュ１２０およびファクトリポジトリ１２４に（ファクトインデックス１２２を介して）送るように構成することができる。第２のキャッシュ１２０を使用して、前に見つけられたサーチ結果を一時的に記憶することによってファクト検索効率を増大させることができる。
【００１６】
第２のサーチコントローラ１１８は、第２のキャッシュ１２０および／またはファクトリポジトリ１２４からファクトクエリに対する返答候補であるファクトを受け取る。第２のサーチコントローラ１１８は、返答候補からユーザに提示する最良の返答として返答を選択する。この返答はクエリサーバ１０８に送られ、クエリサーバ１０８において、その返答を含む応答が生成されてクライアント１０２に送られ、ユーザに提示される。ファクトクエリに対する返答に、またはその横に表示されるアイコンをユーザが選択することに応答して、クエリサーバ１０８は、返答に関連するソースリストを特定し、そのソースリストを第１のサーチコントローラ１１０に送ることができる。第１のサーチコントローラ１１０は、ソースドキュメントの少なくともサブセットのソースおよびスニペットに対応するドキュメントにアクセスする。いくつかの実施形態では、スニペットは、クエリからの用語および返答からの用語を含む。
【００１７】
ファクトリポジトリ１２４は、複数のドキュメントから抽出されたファクト情報を記憶する。特定のファクトを抽出できる元の文書が、そのファクトのソースドキュメント（または「ソース」）である。換言すれば、ファクトのソースは、その内容内にそのファクトを含む。ソースドキュメントは、制限ではなしにウェブページを含むことができる。そのファクトリポジトリ１２４内に、ファクトリポジトリ１２４がファクト情報を記憶できるエンティティ、概念等がオブジェクトにより表される。オブジェクトは、関連する１つ以上のファクトを有し得る。各オブジェクトはファクトの集まりであり、関連するファクトのないオブジェクト（空オブジェクト）は、ファクトリポジトリ１２４内に存在しないオブジェクトとして見ることができる。各オブジェクト内で、そのオブジェクトに関連する各ファクトは、属性−値の対として記憶される。各ファクトは、それぞれの内容内のファクトおよびそこから抽出されたファクトも含む。ファクトリポジトリ内のオブジェクトおよびファクトについての詳細について、図２に関連してさらに詳細に後述する。
【００１８】
ファクトリポジトリ１２４内の情報を調べるために、第２のサーチコントローラ１１８は、サーチクエリ内の用語についてファクトインデックス１２２をサーチする。この結果として、サーチクエリの各種用語にマッチする（すなわち、ファクトまたはオブジェクトに対応する）ファクトリポジトリロケーションのリストが得られる。サーチクエリの論理構造（ブール表現またはツリーとして考えることができる）を利用して、次に、第２のサーチコントローラ１１８は、これらロケーションリストの論理的な組み合わせを形成して、サーチクエリにマッチするファクト候補（もしあれば）を特定する。
【００１９】
ファクトインデックス１２２は、インデックスをファクトリポジトリ１２４に提供し、ファクトリポジトリ１２４内の情報の効率的な索引に役立つ。ファクトインデックス１２２は、１つ以上のパラメータに基づいてファクトリポジトリ１２４に索引付けることができる。例えば、ファクトインデックス１２２は、一意の用語をファクトリポジトリ内のロケーションに索引付けるインデックス（メインインデックスまたは用語インデックスと呼ぶことができる）を有することができる。ファクトインデックス１２２についてのさらなる詳細を、図３に関連して後述する。
【００２０】
クエリエンジン１０６の任意の構成要素は複数のコンピュータに分散してよいが、説明の便宜のために、クエリエンジン１０６の構成要素を単一のコンピュータで実施されるものとして考察することを理解されたい。
【００２１】
図２は、本発明のいくつかの実施形態によるファクトリポジトリ１２４内のオブジェクトの例示的なデータ構造を示す。上述したように、ファクトリポジトリはオブジェクトを含み、各オブジェクトは１つ以上のファクトを含むことができる。各オブジェクト２００は、オブジェクトＩＤ２０２等の一意の識別子を含む。オブジェクト２００は１つ以上のファクト２０４を含む。各ファクト２０４は、ファクトＩＤ２１０等のそのファクトに一意の識別子を含む。各ファクト２０４は、属性２１２および値２１４を含む。例えば、ジョージワシントンを表すオブジェクトに含まれるファクトは、「生年月日」および「没年月日」の属性を有するファクトを含むことができ、これらファクトの値はそれぞれ実際の生年月日および没年月日である。ファクト２０４は、ファクトリポジトリ１２４内の別のオブジェクトのオブジェクトＩＤ２０２等のオブジェクト識別子である別のオブジェクトへのリンク２１６を含むことができる。リンク２１６により、オブジェクトはその値が他のオブジェクトであるファクトを有することができる。例えば、「米国」というオブジェクトについて、その値が、ファクトリポジトリ１２４内の別のオブジェクトである「ジョージＷブッシュ」である「大統領」属性を有するファクトが存在できる。いくつかの実施形態では、値フィールド２１４はリンクされたオブジェクトの名称を記憶し、リンク２１６はリンクされたオブジェクトのオブジェクト識別子を記憶する。いくつかの他の実施形態では、ファクト２０４は、ファクト２０４の値２１４が別のオブジェクトへのリンクを記憶し得るため、リンクフィールド２１６を含まない。
【００２２】
各ファクト２０４は、１つ以上のメトリック２１８を含むこともできる。メトリックは、ファクトの数量表示を提供することができる。いくつかの実施形態では、メトリックは、信頼レベルおよび重要レベルを含む。信頼レベルは、そのファクトが正確である可能性を示す。重要レベルは、同じオブジェクトの他のファクトと比較したそのオブジェクトに対するファクトの関連性を示す。換言すれば、重要レベルは、そのファクトが、オブジェクトにより表されるエンティティまたは概念の理解に対してどの程度重要であるかを測る。
【００２３】
各ファクト２０４は、ファクトを含み、ファクトが抽出されたソース２２０のリストを含む。各ソースは、ユニフォームリソースロケータ（ＵＲＬ）またはウェブアドレスにより特定することができる。
【００２４】
いくつかの実施形態では、いくつかのファクトは、ファクトを抽出したモジュールを特定するエージェントフィールド２２２を含むことができる。例えば、エージェントは、ファクトを特定のソースから抽出する特殊モジュールまたはウェブ全体を通してドキュメント内のフリーテキストからファクトを抽出するモジュール等であってよい。
【００２５】
いくつかの実施形態では、オブジェクト２００は、名称ファクト２０６および特性ファクト２０８等の１つ以上の特殊ファクトを有することができる。名称ファクト２０６は、オブジェクト２００で表されるエンティティまたは概念の名称を伝えるファクトである。例えば、スペインという国を表すオブジェクトには、「スペイン」としてそのオブジェクトの名称を伝えるファクトがある。名称ファクト２０６は、一般ファクト２０４の特殊例であり、他の任意のファクト２０４と同じパラメータを含み、属性、値、ファクトＩＤ、メトリック、ソース等を有する。名称ファクト２０６の属性２２４は、そのファクトが名称ファクトであることを示し、その値は実際の名称である。ネームは文字列であることができる。オブジェクト２００は、多くのエンティティまたは概念が２つ以上の名称を有し得るため、１つ以上の名称ファクトを有することができる。例えば、スペインを表すオブジェクトは、その国の一般的な名称「スペイン」および正式な名称「スペイン王国」を伝える名称ファクトを有することができる。別の例として、米国特許商標庁を表すオブジェクトは、エージェントの頭字語である「ＰＴＯ」および「ＵＳＰＴＯ」ならびに正式名称「米国特許商標庁」を伝える名称ファクトを有することができる。
【００２６】
特性ファクト２０８は、オブジェクト２００により表される、関心のあり得るエンティティまたは概念についてのステートメントを伝えるファクトである。例えば、スペインを表すオブジェクトでは、特性ファクトは、スペインがヨーロッパの国であることを伝えることができる。特性ファクト２０８は、一般ファクト２０４の特殊例であり、他のファクト２０４と同じパラメータ（属性、値、ファクトＩＤ、メトリック、ソース等）も含む。特性ファクト２０８の属性フィールド２２６は、そのファクトが特性ファクトであることを示し、値フィールドは、関心のあるステートメントを伝える文字列である。例えば、スペインを表すオブジェクトでは、特性ファクトの値は、「ヨーロッパの国」という文字列であり得る。オブジェクト２００は、ゼロ以上の特性ファクトを有することができる。
【００２７】
図２に示し、上述したデータ構造が単なる例にすぎないことを理解されたい。ファクトリポジトリ１２４のデータ構造は、他の形をとってもよい。他のフィールドをファクトに含めてよく、上述したフィールドのいくつかを省いてもよい。さらに、各オブジェクトは、名称ファクトおよび特性ファクトの他に、オブジェクトで表されるエンティティまたは概念を分類するタイプまたはカテゴリを伝えるファクト（例えば、人物、場所、映画、俳優等）等の特殊なファクトをさらに有してもよい。いくつかの実施形態では、オブジェクトの名称（複数可）および／または特性は、オブジェクトの属性−値の対に関連するファクトレコード２０４とは別のフォーマットを有する特別レコードで表される。
【００２８】
図３は、本発明のいくつかの実施形態による例示的なファクトインデックスを示す。上述したように、ファクトインデックス１２２は、１つ以上のパラメータに基づいてファクトリポジトリに索引を付ける。いくつかの実施形態では、ファクトインデックス３００はそのインデックスである。ファクトインデックス３００は、ファクトまたはファクトリポジトリ１２４内の情報ロケーションに一意の用語をマッピングする。本明細書において使用する用語とは、言葉（「スペイン」または「ジョージ」等）または数（「１２３」または「−９」等）である。いくつかの実施形態では、用語は、米国（Ｕｎｉｔｅｄ  Ｓｔａｔｅｓ）または生年月日（ｂｉｒｔｈ  ｄａｔｅ）等の２つ以上の言葉を含む用語も含むことができる。ファクトインデックス３００は、複数の用語セット３０３および関連する用語ロケーションレコードを含み、任意に、インデックス３００についての情報（たとえば、インデックスサイズについての情報、セットを見つけるために使用されるマッピング関数についての情報等）を有するインデックスヘッダ３０２を含むことができる。各セット３０３内には、用語３０４およびファクトリポジトリ１２４内の用語が出現する各ロケーションを特定する１つ以上のロケーションレコード３０６がある。各用語ロケーションレコードは、オブジェクト識別子３０８（用語が出現するオブジェクトを特定する）、ファクト識別子３１０（オブジェクト内のファクトを特定する）、ファクトフィールド識別子３１２（ファクト内のフィールドを識別する）、およびトークン識別子（フィールド内のトークンを特定する）を有する。これら４つのフィールドは、用語をファクトリポジトリ１２４内のロケーションにマッピングする。しかし、ファクトインデックス３００は単なる例にすぎず、他の形のファクトインデックス３００および他のファクトインデックスが可能なことを理解されたい。いくつかの実施形態では、用語ロケーションレコード３０６がオブジェクト全体を指す（例えば、用語がオブジェクトの名称である）場合、ファクト識別子３１０、フィールド識別子３１２、およびトークン識別子３１４は、予め定められた値またはヌル値を有し得る。
【００２９】
図４は、本発明のいくつかの実施形態によるファクトクエリに対する返答候補の例示的なリストを示す。第２のサーチコントローラ１１８は、第２のキャッシュ１２０またはファクトリポジトリ１２４のサーチからファクトクエリに対する１つ以上の返答候補のリストを受け取り、返答候補リストから最良の返答を選択し、さらに処理するために最良の返答をクエリサーバ１０８に送る。これについての詳細を図５Ａ〜図５Ｃに関連してさらに後述する。図４は、返答候補４００の例示的なリストを示す。リスト４００は１つ以上の返答候補４０３を含む。各返答候補４０３は１つ以上のフィールドを有する。オブジェクトＩＤ４０４は、返答候補であるファクトを含むオブジェクトを特定する。オブジェクト名４０６は、オブジェクトＩＤ４０４により特定されるオブジェクトにより表されるエンティティまたは概念の名称を特定する。オブジェクト名４０６は、オブジェクトに含まれる名称ファクトの値であってよい（オブジェクトデータ構造の上記考察を参照）。ファクト属性４０８は、返答候補であるファクトの属性を特定する。ファクト値４１０は、返答候補であるファクトの値を特定する。返答フィールド４１２は、３つのフィールド、すなわちオブジェクト名４０６、ファクト属性４０８、またはファクト値４１０のうちのどれが、ファクトクエリに応答する実際の返答（すなわち、ユーザが探している返答の種類）を有するかを特定する。ＱＡタイプ４１４は、ファクトクエリにより課された質問のタイプ（すなわち、ユーザが尋ねている質問の種類、問われている質問の種類に応答する返答）を特定する。スコア４１６は返答候補のスコアを示す。スコアは、正確で応答性のある返答としての返答候補の質を測ろうとするメトリックである。ファクトクエリ４１８は、そのような返答候補の特定に繋がる、第２のサーチコントローラ４１８により生成される内部クエリである。ファクトクエリ４１８は、ユーザクエリ（すなわち、クライアント１０２においてユーザにより入力されるクエリ）に基づいて生成される。ＱＡタイプ４１４、スコア４１６、およびファクトクエリ４１８の詳細については、図５Ａ〜図５Ｃに関連してさらに後述する。いくつかの実施形態では、返答候補４０３はより多くまたはより少数の情報フィールドで表すことができる。いくつかの実施形態では、リスト４００は、リスト４００全体に当てはまる情報を含むリストヘッダ４０２を含む。例えば、ヘッダ４０２は、ユーザクエリのコピー、リスト４００のトップエンティティへのポインタ、またはリスト４００内のアイテムまたはレコードへのアクセスに役立つ他のデータ構造を含むことができる。
【００３０】
図５Ａ〜図５Ｃは、ファクトクエリに対する最良の返答を選択し、その返答を提示する本発明のいくつかの実施形態による例示的なプロセスを示す。ファクトクエリへの返答は、ファクトクエリへの最良の応答として特定されるファクトリポジトリ１２４内のファクトである。クエリエンジン１０６は、ファクトクエリを受け取ると、クエリを処理し、返答候補を特定し、最良の返答を選択し、返答を含む応答を生成する。クエリエンジン１０６は、返答のソースリストを含む応答を生成することもできる。
【００３１】
クエリエンジン１０６がクエリを受け取る（５０２）。クエリは、ユーザによりクライアント１０２において入力され、クライアント１０２によりクエリエンジン１０６に送られる。クエリは１つ以上の用語を含む。ユーザにより入力されたクエリはユーザクエリである。
【００３２】
ユーザクエリが処理される（５０４）。ユーザクエリは、第１のサーチコントローラ１１０および第２のサーチコントローラ１１８の両方に送られる。ユーザクエリは１つ以上の用語を含むため、ウェブサーチ等のドキュメントのサーチクエリとして扱われ、第１のサーチコントローラ１１０等のこのようなサーチを処理するシステム構成要素に送られる。ウェブサーチ等のドキュメントサーチは当分野において周知であり、これ以上説明する必要はない。
【００３３】
ユーザクエリは第２のサーチコントローラ１１８にも送られる。ユーザクエリは事前処理され、解析されて、そのユーザクエリが１つ以上のＱＡタイプのいずれかに適合するか否かが判断される。事前処理は、「ストップワード」（定冠詞、不定冠詞、および前置詞）を落とし、それぞれの同義語または等価物を含むようにユーザクエリ内の単語および／または語句を拡張することを含むことができる。例えば、語句「生年月日（ｂｉｒｔｈ  ｄａｔｅ）」を、（ストップワードである「ｏｆ」なしの）同義語「生まれた日（ｄａｔｅ  ｂｉｒｔｈ）」および「誕生日（ｂｉｔｈｄａｙ）」を含むように拡張することができる。この解析は、ユーザクエリの構文解析およびユーザクエリのテキストの解析を含むことができる。ユーザクエリがいずれかのＱＡタイプに適合すると判断された場合、各ＱＡタイプに対応するファクトクエリをユーザクエリに対して生成することができる。ファクトクエリは、クエリエンジン１０６内部のクエリであり、返答候補を求めて（ファクトインデックス１２２を介して）第２のキャッシュ１２０およびファクトリポジトリ１２４にアクセスするために使用される。ユーザクエリがいずれのＱＡタイプにも適合しないと判断される場合、第２のサーチコントローラ１１８の観点から、ユーザクエリがファクトクエリではないため、第２のサーチコントローラ１１８によるユーザクエリに対するそれ以上の処理を打ち切ることができる。ユーザクエリが２つ以上のＱＡタイプに適合すると判断され、その結果、単一のユーザクエリに対して２つ以上のファクトクエリが生成され得ることを理解されたい。これら各ファクトクエリを使用して、返答候補を求めてファクトリポジトリ１２５、第２のキャッシュ１２０、およびファクトインデックス１２２にアクセスすることができる。
【００３４】
ユーザクエリは２つ以上のＱＡタイプに適合し得る。ＱＡタイプは、どのファクトクエリがユーザクエリで尋ねられているかおよびファクトクエリに応答する返答の種類を示す質問−返答マッピングである。いくつかの実施形態では、３つの一般的なＱＡタイプ、すなわち、値への名称および属性（「ＮＡ−Ｖ」）、名称への属性および値または特性（「ＡＶ−Ｎ」、ならびに特性、タイプ、または名称への名称（「Ｎ−ＰＴＮ」）がある。いくつかの実施形態では、特殊なタイプの質問を処理する特殊なＱＡタイプがさらにあってよい。いくつかの実施形態では、こういった特殊なＱＡタイプは、一般的なＱＡタイプの特殊な例であってよい。
【００３５】
ＮＡ−Ｖタイプでは、ユーザは、（ユーザクエリの入力により）オブジェクト名および属性を提供し、与えた名称を有するオブジェクトに対応する属性の値を知りたい。ＮＡ−Ｖタイプの一例は、「ポーランドの首都はどこか」であり、「ポーランド」がオブジェクト名であり、「首都」が「ポーランド」の値が所望される属性である。このクエリに対する返答は、名称「ポーランド」を有し、かつ属性「首都」を有するオブジェクトに関連するファクトの値である。この場合、「首都」属性を有するファクトの値は文字列「ワルシャワ」である。この値は、名称「ワルシャワ」を有するオブジェクトのオブジェクト識別子でもあることができ、この場合、名称「ワルシャワ」をオブジェクト識別子の代わりとし、返答候補として返すことができる。
【００３６】
ＡＶ−Ｎタイプでは、ユーザは属性および値（または、特性は上述したように単に特殊な属性−値の対であるため、特性）を提供し、与えた属性に対して与えた値を有する名称を欲する。ある意味、これは「逆引き」である。ＡＶ−Ｎタイプクエリの一例は、「首都がワルシャワである国はどこか」であり、「首都」が属性であり、「ワルシャワ」が値である。返答候補は、この属性−値の対を有するオブジェクトの名称、すなわち「ポーランド」である。
【００３７】
Ｎ−ＰＴＮタイプでは、ユーザは名称を提供し、与えた名称に関連するオブジェクトの特性、タイプ、または代替名称を欲する。Ｎ−ＰＴＮタイプクエリの一例は、「ＮＲＡとは何か」である。「ＮＲＡ」は、ユーザが特性、タイプ、または代替名称を欲するオブジェクトの名称である。「ＮＲＡ」に対する１つの特性返答候補は、「憲法修正第２条権利支持団体」である。「ＮＲＡ」での、オブジェクトにより表されるエンティティまたは概念のカテゴリを伝えるタイプ返答は「組織」であり、ＮＲＡが、人物、書籍、映画等の他のタイプではなく組織であることを示す。「ＮＲＡ」の代替名称は、（頭字語）名「ＮＲＡ」を有するオブジェクトにより表されるエンティティの正式名称である「全米ライフル協会」である。
【００３８】
いくつかの実施形態では、ファクトクエリは追加の制約を含むことができる。例えば、ファクトクエリは、特定の用語が特定のフィールドでのみマッチし、他のフィールドでマッチしなくてもよいと指定することができる。別の制約は、返答候補がすべて特定のタイプ（人物、書籍等）にマッチしなければならないことであることができる。このような制約は、ユーザクエリの解析および処理中に第２のサーチコントローラ１１８により生成される。
【００３９】
ユーザクエリが処理され、１つ以上のファクトクエリが生成された後、返答候補を求めてファクトクエリを使用して（ファクトインデックス１２２を介して）ファクトリポジトリ１２４および第２のキャッシュ１２０にアクセスする（５０６）。返答候補とは、ファクトクエリ（複数可）にマッチするファクトである。返答候補にスコアが付けられる（５０８）。返答候補のスコアは、正確で応答性のある返答としての返答候補の質の指標を提供する。
【００４０】
いくつかの実施形態では、返答候補のスコアは複数の係数値の乗法積である。いくつかの実施形態では、係数値の１つ以上は０〜１の（０および１を含む）正規化された値であってよい。スコアを決める際に実際に使用される係数は、返答候補にマッチするファクトクエリのＱＡタイプにより様々であり得る。いくつかの実施形態では、スコアは、０〜１の（０および１を含む）の係数の積であり、０のままであるか、または０に向かって減少するが、決して増大し得ないため、任意の特定の返答候補のスコア計算を、その特定の返答のスコアが所定の閾値未満に低減した場合に打ち切ることができる。これは、返答候補が、それ以上のスコア計算が無駄であるような低い質であることを示すことができる。
【００４１】
いくつかの実施形態では、係数は、ＱＡタイプ、ファクトクエリにマッチしたファクトのメトリック（信頼度メトリックおよび重要度メトリック等）、マッチするファクトを抽出したエージェント、ファクト内のフィールドがファクトクエリによりマッチした程度、ファクト内の特定のフィールドがファクトクエリに完全にマッチする程度等に基づくことができる。上記係数は単に例示にすぎず、他の係数を上記係数に加えて含めてもよく、上記係数のいくつかを省いてもよいことを理解されたい。
【００４２】
各返答候補のスコアが計算された後、返答候補を図４に関連して上述した返答候補リスト４００等の返答候補リストに集めることができる。いくつかの実施形態では、所定数の最高スコアの返答のみが返答候補リスト４００に集められる。例えば、返答候補リストは、スコアの上位１００の返答候補のみを含むことができる。いくつかの実施形態では、返答候補リスト４００のさらなる処理が、第２のサーチコントローラ１１８により行われる。
【００４３】
図５Ｂに続き、返答候補リスト４００から、ある数の上位スコアの返答候補が特定される（５１０）。この数は、いくつの上位スコア返答がさらに処理されるかを指定する所定数であることができる。処理する、特定された上位スコア返答候補がまだある限り（５１２−ｎｏ）、次の上位スコア返答が処理される。この処理は、各上位スコア返答をサポートする返答を特定すること（５１４）および各上位スコア返答のスコアおよびサポート返答のスコアに基づいて各上位スコアのサポートスコアを求めること（５１６）を含む。サポート返答の特定について以下においてより詳細に説明する。
【００４４】
いくつかの実施形態では、サポートスコアは上位スコア返答およびそのサポート返答の各スコアをオッズ空間の値に変換することにより求められる。スコアｓは、オッズ空間の値ｘに変換される。
【数１】
2008535095.tif 000003
変換された値（すなわち、スコアをオッズ空間に変換したもの）が合算されて、値Ｘが生成され、この和Ｘが再び確率空間の値に変換されて、上位スコア返答のサポートスコアＳが得られる。
【数２】
2008535095.tif 000004
【００４５】
特定された上位スコア返答のサポートスコアが求められた後（５１２−ｙｅｓ）、最高のサポートスコアを有する最高スコア返答（以下、「最良サポート返答」）が特定される（５１８）。最良サポート返答について、最良サポート返答に矛盾する返答候補リスト内の上位スコア返答が特定される（５２０）。その矛盾する返答に対して、その矛盾する返答のサポートスコアである矛盾スコアＣが求められる（５２２）。さらに、いくつかの実施形態では、最良サポート返答に関連しない返答候補リスト内の上位スコア返答が特定される（５２４）。その非関連返答に対して、その非関連返答のサポートスコアである非関連スコアＵが求められる（５２６）。矛盾スコアＣおよび非関連スコアＵを求めるプロセスはＳを求めるプロセス、すなわち、サポートする返答を特定し、そのスコアをオッズ空間の値に変換し、オッズ空間の値を合算し、その和を再び確率空間の値に変換するプロセスと同じであることを理解されたい。矛盾返答および非関連返答の判断について後述する。
【００４６】
２つの返答候補がサポート返答であるか、矛盾返答であるか、それとも非関連返答であるかは、その２つの返答のフィールドの比較に基づく。各返答の対象となるフィールド、すなわち、名称、属性、および値が入力および出力にグループ化される。例えば、いくつかの実施形態では、ＮＡ−Ｖタイプクエリの場合、入力は名称および属性であり、出力は値である。ＡＶ−Ｎタイプクエリの場合、入力は属性および値であり、出力は名称である。２つの返答候補が、それぞれの入力フィールドおよび出力フィールドのペアワイズ比較を行うことにより比較される。この比較は、フィールド内のデータタイプ、すなわちフィールド内のデータが文字列であるか、日付であるか、それとも数等であるかを考慮に入れる。返答のソースを考慮に入れることもできる。
【００４７】
いくつかの実施形態では、ペアワイズフィールド比較の結果は５つの分類のうちの１つである。これらは以下である。
・比較不可能：フィールドが異なるデータタイプを有する（例えば、文字列と日付）ため、比較できない。
・類似しない：フィールドは同じデータタイプであるが、全然同じではない。
・いくらか類似する：フィールドはいくらかの類似性を有するが、同じことを意味しているか否かを結論付けるのは困難である。
・かなり類似する：フィールドは略同じである。
・同一である：フィールドはまったく同じである。
【００４８】
フィールドが同じであるか否かの実際の判断は、データタイプにより異なり得る。例えば、数の場合、数が小さな整数である場合、同じものとして扱うためにはそれら数は厳密に同じでなければならない。数が非常に大きな整数または浮動小数点数である場合、互いに特定の割合以内にある場合にそれら数を同じものとして扱うことができる。
【００４９】
ペアワイズフィールド比較に基づき、２つの返答の関係が分類される。
・返答が同じソースからのものである場合、２つの返答は「補足的」に分類される。返答Ａに対して補足的な返答は無視される。
・返答が同一またはかなり類似する入力を有するが、出力がいくらか類似するにすぎない場合、２つの返答は「サポートし得る」（すなわち、返答Ａが返答Ｂを「サポートし得る」）に分類される。返答Ｂを「サポートし得る」返答Ａも無視される。
・返答が同一またはかなり類似する入力および同一またはかなり類似する出力を有する場合、２つの返答は、同じソースからのものではない限り、「サポートしている」に分類される。「サポートしている」返答のスコアは、サポートスコアの決定の一部である。
・入力が同一またはかなり類似するが、出力が類似しない、または比較不可能である場合、２つの返答は「矛盾」返答である。
・入力が類似しない、または比較不可能である場合、２つの返答は「非関連」返答である。
【００５０】
最良サポート返答のサポートスコアＳが所定の閾値Ｔと比較される（５２８）。閾値Ｔは、これ以降も最良サポートスコアとみなすためにサポートスコアＳが達しなければならない最小スコアである。ＳがＴ以下の場合（５２８−ｎｏ）、図５Ｂに示す処理を実行しているプロセッサ（複数可）（たとえば、第２のサーチコントローラ１１８またはクエリエンジン１０６）は、クエリエンジン１０６が返答を提供できないことを示す応答を生成することができる（５３４）。例えば、第２のサーチコントローラ１１８は、返答を入手できないことを示す応答をクエリサーバ１０８に送り、クエリサーバ１０８は、そのことに対する応答を生成してクライアント１０２に送り、ユーザに提示することができる。
【００５１】
ＳがＴよりも大きい場合（５２８−ｙｅｓ）、最良サポート返答のサポートスコアＳが、矛盾返答の最良サポートスコアＣを少なくとも第１の所定のマージンで超えるか否かが調べられる。一実施形態では、この調査は、Ｓを、矛盾スコアＣに定数αを乗算した数と比較することで行われる（５３０）。定数αは、最良サポート返答をファクトクエリに対する最良返答として選択するために実現しなければならないＳとＣの最小比を表す。換言すれば、Ｓは、少なくとも矛盾スコアＣのα倍である必要がある。ＳがαＣ未満である場合（５３０−ｎｏ）、図５Ｂに示す処理を実行しているプロセッサ（複数可）（たとえば、第２のサーチコントローラ１１８またはクエリエンジン１０６）は、クエリエンジン１０６が返答を提供できないことを示す応答を生成することができる（５３４）。
【００５２】
ＳがαＣ以上である場合（５３０−ｙｅｓ）、最良サポート返答のサポートスコアＳが非関連返答の最良サポートスコアＵを少なくとも第２の所定のマージンで超えるか否かがさらに調べられる。一実施形態では、この調査は、Ｓを、非関連スコアＵに定数βを乗算した数と比較することで行われる（５３２）。定数βは、最良サポート返答をファクトクエリに対する最良返答として選択する前に実現しなければならないＳとＵの最小比を表す。換言すれば、Ｓは、少なくとも非関連スコアＵのβ倍である必要がある。ＳがβＵ未満である場合（５３２−ｎｏ）、図５Ｂに示す処理を実行しているプロセッサ（複数可）（たとえば、第２のサーチコントローラ１１８またはクエリエンジン１０６）は、クエリエンジン１０６が返答を提供できないことを示す応答を生成することができる（５３４）。ＳがβＵ以上の場合（５３２−ｙｅｓ）、最良サポート返答がファクトクエリに対する返答として選択され、さらに処理される。これについて、図５Ｃに関連してさらに詳細に後述する。
【００５３】
図５Ｃに続き、最良サポート返答がファクトクエリに対する最良返答として選択された後、クエリサーバ１０８は応答を生成する（５３６）。応答は最良サポート返答を含むことができる。応答は、最良サポート返答のソースの識別子および／またはハイパーリンク（たとえば、ＵＲＬへのハイパーリンク）を含むことができる。いくつかの実施形態では、応答は、ユーザがクライアント１０２でクリックしたときに最良サポート返答のソースリスト要求を生成することができるリンクを含むこともできる。いくつかの実施形態では、応答は、ユーザクエリに基づいたウェブサーチ等のドキュメントサーチの結果を含むこともできる。ドキュメントサーチ結果は、第１のサーチコントローラ１１０等の、このようなサーチを処理するクエリエンジン１０６の構成要素からクエリサーバ１０８に送ることができる。応答はクライアント１０２に送られて、ユーザに提示される（５３８）。ユーザクエリを使用したドキュメントサーチの返答および結果を含む例示的な応答について、図６に関連してさらに詳細に後述する。
【００５４】
ユーザは、クライアント１０２に提示された応答を見て、その返答のソースリストを要求することができる。いくつかの実施形態では、ユーザは、クリックされたときにソースリスト要求を生成する、応答に含まれる（上述したような）リンクをクリックすることでその要求を行うことができる。
【００５５】
クエリエンジン１０６は、返答のソースをリストする要求を受け取る（５４０）。返答のソースが特定される（５４２）。いくつかの実施形態では、返答のソースは、ファクトリポジトリ１２４内の返答ファクトのソース２２０（図２）を調べることで特定することができる。スニペット生成要求がソースリスト、ユーザクエリ、返答にマッチしたファクトクエリ４１８、および返答と共に第１のサーチコントローラに送られる。スニペット生成要求は、第１のキャッシュ１１２、ドキュメントインデックス１１４、および／またはドキュメントデータベース１１６に送られる。いくつかの実施形態では、ソースリストが所定の限度よりも長い場合、第１のサーチコントローラ１１０は、ソースリストのスニペットを選択して第１のキャッシュ１１２、ドキュメントインデックス１１４、および／またはドキュメントデータベース１１６に送ることができる。第１のキャッシュ１１２、ドキュメントインデックス１１４、および／またはドキュメントデータベース１１６、またはスニペット生成要求が提出される１つ以上のプロセッサは、リストされた各ソースのスニペットを生成する（５４４）。各スニペットは、各ソースからのテキストの１つの連続部分または複数の非連続部分を含むことができる。特定のスニペットでは、スニペットに含めるものとして選択されたテキストの部分がソース内で連続していない場合、その部分を楕円で分けることができる。
【００５６】
各スニペットは、可能な限り多くのユーザクエリ用語および／またはファクトクエリ用語および返答用語を含むように生成される。ソースを、クエリ用語および返答用語のばらつき（すなわち、クエリ用語および返答用語がソースドキュメント内でどのように点在するか）について解析して、スニペットの生成を助けることもできる。クエリ用語および返答用語のばらつきが最小のテキスト部分（複数可）が、スニペットに含めるものとして選択される。
【００５７】
スニペットを含む応答が生成される（５４６）。応答は、ソースリストおよびユーザ／ファクトクエリ用語および返答用語を含む各ソースのスニペットを含む。応答は、返答、ユーザクエリ、および各ソースへのハイパーリンクを含むこともできる。応答はクライアント１０２に送られ、ユーザに提示される（５４８）。
【００５８】
いくつかの実施形態では、各スニペット内のユーザ／ファクトクエリ用語および返答用語が強調表示されて、応答がユーザに提示されたときにより目立つようにされる。本明細書において使用するスニペット内の用語の強調表示は、用語を太字にする、用語に下線を付ける、用語を斜体にする、用語のフォントカラーを変える、および／または背景カラーを用語の局所エリアに加えることを含むがこれらに限定されない、ユーザに提示されたときに用語をより目立たせる任意の様式を指す。ソースリストおよびスニペットを含む例示的な応答について、図７に関連してさらに詳細に後述する。
【００５９】
いくつかの実施形態では、クエリエンジン１０６に提出されるクエリは、ユーザクエリ用語および１つ以上の他のパラメータを含むＵＲＬで表すことができる。例えば、「ｂｒｉｔｎｅｙ  ｓｐｅａｒｓ  ｐａｒｅｎｔｓ」という用語のクエリを、ＵＲＬ「ｈｔｔｐ：／／ｗｗｗ．ｇｏｏｇｌｅ．ｃｏｍ／ｓｅａｒｃｈ？ｈ１＝ｅｎ＆ｑ＝ｂｒｉｔｎｅｙ＋ｓｐｅａｒｓ＋ｐａｒｅｎｔｓ」で表すことができる。いくつかの実施形態では、「＆ｆｓｒｃ＝１」等の追加のパラメータをクエリＵＲＬに加えることにより、返答のソースリストを表示する要求を行うことができる。したがって、上記ＵＲＬでは、クエリ「ｂｒｉｔｎｅｙ  ｓｐｅａｒｓ  ｐａｒｅｎｔｓ」への返答のソースリストが所望される場合、クエリＵＲＬは、「ｈｔｔｐ：／／ｗｗｗ．ｇｏｏｇｌｅ．ｃｏｍ／ｓｅａｒｃｈ？ｈ１＝ｅｎ＆ｑ＝ｂｒｉｔｎｅｙ＋ｓｐｅａｒｓ＋ｐａｒｅｎｔｓ＆ｆｓｒｃ＝１」のようになり得る。いくつかの実施形態では、返答を含む応答内の、ユーザがクリックしたときに返答のソースリスト要求をトリガするリンクは、追加パラメータが加えられたユーザクエリのクエリＵＲＬである。
【００６０】
いくつかの実施形態では、クエリエンジン１０６は、ファクトクエリと共に、クエリを使用して見つけられたドキュメントリストをドキュメントサーチの入力として最初に返さずに、クエリエンジン１０６にファクトクエリへの返答を見つけ、返答および返答のソースリストを返すように命令する所定の特別な演算子を受け入れることができる。例えば、ユーザは「Ｚ：Ｘ  ｏｆ  Ｙ」を入力することができ、「Ｚ：」は、クエリエンジン１０６にファクトクエリ「Ｘ  ｏｆ  Ｙ」への返答および返答のソースリストを見つけるように命令する特別な演算子である。ある意味、クエリと共に演算子を使用することで、クエリが、そのクエリに対して見つけられた返答が何であれ、そのソースリスト要求と併合される。いくつかの実施形態では、上述したように、返答のソースリスト要求を生成する応答内のリンクは、ユーザがそのリンクを選択した（たとえば、クリックした）ときに、特別な演算子をオリジナルのクエリに加え、特別な演算子を有するクエリをクエリエンジン１０６に提出する。
【００６１】
図６は、入力としてファクトクエリを使用して返答およびドキュメントサーチ結果を含む、ファクトクエリに対してクライアント１０２でユーザに提示される本発明のいくつかの実施形態による例示的な応答を示す。応答６００は、オリジナルのユーザクエリを有するサーチボックス６０２を示すことができる。応答６００は、クエリに対する返答６０４、返答のソースへのハイパーリンク６０６、および、ユーザがクリックしたときに、返答に対するソースのリストを要求するトリガとなるリンク６０８を含む。いくつかの実施形態では、リンク６０８は、上述したように、ソースリスト要求パラメータが追加されたユーザクエリのクエリＵＲＬであってよい。いくつかの実施形態では、返答ファクト６０４がファクトリポジトリ１２４に１つのソースしか有さない場合、ユーザがクリックしたときに返答のソースリスト要求をトリガするリンクを省いてよい。応答は、入力としてファクトクエリを使用したウェブサーチ等のドキュメントサーチの結果リスト６１０を含むこともできる。
【００６２】
図７は、本発明のいくつかの実施形態による返答のソースリスト要求に対する例示的な応答を示す。応答７００は、オリジナルのユーザクエリを有するサーチボックス７０２を含むことができる。いくつかの実施形態では、サーチボックス７０２は、上述したように、ファクトクエリと共に使用されてソースリストを要求できる特別な演算子を含むこともできる。例えば、サーチボックス７０２内で「ｆａｃｔｓｏｕｒｃｅｓ：」は特別な演算子であり、「ｂｒｉｔｎｅｙ  ｓｐｅａｒｓ  ｐａｒｅｎｔｓ」はオリジナルのユーザクエリである。いくつかの他の実施形態では、例えば、ソースリスト要求のトリガが、ソースリスト要求パラメータを有するクエリＵＲＬを含んだリンク６０８等のリンクのユーザクリックである場合、演算子をサーチボックス内のクエリの提示から省いてもよい。応答は、ファクトクエリへの返答７０４と、各ソースのＵＲＬ、ハイパーリンク、およびスニペット７０８を有する、返答の１つ以上のソースリスト７０６とを含むこともできる。いくつかの実施形態では、各スニペット７０８内でクエリ用語および返答用語を強調表示することができる。スニペット７０８内で、クエリ用語および返答用語は太字により強調表示される。
【００６３】
図８は、本発明のいくつかの実施形態によるファクトクエリ返答システム８００を示すブロック図である。システム８００は、通常、１つ以上の処理装置（ＣＰＵ）８０２、１つ以上のネットワークまたは他の通信インタフェース８１０、メモリ８１２、およびこれら構成要素を相互接続する１つ以上の通信バス８１４を含む。システム８００は、任意に、表示装置８０６およびキーボード／マウス８０８を備えるユーザインタフェース８０４を含むことができる。メモリ８１２は、ＤＲＡＭ、ＳＲＡＭ、ＤＤＲ  ＲＡＭ、または他のランダムアクセス固体状態メモリ装置等の高速ランダムアクセスメモリを含み、１つ以上の磁気ディスク記憶装置、光ディスク記憶装置、フラッシュメモリ装置、または他の不揮発性固体状態記憶装置等の不揮発性メモリを含むこともできる。メモリ８１２は、任意に、ＣＰＵ８０２から離れて配置された１つ以上の記憶装置を含むことができる。いくつかの実施形態では、メモリ８１２は以下のプログラム、モジュール、およびデータ構造またはこれらのサブセットを記憶する。
・各種基本システムサービスを処理し、ハードウェア依存タスクを実行する手続きを含むオペレーティングシステム８１６
・クエリを受け取り、クエリを構文解析してＱＡタイプを判断してファクトクエリを生成するなどのクエリを処理を実行するクエリ受信・処理モジュール８１８
・ファクトクエリに対する返答候補を特定する返答特定モジュール８２０
・返答のスコアおよびサポートスコアを求める返答スコア計算モジュール８２２
・返答を比較してサポート返答、矛盾返答等を判断する返答比較モジュール８２４
・ユーザに提示する返答として返答候補を選択する返答選択モジュール８２５
・返答ソースを特定するソース特定モジュール８２６
・ドキュメントサーチ時にドキュメントインデックスとインタフェースするドキュメントインデックスインタフェース８２８
・スニペットを要求し受け取るときにドキュメントストレージシステムとインタフェースするドキュメントストレージインタフェース８３０
・ファクトサーチ時にファクトインデックスとインタフェースするファクトインデックスインタフェース８３２
・ファクトストレージシステムとインタフェースするファクトストレージインタフェース８３４
・クライアント１０２に送る応答を生成する応答生成モジュール８３８
【００６４】
いくつかの実施形態では、システム８００のメモリ８１２は、ファクトインデックスへのインタフェース８３２に代えてファクトインデックスを含む。システム８００は、そのうちのいくつかが返答ファクトのソースであり得るドキュメントの内容を記憶するドキュメントストレージシステム８４０も含む。ドキュメントストレージシステムは、ドキュメントの内容にアクセスし、内容からスニペットを生成するスニペットジェネレータ８４２およびスニペット内のクエリ用語および返答用語を強調表示するスニペット用語強調表示モジュール８３６を含む。システム８００は、ファクトを記憶するファクトストレージシステム８４４も含む。ファクトストレージシステム８４４に記憶される各ファクトは、各ファクトが抽出された対応するソースリストを含む。
【００６５】
上記特定した各要素は、上述したメモリ装置の１つ以上に記憶することができ、上述した機能を実行する命令セットに対応する。上記特定したモジュールまたはプログラム（すなわち、命令セット）は、別個のソフトウェアプログラム、手続き、またはモジュールとして実施される必要はなく、そのため、各種実施形態において、これらモジュールの各サブセットを組み合わせたり、または再配置することが可能である。いくつかの実施形態では、メモリ８１２は、上で特定したモジュールおよびデータ構造のサブセットを記憶することができる。さらに、メモリ８１２は、上述していない追加のモジュールおよびデータ構造を記憶することもできる。
【００６６】
図８にはファクトクエリ返答システムが示されているが、図８は、本発明において述べた実施形態の構造的な概略よりも、サーバセットに存在し得る各種特徴の機能的な説明を意図する。実際に、そして当業者に認識されるように、別個に図示されるアイテムを組み合わせてもよく、かついくつかのアイテムを分けてもよい。たとえば、図８に別個に示されるいくつかのアイテムを単一のサーバで実施してもよく、かつ単一のアイテムを１つ以上のサーバで実施してもよい。ファクトクエリ返答システムの実施に使用される実際のサーバの数および特徴がサーバにどのように割り振られるかは、実施態様によって異なり、システムがピーク使用期間ならびに平均使用期間中に処理しなければならないデータトラフィック量に部分的に依存し得る。
【００６７】
説明を目的とした上記説明は特定の実施形態を参照してなされた。しかし、上記の例示的な考察は、網羅的である、すなわち本発明を開示した厳密な形態に限定する意図はない。多くの変更および変形が上記教示に照らして可能である。実施形態は、本発明および当業者が意図する特定の用途に適した各種変更を有する各種実施形態を最良に利用できるように、本発明の原理およびその実際の応用を最良に説明するために選択され、説明されたものである。
【図面の簡単な説明】
【００６８】
【図１】本発明のいくつかの実施形態によるネットワークを示す。
【図２】本発明のいくつかの実施形態によるファクトリポジトリ内のオブジェクトおよび関連ファクトのデータ構造を示す。
【図３】本発明のいくつかの実施形態によるファクトインデックスのデータ構造を示す。
【図４】本発明のいくつかの実施形態による返答候補リストのデータ構造を示す。
【図５Ａ】ファクトクエリに対する返答を選択し、返答および返答のソースを表示する、本発明のいくつかの実施形態によるプロセスの流れ図である。
【図５Ｂ】ファクトクエリに対する返答を選択し、返答および返答のソースを表示する、本発明のいくつかの実施形態によるプロセスの流れ図である。
【図５Ｃ】ファクトクエリに対する返答を選択し、返答および返答のソースを表示する、本発明のいくつかの実施形態によるプロセスの流れ図である。
【図６】本発明のいくつかの実施形態によるファクトクエリに対する返答の提示を示す。
【図７】本発明のいくつかの実施形態によるファクトクエリに対する返答のソースリストの提示を示す。
【図８】本発明のいくつかの実施形態によるファクトクエリに対する返答を選択し、返答および返答のソースリストを表示するシステムを示す。
【図１】
2008535095.tif 000005
【図２】
2008535095.tif 000006
【図３】
2008535095.tif 000007
【図４】
2008535095.tif 000008
【図５Ａ】
2008535095.tif 000009
【図５Ｂ】
2008535095.tif 000010
【図５Ｃ】
2008535095.tif 000011
【図６】
2008535095.tif 000012
【図７】
2008535095.tif 000013
【図８】
2008535095.tif 000014
【国際調査報告】
2008535095.tif 000015
2008535095.tif 000016
2008535095.tif 000017