検索範囲を作成および表示する (FAST Search Server 2010 for SharePoint)

 

適用先: FAST Search Server 2010

トピックの最終更新日: 2016-11-29

FAST Search Server 2010 for SharePoint では、検索範囲は、FAST クエリ言語 (FQL) 構文で指定される、定義済みのプロパティのフィルター式です。SharePoint グラフィカル ユーザー インターフェイスを使用して検索範囲を作成すると、その範囲に対して作成されるルールに基づいて FAST 範囲フィルターが自動的に生成されます。範囲ルールのユーザー インターフェイスで使用できるルールより、さらに複雑なルールを範囲に指定する必要がある場合は、Windows PowerShell を使用して範囲を作成または編集できます。範囲フィルターは、FQL クエリ構文に従う文字列として指定します。範囲フィルターは、任意の FQL 構文で構成できます。

注意

FAST Search Server 2010 for SharePoint では、ユーザーが "AND" のみを使用して 2 つ以上の範囲を検索できます。"OR""AND NOT" による範囲の結合はサポートされていません。このことは、ユーザーがキーワード構文を使用して検索を行うか、[高度な検索] の [範囲のみ] オプションを使用するかには関係ありません。検索では、選択されたすべての範囲で見つかった結果がそのまま返されます。

範囲によって返されるアイテムの数は、[範囲の表示] リストには表示されません。アイテム数を調べるには、検索センター サイトでその範囲を使用してクエリを実行し、結果リストで検索結果の件数を確認します。

検索範囲はクエリ時の機能であり、インデックスやインデックス スキーマには影響しません。

注意

範囲の一致には、ステミングと類義語は含まれません。

このセクションの内容

  • グラフィカル ユーザー インターフェイスを使用して検索範囲を作成する

  • Windows PowerShell を使用して検索範囲を Search Service アプリケーション レベルで作成する

  • Windows PowerShell を使用してサイト レベルの検索範囲を作成する

  • フルテキスト インデックスを検索するサイト レベル検索範囲を Windows PowerShell を使用して作成する

  • Windows PowerShell を使用して Search Service アプリケーション レベルで検索範囲の FAST クエリ言語 (FQL) フィルターを表示する

  • Windows PowerShell を使用してサイト レベルで検索範囲の FAST クエリ言語 (FQL) フィルターを表示する

  • 検索センター サイトで検索範囲を使用できるようにする

グラフィカル ユーザー インターフェイスを使用して検索範囲を作成する

検索範囲は、Search Service アプリケーション レベル (ファーム レベル) とサイト管理レベルの両方で設定できます。ここでは、グラフィカル ユーザー インターフェイスを使用して検索範囲を作成し、範囲ルールを Search Service アプリケーション レベルで FAST Query SSA に追加する方法を説明します。

注意

ユーザー インターフェイスを使用して検索範囲を作成してから Windows PowerShell を使用して自動生成フィルターを変更した場合、変更内容はユーザー インターフェイスに表示される範囲ルールに反映されません。

グラフィカル ユーザー インターフェイスを使用して Search Service アプリケーション レベルで検索範囲を作成するには

  1. この手順を実行するユーザー アカウントが FAST Query Search Service アプリケーション (FAST Query SSA) のサービス アプリケーション管理者であることを確認します。

  2. サーバーの全体管理で、[アプリケーション構成の管理] セクションの [サービス アプリケーションの管理] をクリックします。

  3. [サービス アプリケーションの管理] ページで、サービス アプリケーションの一覧で [FAST Query SSA] (FAST Query SSA の名前) をクリックします。

  4. [検索管理] ページで、サイド リンク バーの [クエリと結果] で [範囲] をクリックします。

  5. 新しい範囲を作成するには、[新しい範囲] をクリックします。

  6. [タイトルと説明] セクションで、検索範囲のタイトルと説明を入力します。

  7. [対象の結果ページ] セクションで、以下のどちらかのオプションを選択します。

    • [既定の検索結果ページを使用する] このオプションは、この検索範囲で得られた検索結果を標準の検索結果ページ (Searchresults.aspx) に表示するときに選択します。

    • [この範囲の検索対象として別のページを指定する] このオプションは、この検索範囲で得られた検索結果を独自の Web ページに表示するときに選択します。このオプションを選択した場合は [対象の結果ページ] ボックルに独自の検索結果ページの URL を入力します。

  8. [OK] をクリックして検索範囲を作成し、[範囲の表示] ページに戻ります。

