(57)【要約】【課題】情報検索システム、特に複数のクエリ言語を処理するためのシステムと、方法と、ソフトウェアを提供すること。【解決手段】例示的な実施形態は、クエリ言語の記述を受信することと、受信した該クエリ言語の記述に基づいて言語変換機を自動的に構成することとを包含する。該言語変換機、または言語翻訳機は、クエリ言語の変化に対してシステムを適合させるように用いられ得る。クエリ言語の記述を受信することと、該受信した該クエリ言語の記述に基づいて言語変換機を自動的に構成することとを包含する、方法。クエリ言語の記述を受信する手段と、受信した言語変換機の記述に基づいて該言語変換機を自動的に構成する手段とを備えている、システム。【選択図】図１
2011100498.tif 000002
【特許請求の範囲】
【請求項１】
明細書に記載の発明。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願）
本発明は、米国特許仮出願第６０／６４４，２８２号および第６０／７１３，７９８号に基づく優先権を主張し、該出願はそれぞれ２００５年１月１３日および２００５年９月２日に出願され、該出願は両方とも、本明細書中に参考として援用される。
（技術分野）
本発明の様々な実施形態は、情報検索システムに関し、特に複数のクエリ言語を処理するためのシステムと、方法と、ソフトウェアに関する。
【背景技術】
【０００２】
一部の情報検索システムは、共通のサーチインターフェースから幅広いデータベースにユーザーアクセスを提供する。幅広いデータベースは、しばしば、サーチインターフェースに入力されたクエリの言語とは異なるクエリ言語の使用を要求する一部のデータベースを含む。従って、これらのデータベースの効率的なサーチングのために、これらのシステムは、クエリ翻訳機を含み、該クエリ翻訳機は、インプットされたクエリを他のクエリ言語と互換性のあるクエリに翻訳する。
【０００３】
本発明者がそのようなシステムにおいて認識した１つの問題は、クエリ言語変化に適応するための能力に欠けるということである。クエリ翻訳機は、一般的に１つの特定の言語から別の特定の言語にクエリを翻訳するように設計および構築される。従って、インプットされるクエリの言語が変更または再定義される場合には、翻訳機は有用な翻訳を生成しない。翻訳機は、再設計およびコード化され得、変化に適応するが、再設計および再コード化は、システムのダウンタイムおよびプログラミングリソースの点から費用のかかるものとなる。さらに、クエリ言語が安定したものであっても、システム自体が、新たな翻訳機の設計および構築を要求する新たなデータベースを含むように拡張され得る。
【０００４】
従って、複数のデータベースでの使用のために、クエリ翻訳の従来のアプローチに代わるものに対するニーズがある。
【発明の概要】
【課題を解決するための手段】
【０００５】
このニーズおよび／または他のニーズに取り組むために、本発明者は、情報検索システムにおけるクエリの翻訳のために１つ以上のシステムと、方法と、ソフトウェアとを考案した。１つの例示的な方法は、クエリ言語の記述を受信することと、受信したクエリ言語の記述に基づいて言語の翻訳機または変換機を自動的に構成することを伴う。該方法はさらに、自動的に構成される言語変換機を用いてユーザーのクエリを標準化することと、次いで複数の対応するコンテンツのセットまたはデータベースでの使用のために標準化されたクエリの複数の翻訳を生成することとを包含する。各データベースからの結果は、次いで集合され、包括的なサーチ結果を生成する。
例えば、本発明は以下の項目を提供する。
（項目１）
クエリ言語の記述を受信することと、
該受信した該クエリ言語の記述に基づいて言語変換機を自動的に構成することと
を包含する、方法。
（項目２）
クライアントアクセスデバイスからインターネット接続を介してユーザークエリを受信することと、
自動的に構成される言語変換機を用いて該ユーザークエリを処理することによって、標準化されたクエリを定義することと、
該標準化されたクエリの第１の翻訳されたバージョンを用いることによって第１のデータベースにおけるドキュメントを識別することと、
該標準化されたクエリの第２の翻訳されたバージョンを用いることによって第２のデータベースにおけるドキュメントを識別することと、
該クライアントアクセスデバイスに、該第１のデータベースと該第２のデータベースとからドキュメントを識別するサーチ結果を戻すことと
をさらに包含する、項目１に記載の方法。
（項目３）
前記言語変換機を自動的に構成することは、１つのＸＭＬスタイルのシートを受信することとＸＭＬスタイルのシートに基づいてパーサを構成することとを包含する、項目１に記載の方法。
（項目４）
前記標準化されたクエリは、抽象構文ツリーを有する、項目１に記載の方法。
（項目５）
クエリ言語の記述を受信する手段と、
受信した言語変換機の記述に基づいて該言語変換機を自動的に構成する手段と
を備えている、システム。
（項目６）
クライアントアクセスデバイスからインターネット接続を介してユーザークエリを受信する手段と、
自動的に構成された言語変換機を用い該ユーザークエリを処理することによって、標準化されるクエリを定義する手段と、
該標準化されたクエリの第１の翻訳バージョンに応答して、第１のデータベースにおけるドキュメントを識別する手段と、
該標準化されたクエリの第２の翻訳バージョンに応答して、第２のデータベースにおけるドキュメントを識別する手段と、
該クライアントアクセスデバイスに、該第１のデータベースと該第２のデータベースとからドキュメントを識別するサーチ結果を戻す手段と
をさらに備えている、項目５に記載のシステム。
（項目７）
第１のクエリ言語の記述に応答して、クエリを標準化する手段と、
第２のクエリ言語の記述に応答して、該標準化されたクエリを第１の所定のデータベースに適合する第１のターゲットクエリに翻訳する手段と
を含む、情報検索システム。
（項目８）
前記クエリを提供するクライアントアクセスデバイスをさらに備えている、項目７に記載のシステム。
（項目９）
第３のクエリ言語の記述に応答して、前記標準化されたクエリを第２の所定のデータベースに適合する第２のターゲットクエリに、翻訳する手段をさらに備えている、項目７に記載のシステム。
（項目１０）
前記第１のクエリに基づいた前記第１のデータベースからの第１のサーチ結果を前記第２のクエリに基づいた前記第２のデータベースからの第２のサーチ結果とマージする手段をさらに備えている、項目９に記載のシステム。
（項目１１）
第１のクエリ言語の記述に応答して、クエリを標準化するベースサーチハンドラと、
第２のクエリ言語の記述に応答して、該標準化されたクエリを第１の所定のデータベースに適合する第１のターゲットクエリに翻訳する第１のパラレルサーチハンドラと
を備えている、情報検索システム。
（項目１２）
前記ベースサーチハンドラは、前記クエリを標準化する手段を備えている、項目１１に記載のシステム。
（項目１３）
前記第１のパラレルサーチハンドラは、前記標準化されたクエリを翻訳する手段を備えている、項目１１に記載のシステム。
（項目１４）
第３のクエリ言語の記述に応答して、前記標準化されたクエリを第２の所定のデータベースに適合する第２のターゲットクエリに翻訳する第２のパラレルサーチハンドラをさらに備える、項目１１に記載のシステム。
【図面の簡単な説明】
【０００６】
【図１】図１は、本発明の１つ以上の実施形態に対応する、例示的な情報検索システム１００のブロック図である。
【図２】図２は、本発明の１つ以上の実施形態に対応する、例示的な方法の流れ図である。
【図３】図３は、本発明の１つ以上の実施形態に対応する、例示的な方法の流れ図である。
【発明を実施するための形態】
【０００７】
本記述は、図および請求項を援用し、発明の１つ以上の特定の実施形態を記述する。これらの実施形態は、本発明を限定するのではなく、例示および教示するためのみに提供され、充分な詳細で表示および記述され、当業者が本発明を実施または実践することを可能にする。従って、本発明を不明瞭にすることを避けることが適切な場合には、記述は当業者に公知の所定の情報を省略し得る。
【０００８】
（例示的な情報検索システム）
図１は、本発明の教示を組み込んだ例示的な情報検索システム１００を示す。システム１００は、クライアントアクセスデバイス１１０と、サーバ１２０と、コンテンツセット１３０とを含む。
【０００９】
クライアントアクセスデバイス１１０は、１つ以上のアクセスデバイスを一般的に表現し、ネットワークを介しサーバ１２０と通信するためのハードウェアとソフトウェアとを含む。
【００１０】
サーバ１２０は、とりわけプロセッサモジュール１２１とメモリモジュール１２２とを含む。メモリモジュール１２２は、ソフトウェア（機械読み取り可能または機械実行可能な命令）を含み、プロダクト特有サーチ機能（ｐｒｏｄｕｃｔ−ｓｐｅｃｉｆｉｃ  ｓｅｒｃｈ  ｆｅａｔｕｒｅ）１２３と、プロダクト特有結果機能（ｐｒｏｄｕｃｔ−ｓｐｅｃｉｆｉｃ  ｒｅｓｕｌｔ  ｆｅａｔｕｒｅ）１２４と、ベースサーチハンドラ１２５と、パラレルサーチハンドラ１２６、１２７および１２８と、結果マージ（ｍｅｒｇｅ  ｒｅｓｕｌｔｓ）ハンドラ１２９とを提供する。
【００１１】
プロダクト特有サーチ機能１２３とプロダクト特有結果機能１２４とは、クライアントアクセスデバイス１１０と相互作用し得るアプリケーションサービス層の一部である。サーチ機能１２３は、アクセスデバイス１１０からクエリを受信する。結果機能１２４は、結果リストの形式を取り得る。
【００１２】
ベースサーチハンドラ１２５は通常、特定のパラレルサーチハンドラに対するクエリの標準化およびサーチパスの定義の機能を有し、プロダクトに特有なサーチまたはクエリに基づく。例示的な実施形態において、標準化は通常、中立のツリー形式、例えば抽象構文ツリー（ＡＳＴ）で入ってくるクエリの本質的な構造の捕獲を伴う。例えば、Ｇａｌｅ  ＣＱＬ  Ｑｕｅｒｙの標準化、“ｃａｔ”ｐｒｏｘ／＝／２／／ｏｒｄｅｒｅｄ“ｈａｔ”（ｈａｔの２語以内にあるｃａｔ）（ｃａｔ  ｗｉｔｈｉｎ  ｔｗｏ  ｗｏｒｄｓ  ｏｆ  ｈａｔ）は、以下のＸＭＬ構造をもたらす。
【００１３】
【表１】
2011100498.tif 000003
一実施形態において、パラレルサーチハンドラの１つは、この標準化されたクエリを「ｃａｔ  Ｗ２  ｈａｔ」に変換または翻訳し、別のサーチハンドラは、「ｃａｔ  ／２  ｈａｔ」と翻訳する。別の実施形態において、ベースサーチハンドラ１２２は、「ｃａｔ  ｗｉｔｈｉｎ  ２  ｏｆ  Ｈａｔ」というクエリをＺ３９．５０  ＲＰＮ  Ｑｕｅｒｙに応じた形式：ｃａｔ  ｈａｔ  ｗｉｔｈｉｎ／２で受信し、これを、
【００１４】
【表２】
2011100498.tif 000004
に標準化する。
サーチハンドラの１つは、この中立のツリー形式をＱＦ（ＣＣＬ）ｑｕｅｒｙ：“ｃａｔ
Ｗ２  ｈａｔ”に翻訳または非標準化する。Ｇａｌｅ  ＱＦ  Ｃｏｍｍａｎｄ  ｓｃａｎ（ＪＮ＝ｍａｎａｇｅｍｅｎｔ）の受信に応答して、ベースサーチハンドラは、該コマンドを
【００１５】
【表３】
2011100498.tif 000005
に標準化し、それはＱＦ：ｓｃａｎ（ＪＮ、“ｍａｎａｇｅｍｅｎｔ”）に変換され得る。
【００１６】
パラレルサーチハンドラ１２６、１２７および１２８（エージェントまたはターゲットエージェントとも呼ばれる）は、コンテンツセット１３０に伴う、状態および安全性の問題のマネージングの機能を有する。また、一部の実施形態において、サーチハンドラは、別個の種類のサーチをハンドルし、他の実施形態において、サーチハンドラは、同一種類のサーチをハンドルする。一部の実施形態において、パラレルサーチハンドラは、コンテンツセット１３０から発見されたコンテンツを、結果マージハンドラ１２０にルートする前に標準化する。
【００１７】
結果マージハンドラ１２９は、１つ以上のパラレルサーチハンドラから部分的な結果のセットを受信し、これらの結果を結果リストのような完全な結果のセットにマージする機能を有する。完成された結果のセットは、次いでクライアントアクセスデバイス１１０にルートバックされる。
【００１８】
コンテンツセット１３０は、コンテンツセット１３１、１３２および１３３を含み、それぞれはパラレルサーチハンドラ１２６、１２７および１２８とそれぞれ結合されるか、または結合が可能である。コンテンツセット１３０は、任意の様々な形式を取り得るが、図１の例示的な実施形態において、それぞれは、互いに異なるクエリ言語を用いる。一部の実施形態において、１つ以上のコンテンツセットは、別のコンテンツセットのコンテンツを冗長性または応答性の理由でミラーする。
【００１９】
（情報検索システムの操作の例示的な方法）
図２は、図１のシステム１００のような情報検索システムの操作の例示的な方法の流れ図２００を示す。流れ図２００は、ブロック２１０〜２６０を含み、順に配列および記述される。しかし、他の実施形態は、複数のプロセッサまたはプロセッサのようなデバイスを用いるか、２つ以上の仮想マシンまたはサブプロセッサとして編成される単一のプロセッサを用いて、２つ以上のブロックを並行して実行する。他の実施形態もまた、プロセスシーケンスを変更するか、または異なる機能的なパーティションまたはブロックを提供し、類似の結果を達成する。加えて、さらに別の実施形態は、モジュールの間を通信され、かつモジュールを介して通信される関連したコントロール信号およびデータ信号を伴う２つ以上の相互接続されたハードウェアモジュールとして、ブロックをインプリメントする。従って、例示的なプロセスフローは、ソフトウェア、ハードウェアおよびファームウェアのインプリメンテーションに適用される。
【００２０】
ブロック２１０において、例示的な方法は、クエリを受信することから始まる。例示的な実施形態において、これは、クライアントアクセスデバイス１１０がインターネットなどのネットワークを介してクエリを（テキストストリングの形式で）サーバ１２０、特にプロダクト特有サーチ機能１２３に通信することを伴う。実行は、次いでブロック２２０に進む。
【００２１】
ブロック２２０は、クエリの標準化を伴う。例示的な実施形態において、この標準化は、ベースサーチハンドラ１２５によって行われる。一部の実施形態において、実施例として示されるように、図３においてベースサーチハンドラ１２５は、ＪＡＶＡ（登録商標）パーサ１２５’の形式を規定し、パーサ１２５は、クエリの形式を記述する選択された拡張可能なスタイルの言語（ＸＳＬ）シートまたはインプットに基づいて構成が可能である。従って、この意味ではベースサーチハンドラ１２５は、実質的にあらゆるクエリ構造を所望のＡＳＴ形式に標準化するように直ちに適合または構成され得る。例示的な実行は、ブロック２３０で継続する。
【００２２】
ブロック２３０は、標準化されたクエリを複数のクエリ言語に翻訳することを伴う。例示的な実施形態において、これは、図１のベースサーチハンドラ１２５（または図３のパーサ１２５’）が、１つ以上、または通常は２つ以上のパラレルサーチハンドラ１２６〜１２７（またはターゲットエージェント１２６’）のそれぞれに、標準化されたクエリ（ＡＳＴ）３３０を通信することを伴う。次いで、パラレルサーチハンドラは、標準化されたクエリを、パラレルサーチハンドラに対応するターゲットコンテンツの特定のクエリ言語に翻訳する。一部の実施形態において、パラレルサーチハンドラ（またはターゲットエージェント）は、ＸＬＳインプットおよび／またはプロダクト情報またはインデックス情報に基づいて翻訳（またはターゲットクエリ）を生成する。しかし、他の実施形態において、１つ以上のパラレルサーチングハンドラは、他と関連して固定される。
【００２３】
ブロック２４０は、ブロック２３０からの翻訳されたクエリに基づいてコンテンツまたはドキュメントを識別することを伴う。例示的な実施形態において、クエリは、１つ以上のコンテンツセット１３０に固有のサーチエンジンによって処理され、コンテンツセットのそれぞれのために部分的なサーチ結果のそれぞれのセットをもたらす。
【００２４】
次いで、ブロック２５０は、結果を結果リストにマージすることを伴う。このために、例示的な実施形態は、翻訳に関係した各パラレルサーチハンドラに、それぞれの結果を結果マージハンドラ１２９に通信させる。実行は、次いでブロック２６０で継続する。
【００２５】
ブロック２６０は、ユーザーにサーチ結果を提示することを伴う。例示的な実施形態において、結果は、クライアントアクセスデバイス１１０に通信される。
（結論）
上記および請求項に記述された実施形態は、本発明を実施またはインプリメントする１つ以上のやり方を例示および教示することのみを意図し、本発明の広がりまたは範囲を限定するものではない。本発明の実際の範囲は、本発明の教示を実施またはインプリメントする全ての方法を包含し、記述された請求項およびその均等物によってのみ定義される。
【図１】
2011100498.tif 000006
【図２】
2011100498.tif 000007
【図３】
2011100498.tif 000008
【外国語明細書】
2011100498000001.pdf