データ・レコードとデータ以外のレコードのフィルタ

一部の問合せをデータ・レコードのみに対して実行し、他の問合せをPDRのみに対して実行する場合、またはスキーマおよび構成レコードに対して問合せを実行する場合は、RecordKindOperatorタイプを使用して、レコードを特定の種類に限定できます。

RecordKindOperatorタイプには、次の値を使用できるRecordKind要素が含まれます。
説明
data レコードを、データ・ドメインにロードする実際のデータ・レコードに限定します。
properties レコードを、レコード属性を宣言するレコード(PDR)に限定します。
nondata レコードを、データ・レコードを表さず、すべてのシステム・レコード(PDR、DDR、GCR)、グループを定義するレコード、優先順位ルールを定義するレコード(作成されている場合)、その他の構成を定義するレコード、またはセマンティック・エンティティ定義を定義するレコード(作成されている場合)を表すレコードに限定します。

この演算子を使用する場合は、Endeca Serverの他のすべての検索およびフィルタ操作が実行されるStateを制限できます。コーパス内のレコードのサブセット、たとえば実際のデータ・レコードを表すレコードにのみ後続の問合せを発行する場合は、RecordKindOperatorタイプの使用が役立ちます。

次の例は、RecordKindOperatorでレコードの種類を指定する方法を示します。
<Operator xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
   xsi:type="RecordKindOperator">
  <RecordKind>data</RecordKind>
</Operator>
レコードの種類が指定された場合は、次の省略されたレスポンス例で示すように、その種類が後続のリクエストのStateで使用されます。
<cs:Results xmlns:cs="http://www.endeca.com/MDEX/conversation/2/0" 
xmlns:mdex="http://www.endeca.com/MDEX/XQuery/2009/09">
 <cs:Request>
    <cs:State>
      <ns3:RecordKind xmlns:ns2="http://www.endeca.com/MDEX/lql_parser/types" 
        xmlns:ns3="http://www.endeca.com/MDEX/conversation/2/0" 
        xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" 
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
        data
      </ns3:RecordKind>
    </cs:State>
  </cs:Request>
</cs:Results>

新しいレコードの種類が指定されている場合は、前に指定した種類が新しい種類で置換されます。レコードの種類はユーザー・インタフェースに表示されません。たとえば、ブレッドクラムには表示されません。PopRecordKindOperatorを使用して、Stateから削除できます。