(57)【要約】【課題】  複数の検索を実行するためのコンピュータ実装方法、データ処理システム及びコンピュータ・プログラムを提供する。【解決手段】  複数の検索を実行するための、テキストを含む要求が受け取られる。複数の検索エンジンを指定する検索エンジン・プリファレンスが取り出される。前記複数の検索エンジンのうちの各検索エンジンごとに、一のインターネット・ブラウザが開かれる。前記テキストを使用して、各インターネット・ブラウザ内で検索が開始される。【選択図】  図６
2009093633.tif 000002
【特許請求の範囲】
【請求項１】
複数の検索を実行するための、コンピュータ実装方法であって、
前記複数の検索を実行するためのテキストを含む要求を受け取るステップと、
前記要求を受け取ることに応答して、複数の検索エンジンを指定する検索エンジン・プリファレンスを識別するステップと、
前記複数の検索エンジンの各々ごとに一のページを開くことにより、複数の検索ページを形成するステップと、
前記テキストを使用して前記複数の検索エンジンのための前記複数の検索ページの各々において検索を開始することにより、前記検索エンジン・プリファレンスによって指定された前記複数の検索エンジンを用いて前記複数の検索を実行するステップとを含む、コンピュータ実装方法。
【請求項２】
前記テキストを前記複数の検索エンジンに提供することに応答して、前記複数の検索エンジンから検索結果を受け取るステップと、
前記検索結果をディスプレイ上に表示するステップとをさらに含む、請求項１に記載のコンピュータ実装方法。
【請求項３】
前記複数の検索エンジンの各々から受け取った前記検索結果の数に対応するウェブ・ページを取り出すステップをさらに含む、請求項２に記載のコンピュータ実装方法。
【請求項４】
前記ウェブ・ページを、前記複数の検索ページのうちの異なる検索ページにそれぞれ表示するステップをさらに含む、請求項３に記載のコンピュータ実装方法。
【請求項５】
前記ウェブ・ページを取り出すステップが、開くべきページのユーザ指定数を取り出すステップをさらに含み、前記ウェブ・ページを表示するステップが、前記ウェブ・ページのうちの前記ユーザ指定数に対応する数のウェブ・ページだけを表示するステップをさらに含む、請求項４に記載のコンピュータ実装方法。
【請求項６】
前記要求が、前記テキストを選択し且つコマンドを発行するユーザ入力を含み、前記コマンドが、ユーザ定義のキー・シーケンスである、請求項１に記載のコンピュータ実装方法。
【請求項７】
請求項１〜６の何れか１項に記載の方法の各ステップをコンピュータに実行させるためのコンピュータ・プログラム 。
【請求項８】
複数の検索を実行するためのデータ処理システムであって、
バスと、
前記バスに接続され且つコンピュータ使用可能コードを保持するストレージ装置と、
前記バスに接続された通信ユニットと、
前記バスに接続され且つ前記コンピュータ使用可能コードを実行するための処理ユニットとを備え、
前記処理ユニットが、前記コンピュータ使用可能コードを実行することにより、
前記複数の検索を実行するための、テキストを含む要求を受け取り、
複数の検索エンジンを指定する検索エンジン・プリファレンスを識別し、
前記複数の検索エンジンの各々を複数のブラウザのうちの異なるブラウザ内でそれぞれ開き、
前記テキストを使用して、前記複数の検索エンジンのうちの異なるエンジンを用いる前記複数のブラウザの各々において検索をそれぞれ開始するように適合される、データ処理システム。
【請求項９】
前記処理ユニットが、前記コンピュータ使用可能コードを実行することにより、
前記テキストを前記複数の検索エンジンに提供することに応答して、前記複数の検索エンジンから検索結果を受け取り、
前記検索結果を表示するようにさらに適合される、請求項８に記載のデータ処理システム。
【請求項１０】
前記処理ユニットが、前記コンピュータ使用可能コードを実行することにより、
前記複数の検索エンジンの各々から受け取った前記検索結果の数に対応するウェブ・ページを取り出すようにさらに適合される、請求項９に記載のデータ処理システム。
【請求項１１】
前記処理ユニットが、前記コンピュータ使用可能コードを実行することにより、
開くべきブラウザのユーザ指定数を取り出し、
前記ウェブ・ページのうちの前記ユーザ指定数に対応する数のウェブ・ページだけを表示するようにさらに適合される、請求項１０に記載のデータ処理システム。
【請求項１２】
前記処理ユニットが、前記コンピュータ使用可能コードを実行することにより、
前記ウェブ・ページを、前記複数のブラウザのうちの異なるブラウザにそれぞれ表示するようにさらに適合される、請求項１０に記載のデータ処理システム。
【請求項１３】
前記要求が、前記テキストを選択し且つコマンドを発行するユーザ入力を含み、前記コマンドが、ユーザ定義のキー・シーケンスである、請求項８に記載のデータ処理システム。
【請求項１４】
複数の検索を実行するためのコンピュータ実装方法であって、
選択されたテキストの検索を実行するための要求を受け取るステップと、
前記要求を受け取ることに応答して、前記選択されたテキストを検索エンジン・プリファレンス内で指定された複数の検索エンジンに提供するステップとを含む、コンピュータ実装方法。
【請求項１５】
前記選択されたテキストを前記複数の検索エンジンに提供することに応答して、前記複数の検索エンジンから検索結果を受け取るステップと、
前記検索結果を表示するステップをさらに含む、請求項１４に記載のコンピュータ実装方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検索（サーチ）エンジンに係り、さらに詳細に説明すれば、選択されたテキストの複数の検索を実行するためのコンピュータ実装方法、装置及びコンピュータ使用可能プログラム・コードに係る。
【背景技術】
【０００２】
文書を見るユーザは、２つ以上の検索エンジンを用いて、文書からのテキストの一部を検索することを望むことがある。そのような場合、ユーザは、検索を実行するために当該ユーザが用いることを望んでいる各検索エンジンごとに一のインターネット・ブラウザを開き、これらのブラウザを互いに異なる、所望の検索エンジンにナビゲートする。当該ユーザは、文書からテキストをコピーし、これを各検索エンジンに貼り付けるとともに、各検索エンジンに対し当該テキストを使用して検索を実行するように指令する。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
例えば、消費者は、アマゾン・コム社及びベストバイ社のような複数の家電小売業者のウェブ・サイトを検索することにより、購入を予定している家電製品の価格を比較することができる。しかし、これらの検索エンジンの複数の異なる検索ページにナビゲートし、テキストをコピーし且つこれを当該検索ページに貼り付け、各検索ページの検索を要求することは、時間を消費するばかりか、ユーザにとって繰り返しの多い作業である。
【課題を解決するための手段】
【０００４】
本発明の実施形態は、複数の検索を実行するためのコンピュータ実装方法、装置及びコンピュータ・プログラム製品を提供する。複数の検索を実行するためのテキストを含む要求が受け取られる。前記複数の検索エンジンを指定する、検索エンジン・プリファレンスが取り出される。前記複数の検索エンジンのうちの各検索エンジンごとに、一のインターネット・ブラウザが開かれる。前記テキストを使用して、各インターネット・ブラウザ内で検索が開始される。
【発明を実施するための最良の形態】
【０００５】
図１及び図２は、実施形態を実装することができる、データ処理環境を例示する図面として提示される。図１及び図２は、単に例示的なものであるに過ぎず、異なる実施形態を実装することができる環境に関する如何なる制限も主張又は意図するものではない。図示の環境に対し多くの修正を施すことができる。
【０００６】
図１は、実施形態を実装することができる、データ処理システムのネットワークの概観を示す。ネットワーク・データ処理システム１００は、実施形態を実装することができるコンピュータのネットワークである。ネットワーク・データ処理システム１００に含まれるネットワーク１０２は、ネットワーク・データ処理システム１００内の相互に接続された種々の装置及びコンピュータの間の通信リンクを提供するために使用される媒体である。ネットワーク１０２は、ワイヤ、無線通信リンク又は光ファイバ・ケーブルのような接続を含むことができる。
【０００７】
サーバ１０４及び１０６は、ストレージ・ユニット１０８と共にネットワーク１０２に接続する。クライアント１１０〜１１４も、ネットワーク１０２に接続する。クライアント１１０〜１１４は、例えば、パーソナル・コンピュータ又はネットワーク・コンピュータとすることができる。サーバ１０４は、ブート・ファイル、オペレーティング・システムのイメージ、並びにクライアント１１０〜１１４に対するアプリケーションのようなデータを提供する。クライアント１１０〜１１４は、サーバ１０４に対するクライアントである。ネットワーク・データ処理システム１００は、図示されていない追加のサーバ、クライアント及び他の装置を含むことができる。サーバ１０４及び１０６は、ネットワーク１０２上のウェブ・サイトを検索するための検索エンジンをホストすることができる。クライアント１１０〜１１４は、異なる実施形態におけるプロセスを介して、それらの検索エンジンで検索を開始することができる。
【０００８】
ネットワーク・データ処理システム１００は、ネットワーク１０２を備えたインターネットであって、互いに通信するために伝送制御プロトコル／インターネット・プロトコル（ＴＣＰ／ＩＰ）スイートを使用するネットワーク及びゲートウェイの世界的な集合体を表す。インターネットの中心は、データ及びメッセージを発信する、何千もの商用、政府用、教育用及び他のコンピュータ・システムから成る、主要ノード又はホスト・コンピュータ間の高速データ通信線のバックボーンである。もちろん、ネットワーク・データ処理システム１００は、イントラネット、ローカル・エリア・ネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）等の、多くの異なるタイプのネットワークとして実装することができる。図１は、１例として図示されたものであって、異なる実施形態のアーキテクチャ上の制限を示すことを意図するものではない。
【０００９】
図２は、実施形態を実装することができる、データ処理システムのブロック図を示す。データ処理システム２００は、図１のサーバ１０４又はクライアント１１０のようなコンピュータの１例であり、その内部には実施形態用のプロセスを実装するコンピュータ使用可能プログラム・コードすなわち命令が存在する。
【００１０】
データ処理システム２００は、ノース・ブリッジ兼メモリ・コントローラ・ハブ（ＮＢ／ＭＣＨ）２０２及びサウスブリッジ兼入出力コントローラ・ハブ（ＳＢ／ＩＣＨ）２０４を含む、ハブ・アーキテクチャを使用する。処理ユニット２０６、主メモリ２０８及びグラフィックス・プロセッサ２１０は、ＮＢ／ＭＣＨ ２０２に結合される。処理ユニット２０６は、１つ以上のプロセッサを含むことができ、１つ以上の異機種プロセッサ・システムを使用して実装することもできる。グラフィックス・プロセッサ２１８は、例えば、アクセラレィテッド・グラフィックス・ポート（ＡＧＰ）を介して、ＮＢ／ＭＣＨ ２０２に結合することができる。
【００１１】
ローカル・エリア・ネットワーク（ＬＡＮ）アダプタ２１２は、ＳＢ／ＩＣＨ ２０４に結合される。オーディオ・アダプタ２１６、キーボード及びマウス・アダプタ２２０、モデム２２２、読み取り専用メモリ（ＲＯＭ）２２４、ユニバーサル・シリアル・バス（ＵＳＢ）及び他の通信ポート２３２、ＰＣＩ／ＰＣＩｅ装置２３４は、バス２３８を通して、ＳＢ／ＩＣＨ ２０４に結合される。ハード・ディスク・ドライブ（ＨＤＤ）２２６及びＣＤ−ＲＯＭドライブ２３０は、バス２４０を通して、ＳＢ／ＩＣＨ ２０４に結合される。ＰＣＩ／ＰＣＩｅ装置２３４は、例えば、イーサネット（登録商標）・アダプタ、アドイン・カード、ノート型コンピュータ用のＰＣカードを含むことができる。ＰＣＩはカード・バス・コントローラを使用するが、ＰＣＩｅはこれを使用しない。ＲＯＭ ２２４は、例えば、フラッシュ型の基本入出力システム（ＢＩＯＳ）とすることができる。ＨＤＤ ２２６及びＣＤ−ＲＯＭドライブ２３０は、例えば、統合ドライブ・エレクトロニクス（ＩＤＥ）又はシリアル・アドバンスト・テクノロジ・アタッチメント（ＳＡＴＡ）インタフェースを使用することができる。ＳＩＯ（Super I/O）装置２３６は、ＳＢ／ＩＣＨ ２０４に結合することができる。
【００１２】
オペレーティング・システムは、処理ユニット２０６上で稼働し、データ処理システム２００内の種々のコンポーネントを統制及び制御する。オペレーティング・システムは、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ  ＸＰ（「Ｍｉｃｒｏｓｏｆｔ」及び「Ｗｉｎｄｏｗｓ」は、マイクロソフト社の登録商標）のような市販のオペレーティング・システムとすることができる。Ｊａｖａプログラミング・システムのようなオブジェクト指向のプログラミング・システムは、オペレーティング・システムと共に稼働することができ、データ処理システム２００上で実行中のＪａｖａプログラム又はアプリケーションからオペレーティング・システムへの呼び出しを提供する（「Ｊａｖａ」は、サン・マイクロシステムズ社の登録商標）。
【００１３】
オペレーティング・システム、オブジェクト指向のプログラミング・システム及びアプリケーション又はプログラム用の命令は、ＨＤＤ ２２６のようなストレージ装置に置かれ、処理ユニット２０６による実行のために主メモリ２０８にロードすることができる。実施形態のプロセスは、例えば、主メモリ２０８、ＲＯＭ ２２４のようなメモリ内、又は１つ以上の周辺装置内に置かれたコンピュータ実装命令を使用する、処理ユニット２０６によって実行することができる。
【００１４】
図１及び図２のハードウェアは、実装に応じて変わることがある。図１及び図２に示すハードウェアに加えて、又はそのハードウェアに代えて、フラッシュ・メモリ、それと同等の不揮発性メモリ、光ディスク・ドライブ等の、他の内部ハードウェア又は周辺装置を使用することができる。また、実施形態のプロセスは、多重プロセッサ・データ処理システムにも適用することができる。
【００１５】
幾つかの例では、データ処理システム２００は、オペレーティング・システムのファイル又はユーザ生成データを格納するための不揮発性メモリ又はフラッシュ・メモリで構成される、パーソナル・デジタル・アシスタント（ＰＤＡ）とすることができる。バス・システムは、システム・バス、Ｉ／Ｏバス及びＰＣＩバスのような、１つ以上のバスから構成することができる。もちろん、このバス・システムは、異なるコンポーネント又は装置の間でデータを転送するための、任意のタイプの通信ファブリック又はアーキテクチャを使用して実装することができる。通信ユニットは、モデム又はネットワーク・アダプタのような、データを送信及び受信するために使用される１つ以上の装置を含むことができる。メモリは、例えば、主メモリ２０８又はＮＢ／ＭＣＨ ２０２内にあるキャッシュとすることができる。処理ユニットは、１つ以上のプロセッサ又はＣＰＵを含むことができる。図１及び図２に示した例及び前述の例は、アーキテクチャ上の制限を意味するものではない。例えば、データ処理システム２００は、ＰＤＡの形式を取ることに加えて、タブレット・コンピュータ、ラップトップ・コンピュータ又は電話機の形式を取ることができる。
【００１６】
図３は、従来技術に従った、検索エンジンを具備するネットワークを示す。図示のように、クライアント３０２、サーバ３０４及び３０６は、ネットワーク３０８に接続される。クライアント３０２は、図１のクライアント１１０のようなクライアントであり、サーバ３０４及び３０６は、図１のサーバ１０４及び１０６のようなサーバである。サーバ３０４は、検索エンジン３１０をホストし、サーバ３０６は、検索エンジン３１２をホストする。検索エンジン３１０及び３１２は、インターネット上のウェブ・サイトにあり、そこでユーザは当該ウェブ・サイト又はインターネットの検索を実行することができる。例えば、検索エンジン３１０及び３１２をウェブ・サイトとすると、当該ウェブ・サイト内に設けられた検索エンジンを用いて当該ウェブ・サイト内のデータを検索することができる。検索エンジン３１０及び３１２は、「Blogbar」又は「Blingo」のような検索エンジン・ウィジェットとすることができ、これを当該ウェブ・サイトの一部として実装することができる。代替的に、検索エンジン３１０及び３１２は、「Google.com」及び「Ask.com」のウェブ・サイトのように、インターネットを検索するために用いられるウェブ・サイトとすることもできる。
【００１７】
ユーザ３１４は、クライアント３０２上の文書３１６を見て、文書３１６内のテキスト３１８を見つける。テキスト３１８は、単一の語、句又は１つ以上の文のような、任意の量の文字言語とすることができる。例えば、ユーザ３１４がテキスト３１８に関するより多くの情報を見つけることを望んでいれば、ユーザ３１４は、プロセス３２０を開始し、プロセス３２０を介して、ブラウザ３２２を表示する。ブラウザ３２２は、インターネットをサーフィンするためのインターネット・ブラウザである。ユーザ３１４は、ブラウザ３２２を検索エンジン３２４に移動させ、テキスト３１８を強調表示し、文書３１６からテキスト３１８をコピーし且つこれをブラウザ３２２に貼り付けるとともに、検索エンジン３２４に対しテキスト３１８を使用して検索を実行するように要求する。検索エンジン３２４は、検索エンジン３１０及び３１２のような、検索エンジンのウェブ・サイトである。
【００１８】
テキスト３１８を使用して検索を実行するための要求を受け取った後、検索エンジン３２４は、この例における結果３２６〜３３０のような、検索の結果を表示する。結果３２６〜３３０の各々は、テキスト３１８と一致するウェブ・サイトへのハイパーリンクを保持するか、又はテキスト３１８と一致する結果が見出されなかったことを指示し且つ代替的な検索語を示唆することができる。この例では、検索エンジン３２４によるテキスト３１８の検索は、３つの結果、すなわち結果３２６〜３３０に帰着する。但し、検索エンジン３２４によって見出されるテキスト３１８のインスタンスの数に依存して、結果３２６〜３３０は、３つ以上になることもあり、３つ以下になることもある。
【００１９】
もし、ユーザ３１４が、複数の異なる検索エンジンを用いてテキスト３１８を検索することを望んでいれば、ユーザ３１４は、ブラウザ３２２をこれらの検索エンジンの各々に対応する検索エンジン３２４にナビゲートし、テキスト３１８をコピーし且つこれを検索エンジン３２４へ貼り付けるとともに、検索エンジン３２４に対しテキスト３１８を使用して検索を実行するように要求する。例えば、医学生は、「Web MD」、「Dr. Koop」及び「Mayo Clinic」のウェブ・サイトのような、複数の医療情報ウェブ・サイト上で医学用語の意味を見出すために検索を実行することができる。代替的に、この医学生は、複数の家電小売業者のウェブ・サイトを検索することにより、購入を予定しているテレビ受信機の価格を比較することができる。
【００２０】
しかし、従来技術のように、複数の異なる検索ページにナビゲートし、テキストをコピーし且つこれを検索ページに貼り付け、各検索ページの検索を要求することは、時間を消費するばかりか、ユーザにとって繰り返しの多い作業である。かかる従来技術の課題を解決するため、本発明は、複数の所望の検索エンジンを用いて、特定のテキストの検索を速やかに且つ容易に実行する方法を提供することを目的とする。
【００２１】
従って、本発明の実施形態は、複数の検索を実行するためのコンピュータ実装方法、装置及びコンピュータ使用可能プログラム・コードを提供する。複数の検索を実行するためのテキストを含む要求が受け取られる。前記複数の検索エンジンを指定する、検索エンジン・プリファレンスが取り出される。前記複数の検索エンジンのうちの各検索エンジンごとに、一のインターネット・ブラウザが開かれる。前記テキストを使用して、各インターネット・ブラウザ内で検索が開始される。
【００２２】
図４は、実施形態に従った検索動作を示すブロック図である。図示のように、ユーザ４０２は、クライアント４０６上の文書４０４を見る。クライアント４０６は、図３のクライアント３０２のようなクライアントである。ユーザ４０２は、文書４０４内のテキスト４０８を選択し且つコマンド４１０を発行することにより、テキスト４０８の検索を実行する。コマンド４１０は、プロセス４１２に対し、テキスト４０８を使用して複数の検索を実行するように通知する。このプロセス４１２は、所望の検索エンジンを用いて複数の検索を実行する際に、ユーザがテキストをコピーし且つこれをブラウザの多数のインスタンスに貼り付けることを必要としない。プロセス４１２は、アプリケーションのプラグ・インとして、ブラウザ・アプリケーションの修正として、さらにはブラウザと共に動作する個別のアプリケーションとして、これを実装することができる。
【００２３】
ユーザ４０２は、種々の方法でコマンド４１０を発行することができる。例えば、ユーザ４０２は、「＜ｃｔｒｌ＞Ｍ」のようなキー・シーケンスを押下することにより、すなわち、キーボード上の制御キー「ｃｔｒｌ」を保持し、それと同時にキーボード上の「Ｍ」キーを押下することにより、クライアント４０６へ入力するためのコマンド４１０を作成することができる。これに代えて、キー・シーケンス「＜ｃｔｒｌ＞Ｍ」を、キーボード上の特定のファンクション・キーに割り当てるようにしてもよい。
【００２４】
複数の検索を実行する前に、ユーザ４０２は、クライアント４０６上のファイルに、ユーザ指定プリファレンス４１４を作成する。ユーザ４０２は、ユーザ指定プリファレンス４１４内に、選択されたテキストの検索を実行する際に当該ユーザが用いることを望んでいる各検索エンジンを指定する。この例では、ユーザ指定プリファレンス４１４は、プリファレンス４１６及び４１８を保持する。しかし、ユーザ指定プリファレンス４１４は、これに限らず、１組（１つ以上）のプリファレンスを保持することができる。プリファレンス４１６及び４１８は、ユーザ４０２の所望の検索エンジンのロケーションを指示する。例えば、プリファレンス４１６及び４１８の各々は、検索エンジンのユニフォーム・リソース・ロケータ（ＵＲＬ）とすることができる。
【００２５】
プロセス４１２は、ユーザ指定プリファレンス４１４を調べることにより、ユーザがどの検索エンジンを用いることを望んでいるかを決定する。次に、プロセス４１２は、ユーザ指定プリファレンス４１４内の各プリファレンスごとに、一のブラウザを開く。この例では、プロセス４１２は、プリファレンス４１６のためにブラウザ４２０を開き、プリファレンス４１８のためにブラウザ４２２を開く。次に、プロセス４１２は、開かれた各ブラウザを、ユーザ指定プリファレンス４１４内で指定された検索エンジンのウェブ・サイトに移動させる。この例では、プリファレンス４１６は検索エンジン４２４を指定し、プリファレンス４１８は検索エンジン４２６を指定する。従って、プロセス４１２は、ブラウザ４２０を検索エンジン４２４に移動させ、ブラウザ４２２を検索エンジン４２６に移動させる。次に、プロセス４１２は、テキスト４０８を開かれた各ブラウザ内の検索エンジンに提供し、当該検索エンジンに対しテキスト４０８を使用して検索を実行するように要求する。
【００２６】
例えば、プロセス４１２が、テキスト４０８を検索エンジン４２４に提供すると、結果４２８〜４３２が得られる。同様に、プロセス４１２が、テキスト４０８を検索エンジン４２６に提供すると、結果４３４〜４３８が得られる。従って、前述のように、ユーザ４０２は、テキスト４０８を強調表示し且つコマンド４１０を発行することにより、複数の検索を実行し且つその検索結果を見ることができる。 
【００２７】
１つの実施形態では、複数の検索エンジンを有する内部ネットワーク上で検索を実行し、各検索エンジンごとに一のページを開くことができる。しかし、前述の例では、このページはブラウザである。
【００２８】
図５は、実施形態に従った、１組の結果ウェブ・サイトを開く動作を示すブロック図である。図示のように、ユーザ５０２は、クライアント５０６上の文書５０４を見て、コマンド５１０を発行する。クライアント５０６は、図４のクライアント４０６のようなクライアントである。ユーザ５０２は、コマンド５１０を発行する前に、ユーザ指定プリファレンス５１２を作成する。この例では、ユーザ指定プリファレンス５１２は、プリファレンス５１４及び５１６を保持する。プリファレンス５１４及び５１６は、図４のプリファレンス４１６及び４１８のようなプリファレンスである。また、ユーザ５０２は、プリファレンス５１４に対応する数５１８及びプリファレンス５１６に対応する数５２０を指定する。数５１８及び５２０は、テキスト５０８の各検索の結果のために開くべきブラウザ・ページの数を指定する。この例では、２つのプリファレンス（プリファレンス５１４及び５１６）、並びに２つの数（数５１８及び５２０）が存在する。しかし、これに代えて、ユーザ５０２は、３つ以上のプリファレンス及び３つ以上の数を指定することができる。
【００２９】
ユーザ５０２がテキスト５０８を選択し且つコマンド５１０を発行する場合、プロセス５２２は、図４を参照して説明したように、ユーザ指定プリファレンス５１２を調べ、各プリファレンスごとに一のブラウザを開き、当該ブラウザを当該プリファレンス内で指定された検索エンジンに移動させるとともに、当該検索エンジンに対し、テキスト５０８を使用して検索を実行するように要求する。この例では、プロセス５２２は、ブラウザ５２４及び５２６を開き、ブラウザ５２４及び５２６をプリファレンス５１４及び５１６内で指定された検索エンジンにそれぞれ移動させるとともに、各検索エンジンに対し、テキスト５０８を使用して検索を実行するように指令する。説明を簡潔にするため、以下では、ブラウザ５２６についてのみ説明する。しかし、ブラウザ５２４についても、プロセス５２２がこれと同様のアクションを行うことを理解されたい。
【００３０】
検索エンジン５２８は、テキスト５０８を使用して検索を実行し、検索の結果を戻す。この例では、検索エンジン５２８の検索の結果は、結果５３０〜５３４である。もちろん、検索エンジン５２８は、４つ以上又は２つ以下の結果を戻すことができる。３つの結果は、説明上の例であるに過ぎない。
【００３１】
プロセス５２２は、ユーザ指定プリファレンス５１２内の各プリファレンスごとに一のブラウザを開くことに加え、各プリファレンスに対応する数を調べる。この例では、プロセス５２２は、プリファレンス５１４及び５１６に対応する数５１８及び５２０をそれぞれ調べる。プロセス５２２は、ユーザ指定プリファレンス５１２内の一のプリファレンスに関連する一の数ごとに、検索エンジン５２８からの最初の「ｎ」個の結果を含む１組の結果を選択する。但し、ｎは、当該数の数値である。次に、プロセス５２２は、「ｎ」個のブラウザを開き、各ブラウザを前記１組の結果のうちの各結果に対応するウェブ・ページに移動させる。
【００３２】
数５１８の数値が３であると仮定する。その場合、プロセス５２２は、検索エンジンからの前記１組の結果として最上位の３つの結果、すなわち結果５３０〜５３４を選択する。プロセス５２２は、前記１組の結果のうちの各結果ごとに一のブラウザを開く。この例では、プロセス５２２は、３つのブラウザ、すなわちブラウザ５３６〜５４０を開く。次に、プロセス５２２は、各ブラウザを前記１組の結果のうちの各結果のインターネット・ロケーションに移動させる。この例では、プロセス５２２は、ブラウザ５３６を結果５３０が参照するロケーションに対応するサイト５４２に移動させ、ブラウザ５３８を結果５３２が参照するロケーションに対応するサイト５４４に移動させるとともに、ブラウザ５４０を結果５３４が参照するロケーションに対応するサイト５４６に移動させる。
【００３３】
同様に、数５２０の数値が５であれば、プロセス５２２は、前記１組の結果として、ブラウザ５２４内で実行された検索からの最上位の５つを選択し、５つのブラウザを開き、当該５つのブラウザの各々を、前記１組の結果のうちの各結果が参照するロケーションに移動させる。従って、ユーザ５０２は、テキスト５０８を選択し且つコマンド５１０を発行することによって、複数の検索を開始させ、そして指定された数の最上位の結果を表示のためにブラウザ内で開かせることができる。ブラウザ５２４及び５２６、並びにブラウザ５３６及び５４０の各々は、別個のウィンドウ、ウィンドウ内のタブ、又は別個のウィンドウ及びタブの組み合わせとすることができる。これらの例では、タブ又はタブ付きページは、ブラウザのインスタンス用のウィンドウ内に表示されるページである。典型的には、複数のタブを有するウィンドウ内で単一のタブだけが可視的となる。異なるページは、異なるタブを選択することにより、これを見ることができる。各検索は、同じウィンドウ上の別個のタブ内で開くことができる。他の例では、各ページを別個のウィンドウ内で開くことができる。他の例では、２つの組み合わせを使用することができ、さらにはページを表示するために他の構成を使用することもできる。
【００３４】
図６は、実施形態に従った、ブラウザ・ウィンドウを開く動作のフローチャートである。図６の諸ステップは、図４のプロセス４１２又は図５のプロセス５２２のような、プロセスによって実行される。本プロセスが開始するのは、テキスト及び実行すべき検索のタイプが受け取られる場合である（ステップ６０２）。検索のタイプは、複数の検索が実行されるような検索とすることができる。代替的に、検索のタイプは、複数の検索が実行され且つ指定された数の結果ページが開かれるような検索とすることができる。
【００３５】
例えば、「＜ｃｔｒｌ＞Ｇ」のような第１のコマンドが受け取られると、本プロセスは、図４を参照して説明したように、複数の検索エンジンを用いて検索を実行することができる。一方、「＜ｃｔｒｌ＞Ｍ」のような第２のコマンドが受け取られると、本プロセスは、図５を参照して説明したように、複数の検索を実行し且つ各検索ごとに指定された数の検索結果のための１組の結果ウェブ・サイトを開くことができる。
【００３６】
次に、本プロセスは、ユーザ指定検索エンジン・プリファレンスを調べる（ステップ６０４）。実施形態では、検索エンジン・プリファレンスは、ユニフォーム・リソース・ロケータ・アドレスとして格納することができる。本プロセスは、指定された各検索エンジンごとに、一の新しいブラウザを開き、当該ブラウザを指定された検索エンジン・ウェブ・サイトに移動させるとともに、テキストの検索を要求する（ステップ６０６）。次に、複数の結果ページを開くことをユーザが望んでいるか否かという決定が行われる（ステップ６０８）。もし、この決定が「ＮＯ」であれば、本プロセスは終了する。さもなければ、各検索ごとにユーザが指定した結果ページの数が調べられる（ステップ６１０）。本プロセスは、指定された各検索エンジンごとに、ユーザが指定した結果ページの数を取り出し、新しいブラウザにおいて各結果ページのロケーションを開く（ステップ６１２）。その後、本プロセスは終了する。
【００３７】
従って、本発明の実施形態は、複数の検索を実行するためのコンピュータ実装方法、装置及びコンピュータ・プログラム製品を提供する。複数の検索を実行するためのテキストを含む要求が受け取られる。前記複数の検索エンジンを指定する、検索エンジン・プリファレンスが取り出される。前記複数の検索エンジンのうちの各検索エンジンごとに、一のインターネット・ブラウザが開かれる。前記テキストを使用して、各インターネット・ブラウザ内で検索が開始される。
【００３８】
通常は、選択されたテキストの複数の検索を開始するために、ユーザは、一のブラウザを開き、当該ブラウザをユーザが用いることを望んでいる各検索エンジンにナビゲートする。次に、ユーザは、選択されたテキストを使用して、各ブラウザ内で検索を開始する。これに対し、本発明の実施形態は、ユーザがテキストを選択し且つコマンドを発行することにより、所望の１組の検索エンジン上で選択されたテキストの複数の検索を開始することを可能にする。従って、本発明の実施形態は、より少ない時間及び労力を使用するだけで、ユーザが選択されたテキストの複数の検索を開始することを可能にする。 
【００３９】
諸図面のうちフローチャート及びブロック図は、種々の実施形態に従った、システム、方法及びコンピュータ・プログラム製品の幾つかの可能な実装のアーキテクチャ、機能性及び動作を示す。この点に関連して、フローチャート又はブロック図内の各ブロックは、指定された論理機能を実装するための１つ以上の実行可能命令から成る、モジュール、セグメント又はコード部分を表すことがある点に留意されたい。また、幾つかの代替的実装では、ブロック内に表記された機能を図面に示した順序とは異なる順序で実施することができる点にも留意されたい。例えば、特定の機能性に依存して、連続的に示した２つのブロックを実質的に並列に実施したり、これらのブロックを反対の順序で実施することができる。
【００４０】
本発明は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態、又はソフトウェア及びハードウェア要素の両方を含む実施形態の形式を取ることができる。推奨実施形態では、本発明は、ファームウェア、常駐ソフトウェア、マイクロコード等を含む、ソフトウェアで実装される。
【００４１】
また、本発明は、コンピュータ又は任意の命令実行システムに関連して又はこれらによって使用するためのプログラム・コードを提供する、コンピュータ使用可能媒体又はコンピュータ可読媒体からアクセス可能なコンピュータ・プログラム製品の形式を取ることができる。この記載の目的上、コンピュータ使用可能媒体又はコンピュータ可読媒体は、前記命令実行システム又は装置に関連して又はこれらによって使用するためのプログラムを保持し、格納し、通信し、伝送し、移送することができる、任意の有形的装置とすることができる。
【００４２】
媒体は、電子、磁気、光学、電磁気、赤外線又は半導体式のシステム（若しくは装置）又は伝送媒体とすることができる。コンピュータ可読媒体の例には、半導体又は固体メモリ、磁気テープ、取り外し可能なフレキシブル・ディスク、ランダム・アクセス・メモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、剛体磁気ディスク及び光ディスク等がある。光ディスクの例には、読み取り専用のＣＤ−ＲＯＭ、読み書き可能なＣＤ−Ｒ／Ｗ及びＤＶＤがある。
【００４３】
また、コンピュータ可読媒体に格納されたプログラム・コードがコンピュータ上で実行されるとき、その実行の結果として、当該コンピュータが他のプログラム・コードを通信リンクを介して他のコンピュータに送信するように、当該コンピュータを動作させることができる。この通信リンクは、例えば、物理的又は無線形式のものを使用することができる。
【００４４】
プログラム・コードを格納及び／又は実行するのに適したデータ処理システムは、システム・バスを通してメモリ要素に直接的又は間接的に結合された少なくとも１つのプロセッサを含む。これらのメモリ要素は、プログラム・コードの実行中に使用されるローカル・メモリ、バルク・ストレージ、プログラム・コードの実行中にバルク・ストレージからの取り出し回数を減少させるために少なくとも或るプログラム・コードの一時的記憶領域を提供するキャッシュ・メモリを含むことができる。
【００４５】
Ｉ／Ｏ装置（キーボード、ディスプレイ、ポインティング装置等を含む）は、システムに対し直接的に又は介在するＩ／Ｏコントローラを通して結合することができる。
【００４６】
また、ネットワーク・アダプタをデータ処理システムに対し結合することもできる。そのようにすると、当該データ処理システムは、介在する専用又は公衆ネットワークを通して、他のデータ処理システム、遠隔プリンタ又は記憶装置に結合されるようになる。ネットワーク・アダプタの例には、モデム、ケーブル・モデム及びイーサネット（登録商標）・カード等がある。
【００４７】
本発明に関する記述は、例示及び説明を目的として与えられたものであって、網羅的であること及び開示された形態に本発明を制限することを意図するものではない。当業者にとって、多くの修正及び変形が明らかであろう。実施形態は、本発明の原理及び実際的な応用を最もよく説明し、考えられる特定の用途に適するような種々の修正を伴う種々の実施形態に関して当業者が本発明を理解することを可能にするために、選択され説明されたものである。
【図面の簡単な説明】
【００４８】
【図１】実施形態に従った、データ処理システムのネットワークの概観を示す図である。
【図２】実施形態に従った、データ処理システムのブロック図である。
【図３】従来技術に従った、検索エンジンを具備するネットワークのブロック図である。
【図４】実施形態に従った、検索動作を示すブロック図である。
【図５】実施形態に従った、１組の結果ウェブ・サイトを開く動作を示すブロック図である。
【図６】実施形態に従った、ブラウザ・ウィンドウを開く動作のフローチャートである。
【図１】
2009093633.tif 000003
【図２】
2009093633.tif 000004
【図３】
2009093633.tif 000005
【図４】
2009093633.tif 000006
【図５】
2009093633.tif 000007
【図６】
2009093633.tif 000008