範囲ルールを範囲に追加するには

  1. [範囲の表示] ページで、編集する範囲の名前を範囲の一覧でポイントし、表示された矢印をクリックし、[プロパティとルールの編集] をクリックします。

  2. 新しいルールを追加する場合は、[プロパティとルールの編集] ページの [ルール] セクションで [新しいルール] をクリックします。

  3. [範囲ルールの種類] セクションで、以下のいずれかのオプションを選択します。

    • [Web アドレス] このオプションは、検索インデックス内の特定のリソースからコンテンツを範囲に含める、またはコンテンツを範囲から除外する場合に選択します。リソースの指定には、URL (Web サイト、ファイル共有、Microsoft Exchange Server パブリック フォルダーなど)、ホスト名、ドメイン名、またはサブドメイン名を使用できます。

    • [プロパティ クエリ] このオプションは、管理プロパティが特定の値に設定されたコンテンツ (たとえば Author="John Doe" のコンテンツ) を範囲に含める、または範囲から除外する場合に選択します。

      目的のプロパティが [プロパティ クエリ] ボックスの一覧にない場合は、「FAST Search Server 2010 for SharePoint プロパティを検索範囲で使用可能にする」を参照してください。

      特定のコンテンツ ソースを使用してクロールされたコンテンツを検索範囲に含める、または検索範囲から除外する場合は、[プロパティ クエリ] をクリックし、一覧で [コンテンツ ソース] をクリックします。コンテンツ ソース プロパティの値 (たとえば「ローカルの SharePoint サイト」) を入力します。

    • [すべてのコンテンツ] このオプションは、ルールで検索範囲を制限しない場合に選択します (インデックスのすべてのコンテンツが検索範囲に含まれるか、検索範囲から除外されます)。

  4. [ 動作] セクションで、このルールを他のルールと組み合わせて範囲を定義する方法のオプションを選択します。

    • [包含: 他のルールによって除外されるアイテムを除き、このルールと一致するアイテムを含む] このオプションは、"OR" ルールを適用します。

    • [必須: この範囲内のすべてのアイテムがこのルールに常に一致する必要がある] このオプションは、"AND" ルールを適用します。

    • [除外: このルールと一致するアイテムを範囲から除外する] このオプションは、"AND NOT" ルールを適用します。

  5. [OK] をクリックします。

FAST Search Server 2010 for SharePoint プロパティを検索範囲で使用可能にする

範囲ルールの下にある [プロパティ クエリ] ボックスの一覧に表示される管理プロパティは、Search Server スキーマに定義された管理プロパティです。初期状態では、FAST Search Server 2010 for SharePoint と Search Server でこれらのプロパティは同じです。FAST Search Server 2010 for SharePoint プロパティも、[プロパティ クエリ] ボックスの一覧で使用できます。

FAST Search Server 2010 for SharePoint に新しい管理プロパティを作成した場合は、同じ管理プロパティを Search Server でも追加する必要があります。Search Server プロパティは、[プロパティ クエリ] ボックスの一覧にエントリを設定するために使用される単なるプレースホルダーです。

管理プロパティを検索範囲で使用できるようにするには、そのプロパティの [範囲内でこのプロパティを使用できるようにする] オプションが選択されていることも確認してください。

プレースホルダーの管理プロパティを [プロパティ クエリ] ボックスの一覧に追加するには

  1. この手順を実行しているユーザー アカウントが Search Service アプリケーションの管理者であることを確認します。

  2. サーバーの全体管理で、[アプリケーション構成の管理] セクションの [サービス アプリケーションの管理] をクリックします。

  3. [サービス アプリケーションの管理] ページで、サービス アプリケーションの一覧で [FAST Query SSA] (FAST Query SSA の名前) をクリックします。

  4. [検索管理] ページで、サイド リンク バーの [クエリと結果] で [メタデータのプロパティ] をクリックします。

  5. [メタデータ プロパティのマッピング] ページで、[新しい管理プロパティ] をクリックします。

  6. [新しい管理プロパティ] ページで、[名前と種類] セクションの [プロパティ名] ボックスに管理プロパティの名前を入力します。

  7. [説明] ボックスに、プロパティの説明 (単なるプレースホルダーのプロパティであることなど) を入力します。

  8. 新しい管理プロパティ] ページで、[範囲で使用] セクションの [範囲内でこのプロパティを使用できるようにする] チェック ボックスをオンにします。

  9. [OK] をクリックします。この管理プロパティを [クエリ プロパティ] ボックスの一覧に追加するときは、このページの他のオプションを設定する必要はありません。

