次の方法で共有


トリガおよびクエリ テンプレートの使用 (Search Server 2008)

更新日: 2008年7月

適用対象: Microsoft Search Server 2008

 

トピックの最終更新日: 2008-07-25

特定のサイトが Microsoft Search Server 2008 で直接はクロールされない場合、そのサイトをフェデレーション場所として追加して、その検索結果が検索センター サイトのユーザーの検索結果に含まれるようにすることができます。 フェデレーション場所を追加するときには、フェデレーション場所のクエリ URL に使用するクエリ テンプレートを指定する必要があります。 また、1 つ以上のクエリ制約 (トリガとも呼ばれます) を指定して、フェデーレーション場所に渡されるクエリを制限することもできます。

このトピックでは、トリガの指定方法、およびフェデレーション場所用のクエリ テンプレートの作成方法について説明します。

トリガ

トリガはクエリが渡されるタイミングを判定するクエリ制約です。 フェデレーション場所を作成するとき、クエリがその場所に渡されるタイミングを判定するトリガを指定できます。 場所定義内のトリガで指定したパターンに一致するクエリのみがフェデレーション場所に転送されます。

トリガには 2 種類あります。

  • プレフィックス

    クエリには、トリガとして指定される語句そのものにプレフィックスを付ける必要があります。 たとえば、"weather" がプレフィックス トリガとして指定されている場合、"weather New York, NY" というクエリに対しては、プレフィックスは削除され、“New York, NY" のみが転送されます。

    注意

    クエリ内のプレフィックスの後に続く部分のみが転送されます。"weather New York, NY" の例では、"New York, NY" のみがフェデレーション場所に転送されます。

  • パターン

    クエリは指定した正規表現のパターンに一致する必要があります。 正規表現の作成方法の詳細については、「.NET Framework の正規表現」(https://go.microsoft.com/fwlink/?linkid=117945&clcid=0x411) を参照してください。

クエリ テンプレート

クエリ テンプレートには、フェデレーション場所に対するパラメータ化された URL が含まれており、検索クエリはこの URL に渡されます。 パラメータ化された URL では、構造化された XML 結果 (RSS または Atom など) が返される必要があります。

Search Server 2008 では、2 種類のフェデレーション場所がサポートされます。

  • このサーバー上の検索インデックス

    フェデレーション場所の種類がこのサーバー上の検索インデックスの場合、クエリ テンプレートには searchTerms パラメータが含まれていることが必要です。次のように指定します。{searchTerms}

    また、追加のクエリ制約を含めることも必要です。たとえば、特定の作成者のコンテンツを検索する場合には、次のように指定します。Author:"{searchTerms}"

    この種類のフェデレーション場所に対するクエリ テンプレートには、検索結果の URL を含めないようにする必要があります。

  • OpenSearch

    OpenSearch 標準をサポートする任意のインターネット サイトです。

クエリ テンプレートは、「OpenSearchDescription Element (Location Definition) [Search Server 2008] (英語)」(https://go.microsoft.com/fwlink/?linkid=111090&clcid=0x411) の URL テンプレートと同じものです。 その構文は、「URL template syntax (英語)」(https://go.microsoft.com/fwlink/?linkid=100718&clcid=0x411) に準拠します。 次の例は、Live Search サービスに接続するためのパラメータ化された URL を含む簡単な場所のクエリ テンプレートを示したものです。 http://search.live.com/results.aspx?q={searchTerms}&format=rss

この例では、クエリ テンプレートに OpenSearch テンプレート パラメータ searchTerms が含まれています。 searchTerms パラメータは、フェデレーション場所に転送される検索語句のプレースホルダです。 クエリ テンプレートにその他のパラメータを指定できます。 これらのパラメータの詳細については、OpenSearch 仕様書の「OpenSearch 1.1 parameters (英語)」(https://go.microsoft.com/fwlink/?linkid=100720&clcid=0x411) を参照してください。

パラメータ名の後ろに疑問符 (?) を付けて、そのパラメータがオプションであることを示すことができます。 次の例では、searchTerms パラメータは必須ですが、startIndex パラメータは必須ではありません。http://search.live.com/results.aspx?q={searchTerms}&format=rss&first={startIndex?}

注意

URL テンプレートで指定するパラメータは、URL エンコードされている必要があります。 前の例では、アンパサンド文字 (&) は、この文字 "&" の URL エンコードされた文字列に置き換えられます。