Share via


Query Web サービスおよびクエリ オブジェクト モデルにおける絞り込み条件の仕様

Query Web サービスまたはクエリ オブジェクト モデルでの絞り込み条件の指定について説明します。

最終更新日: 2011年9月1日

適用対象: SharePoint Server 2010

FAST Search Server 2010 for SharePoint に対してクエリを実行するとき、クエリ結果を返す絞り込み条件と絞り込みデータの種類を指定できます。

適用先: Microsoft FAST Search Server 2010 for SharePoint

Query Web サービスまたはクエリ オブジェクト モデルを使用した絞り込み条件の指定

Query Web サービスを使用する場合、Microsoft.Search.Query スキーマの Refiner 要素 を使用して、要求されるクエリ絞り込み条件を指定します。詳細については、「Query Web サービスでの絞り込み条件の使用」を参照してください。

クエリ オブジェクト モデルを使用する場合、KeywordQuery クラスの Refiners プロパティを使用して、要求されるクエリ絞り込み条件を指定します。要求されるクエリ絞り込み条件を指定するときに使用する構文を次に示します。

<refiner>[,<refiner>]*

どちらの場合も、個別の絞り込み条件の仕様は、それぞれ以下の形式になります。

<refiner-name>[(parameter=value[,parameter=value]*)]?

ここで、

  • <refiner-name> は、絞り込み条件に関連付けられた管理プロパティの名前です。

  • parameter=value ペアのオプションのリストは、指定された絞り込み条件に対して既定以外の構成値を指定します。絞り込み条件のパラメーターがカッコ内に示されていない場合は、インデックス スキーマ構成は既定の設定を使用します。詳細については、「インデックス スキーマ (FAST Search Server for SharePoint)」を参照してください。

表 1 は、絞り込み条件で有効なパラメーターを示します。

表 1. 絞り込み条件で有効なパラメーター (FAST Search Server 2010 for SharePoint)

パラメーター

説明

deephits

深い絞り込みの計算で、根拠として使用されるヒットの既定の数をオーバーライドします。この設定は、検索パフォーマンスを下げます。

構文

deephits=<integer value>

price(deephits=1000)

注意

この制限は、検索行または列内の、各検索パーティション内で適用されます。検証されるヒットの実際の数は、複数の検索パーティションでの結果の収集により、この値より大きくなります。

discretize

数字の絞り込み条件で、ユーザー設定の間隔 (絞り込み bin) を指定します。

構文

discretize=manual/<threshold>/<threshold>[/<threshold>]*

<threshold> 属性は、各絞り込み bin でしきい値を指定します。

指定された最初のしきい値以下のすべてに対して 1 つの間隔、連続する各しきい値の間に 1 つの間隔、最後のしきい値以上のすべてに対して 1 つの間隔があります。

Datetime 型の絞り込み条件については、以下の ISO 8601 互換の形式に従ってしきい値を指定します。

  • YYYY-MM-DD

  • YYYY-MM-DDThh:mm:ss

  • YYYY-MM-DDThh:mm:ssZ

この形式の値は、以下の内容を指定します。

  • YYYY  4 桁の年。4 桁の年のみがサポートされています。

  • MM  2 桁の月。01 は 1 月です。

  • DD  2 桁の日付 (01 ~ 31)。

  • T  文字 "T"。

  • hh  2 桁の時間 (00 ~ 23)。A.M. や P.M. の表示はできません。

  • mm  2 桁の分 (00 ~ 59)。

  • ss  2 桁の秒 (00 ~ 59)。

重要重要

すべての日付と時刻の値は、UTC (協定世界時) (GMT (グリニッジ標準時) とも呼ばれます) タイム ゾーンに従って指定する必要があります。UTC タイムゾーンの識別子 (末尾の "Z" 文字) はオプションです。

sort

文字列絞り込み条件で、どのように bin を並べ替えるか定義します。

構文

sort=<property>/<direction>

この属性は、以下の処理をします。

  • <property>  並べ替えアルゴリズムを指定します。有効な値は以下のとおりです (値は小文字である必要があります)。

    • frequency  bin 内の出現回数で並べ替えます。

    • name  ラベル名で並べ替えます。

    • number  文字列を数字として説明し、数字で並べ替えます。この値は、文字列管理プロパティに含まれる値を数字で並べ替えるときのように、不連続の値を指定するときに役立ちます。

  • <direction>  並べ替えの方向を指定します。有効な値は以下のとおりです。

    • descending

    • ascending

sort=frequency/descending

既定値: frequency/descending.

filter