Windows PowerShell を使用して検索範囲を Search Service アプリケーション レベルで作成する

  1. ファーム管理者権限が与えられていることを確認します。

  2. Microsoft SharePoint Server で [SharePoint 2010 管理シェル] を開きます。

    1. [スタート] メニューの [すべてのプログラム] をクリックします。

    2. [Microsoft SharePoint 2010 Products] をクリックします。

    3. [SharePoint 2010 管理シェル] をクリックします。

  3. コマンド プロンプトで、以下のように入力します。

    New-SPEnterpriseSearchQueryScope -SearchApplication "<SearchApplication>" -Name <ScopeName> -Description "<ScopeDescription>" 
    -DisplayInAdminUI 1 -ExtendedSearchFilter "<FQL_Expression>"
    

    ここで、

    • <SearchApplication> : Query Search Service アプリケーション (SSA) の名前

    • <ScopeName> : 新しい範囲の名前

    • <ScopeDescription> : 範囲の説明

    • <FQL_Expression> : 範囲フィルターを表す FAST クエリ言語 (FQL) クエリ式

      注意

      FQL 式に使用する管理プロパティの名前は、大文字が含まれる場合でもすべて小文字で記述する必要があります。

作成した範囲が使用可能になるまで数分かかります。範囲がアクティブになったことを確認するには、範囲を使用するクエリを実行します。範囲が使用可能でなければ、クエリからエラー メッセージが返されます。

関連項目

FAST クエリ言語 (FQL) 構文のリファレンス

Windows PowerShell を使用してサイト レベルの検索範囲を作成する

以下の例では、サイト レベルの範囲を作成し、結果セットを 2 つの特定のサイトから取得したアイテムに制限する FAST クエリ言語 (FQL) フィルターを追加します。

  1. ファーム管理者権限が与えられていることを確認します。

  2. Microsoft SharePoint Server で [SharePoint 2010 管理シェル] を開きます。

    1. [スタート] メニューの [すべてのプログラム] をクリックします。

    2. [Microsoft SharePoint 2010 Products] をクリックします。

    3. [SharePoint 2010 管理シェル] をクリックします。

  3. コマンド プロンプトで、以下のように入力します。

    New-SPEnterpriseSearchQueryScope -SearchApplication "<SearchApplication>" -Name <ScopeName> -Description "<ScopeDescription>" 
    -DisplayInAdminUI 1 -OwningSiteUrl "<OwningSiteURL>"
    $scope = Get-SPEnterpriseSearchQueryScope -SearchApplication "<SearchApplication>" " -Identity "<ScopeName>"
    $scope.Filter = 'site:or("<ScopeSite1URL>", "<ScopeSite2URL>"' 
    $scope.Update()
    

    ここで、

    • <SearchApplication> : Query Search Service アプリケーション (SSA) の名前

    • <ScopeName> : 新しい範囲の名前

    • <ScopeDescription> : 範囲の説明

    • <OwningSiteURL> : 範囲を定義するサイトの URL

    • <ScopeSite1URL> : 検索範囲に含める最初のサイトの URL

    • <ScopeSite2URL> : 検索範囲に含める 2 番目のサイトの URL

作成した範囲が使用可能になるまで数分かかります。範囲がアクティブになったことを確認するには、範囲を使用するクエリを実行します。範囲が使用可能でなければ、クエリからエラー メッセージが返されます。

関連項目

FAST クエリ言語 (FQL) 構文のリファレンス

フルテキスト インデックスを検索するサイト レベル検索範囲を Windows PowerShell を使用して作成する

