Compartir a través de


estructura de STAT_CHUNK (filter.h)

Nota

El servicio de indexación ya no se admite a partir de Windows XP y no está disponible para su uso a partir de Windows 8. En su lugar, use La búsqueda del lado cliente de Windows Search y Microsoft Search Server Express para la búsqueda del lado servidor.

Describe las características de un fragmento.

Sintaxis

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

Miembros

idChunk

Identificador del fragmento. Los identificadores de fragmento deben ser únicos para la instancia actual de la interfaz IFilter . Los identificadores de fragmento deben estar en orden ascendente. El orden en el que se numeran los fragmentos debe corresponder al orden en que aparecen en el documento de origen. Algunos motores de búsqueda pueden aprovechar la proximidad de fragmentos de varias propiedades. Si es así, el orden en el que se emiten fragmentos con propiedades diferentes será importante para el motor de búsqueda.

breakType

Tipo de división que separa el fragmento anterior del fragmento actual. Los valores proceden de la enumeración CHUNK_BREAKTYPE .

flags

Indica si este fragmento contiene un tipo de texto o una propiedad de tipo valor. Los valores de marca se toman de la enumeración CHUNKSTATE . Si se establece la marca CHUNK_TEXT, se debe usar IFilter::GetText para recuperar el contenido del fragmento como una serie de palabras. Si se establece la marca de CHUNK_VALUE, se debe usar IFilter::GetValue para recuperar el valor y tratarlo como un único valor de propiedad. Si el filtro dicta que el mismo contenido se trate como texto y como valor, el fragmento se debe emitir dos veces en dos fragmentos diferentes, cada uno con una marca establecida.

locale

Lenguaje y sublenguaje asociados a un fragmento de texto. Los indexadores de documentos usan la configuración regional del fragmento para dividir el texto en palabras de la manera adecuada. Si el fragmento no es de tipo de texto ni de tipo de valor con tipo de datos VT_LPWSTR, VT_LPSTR o VT_BSTR, se omite este campo.

attribute

Propiedad que se va a aplicar al fragmento. Consulte FULLPROPSPEC. Si un filtro requiere que el mismo texto tenga más de una propiedad, debe emitir el texto una vez para cada propiedad en fragmentos independientes.

idChunkSource

Identificador del origen de un fragmento. El valor del miembro idChunkSource depende de la naturaleza del fragmento:

  • Si el fragmento es una propiedad de tipo de texto, el valor del miembro idChunkSource debe ser el mismo que el valor del miembro idChunk .
  • Si el fragmento es una propiedad de tipo de valor interno derivada del contenido textual, el valor del miembro idChunkSource es el identificador de fragmento del fragmento de tipo de texto del que se deriva.
  • Si los atributos de filtro especifican para devolver solo las propiedades internas del tipo de valor, no hay ningún fragmento de contenido del que derivar la propiedad de tipo de valor interno actual. En este caso, el valor del miembro idChunkSource debe establecerse en cero, que es un fragmento no válido.

cwcStartSource

Desplazamiento desde el que se inicia el texto de origen de un fragmento derivado en el fragmento de origen.

cwcLenSource

Longitud de caracteres del texto de origen del que se deriva el fragmento actual. Un valor de cero significa correspondencia carácter con carácter entre el texto de origen y el texto derivado. Un valor distinto de cero significa que no existe ninguna correspondencia directa.

Comentarios

Los tres miembros finales (idChunkSource, cwcStartSource y cwcLenSource) se usan para describir el origen de un fragmento derivado; es decir, uno que se puede asignar de nuevo a una sección de texto. Por ejemplo, el encabezado de un capítulo puede ser una propiedad de tipo de texto y una propiedad de tipo de valor interno ? un encabezado. La propiedad de tipo de valor "heading" sería un fragmento derivado. Si el texto del fragmento de tipo de valor actual (de una propiedad de tipo valor interno) se deriva de algún fragmento de tipo de texto, se debe emitir más de una vez.

El siguiente segmento es un ejemplo de cómo puede ocurrir esto en un libro.

El pequeño detective exclamó, "C'est fini!"

Confesiones

La habitación fue silenciosa durante varios minutos. Después de pensar muy duro sobre ello, la joven preguntó: "¿Pero cómo lo sabías?"

Este segmento puede dividirse en fragmentos de la siguiente manera.

ID Texto BreakType Marcas Configuración regional Atributo
1 El pequeño dete N/D CHUNK_TEXT ENGLISH_UK CONTENT
2 ctive exclaimed, CHUNK_NO_BREAK N/D N/D N/D
3 "C'est fini!" CHUNK_EOW CHUNK_TEXT FRENCH_BELGIAN CONTENT
4 Confesiones CHUNK_EOC CHUNK_TEXT ENGLISH_UK CHAPTER_NAMES
5 Confesiones CHUNK_EOP CHUNK_TEXT ENGLISH_UK CONTENT
6 La habitación fue silenciosa durante varios minutos. CHUNK_EOP CHUNK_TEXT ENGLISH_UK CONTENT
7 Después de pensar muy duro sobre ello, la joven preguntó: "¿Pero cómo lo sabías?" CHUNK_EOS CHUNK_TEXT ENGLISH_UK CONTENT
 

La información proporcionada por idChunkSource, cwcStartSource y cwcLenSource es útil para un motor de búsqueda que resalta los resultados. Si la consulta se realiza para una propiedad de tipo valor interno, el motor de búsqueda resaltará el texto original del que se ha derivado el texto de la propiedad de tipo de valor interno. Por ejemplo, en un filtro de código de C++, el explorador, al buscar MyFunction en la propiedad de tipo de valor interno "definiciones de función", resaltará el encabezado de función en el archivo.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado filter.h

Consulte también

CHUNKSTATE

CHUNK_BREAKTYPE

FULLPROPSPEC

Ifilter