(57)【要約】  ネットワークコンピューティング環境において検索クエリ結果をルーティングするためのシステムおよび方法。初期検索クエリが、１つまたは複数の構成可能ルールに従って、少なくとも１つのサブクエリに再編成される。サブクエリは、少なくとも１つの情報システムまたは情報ソースに送信され、サブクエリに関連付けられた任意の潜在的なヒットが、オプションで結合され、次いで閲覧のためにレンダリングされる。
2014532939.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークコンピューティング環境において検索クエリ結果(search query results)をルーティングするための、コンピューターで実装される(implemented)方法であって、
第１のコンピューティングデバイスで実行されるアプリケーションにおいて、少なくとも１つのキー用語(key term)を含む検索文字列(search string)を受信するステップと、
前記少なくとも１つのキー用語に基づいて複数のクエリを生成するステップであって、前記複数のクエリのそれぞれ１つが少なくとも１つのクエリ式(query expression)を含む、生成するステップと、
対応する少なくとも１つのクエリ式を少なくとも１つの情報ソースにアクセス可能な情報に対して評価するために、前記複数のクエリのそれぞれ１つを、前記少なくとも１つの情報ソースに送信するステップと、
複数のクエリ結果を受信するステップであって、前記複数のクエリ結果のそれぞれ１つが、対応するクエリ結果のタイプを識別する結果分類(result classification)を含む、受信するステップと、
前記複数のクエリ結果のうちの少なくとも２つを、前記複数のクエリ結果のうちの前記少なくとも２つのそれぞれの結果分類に基づいて、結合クエリ結果(combined query result)に結合するステップと、
第２のコンピューティングデバイスで実行されるインターフェイス内でレンダリングするために、少なくとも前記結合クエリ結果を、前記ネットワークコンピューティング環境における前記第２のコンピューティングデバイスに送信するステップと
を含む方法。
【請求項２】
前記複数のクエリ結果のそれぞれが、対応するクエリ結果の重要度を識別する優先度(priority)分類をさらに含む、請求項１に記載の方法。
【請求項３】
前記複数のクエリ結果のうちの前記少なくとも２つのそれぞれの優先度分類に基づいて、前記複数のクエリ結果のうちの前記少なくとも２つを、前記結合クエリ結果に結合するステップをさらに含む請求項２に記載の方法。
【請求項４】
前記複数のクエリ結果のそれぞれが、列(column)および行(row)の形式で配列された情報のコレクション(collection)を含む結果テーブルを含む、請求項３に記載の方法。
【請求項５】
前記複数のクエリ結果のうちの前記少なくとも２つの前記結果テーブル(results table)をインタリーブすることによって、前記結合クエリ結果を生成するステップをさらに含む請求項４に記載の方法。
【請求項６】
前記複数のクエリ結果のうちの前記少なくとも２つの前記結果テーブルをスタックすることによって、前記結合クエリ結果を生成するステップをさらに含む請求項４に記載の方法。
【請求項７】
処理ユニットと、
前記処理ユニットに接続されたシステムメモリであって、前記処理ユニットによって実行されるときに、ネットワークコンピューティング環境において検索クエリ結果をルーティングするようにそれぞれ構成された、マッピングモジュール、結果モジュール、およびＷｅｂパーツモジュールを、前記処理ユニットに実装させる命令を含む、システムメモリと
を含むコンピューティングデバイスであって、
前記マッピングモジュールが、
複数のクエリのそれぞれ１つが少なくとも１つのクエリ式を含む、前記複数のクエリを、少なくとも１つのキー用語に基づいて生成し、
対応する少なくとも１つのクエリ式を少なくとも１つの情報ソースにアクセス可能な情報に対して評価するために、前記複数のクエリのそれぞれ１つを、前記少なくとも１つの情報ソースに送信するように構成され、
前記結果モジュールが、
複数のクエリ結果のそれぞれ１つが、対応するクエリ結果のタイプを識別する結果分類を含む、前記複数のクエリ結果を受信するように構成され、
前記Ｗｅｂパーツモジュールが、
前記複数のクエリ結果のうちの少なくとも２つを、前記複数のクエリ結果のうちの前記少なくとも２つのそれぞれの結果分類に基づいて、結合クエリ結果に結合し、
第２のコンピューティングデバイスで実行されるインターフェイス内でレンダリングするために、少なくとも前記結合クエリ結果を、前記第２のコンピューティングデバイスに送信するように構成された、
コンピューティングデバイス。
【請求項８】
前記マッピングモジュールが、前記少なくとも１つのキー用語を含む検索文字列を受信するようにさらに構成される、請求項７に記載のコンピューティングデバイス。
【請求項９】
前記Ｗｅｂパーツモジュールが、エンドユーザーがＷｅｂページのコンテンツ、外観(appearance)、およびビヘイビアーを閲覧し(view)、変更する(modify)のを可能にする、１つまたは複数のコントロールを実装する複数のＷｅｂパーツを含む、請求項７に記載のコンピューティングデバイス。
【請求項１０】
第１のコンピューティングデバイスによって実行されるときに、
前記第１のコンピューティングデバイスで実行されるアプリケーションにおいて、少なくとも１つのキー用語を含む検索文字列を受信するステップと、
前記少なくとも１つのキー用語に基づいて複数のクエリを生成するステップであって、前記複数のクエリのそれぞれ１つが少なくとも１つのクエリ式を含む、生成するステップと、
対応する少なくとも１つのクエリ式を少なくとも１つの情報ソースにアクセス可能な情報に対して評価するために、前記複数のクエリのそれぞれ１つを、前記少なくとも１つの情報ソースに送信するステップと、
結果の順序コレクション(ordered collection)および結果の非順序コレクション(unordered collection)のうちの１つによって定義された、列および行の形式で配列された情報のコレクションを含む結果テーブルをそれぞれが含む複数のクエリ結果を受信するステップであって、前記複数のクエリ結果のそれぞれ１つが、対応するクエリ結果のタイプを識別する結果分類、および対応するクエリ結果の重要性を識別する優先度分類を含む、受信するステップと、
前記複数のクエリ結果のうちの少なくとも２つを、前記複数のクエリ結果のうちの前記少なくとも２つのそれぞれの結果分類および優先度分類に基づいて、結合クエリ結果に結合するステップであって、前記複数のクエリ結果のうちの前記少なくとも２つが、前記結合クエリ結果を形成するために、インタリーブされる、またはスタックされる、結合するステップと、
第２のコンピューティングデバイスで実行されるインターフェイス内でレンダリングするために、少なくとも前記結合クエリ結果を、前記第２のコンピューティングデバイスに送信するステップと
を含むステップを、前記第１のコンピューティングデバイスに実施させるコンピューター実行可能命令を有するコンピューター可読記憶メディア。
【発明の詳細な説明】
【技術分野】
【０００１】
本願発明の一実施例は、例えば、クエリ結果ルーティングに関する。
【背景技術】
【０００２】
[0001]Ｗｅｂパーツは、１つまたは複数のコントロールを実装する再使用可能なソフトウェアコンポーネントであり、１つまたは複数のコントロールは、エンドユーザーがブラウザーから直接、Ｗｅｂページのコンテンツ、外観、およびビヘイビアーを閲覧し、変更するのを可能にする。一般に、Ｗｅｂパーツは、それらに関連付けられたクエリを有することができ、所与のクエリの結果が、特定のＷｅｂパーツによってレンダリングされてよい。しかしながら、そのようなクエリは、通常ハードコードされており、したがって、関連付けられたＷｅｂパーツを駆動するための条件付き論理の使用を不可能にすることがある。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本願発明の一実施例は、例えば、クエリ結果ルーティングに関する。
【課題を解決するための手段】
【０００４】
[0002]一態様では、ネットワークコンピューティング環境において検索クエリ結果をルーティングするための、コンピューターで実装される方法が開示される。方法は、第１のコンピューティングデバイスで実行されるアプリケーションにおいて、少なくとも１つのキー用語を含む検索文字列を受信するステップと、少なくとも１つのキー用語に基づいて複数のクエリを生成するステップであって、複数のクエリのそれぞれ１つが少なくとも１つのクエリ式を含む、生成するステップと、対応する少なくとも１つのクエリ式を少なくとも１つの情報ソースにアクセス可能な情報に対して評価するために、複数のクエリのそれぞれ１つを、少なくとも１つの情報ソースに送信するステップと、複数のクエリ結果を受信するステップであって、複数のクエリ結果のそれぞれ１つが、対応するクエリ結果のタイプを識別する結果分類を含む、受信するステップと、複数のクエリ結果のうちの少なくとも２つを、複数のクエリ結果のうちの少なくとも２つのそれぞれの結果分類に基づいて、結合クエリ結果に結合するステップと、第２のコンピューティングデバイスで実行されるインターフェイス内でレンダリングするために、少なくとも結合クエリ結果を、ネットワークコンピューティング環境における第２のコンピューティングデバイスに送信するステップとを含む。
【０００５】
[0003]別の態様では、処理ユニットと、処理ユニットに接続されたシステムメモリとを含むコンピューティングデバイスが開示される。システムメモリは、処理ユニットによって実行されるときに、ネットワークコンピューティング環境において検索クエリ結果をルーティングするようにそれぞれ構成された、マッピングモジュール、結果モジュール、およびＷｅｂパーツモジュールを、処理ユニットに実装させる命令を含む。マッピングモジュールは、複数のクエリのそれぞれ１つが少なくとも１つのクエリ式を含む、複数のクエリを、少なくとも１つのキー用語に基づいて生成し、対応する少なくとも１つのクエリ式を少なくとも１つの情報ソースにアクセス可能な情報に対して評価するために、複数のクエリのそれぞれ１つを、少なくとも１つの情報ソースに送信するように構成される。結果モジュールは、複数のクエリ結果のそれぞれ１つが、対応するクエリ結果のタイプを識別する結果分類を含む、複数のクエリ結果を受信するように構成される。Ｗｅｂパーツモジュールは、複数のクエリ結果のうちの少なくとも２つを、複数のクエリ結果のうちの少なくとも２つのそれぞれの結果分類に基づいて、結合クエリ結果に結合し、第２のコンピューティングデバイスで実行されるインターフェイス内でレンダリングするために、少なくとも結合クエリ結果を、第２のコンピューティングデバイスに送信するように構成される。
【０００６】
[0004]さらに別の態様では、第１のコンピューティングデバイスによって実行されるときに、以下のステップを第１のコンピューティングデバイスに実施させるコンピューター実行可能命令を有するコンピューター可読記憶メディアが開示され、ステップは、第１のコンピューティングデバイスで実行されるアプリケーションにおいて、少なくとも１つのキー用語を含む検索文字列を受信するステップと、少なくとも１つのキー用語に基づいて複数のクエリを生成するステップであって、複数のクエリのそれぞれ１つが少なくとも１つのクエリ式を含む、生成するステップと、対応する少なくとも１つのクエリ式を少なくとも１つの情報ソースにアクセス可能な情報に対して評価するために、複数のクエリのそれぞれ１つを、少なくとも１つの情報ソースに送信するステップと、結果の順序コレクションおよび結果の非順序コレクションのうちの１つによって定義された、列および行の形式で配列された情報のコレクションを含む結果テーブルをそれぞれが含む複数のクエリ結果を受信するステップであって、複数のクエリ結果のそれぞれ１つが、対応するクエリ結果のタイプを識別する結果分類、および対応するクエリ結果の重要性を識別する優先度分類を含む、受信するステップと、複数のクエリ結果のうちの少なくとも２つを、複数のクエリ結果のうちの少なくとも２つのそれぞれの結果分類および優先度分類に基づいて、結合クエリ結果に結合するステップであって、複数のクエリ結果のうちの少なくとも２つが、結合クエリ結果を形成するために、インタリーブされる、またはスタックされる、結合するステップと、第２のコンピューティングデバイスで実行されるインターフェイス内でレンダリングするために、少なくとも結合クエリ結果を、第２のコンピューティングデバイスに送信するステップとを含む。
【０００７】
[0005]本概要は、詳細な説明において以下でさらに説明される概念の選択を、簡略化された形式において導入するために提供される。本概要は、特許請求される主題の範囲を限定するように使用されることは、いかなるやり方においても意図されない。むしろ、特許請求される主題は、本開示の特許請求の範囲で述べられる言語によって定義される。
【図面の簡単な説明】
【０００８】
【図１】[0006]例示的なネットワークコンピューティング環境を示す図である。
【図２】[0007]図１の例示的なサーバーデバイスを詳細に示す図である。
【図３】[0008]図１のクライアントデバイスの例示的な論理モジュールを示す図である。
【図４】[0009]検索クエリ結果をルーティングするための例示的なコンピューティングデバイスと、結合するための例示的なコンピューティングデバイスとの間の例示的な通信を示す図である。
【図５】[0010]検索クエリ結果をルーティングするための例示的な方法のフローチャートである。
【図６】[0011]検索クエリ結果をルーティングするためのパラメータを構成するための例示的な構成ウィンドウを示す図である。
【発明を実施するための形態】
【０００９】
[0012]本開示は、ネットワークコンピューティング環境において検索クエリ結果をルーティングすることを対象とする。例示的な一実施形態において、初期検索クエリが、１つまたは複数の構成可能ルールに従って、少なくとも１つのサブクエリに再編成される。サブクエリは次いで、少なくとも１つの情報システムまたは情報ソースに送信され、サブクエリに関連付けられた任意の潜在的なヒットが、オプションで結合され、次いで閲覧のためにレンダリングされる。本開示のさまざまな態様の理解は、そのように限定されないものの、以下で提供される例を論じることにより得られるであろう。
【００１０】
[0013]ここで図１を参照すると、本開示の態様が実装され得る例示的なネットワークコンピューティング環境１００が示される。ネットワークコンピューティング環境１００は、クライアントデバイス１０２と、サーバーデバイス１０４と、記憶デバイス１０６と、ネットワーク１０８とを含む。他の実施形態も可能である。たとえば、ネットワークコンピューティング環境１００は、所望に応じて、より多いまたはより少ないデバイス、ネットワーク、および／または他のコンポーネントを全体として含むことができる。
【００１１】
[0014]クライアントデバイス１０２およびサーバーデバイス１０４は、図２に関連して以下でさらに詳細に説明されるような、コンピューティングデバイスである。例示的な実施形態において、クライアントデバイス１０２は、サーバーデバイス１０４によって実装されるビジネスプロセスにアクセスし、ビジネスプロセスと対話するために構成される。例示的なビジネスプロセスは、メッセージングおよび通信プロセス、コラボレーションプロセス、データ管理プロセス、およびその他を含む。Ｗａｓｈｉｎｇｔｏｎ、ＲｅｄｍｏｎｄのＭｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎによる、ＳＨＡＲＥＰＯＩＮＴ（登録商標）コラボレーションサーバーは、コラボレーションプロセスだけでなく、ファイルの共有およびＷｅｂ発行のサポートにおいて、ビジネスプロセスを実装するビジネスサーバーの例である。他の実施形態も可能である。
【００１２】
[0015]いくつかの実施形態において、サーバーデバイス１０４は、「ファーム」構成において共に動作する、複数の相互接続されたネットワークデバイスを含む。そのようなシナリオでは、ネットワークデバイスは、「クラウド」コンピューティングプラットフォームを提供し、そこでは、１つまたは複数のアプリケーションおよびデータが、クラウドコンピューティングプラットフォームに接続された１つまたは複数のクライアントのためにホストされる。さらに他の実施形態も可能である。
【００１３】
[0016]記憶デバイス１０６は、リレーショナルデータベースまたは任意の他のタイプの永続的なデータ記憶デバイスなどの、電子データ記憶デバイスである。記憶デバイス１０６は、そこに記憶されたデータをサーバーデバイス１０４がクエリする、変更する、および管理することができるように、あらかじめ定義された形式においてデータを記憶する。例示的なデータは、ディレクトリサービス、認証サービス、管理（ａｄｍｉｎｉｓｔｒａｔｉｏｎ）サービス、および、Ｍｉｃｒｏｓｏｆｔ  ＣｏｒｐｏｒａｔｉｏｎによるＡＣＴＩＶＥ  ＤＩＲＥＣＴＯＲＹ（登録商標）ディレクトリサービスなどによって管理される他のサービスに関連した情報を含む。他の実施形態も可能である。
【００１４】
[0017]ネットワーク１０８は、１つまたは複数のデバイスの間のデータ転送のための双方向データ通信パスである。示される例において、ネットワーク１０８は、クライアントデバイス１０２とサーバーデバイス１０４との間に、データ転送のための通信パスを確立する。ネットワーク１０８は、例示的なネットワークコンピューティング環境１００の要素間でデータが転送され得るような、いくつかのワイヤレスまたは配線によるＷＡＮ、ＬＡＮ、インターネット、イントラネット、または他のパケットベースの通信ネットワークのうちのいずれかであってよい。
【００１５】
[0018]ここで図２を参照すると、図１のサーバーデバイス１０４が詳細に示される。上で言及したように、サーバーデバイス１０４は、コンピューティングデバイスである。例示的なコンピューティングデバイスは、サーバーコンピューター、デスクトップコンピューター、ラップトップコンピューター、パーソナルデータアシスタント、スマートフォン、ゲーミングコンソール、およびその他を含む。
【００１６】
[0019]サーバーデバイス１０４は、少なくとも１つの処理ユニット２０２と、システムメモリ２０４とを含む。システムメモリ２０４は、サーバーデバイス１０４または別のコンピューティングデバイスの動作をコントロールするためのオペレーティングシステム２０６を記憶する。１つの例示的なオペレーティングシステムは、Ｍｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎによる、ＷＩＮＤＯＷＳ（登録商標）オペレーティングシステムである。他の実施形態も可能である。
【００１７】
[0020]システムメモリ２０４は、１つまたは複数のソフトウェアアプリケーション２０８を含み、プログラムデータを含むことができる。ソフトウェアアプリケーション２０８は、サーバープログラム、電子メールプログラム、カレンダープログラム、インターネットブラウジングプログラム、スプレッドシートプログラム、情報をトラックしてレポートするためのプログラム、ワードプロセッシングプログラム、および多くの他のプログラムなどの、多くの異なるタイプの単機能および複数機能のプログラムを含むことができる。１つの例示的なプログラムは、Ｍｉｃｒｏｓｏｆｔ  ＣｏｒｐｏｒａｔｉｏｎによるビジネスアプリケーションのＯｆｆｉｃｅスイートである。別の例示的なプログラムは、やはりＷａｓｈｉｎｇｔｏｎ、ＲｅｄｍｏｎｄのＭｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎによる、ＳＨＡＲＥＰＯＩＮＴ（登録商標）コラボレーションサーバーを含む。さらに他のプログラムも可能である。
【００１８】
[0021]システムメモリ２０４は、コンピューター可読メディアである。コンピューター可読メディアの例は、コンピューター可読記憶メディアおよび通信メディアを含む。コンピューター可読記憶メディアは、通信メディアと区別される物理的なメディアである。
【００１９】
[0022]語句「コンピューター可読」は一般に、コンピューターまたはコンピューティングデバイスによって、解釈され、作用され得る情報を指す。語句「記憶メディア」、すなわち、同じ意味の「記憶メディウム」は、電子データビットがそこに書き込まれ、記憶される、さまざまなタイプの物理的または有形のマテリアルを指す。過渡信号に情報を記憶することは可能ではないので、本開示のコンテキスト内で定義されるときの「コンピューター可読記憶メディア」は、過渡信号を除く。
【００２０】
[0023]コンピューター可読記憶メディアは、コンピューター可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を記憶するための任意の方法または技術において実装される、物理的な、揮発性および不揮発性の、リムーバブルおよび非リムーバブルのメディアを含む。コンピューター記憶メディアはまた、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、もしくは他のメモリ技術、ＣＤ−ＲＯＭ、ＤＶＤ、もしくは他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置、もしくは他の磁気記憶デバイス、または所望の情報を記憶するために使用されてよく、サーバーデバイス１０４によってアクセスされてよい任意の他のメディアを含むが、これらに限定されない。任意のそのようなコンピューター記憶メディアは、サーバーデバイス１０４の一部であっても、サーバーデバイス１０４の外部にあってもよい。そのような記憶装置は、リムーバブル記憶装置２１０および非リムーバブル記憶装置２１２によって図２に示される。
【００２１】
[0024]通信メディアは、通常、コンピューター可読命令、データ構造、プログラムモジュール、または他のデータによって、搬送波または他のトランスポートメカニズムなどの過渡変調データ信号において具体化され、任意の情報配信メディアを含む。用語「変調データ信号」は、信号において情報をエンコードするようなやり方で設定または変更された、その特性のうちの１つまたは複数を有する信号を指す。例として、通信メディアは、ワイヤードネットワークまたは直接ワイヤード接続などのワイヤードメディア、ならびにアコースティック、ＲＦ、赤外線および他のワイヤレスメディアなどのワイヤレスメディアを含む。
【００２２】
[0025]サーバーデバイス１０４はまた、任意の数および任意のタイプの入力デバイス２１４および出力デバイス２１６を含む。例示的な入力デバイス２１４は、キーボード、マウス、ペン、音声入力デバイス、タッチ入力デバイス、モーション入力デバイス、およびその他を含む。たとえば、入力デバイス２１４は、ユーザーにより行われたモーションおよび／またはジェスチャをキャプチャし、記録するように働くカメラであってよい。入力デバイス２１４は、マイクロフォンなどでユーザーによって話された単語をキャプチャする、および／または、キーボードおよび／もしくはマウスなどによるユーザーからの他の入力をキャプチャするようにさらに働くことができる。本開示の実施形態に一貫して、入力デバイス２１４は、ユーザーの動きを検出することが可能な任意のモーション検出デバイスを含むことができる。たとえば、入力デバイス２１４は、Ｍｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎによる、ＫＩＮＥＣＴ（登録商標）モーションキャプチャデバイスを含むことができる。他の実施形態も可能である。
【００２３】
[0026]例示的な出力デバイス２１６は、ディスプレイ、スピーカー、プリンター、およびその他を含む。サーバーデバイス１０４はまた、分散コンピューティングシステム環境において、ネットワーク（たとえば、図１のネットワーク１０８）上で他のコンピューティングデバイスとの通信を可能にするように構成された通信接続２１８を含む。
【００２４】
[0027]図１のクライアントデバイス１０２もまた、上で説明されたサーバーデバイス１０４と同様のやり方で構成されたコンピューティングデバイスである。ここで図３を参照すると、クライアントデバイス１０２はまた、サーバーデバイス１０４への１つまたは複数の異なるタイプのインターフェイスを含むように構成される。示される例では、クライアントデバイス１０２は、ローカルクライアント３０２と、Ｗｅｂアクセスクライアント３０４と、モバイルアクセスクライアント３０６と、音声アクセスクライアント３０８とを含む。
【００２５】
[0028]ローカルクライアント３０２は、サーバーデバイス１０４へのインターフェイスとして働く専用のメッセージングおよびコラボレーションクライアントとして構成され、クライアントデバイス１０２で実行されるアプリケーションのスイートの一部である。一実施形態において、ローカルクライアント３０２は、Ｍｉｃｒｏｓｏｆｔ  ＣｏｒｐｏｒａｔｉｏｎによるビジネスアプリケーションのＯｆｆｉｃｅスイートの一部である電子メールアプリケーション、ＯＵＴＬＯＯＫ（登録商標）メッセージングおよびコラボレーションクライアントを含む。ユーザーは、ＯＵＴＬＯＯＫ（登録商標）メッセージングおよびコラボレーションクライアントによって、電子メールを作成し、電子メールと対話し、電子メールを送受信することができる。ローカルクライアント３０２の他の実施形態も可能である。たとえば、一実施形態において、ローカルクライアント３０２は、Ｍｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎによる、Ｏｆｆｉｃｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｓｅｒｖｅｒと使用されるインスタントメッセージングクライアント、Ｏｆｆｉｃｅ  Ｃｏｍｍｕｎｉｃａｔｏｒクライアントを含む。さらに他の実施形態も可能である。
【００２６】
[0029]Ｗｅｂアクセスクライアント３０４は、インターネットなどのネットワーク接続を介して、サーバーデバイス１０４にリモートでアクセスするように構成される。一実施形態において、Ｗｅｂアクセスクライアント３０４は、Ｅｘｃｈａｎｇｅ  ＳｅｒｖｅｒのＯｕｔｌｏｏｋ  Ｗｅｂ  Ａｃｃｅｓｓ（ＯＷＡ）Ｗｅｂメールサービスである。例示的な実施形態において、クライアントデバイス１０２は、Ｗｅｂブラウザーを使用して、Ｏｕｔｌｏｏｋ  Ｗｅｂ  Ａｃｃｅｓｓを介してＥｘｃｈａｎｇｅ  Ｓｅｒｖｅｒに接続する。これは、ユーザーが電子メールを作成し、電子メールと対話し、電子メールを送受信することができるＯＵＴＬＯＯＫ（登録商標）メッセージングおよびコラボレーションクライアントにおけるインターフェイスと同様のユーザーインターフェイスを立ち上げる。Ｗｅｂアクセスクライアント３０４の他の実施形態も可能である。たとえば、Ｗｅｂアクセスクライアント３０４は、ＳＨＡＲＥＰＯＩＮＴ（登録商標）コラボレーションサーバーに接続して、対応するコラボレーション、ファイルの共有、およびＷｅｂ発行のサービスにアクセスするように構成されてもよい。さらに他の実施形態も可能である。
【００２７】
[0030]モバイルアクセスクライアント３０６は、サーバーデバイス１０４への別のタイプのクライアントインターフェイスである。一実施形態において、モバイルアクセスクライアント３０６は、ＡＣＴＩＶＥＳＹＮＣ（登録商標）同期技術によるＭｏｂｉｌｅ  Ａｃｃｅｓｓ、または、ＷＩＮＤＯＷＳ  ＶＩＳＴＡ（登録商標）オペレーティングシステムもしくはＷｉｎｄｏｗｓ７オペレーティングシステム用のＷｉｎｄｏｗｓ  Ｍｏｂｉｌｅ  Ｄｅｖｉｃｅ  Ｃｅｎｔｅｒを含み、これらはすべて、Ｍｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎによる。例示的なモバイルデバイスは、携帯電話、スマートフォン、携帯情報端末、およびその他を含む。モバイルアクセスクライアント３０６の他の実施形態も可能である。
【００２８】
[0031]音声アクセスクライアント３０８は、サーバーデバイス１０４へのさらに別のタイプのクライアントインターフェイスである。いくつかの実施形態において、音声アクセスクライアント３０８は、Ｅｘｃｈａｎｇｅ  ＳｅｒｖｅｒにおいてサポートされるＥｘｃｈａｎｇｅ  Ｕｎｉｆｉｅｄ  Ｍｅｓｓａｇｉｎｇを含む。Ｕｎｉｆｉｅｄ  Ｍｅｓｓａｇｉｎｇにより、ユーザーは、電子メールおよびボイスメール用の１つの受信トレイを有する。ボイスメールは、ＯＵＴＬＯＯＫ（登録商標）メッセージングおよびコラボレーションクライアント受信トレイに直接配信される。ボイスメールを収容するメッセージはまた、添付ファイルを含むことができる。音声アクセスクライアント３０８の他の実施形態も可能である。
【００２９】
[0032]ここで図４を参照すると、例示的なブロック図４００が、本開示に従って、検索クエリ結果をルーティングするためのコンピューティングデバイスと、結合するためのコンピューティングデバイスとの間の例示的な通信を示す。
【００３０】
[0033]ブロック図４００は、クライアントデバイス４０２と、アプリケーションサーバーデバイス４０４と、Ｗｅｂ検索デバイス４０６と、記憶デバイス４０８とを含む。他の実施形態も可能である。たとえば、ブロック図４００は、所望に応じて、より多いまたはより少ないデバイス、および／または他のコンポーネントを全体として含むことができる。
【００３１】
[0034]クライアントデバイス４０２は、上で説明されたクライアントデバイス１０２と同様であり、アプリケーションサーバーデバイス４０４で実行されるアプリケーション４１２によって実装されるビジネスプロセスにアクセスし、ビジネスプロセスと対話するために構成されたインターフェイス４１０を含む。アプリケーションサーバーデバイス４０４は、上で説明されたサーバーデバイス１０４と同様である。
【００３２】
[0035]インターフェイス４１０は、クエリモジュール４１４と、結果表示モジュール４１６とを含み、アプリケーション４１２は、マッピングモジュール４１８と、ローカルインデックス４２０と、構成モジュール４２２と、Ｗｅｂパーツモジュール４２４と、結果返答モジュール４２６とを含む。インターフェイス４１０およびアプリケーション４１２のそれぞれの例示的なモジュールの機能は、以下でさらに詳細に説明される。
【００３３】
[0036]Ｗｅｂ検索デバイス４０６は、コンピューティングデバイスであり、Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ上の情報を検索する、クロールする、および／またはインデックスするように概して構成された検索アプリケーション４２８を含む。そのような検索アプリケーションの例は、Ｍｉｃｒｏｓｏｆｔ  ＣｏｒｐｏｒａｔｉｏｎによるＢＩＮＧ（登録商標）Ｗｅｂ検索エンジンを含む。記憶デバイス４０８もまた、コンピューティングデバイスであり、電子データのコレクションを記憶する、コレクションにアクセスする、および／またはコレクションを変更するように概して構成されたデータベースアプリケーション４３０を含む。そのようなデータベースアプリケーションの例は、Ｍｉｃｒｏｓｏｆｔ  ＣｏｒｐｏｒａｔｉｏｎによるＡＣＴＩＶＥ  ＤＩＲＥＣＴＯＲＹ（登録商標）サービスを含む。検索アプリケーション４２８およびデータベースアプリケーション４３０の他の実施形態も可能である。
【００３４】
[0037]一例示的な通信シーケンスにおいて、インターフェイス４１０のクエリモジュール４１４は、ユーザーから例示的な文字列Ｓ＝「スキー休暇」を受信し、文字列Ｓをアプリケーション４１２のマッピングモジュール４１８に送信する。一実施形態において、ユーザーは、文字列Ｓを（たとえば、テキストフィールド内で）クエリモジュール４１４に入力し、次いでクエリモジュール４１４内の選択可能なコントロール（たとえば、ボタン）を作動させることによって、文字列Ｓに対する検索クエリを実行する。他の実施形態も可能である。
【００３５】
[0038]マッピングモジュール４１８は、クエリモジュール４１４から文字列Ｓを受信し、文字列Ｓを複数の検索クエリＴ１〜ＴＭに再編成し（ここで、Ｍは、任意の整数値である）、複数の検索クエリＴ１〜ＴＭのそれぞれを、少なくとも１つの情報ソースに送信する。たとえば、検索クエリＴ１＝「スキー用具」が、マッピングモジュール４１８によって生成され、次いで検索アプリケーション４２８に送信されてよく、検索クエリＴ２＝「スキーリゾートレビュー」が形成され、次いで検索アプリケーション４２８およびデータベースアプリケーション４３０に転送されてよく、検索クエリＴＭ＝「スキー旅行プロモーション」が構築され、次いでアプリケーション４１２に関連付けられたスキーマに従って構造化されたデータを収容するローカルインデックス４２０に宛てられてもよい。概して、複数の検索クエリＴ１〜ＴＭは、ユーザー（たとえば、管理者）によって構成モジュール４２２を介してあらかじめ定義された、少なくとも１つのマッピングルールに従って形成され、以下で図５に関連してさらに詳細に論じられる。
【００３６】
[0039]アプリケーション４１２の結果返答モジュール４２６は、検索アプリケーション４２８、データベースアプリケーション４３０、および／またはローカルインデックス４２０から、前もってそれらに送信されている複数の検索クエリＴ１〜ＴＭを考慮した、複数のクエリ結果Ｕ１〜ＵＮを受信する（ここで、Ｎは任意の整数値である）。
【００３７】
[0040]現在の例で、クエリ結果Ｕ１およびＵ２は、これらのそれぞれの結果が例示的な検索クエリＴ１の語句「スキー用具」に関連付けられた少なくとも１つの潜在的な「ヒット」を含むことができるという点において、クエリ結果Ｕ３、Ｕ４、およびＵＮに比べ、互いにより密接に関連していてよい。たとえば、クエリ結果Ｕ１は、「用具」タイプのうちの「スキージャケット」の結果テーブルを含むことができ、クエリ結果Ｕ２は、やはり「用具」タイプのうちの「スキーゴーグル」の結果テーブルを含むことができる。一方、クエリ結果Ｕ３およびＵＮは、「レビュー」タイプのうちの「スキーリゾート」の結果テーブルを含むことができ、クエリ結果Ｕ４は、「プロモーション」タイプのうちの「マーケティング情報」の結果テーブルを含むことができる。他の実施形態も可能である。
【００３８】
[0041]アプリケーション４１２のＷｅｂパーツモジュール４２４は、結果返答モジュール４２６内の複数のクエリ結果Ｕ１〜ＵＮにアクセスし、クエリ結果上で全体的に動作する。詳細には、Ｗｅｂパーツモジュール４２４は、複数のＷｅｂパーツＷ１〜ＷＯを含み、ここで、Ｏは、任意の整数値である。Ｗｅｂパーツは、１つまたは複数のコントロールを実装する再使用可能なソフトウェアコンポーネントであり、１つまたは複数のコントロールは、エンドユーザーがブラウザーから直接、Ｗｅｂページのコンテンツ、外観、およびビヘイビアーを閲覧し、変更するのを可能にする。
【００３９】
[0042]例示的な実施形態において、複数のＷｅｂパーツＷ１〜ＷＯのそれぞれは、結果返答モジュール４２６内の複数のクエリ結果Ｕ１〜ＵＮのそれぞれにアクセスし、それぞれを評価する。与えられたＷｅｂパーツが、それぞれの複数のクエリ結果Ｕ１〜ＵＮの各々に関連付けられた結果の少なくとも１つの固有の「タイプ」を表示するように適合して構成されるとき、その特定のＷｅｂパーツは、インターフェイス４１０の結果表示モジュール４１６内の複数の結果部Ｒ１〜ＲＰ（ここで、Ｐは、任意の整数値である）のうちの少なくとも１つ内で、関連付けられた結果をレンダリングする。
【００４０】
[0043]たとえば、ＷｅｂパーツＷ１が「プロモーション」タイプのクエリ結果をレンダリングするように構成されると仮定すると、このＷｅｂパーツが結果返答モジュール４２６内の複数のクエリ結果Ｕ１〜ＵＮにアクセスし、それらを評価するとき、クエリ結果Ｕ４がＷｅｂパーツＷ１にピックアップされて、結果表示モジュール４１６内の複数の結果部Ｒ１〜ＲＰのうちの少なくとも１つ内でレンダリングされる。同様に、それぞれのＷｅｂパーツＷ２〜ＷＯが結果返答モジュール４２６の複数のクエリ結果Ｕ１〜ＵＮのそれぞれにアクセスし、それぞれを評価するとき、複数のクエリ結果Ｕ１〜ＵＮのうちの１つまたは複数がピックアップされて、複数の結果部Ｒ１〜ＲＰのうちの少なくとも１つ内でレンダリングされる。
【００４１】
[0044]たとえば、ＷｅｂパーツＷ２が「レビュー」タイプの結果をレンダリングするように構成されると仮定すると、このＷｅｂパーツが結果返答モジュール４２６の複数の結果Ｕ１〜ＵＮにアクセスし、それらを評価するとき、クエリ結果Ｕ３およびＵＮがピックアップされて、複数の結果部Ｒ１〜ＲＰのうちの少なくとも１つ内でレンダリングされる。この例で、ＷｅｂパーツＷ２は、構成モジュール４２２を介してあらかじめ定義された少なくとも１つの結合ルールに従って、クエリ結果Ｕ３およびＵＮを連結する、または別のやり方で結合することができ、以下で図５および図６に関連してさらに詳細に論じられる。
【００４２】
[0045]ここで図５を参照すると、検索クエリ結果をルーティングし、結合するための例示的な方法５００が示される。例示的な実施形態において、方法５００は、図４に関連して上で説明されたアプリケーションサーバーデバイス４０４で実行されるアプリケーション４１２によって実装される。他の実施形態も可能である。たとえば、アプリケーション４１２の１つまたは複数のモジュールは、「クラウド」コンピューティング実装形態において、ネットワークコンピューティング環境における１つまたは複数の異なるコンピューティングデバイスに、全体的にまたは部分的に設置されてよい。
【００４３】
[0046]方法５００は、第１のモジュール５０２で始まる。第１のモジュール５０２は、少なくとも１つの情報ソース（たとえば、ローカルインデックス４２０、検索アプリケーション４２８、データベースアプリケーション４３０など）にアクセス可能なコンテンツと比較するための、少なくとも１つのキー用語を含む検索文字列を受信するように構成される。例示的な実施形態において、「キー用語」は、ユーザーが入力したクエリ用語、Ｗｅｂパーツが構成したクエリ用語、およびサイトナビゲーションコンテキストまたはユーザーコンテキストのうちの、いずれか１つであってよい。このようにして、「キー用語」は、本開示の原理に従って、再呼び出しを決定する、および／またはソートする／ランク付けするとなると考慮に入れられる、任意のタイプの入力（すなわち、ユーザーにより入力された、および／またはＷｅｂパーツを構成することにより入力された、および／またはＷｅｂパーツのコンテキストにより入力された）であってよい。他の実施形態も可能である。
【００４４】
[0047]動作フローは次いで、第２のモジュール５０４に進む。第２のモジュール５０４は、１つまたは複数のクエリマッピングルールに従って、第１のモジュール５０２によって受信された検索文字列を、少なくとも１つの検索クエリ（たとえば、「著者：Ｊｏｈｎ  Ｄｏｅ」および「ドキュメント：．ｐｐｔ」にマップするように構成される。一実施形態において、特定のクエリマッピングルールは、少なくとも１つの「タイプ」を、検索クエリの１つまたは複数の式に追加的に割り当てる。たとえば、検索クエリ式「Ｊｏｈｎ  Ｄｏｅ」は、「ユーザー」タイプおよび「著者」タイプとして割り当てられてよく、検索クエリ式「．ｐｐｔ」は、「ドキュメント」タイプとして割り当てられてよい。他の実施形態も可能である。
【００４５】
[0048]動作フローは次いで、第３のモジュール５０６に進む。第３のモジュール５０６は、第２のモジュール５０４によって、または第２のモジュール５０４において生成された検索クエリを、少なくとも１つの情報ソースに送信するように構成される。概して、情報ソースは、ネットワークコンピューティング環境（たとえば、環境１００）内のネットワーク（たとえば、ネットワーク１０８）上でアクセス可能である。他の実施形態も可能である。
【００４６】
[0049]動作フローは次いで、第４のモジュール５０８に進む。第４のモジュール５０８は、第３のモジュール５０６によって送信された少なくとも１つの検索クエリを考慮した、複数のクエリ結果を受信するように構成される。一実施形態において、複数の結果のそれぞれは、一組の結果テーブルである結果テーブルコレクションとして総称的にフォーマットされる。概して、結果テーブルは、たとえば、あらかじめ定義されたランク付けスキーム（たとえば、優先度、重要度、確実度など）に従って列挙された結果などの順序配列において、または非順序配列（たとえば、生データ）において、行／列の形式で配列された結果または情報のコレクションからなってよい。結果テーブルは、それに関連付けられた少なくとも１つの「タイプ」を追加的に含むことができる。たとえば、「．ｐｐｔ」結果のコレクションを含む結果テーブルは、「ドキュメント」タイプとして割り当てられてよく、個人の名前のコレクションを含む結果テーブルは、「ユーザー」タイプおよび／または「著者」タイプとして割り当てられてよい。他の実施形態も可能である。
【００４７】
[0050]動作フローは次いで、第５のモジュール５１０に進む。第５のモジュール５１０は、第４のモジュール５０８によって受信された複数のクエリ結果のうちの２つ以上を結合するように、（図５において点線で示される）オプションで構成される。一実施形態において、クエリ結果を結合するための例示的な方法は、インタリーブすること、スタックすること、およびその他を含む。概して、クエリ結果を結合するためのルールは、図４の構成モジュール４２２を介して定義され、以下で図６に関連してさらに詳細に説明される。他の実施形態も可能である。
【００４８】
[0051]動作フローは次いで、第６のモジュール５１２に進む。第６のモジュール５１２は、図４のクライアントデバイス４０２のインターフェイス４１０の結果表示モジュール４１６内の複数の結果部Ｒ１〜ＲＰのうちの少なくとも１つ内で、複数のクエリ結果のうちの１つまたは複数をレンダリングするように構成される。
【００４９】
[0052]上で述べられたような、クエリマッピングルール、およびクライアントインターフェイス内でのクエリ結果のレンダリングを実装するために使用され得る例示的な論理は、米国特許出願第１３／２８７，９９９号（代理人整理番号第１４９１７．１９５２ＵＳ０１／３３４１０１．０１）で説明されている。他の実施形態も可能である。
【００５０】
[0053]ここで図６を参照すると、本開示に従って、検索クエリ結果をルーティングし、結合するための、Ｗｅｂパーツおよび検索結果を構成するための例示的な構成ウィンドウ６００が示される。例示的な実施形態において、構成ウィンドウ６００は、Ｗｅｂパーツ構成部６０２と、検索結果構成部６０４とを含む。概して、構成ウィンドウ６００は、図４のアプリケーション４１２の構成モジュール４２２を介して、実装される、および／またはアクセスされる。他の実施形態も可能である。
【００５１】
[0054]Ｗｅｂパーツ構成部６０２は、Ｗｅｂパーツ選択項目６０６と、結果クラス選択項目６０８とを含む。Ｗｅｂパーツ選択項目６０６は、少なくとも１つのクエリ結果クラスを、Ｗｅｂパーツがレンダリングするために構成されることになるクエリ結果の少なくとも１つの「タイプ」を示す特定のＷｅｂパーツに、少なくとも割り当てる目的のために、ユーザーが特定のＷｅｂパーツ（たとえば、ＷｅｂパーツＷ１）を選択するのを可能にする。特定のＷｅｂパーツがレンダリングするために構成されることになるクエリ結果の「タイプ」（たとえば、「プロモーション」）は、結果クラス選択項目６０８を介して割り当てられる。例示的な実施形態において、複数の他のＷｅｂパーツおよび複数の他の結果クラス（図６の文字「．．．．」によって識別される）は、Ｗｅｂパーツ選択項目６０６および結果クラス選択項目６０８のユーザー操作によって、それぞれアクセス可能である。
【００５２】
[0055]検索結果構成部６０４は、検索ソース選択項目６１０と、ランク付けモデル選択項目６１２とを含む。検索ソース選択項目６１０は、特定のＷｅｂパーツ（たとえば、ＷｅｂパーツＷ１）がそこからクエリ結果を潜在的に評価するのを予期できる少なくとも情報ソース（たとえば、検索アプリケーション４２８）を、ユーザーが識別するのを可能にする。ランク付けモデル選択項目６１２は、たとえば、インタリーブすること、スタックすること、およびその他などの、クエリ結果を結合するための１つもしくは複数のルールまたは方法を、ユーザーが定義するのを可能にする。例示的な実施形態において、複数の他の検索ソースおよび複数の他のランク付けモデル（図６の文字「．．．．」によって識別される）は、検索ソース選択項目６１０およびランク付けモデル選択項目６１２のユーザー操作によって、それぞれアクセス可能である。
【００５３】
[0056]例示的なルールは、対応するテーブルが、たとえば、「『ユーザー』タイプと『著者』タイプとを有する結果テーブルを結合する」などの同様のタイプを有する、または、たとえば、「『ドキュメント』タイプと『著者』タイプとを有する結果テーブルを結合する」などの相違するタイプを有するときの、結果テーブルを結合する定義を含む。加えて、たとえば、結果テーブルは、好ましくは、優先度係数または優先度分類に従って結果テーブルを結合するなどの、あらかじめ定義されたランク付けスキームまたはモデルに従って結合されてよい。優先度係数の例は、第１のマッピングルールに続いて時間内に定義された第２のマッピングルールに従って返答された結果と比較して、第１のマッピングルールに従って返答された結果を、結果テーブルの好ましい位置に提供することを含む。さらに他の実施形態も可能である。
【００５４】
[0057]本明細書で説明された例示的な実施形態は、ネットワークコンピューティングシステム環境におけるコンピューティングデバイスにおいて、論理演算として実装されてよい。論理演算は、（ｉ）コンピューティングデバイス上で実行するコンピューターで実装される命令のシーケンス、ステップ、またはプログラムモジュールとして、および（ｉｉ）コンピューティングデバイス内で実行する相互接続された論理モジュールまたはハードウェアモジュールとして、実装されてよい。
【００５５】
[0058]たとえば、本開示の実施形態は、図２に示されたコンポーネントの各々または多くが単一の集積回路上に集積され得る、システムオンチップ（ＳＯＣ）を介して実践されてもよい。そのようなＳＯＣデバイスは、１つまたは複数の処理ユニット、グラフィックユニット、通信ユニット、システム仮想化ユニット、およびアプリケーション機能を含むことができ、それらのすべてが単一の集積回路としてチップ基板上に集積される。
【００５６】
[0059]加えて、論理演算は、本開示の範囲から逸脱せずに、ソフトウェア、ファームウェア、アナログ／デジタル回路、および／または任意のそれらの組み合わせにおけるアルゴリズムとして実装されてよい。ソフトウェア、ファームウェア、または同様のコンピューター命令のシーケンスは、エンコードされ、コンピューター可読記憶メディア上に記憶されてもよいし、コンピューティングデバイス間での伝送のために搬送波信号内でやはりエンコードされてもよい。
【００５７】
[0060]本主題が、構造的特徴および／または方法論的行為に固有の言語で説明されてきたが、添付の特許請求の範囲において定義される本主題は、必ずしも上で説明された固有の特徴または行為に限定されないことが理解されるべきである。むしろ、上で説明された固有の特徴および行為は、特許請求の範囲を実装する例示的な形態として開示される。
【図１】
2014532939.tif 000003
【図２】
2014532939.tif 000004
【図３】
2014532939.tif 000005
【図４】
2014532939.tif 000006
【図５】
2014532939.tif 000007
【図６】
2014532939.tif 000008
【国際調査報告】
2014532939.tif 000009
2014532939.tif 000010