以下の例では、範囲を作成し、フルテキスト インデックスの検索で "vista" という単語を含むタイトルを結果セットに取得する FAST クエリ言語 (FQL) フィルターを追加します。

  1. ファーム管理者権限が与えられていることを確認します。

  2. Microsoft SharePoint Server で [SharePoint 2010 管理シェル] を開きます。

    1. [スタート] メニューの [すべてのプログラム] をクリックします。

    2. [Microsoft SharePoint 2010 Products] をクリックします。

    3. [SharePoint 2010 管理シェル] をクリックします。

  3. コマンド プロンプトで、以下のように入力します。

    New-SPEnterpriseSearchQueryScope -SearchApplication "<SearchApplication>" -Name <ScopeName> -Description "<ScopeDescription>" 
    -DisplayInAdminUI 1 -ExtendedSearchFilter "title:vista,FullTextIndex=<FullTextIndex>" -OwningSiteUrl "<OwningSiteURL>"
    

    ここで、

    • <SearchApplication> : Query Search Service アプリケーション (SSA) の名前

    • <ScopeName> : 新しい範囲の名前

    • <ScopeDescription> : 範囲の説明

    • <FullTextIndex> : 検索範囲に含めるフルテキスト インデックスの名前

    • <OwningSiteURL> : 範囲を定義するサイトの URL

関連項目

FAST クエリ言語 (FQL) 構文のリファレンス

Windows PowerShell を使用して Search Service アプリケーション レベルで検索範囲の FAST クエリ言語 (FQL) フィルターを表示する

  1. ファーム管理者権限が与えられていることを確認します。

  2. Microsoft SharePoint Server で [SharePoint 2010 管理シェル] を開きます。

    1. [スタート] メニューの [すべてのプログラム] をクリックします。

    2. [Microsoft SharePoint 2010 Products] をクリックします。

    3. [SharePoint 2010 管理シェル] をクリックします。

  3. コマンド プロンプトで、以下のように入力します。

    $scope = Get-SPEnterpriseSearchQueryScope -SearchApplication "<SearchApplication>" "<ScopeName>"
    $scope.Filter
    

    ここで、

    • <SearchApplication> : Query Search Service アプリケーション (SSA) の名前

    • <ScopeName> : 範囲の名前

Windows PowerShell を使用してサイト レベルで検索範囲の FAST クエリ言語 (FQL) フィルターを表示する

  1. ファーム管理者権限が与えられていることを確認します。

  2. Microsoft SharePoint Server で [SharePoint 2010 管理シェル] を開きます。

    1. [スタート] メニューの [すべてのプログラム] をクリックします。

    2. [Microsoft SharePoint 2010 Products] をクリックします。

    3. [SharePoint 2010 管理シェル] をクリックします。

  3. コマンド プロンプトで、以下のように入力します。

    $scope = Get-SPEnterpriseSearchQueryScope -SearchApplication "<SearchApplication>" "<ScopeName>" -Url "<SiteURL>" 
    $scope.Filter
    

    ここで、

    • <SearchApplication> : Query Search Service アプリケーション (SSA) の名前

    • <ScopeName> : 範囲の名前

    • <SiteURL> : 範囲を定義するサイトの URL

検索センター サイトで検索範囲を使用できるようにする

範囲を定義した後、サイト コレクション管理者は、検索センター サイトでユーザーが範囲を使用できるようにすることができます。

使用可能な範囲を定義するには

  1. サイト コレクションの管理者にアクセス許可が与えられていることを確認します。

  2. トップ レベルのサイトで、[サイトの操作] をクリックし、[サイトの設定] をクリックします。

  3. [サイト コレクションの管理] で、[検索範囲] をクリックします。

  4. [グループの表示] をクリックします。

  5. [検索ドロップダウン] をクリックします。

  6. [範囲] セクションで、ドロップダウンに表示する範囲を選択し、範囲の表示順序を指定します。

  7. [OK] をクリックします。

検索センター サイトの検索ボックス Web パーツに範囲を表示するには

  1. 検索センター サイトで、[サイトの操作] メニューをクリックし、[ページの編集] をクリックします。

  2. 検索ボックス Web パーツ メニューの→をクリックし、[Web パーツの編集] をクリックします。

  3. [範囲ドロップダウン] の下の [範囲ドロップダウンを表示する] を選択します。

  4. [ドロップダウン ラベル] ボックスで、検索センター サイトの範囲ドロップダウン リストの名前として表示するテキストを入力します。

  5. [OK] をクリックします。

  6. 検索結果ページの検索ボックス Web パーツについて以上の手順を繰り返します。