次の方法で共有


STAT_CHUNK構造体 (filter.h)

注意

Indexing Service は Windows XP の時点ではサポートされなくなり、Windows 8時点では使用できません。 代わりに、クライアント側 検索には Windows Search を使用し、サーバー側の検索には Microsoft Search Server Express を使用します。

チャンクの特性について説明します。

構文

typedef struct tagSTAT_CHUNK {
  ULONG           idChunk;
  CHUNK_BREAKTYPE breakType;
  CHUNKSTATE      flags;
  LCID            locale;
  FULLPROPSPEC    attribute;
  ULONG           idChunkSource;
  ULONG           cwcStartSource;
  ULONG           cwcLenSource;
} STAT_CHUNK;

メンバー

idChunk

チャンク識別子。 チャンク識別子は、 IFilter インターフェイスの現在のインスタンスで一意である必要があります。 チャンク識別子は昇順にする必要があります。 チャンクに番号を付ける順序は、ソース ドキュメントに表示される順序に対応する必要があります。 一部の検索エンジンでは、さまざまなプロパティのチャンクの近接性を利用できます。 その場合、さまざまなプロパティを持つチャンクが出力される順序が検索エンジンにとって重要になります。

breakType

前のチャンクを現在のチャンクから分離する break の型。 値は 、CHUNK_BREAKTYPE 列挙からの値です。

flags

このチャンクにテキスト型または値型のプロパティが含まれているかどうかを示します。 フラグ値は CHUNKSTATE 列挙から取得されます。 CHUNK_TEXT フラグが設定されている場合は、 IFilter::GetText を使用してチャンクの内容を一連の単語として取得する必要があります。 CHUNK_VALUE フラグが設定されている場合は、 IFilter::GetValue を使用して値を取得し、単一のプロパティ値として扱う必要があります。 フィルターで、同じコンテンツをテキストと値の両方として扱う必要がある場合、チャンクは 2 つの異なるチャンクで 2 回出力され、それぞれ 1 つのフラグが設定されます。

locale

テキストのチャンクに関連付けられている言語とサブ言語。 チャンク ロケールは、テキストの適切な単語区切りを実行するためにドキュメント インデクサーによって使用されます。 チャンクがテキスト型でも値型でもなく、データ型がVT_LPWSTR、VT_LPSTR、またはVT_BSTRの場合、このフィールドは無視されます。

attribute

チャンクに適用されるプロパティ。 「FULLPROPSPEC」を参照してください。 フィルターで同じテキストに複数のプロパティが必要な場合は、各プロパティに対してテキストを個別のチャンクで 1 回出力する必要があります。

idChunkSource

チャンクのソースの ID。 idChunkSource メンバーの値は、チャンクの性質によって異なります。

  • チャンクがテキスト型プロパティの場合、 idChunkSource メンバーの値は idChunk メンバーの値と同じである必要があります。
  • チャンクがテキスト コンテンツから派生した内部値型プロパティの場合、 idChunkSource メンバーの値は、それが派生するテキスト型チャンクのチャンク ID です。
  • フィルター属性が内部値型プロパティのみを返すように指定した場合、現在の内部値型プロパティの派生元となるコンテンツ チャンクはありません。 この場合、 idChunkSource メンバーの値を 0 に設定する必要があります。これは無効なチャンクです。

cwcStartSource

派生チャンクのソース テキストがソース チャンクで開始されるオフセット。

cwcLenSource

現在のチャンクの派生元のソース テキストの文字数。 0 の値は、ソース テキストと派生テキストの間の文字単位の対応関係を示します。 0 以外の値は、このような直接対応が存在しないことを意味します。

注釈

最終的な 3 つのメンバー (idChunkSourcecwcStartSourceおよび cwcLenSource) は、派生チャンクのソースを記述するために使用されます。つまり、テキストのセクションにマップし直すことができるもの。 たとえば、章の見出しには、テキスト型プロパティと内部値型プロパティの両方を指定できます。 見出し。 値型プロパティ "heading" は、派生チャンクになります。 現在の値型チャンク (内部値型プロパティから) のテキストがテキスト型チャンクから派生している場合は、複数回出力する必要があります。

次のセグメントは、これが書籍でどのように起こるかを示す例です。

小さな探偵は、「C'est fini!

告白

部屋は静かで、数分間静かでした。 そのことを一生懸命考えた後,若い女性は「しかし,どうして分かったのですか」と尋ねました。

このセグメントは、次のようにチャンクに分割される可能性があります。

id Text BreakType Flags Locale 属性
1 小さなデテ 該当なし CHUNK_TEXT ENGLISH_UK CONTENT
2 ctive exclaimed, CHUNK_NO_BREAK 該当なし 該当なし 該当なし
3 "C'est fini!" CHUNK_EOW CHUNK_TEXT FRENCH_BELGIAN CONTENT
4 告白 CHUNK_EOC CHUNK_TEXT ENGLISH_UK CHAPTER_NAMES
5 告白 CHUNK_EOP CHUNK_TEXT ENGLISH_UK CONTENT
6 部屋は静かで、数分間静かでした。 CHUNK_EOP CHUNK_TEXT ENGLISH_UK CONTENT
7 そのことを一生懸命考えた後,若い女性は「しかし,どうして分かったのですか」と尋ねました。 CHUNK_EOS CHUNK_TEXT ENGLISH_UK CONTENT
 

idChunkSourcecwcStartSource、および cwcLenSource によって提供される情報は、ヒットを強調表示する検索エンジンに役立ちます。 内部値型プロパティに対してクエリが実行された場合、検索エンジンは、内部値型プロパティのテキストが派生した元のテキストを強調表示します。 たとえば、C++ コード フィルターでは、内部値型プロパティ "関数定義" で MyFunction を検索すると、ブラウザーによってファイル内の関数ヘッダーが強調表示されます。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
Header filter.h

こちらもご覧ください

CHUNKSTATE

CHUNK_BREAKTYPE

FULLPROPSPEC

Ifilter