クライアントに返される前に、String 型の絞り込み条件内の bin が抽出される方法を定義します。

構文

filter=<bins>/<freq>/<prefix>[<levels>]

この属性は、以下の処理をします。

  • <bins>  返す bin の最大数を指定します。

    絞り込み条件で bin を並べ替えた後で、残りの bin を切り捨てるときにこの属性を使用します。たとえば、bins=10 の場合は、指定された並べ替えアルゴリズムに従って、最初の 10 の bin だけが返されます。

  • <freq>  返す bin の数を制限します。

    少ない頻度数の bin を削除するには、この属性を使用します。

    たとえば、freq=2 は、2 以上のメンバーを持つ bin だけが返されることを示します。

  • <prefix>  この接頭辞で始まる名前を持つ bin だけが返されることを指定します。

    ワイルドカードのアスタリスク文字 "*" は、すべての名前と一致します。

    filter=30/2/*

  • <levels>  分類のレベルを指定します。

    分類レベルに基づいて、階層的な絞り込み条件で抽出して出力するには、この属性を使用します。

    属性は、正の整数 n である必要があります。既定値は、n=0 です。

    n>0 の場合は、n 個未満の分類パス区切り記号 ("/") を含む絞り込み条件エントリのみが返されます。n=0 の場合、レベル フィルター処理は行われません。

    レベル区切り文字は、スラッシュ文字 ("/") です。

    非常に大きな分類ナビゲーターを使用する場合は、パフォーマンスが下がることに注意してください。フィルター処理は、結果処理の一部として行われます。

    注意

    このパラメーターは、アプリケーションに固有の、結果側フィルター処理を設定します。これは、パフォーマンス最適化のために個別のクエリ一致ノードで制限をする cutoff パラメーターとは異なります。

cutoff

深い文字列絞り込み条件のために移動し処理される必要があるデータの量を制限します。この絞り込み条件は、もっとも関連性が高い値 (bin) のみを返すために設定することができます。

注意

この切り捨てフィルター処理は、各クエリ一致サーバーで行われます。これは、結果側フィルター処理のみを実行する filter パラメーターとは異なります。これら 2 つのパラメーターは組み合わせて使うことができます。

構文

cutoff=<frequency>/<minbins>/<maxbins>

この属性は、以下の処理をします。

  • <maxbins>  bin の数を制限します。

    このパラメーターは、絞り込み条件のために返される一意的な値 (bin) の数を制限します。多数の bin を持つ文字列絞り込み条件が返される場合、これは検索パフォーマンスを向上する推奨の方法です。

    "0" は、インデックス スキーマで指定された既定値が使用されることを意味します。

  • <frequency>  頻度で bin の数を制限します。

    結果セットの絞り込み条件値の出現回数が頻度値以下の場合は、絞り込み条件値は返されません。

    "0" は、インデックス スキーマに従った既定値が使用されることを意味します。

  • <minbins>  頻度切り捨ての最小値を指定します。

    クエリの一意的な絞り込み条件値の数がこの値未満の場合は、頻度切り捨ては行われず、すべての絞り込み条件値がその検索パーティションから返されます。頻度での切り捨てが使用された場合、このパラメーターは出現回数にかかわらず返される、一意的な絞り込み条件値の最小数を指定するために使用することができます。この属性の既定値は "0" で、これは一意的なナビゲーター値の数にかかわらず、頻度による切り捨てが行われることを意味します。

    "0" は、インデックス スキーマで指定された既定値が使用されることを意味します。

注意

<frequency> と <minbins> は注意して使用する必要があります。<maxbins> のみを使用することをお勧めします。

次の例では、最終変更日のクエリ絞り込み条件を指定します。

write(discretize=manual/2010-01-01/2010-08-22/2010-09-15/2010-09-21/2010-09-22)

write 絞り込み条件は、アイテムの最終変更日を含む管理プロパティに関連付けられています。この絞り込み条件では、固定サイズの日付/時刻 bin を指定します。このとき最後の bin (2010-09-22) は、クエリが発行されるときの現在の日付になります。指定された bin は、今日、昨日、先週、先月、昨年、それより前の絞り込み bin を表すときの基準として使用できます。

ユーザーのタイム ゾーンに合わせる場合は、bin を日付/時刻の完全な表現で指定できます。

注意

仕様内では、絞り込み条件の名前を小文字で指定する必要があります。

関連項目

概念

Query Web サービスでの絞り込み条件の使用

絞り込みパネル Web パーツへの絞り込み条件の追加

クエリ絞り込み (FAST Search Server 2010 for SharePoint)