2.2.1 Structures

This section details data structures that are defined and used by the Windows Search Protocol.

All 2-byte, 4-byte, and 8-byte signed and unsigned integers in the following structures MUST be transferred in little-endian byte order.

The following table summarizes the data structures defined in this section.

Structure

Description

CBaseStorageVariant

Contains the value on which to perform a match operation for a property that is specified in a CPropertyRestriction structure.

SAFEARRAY, SAFEARRAY2

Contains a multidimensional array.

SAFEARRAYBOUND

Represents the bounds for a dimension of an array specified in a SAFEARRAY structure.

CFullPropSpec

Contains a property specification.

CContentRestriction

Contains a string to match for a property value in the property cache.

CInternalPropertyRestriction

Contains a property value to match with an operation.

CNatLanguageRestriction

Contains a natural language query match for a property.

CNodeRestriction

Contains an array of command tree nodes specifying the restrictions for a query.

CPropertyRestriction

Contains a property value to match with an operation.

CReuseWhere

Contains a WHEREID that refers to the restriction array.

CScopeRestriction

Contains a restriction on the files to be searched.

CSort

Identifies a column to sort.

CVectorRestriction

Contains an array of command tree nodes specifying the restrictions for a vector space array query (see [SALTON]).

CRestriction

A restriction node in a query command tree.

CRestrictionArray

Contains a counted array of restrictions.

CColumnSet

Describes the columns to return.

CCategorizationSet

A set of CCategorizationSpec structures where each describes the grouping property for one level in a hierarchical result set.

CCategorizationSpec

Specifies the categorization property used to categorize results at one level in a hierarchical result set.

CCategSpec

Contains a grouping specification.

CRangeCategSpec

Contains range information for grouping by ranges.

CDbColId

Contains a column identifier.

CDbProp

Contains a rowset property.

CDbPropSet

Contains a set of rowset properties.

CPidMapper

Maps from message internal property IDs (PIDs) to full property specifications.

CRowSeekAt

Contains the offset at which to retrieve rows in a CPMGetRowsIn message.

CRowSeekAtRatio

Identifies the approximate point expressed as a ratio at which to begin retrieval for a CPMGetRowsIn message.

CRowSeekByBookmark

Identifies the bookmarks from which to retrieve rows for a CPMGetRowsIn message.

CRowSeekNext

Contains the number of rows to skip in a CPMGetRowsIn message.

CRowsetProperties

Contains the configuration information for a query.

CSortSet

Contains the sort orders for a query.

CTableColumn

Contains a column for the CPMSetBindingsIn message.

SERIALIZEDPROPERTYVALUE

Contains a serialized value.

CCoercionRestriction

Contains a coercion restriction that affects ranking of query results.

CFeedbackRestriction

Contains a set of feedback documents for relevance feedback queries (for more information, see [Jones]).

CProbRestriction

Contains probabilistic rank parameters (for more information, see [Jones]).

CRelDocRestriction

Contains a relevant document for relevance feedback queries (for more information, see [Jones]).

CAggregSet

Contains a set of aggregate specifications.

CAggregSpec

Contains a single aggregate or column specification.

CAggregSortKey

Contains a single grouping sort key.

CSortAggregSet

Contains a set of grouping sort keys.

CInGroupSortAggregSets

Contains sorting information for a group with regard to one or more parent groups.

CCompletionCategSpec

Contains grouping information for building groups of completion suggestions.