IConditionGenerator interface

Provides methods for handling named entities and generating special conditions.

Members

The IConditionGenerator interface inherits from the IUnknown interface. IConditionGenerator also has these types of members:

Methods

The IConditionGenerator interface has these methods.

MethodDescription
DefaultPhrase

This method attempts to produce a phrase that, when recognized by this instance of IConditionGenerator, represents the type and value pair for an entity, relationship, or named entity.

GenerateForLeaf

Generates a special query expression for what would otherwise become a leaf query expression.

Initialize

Resets all states of the interface to default values and retrieves any necessary information from the schema.

RecognizeNamedEntities

Identifies named entities in an input string, and creates a collection containing them. The value of each named entity is expressed as a string, which is then used by IConditionGenerator::GenerateForLeaf. The string can contain any data and be in any format, because it is not examined by any other components.

 

Remarks

When an object that supports IConditionGenerator has been registered with a query parser as a semantic type T (using the IQueryParser::SetMultiOption method with the SQMO_GENERATOR_FOR_TYPE constant), and that query parser is about to generate a leaf condition node with semantic type T, the query parser first calls the IConditionGenerator::GenerateForLeaf method of the condition generator. If that method returns S_OK, the returned condition tree (which need not be a leaf node) is used. If it returns S_FALSE, then normal processing ia resumed, which generates a leaf node.

A query parser has condition generators preregistered for the known semantic types representing numbers, Booleans, date/time and file paths.

Requirements

Minimum supported client

Windows XP with SP2, Windows Vista [desktop apps only]

Minimum supported server

Windows Server 2003 with SP1 [desktop apps only]

Header

Structuredquery.h

IDL

Structuredquery.idl

See also

Reference
IConditionFactory
CONDITION_TYPE
CONDITION_OPERATION
CONDITION_CREATION_OPTIONS
ICondition
ICondition2

 

 

Show: