2.2.5 Standard Properties
Properties in the GSS are represented by the combination of a property set GUID and either a string property name or an integer property ID. For details, see CFullPropSpec.
There are three classes of properties: database properties, query properties, and open properties. Database properties help control the indexing behavior and are as specified in section 2.2.1.30.1. Query properties can be used in a restriction and in some cases returned with every result. They are special because they are built into the GSS. Open properties are defined by individual applications. There is a typical set of common properties in use, but there is no requirement to use them.
Properties are characterized by the parameters that follow.
GUID and PropId: Together, these parameters establish the unique identifier for documents.
isColumn: A boolean value set to TRUE if, and only if, the property can be returned as a requested property as specified in the ProjectionColumnsOffsets argument to a RunNewQuery Generic Search Service (GSS) abstract interface call.
inInvertedIndex: A boolean value set to TRUE if, and only if, the property can be an argument to CContentRestriction within the RestrictionSet argument to a RunNewQuery GSS abstract interface call.
columnIndexType: This parameter defines whether sorting, grouping, and filtering are allowed for this property, as defined in the SortOrders, Groupings, and Restrictions parameters of the RunNewQuery GSS abstract interface call. The columnIndexType parameter is a string set to one of the following:
No value: indicates that sorting, grouping and filtering over this property are possible.
NotIndexed: sorting, grouping, and filtering are not possible for this property.
Type: This parameter indicates the data type used by this property.
Int32 – VT_I8
String - LPWSTR
Boolean – VT_BOOL
UInt16 – VT_UI2
UInt32 – VT_UI4
UInt64 – VT_UI8
Double – VT_R8
DateTime – VT_FILETIME.
Buffer – VT_BLOB_OBJECT
Byte – VT_UI1
MaxSize: An unsigned integer indicating the maximum size, in bytes, that this property can have stored or retrieved by the Generic Search Service (GSS).
VectorProperty: A boolean value that is TRUE if, and only if, this is a multiple-value property. For example, System.Author can have multiple values, one for each author of the document.
Description: Describes the most common use for a property. The names of some properties are self-explanatory; when this is the case, the descriptions are omitted.
useForTypeAhead: A Boolean value that is TRUE if and only if this is a property whose values are used as a source of completion suggestions.