PortAudio 2.0

structuredquery.h

Go to the documentation of this file.
00001 
00002 
00003 /* this ALWAYS GENERATED file contains the definitions for the interfaces */
00004 
00005 
00006  /* File created by MIDL compiler version 7.00.0499 */
00007 /* Compiler settings for structuredquery.idl:
00008     Oicf, W1, Zp8, env=Win32 (32b run)
00009     protocol : dce , ms_ext, c_ext, robust
00010     error checks: allocation ref bounds_check enum stub_data 
00011     VC __declspec() decoration level: 
00012          __declspec(uuid()), __declspec(selectany), __declspec(novtable)
00013          DECLSPEC_UUID(), MIDL_INTERFACE()
00014 */
00015 //@@MIDL_FILE_HEADING(  )
00016 
00017 #pragma warning( disable: 4049 )  /* more than 64k source lines */
00018 
00019 
00020 /* verify that the <rpcndr.h> version is high enough to compile this file*/
00021 #ifndef __REQUIRED_RPCNDR_H_VERSION__
00022 #define __REQUIRED_RPCNDR_H_VERSION__ 475
00023 #endif
00024 
00025 /* verify that the <rpcsal.h> version is high enough to compile this file*/
00026 #ifndef __REQUIRED_RPCSAL_H_VERSION__
00027 #define __REQUIRED_RPCSAL_H_VERSION__ 100
00028 #endif
00029 
00030 #include "rpc.h"
00031 #include "rpcndr.h"
00032 
00033 #ifndef __RPCNDR_H_VERSION__
00034 #error this stub requires an updated version of <rpcndr.h>
00035 #endif // __RPCNDR_H_VERSION__
00036 
00037 #ifndef COM_NO_WINDOWS_H
00038 #include "windows.h"
00039 #include "ole2.h"
00040 #endif /*COM_NO_WINDOWS_H*/
00041 
00042 #ifndef __structuredquery_h__
00043 #define __structuredquery_h__
00044 
00045 #if defined(_MSC_VER) && (_MSC_VER >= 1020)
00046 #pragma once
00047 #endif
00048 
00049 /* Forward Declarations */ 
00050 
00051 #ifndef __IQueryParser_FWD_DEFINED__
00052 #define __IQueryParser_FWD_DEFINED__
00053 typedef interface IQueryParser IQueryParser;
00054 #endif  /* __IQueryParser_FWD_DEFINED__ */
00055 
00056 
00057 #ifndef __IConditionFactory_FWD_DEFINED__
00058 #define __IConditionFactory_FWD_DEFINED__
00059 typedef interface IConditionFactory IConditionFactory;
00060 #endif  /* __IConditionFactory_FWD_DEFINED__ */
00061 
00062 
00063 #ifndef __IQuerySolution_FWD_DEFINED__
00064 #define __IQuerySolution_FWD_DEFINED__
00065 typedef interface IQuerySolution IQuerySolution;
00066 #endif  /* __IQuerySolution_FWD_DEFINED__ */
00067 
00068 
00069 #ifndef __ICondition_FWD_DEFINED__
00070 #define __ICondition_FWD_DEFINED__
00071 typedef interface ICondition ICondition;
00072 #endif  /* __ICondition_FWD_DEFINED__ */
00073 
00074 
00075 #ifndef __IConditionGenerator_FWD_DEFINED__
00076 #define __IConditionGenerator_FWD_DEFINED__
00077 typedef interface IConditionGenerator IConditionGenerator;
00078 #endif  /* __IConditionGenerator_FWD_DEFINED__ */
00079 
00080 
00081 #ifndef __IRichChunk_FWD_DEFINED__
00082 #define __IRichChunk_FWD_DEFINED__
00083 typedef interface IRichChunk IRichChunk;
00084 #endif  /* __IRichChunk_FWD_DEFINED__ */
00085 
00086 
00087 #ifndef __IInterval_FWD_DEFINED__
00088 #define __IInterval_FWD_DEFINED__
00089 typedef interface IInterval IInterval;
00090 #endif  /* __IInterval_FWD_DEFINED__ */
00091 
00092 
00093 #ifndef __IMetaData_FWD_DEFINED__
00094 #define __IMetaData_FWD_DEFINED__
00095 typedef interface IMetaData IMetaData;
00096 #endif  /* __IMetaData_FWD_DEFINED__ */
00097 
00098 
00099 #ifndef __IEntity_FWD_DEFINED__
00100 #define __IEntity_FWD_DEFINED__
00101 typedef interface IEntity IEntity;
00102 #endif  /* __IEntity_FWD_DEFINED__ */
00103 
00104 
00105 #ifndef __IRelationship_FWD_DEFINED__
00106 #define __IRelationship_FWD_DEFINED__
00107 typedef interface IRelationship IRelationship;
00108 #endif  /* __IRelationship_FWD_DEFINED__ */
00109 
00110 
00111 #ifndef __INamedEntity_FWD_DEFINED__
00112 #define __INamedEntity_FWD_DEFINED__
00113 typedef interface INamedEntity INamedEntity;
00114 #endif  /* __INamedEntity_FWD_DEFINED__ */
00115 
00116 
00117 #ifndef __ISchemaProvider_FWD_DEFINED__
00118 #define __ISchemaProvider_FWD_DEFINED__
00119 typedef interface ISchemaProvider ISchemaProvider;
00120 #endif  /* __ISchemaProvider_FWD_DEFINED__ */
00121 
00122 
00123 #ifndef __ITokenCollection_FWD_DEFINED__
00124 #define __ITokenCollection_FWD_DEFINED__
00125 typedef interface ITokenCollection ITokenCollection;
00126 #endif  /* __ITokenCollection_FWD_DEFINED__ */
00127 
00128 
00129 #ifndef __INamedEntityCollector_FWD_DEFINED__
00130 #define __INamedEntityCollector_FWD_DEFINED__
00131 typedef interface INamedEntityCollector INamedEntityCollector;
00132 #endif  /* __INamedEntityCollector_FWD_DEFINED__ */
00133 
00134 
00135 #ifndef __ISchemaLocalizerSupport_FWD_DEFINED__
00136 #define __ISchemaLocalizerSupport_FWD_DEFINED__
00137 typedef interface ISchemaLocalizerSupport ISchemaLocalizerSupport;
00138 #endif  /* __ISchemaLocalizerSupport_FWD_DEFINED__ */
00139 
00140 
00141 #ifndef __IQueryParserManager_FWD_DEFINED__
00142 #define __IQueryParserManager_FWD_DEFINED__
00143 typedef interface IQueryParserManager IQueryParserManager;
00144 #endif  /* __IQueryParserManager_FWD_DEFINED__ */
00145 
00146 
00147 #ifndef __QueryParser_FWD_DEFINED__
00148 #define __QueryParser_FWD_DEFINED__
00149 
00150 #ifdef __cplusplus
00151 typedef class QueryParser QueryParser;
00152 #else
00153 typedef struct QueryParser QueryParser;
00154 #endif /* __cplusplus */
00155 
00156 #endif  /* __QueryParser_FWD_DEFINED__ */
00157 
00158 
00159 #ifndef __NegationCondition_FWD_DEFINED__
00160 #define __NegationCondition_FWD_DEFINED__
00161 
00162 #ifdef __cplusplus
00163 typedef class NegationCondition NegationCondition;
00164 #else
00165 typedef struct NegationCondition NegationCondition;
00166 #endif /* __cplusplus */
00167 
00168 #endif  /* __NegationCondition_FWD_DEFINED__ */
00169 
00170 
00171 #ifndef __CompoundCondition_FWD_DEFINED__
00172 #define __CompoundCondition_FWD_DEFINED__
00173 
00174 #ifdef __cplusplus
00175 typedef class CompoundCondition CompoundCondition;
00176 #else
00177 typedef struct CompoundCondition CompoundCondition;
00178 #endif /* __cplusplus */
00179 
00180 #endif  /* __CompoundCondition_FWD_DEFINED__ */
00181 
00182 
00183 #ifndef __LeafCondition_FWD_DEFINED__
00184 #define __LeafCondition_FWD_DEFINED__
00185 
00186 #ifdef __cplusplus
00187 typedef class LeafCondition LeafCondition;
00188 #else
00189 typedef struct LeafCondition LeafCondition;
00190 #endif /* __cplusplus */
00191 
00192 #endif  /* __LeafCondition_FWD_DEFINED__ */
00193 
00194 
00195 #ifndef __ConditionFactory_FWD_DEFINED__
00196 #define __ConditionFactory_FWD_DEFINED__
00197 
00198 #ifdef __cplusplus
00199 typedef class ConditionFactory ConditionFactory;
00200 #else
00201 typedef struct ConditionFactory ConditionFactory;
00202 #endif /* __cplusplus */
00203 
00204 #endif  /* __ConditionFactory_FWD_DEFINED__ */
00205 
00206 
00207 #ifndef __Interval_FWD_DEFINED__
00208 #define __Interval_FWD_DEFINED__
00209 
00210 #ifdef __cplusplus
00211 typedef class Interval Interval;
00212 #else
00213 typedef struct Interval Interval;
00214 #endif /* __cplusplus */
00215 
00216 #endif  /* __Interval_FWD_DEFINED__ */
00217 
00218 
00219 #ifndef __QueryParserManager_FWD_DEFINED__
00220 #define __QueryParserManager_FWD_DEFINED__
00221 
00222 #ifdef __cplusplus
00223 typedef class QueryParserManager QueryParserManager;
00224 #else
00225 typedef struct QueryParserManager QueryParserManager;
00226 #endif /* __cplusplus */
00227 
00228 #endif  /* __QueryParserManager_FWD_DEFINED__ */
00229 
00230 
00231 /* header files for imported files */
00232 #include "oaidl.h"
00233 #include "ocidl.h"
00234 #include "propidl.h"
00235 
00236 #ifdef __cplusplus
00237 extern "C"{
00238 #endif 
00239 
00240 
00241 /* interface __MIDL_itf_structuredquery_0000_0000 */
00242 /* [local] */ 
00243 
00244 
00245 
00246 
00247 
00248 
00249 
00250 
00251 
00252 
00253 
00254 typedef /* [v1_enum] */ 
00255 enum tagCONDITION_TYPE
00256     {   CT_AND_CONDITION        = 0,
00257         CT_OR_CONDITION = ( CT_AND_CONDITION + 1 ) ,
00258         CT_NOT_CONDITION        = ( CT_OR_CONDITION + 1 ) ,
00259         CT_LEAF_CONDITION       = ( CT_NOT_CONDITION + 1 ) 
00260     }   CONDITION_TYPE;
00261 
00262 typedef /* [v1_enum] */ 
00263 enum tagCONDITION_OPERATION
00264     {   COP_IMPLICIT    = 0,
00265         COP_EQUAL       = ( COP_IMPLICIT + 1 ) ,
00266         COP_NOTEQUAL    = ( COP_EQUAL + 1 ) ,
00267         COP_LESSTHAN    = ( COP_NOTEQUAL + 1 ) ,
00268         COP_GREATERTHAN = ( COP_LESSTHAN + 1 ) ,
00269         COP_LESSTHANOREQUAL     = ( COP_GREATERTHAN + 1 ) ,
00270         COP_GREATERTHANOREQUAL  = ( COP_LESSTHANOREQUAL + 1 ) ,
00271         COP_VALUE_STARTSWITH    = ( COP_GREATERTHANOREQUAL + 1 ) ,
00272         COP_VALUE_ENDSWITH      = ( COP_VALUE_STARTSWITH + 1 ) ,
00273         COP_VALUE_CONTAINS      = ( COP_VALUE_ENDSWITH + 1 ) ,
00274         COP_VALUE_NOTCONTAINS   = ( COP_VALUE_CONTAINS + 1 ) ,
00275         COP_DOSWILDCARDS        = ( COP_VALUE_NOTCONTAINS + 1 ) ,
00276         COP_WORD_EQUAL  = ( COP_DOSWILDCARDS + 1 ) ,
00277         COP_WORD_STARTSWITH     = ( COP_WORD_EQUAL + 1 ) ,
00278         COP_APPLICATION_SPECIFIC        = ( COP_WORD_STARTSWITH + 1 ) 
00279     }   CONDITION_OPERATION;
00280 
00281 typedef /* [v1_enum] */ 
00282 enum tagSTRUCTURED_QUERY_SINGLE_OPTION
00283     {   SQSO_SCHEMA     = 0,
00284         SQSO_LOCALE_WORD_BREAKING       = ( SQSO_SCHEMA + 1 ) ,
00285         SQSO_WORD_BREAKER       = ( SQSO_LOCALE_WORD_BREAKING + 1 ) ,
00286         SQSO_NATURAL_SYNTAX     = ( SQSO_WORD_BREAKER + 1 ) ,
00287         SQSO_AUTOMATIC_WILDCARD = ( SQSO_NATURAL_SYNTAX + 1 ) ,
00288         SQSO_TRACE_LEVEL        = ( SQSO_AUTOMATIC_WILDCARD + 1 ) ,
00289         SQSO_LANGUAGE_KEYWORDS  = ( SQSO_TRACE_LEVEL + 1 ) 
00290     }   STRUCTURED_QUERY_SINGLE_OPTION;
00291 
00292 typedef /* [v1_enum] */ 
00293 enum tagSTRUCTURED_QUERY_MULTIOPTION
00294     {   SQMO_VIRTUAL_PROPERTY   = 0,
00295         SQMO_DEFAULT_PROPERTY   = ( SQMO_VIRTUAL_PROPERTY + 1 ) ,
00296         SQMO_GENERATOR_FOR_TYPE = ( SQMO_DEFAULT_PROPERTY + 1 ) 
00297     }   STRUCTURED_QUERY_MULTIOPTION;
00298 
00299 typedef /* [v1_enum] */ 
00300 enum tagSTRUCTURED_QUERY_PARSE_ERROR
00301     {   SQPE_NONE       = 0,
00302         SQPE_EXTRA_OPENING_PARENTHESIS  = ( SQPE_NONE + 1 ) ,
00303         SQPE_EXTRA_CLOSING_PARENTHESIS  = ( SQPE_EXTRA_OPENING_PARENTHESIS + 1 ) ,
00304         SQPE_IGNORED_MODIFIER   = ( SQPE_EXTRA_CLOSING_PARENTHESIS + 1 ) ,
00305         SQPE_IGNORED_CONNECTOR  = ( SQPE_IGNORED_MODIFIER + 1 ) ,
00306         SQPE_IGNORED_KEYWORD    = ( SQPE_IGNORED_CONNECTOR + 1 ) ,
00307         SQPE_UNHANDLED  = ( SQPE_IGNORED_KEYWORD + 1 ) 
00308     }   STRUCTURED_QUERY_PARSE_ERROR;
00309 
00310 /* [v1_enum] */ 
00311 enum tagSTRUCTURED_QUERY_RESOLVE_OPTION
00312     {   SQRO_DONT_RESOLVE_DATETIME      = 0x1,
00313         SQRO_ALWAYS_ONE_INTERVAL        = 0x2,
00314         SQRO_DONT_SIMPLIFY_CONDITION_TREES      = 0x4,
00315         SQRO_DONT_MAP_RELATIONS = 0x8,
00316         SQRO_DONT_RESOLVE_RANGES        = 0x10,
00317         SQRO_DONT_REMOVE_UNRESTRICTED_KEYWORDS  = 0x20,
00318         SQRO_DONT_SPLIT_WORDS   = 0x40,
00319         SQRO_IGNORE_PHRASE_ORDER        = 0x80
00320     } ;
00321 typedef int STRUCTURED_QUERY_RESOLVE_OPTION;
00322 
00323 typedef /* [v1_enum] */ 
00324 enum tagINTERVAL_LIMIT_KIND
00325     {   ILK_EXPLICIT_INCLUDED   = 0,
00326         ILK_EXPLICIT_EXCLUDED   = ( ILK_EXPLICIT_INCLUDED + 1 ) ,
00327         ILK_NEGATIVE_INFINITY   = ( ILK_EXPLICIT_EXCLUDED + 1 ) ,
00328         ILK_POSITIVE_INFINITY   = ( ILK_NEGATIVE_INFINITY + 1 ) 
00329     }   INTERVAL_LIMIT_KIND;
00330 
00331 typedef /* [v1_enum] */ 
00332 enum tagQUERY_PARSER_MANAGER_OPTION
00333     {   QPMO_SCHEMA_BINARY_NAME = 0,
00334         QPMO_PRELOCALIZED_SCHEMA_BINARY_PATH    = ( QPMO_SCHEMA_BINARY_NAME + 1 ) ,
00335         QPMO_UNLOCALIZED_SCHEMA_BINARY_PATH     = ( QPMO_PRELOCALIZED_SCHEMA_BINARY_PATH + 1 ) ,
00336         QPMO_LOCALIZED_SCHEMA_BINARY_PATH       = ( QPMO_UNLOCALIZED_SCHEMA_BINARY_PATH + 1 ) ,
00337         QPMO_APPEND_LCID_TO_LOCALIZED_PATH      = ( QPMO_LOCALIZED_SCHEMA_BINARY_PATH + 1 ) ,
00338         QPMO_LOCALIZER_SUPPORT  = ( QPMO_APPEND_LCID_TO_LOCALIZED_PATH + 1 ) 
00339     }   QUERY_PARSER_MANAGER_OPTION;
00340 
00341 
00342 
00343 extern RPC_IF_HANDLE __MIDL_itf_structuredquery_0000_0000_v0_0_c_ifspec;
00344 extern RPC_IF_HANDLE __MIDL_itf_structuredquery_0000_0000_v0_0_s_ifspec;
00345 
00346 #ifndef __IQueryParser_INTERFACE_DEFINED__
00347 #define __IQueryParser_INTERFACE_DEFINED__
00348 
00349 /* interface IQueryParser */
00350 /* [unique][uuid][object] */ 
00351 
00352 
00353 EXTERN_C const IID IID_IQueryParser;
00354 
00355 #if defined(__cplusplus) && !defined(CINTERFACE)
00356     
00357     MIDL_INTERFACE("2EBDEE67-3505-43f8-9946-EA44ABC8E5B0")
00358     IQueryParser : public IUnknown
00359     {
00360     public:
00361         virtual HRESULT STDMETHODCALLTYPE Parse( 
00362             /* [in] */ __RPC__in LPCWSTR pszInputString,
00363             /* [in] */ __RPC__in_opt IEnumUnknown *pCustomProperties,
00364             /* [retval][out] */ __RPC__deref_out_opt IQuerySolution **ppSolution) = 0;
00365         
00366         virtual HRESULT STDMETHODCALLTYPE SetOption( 
00367             /* [in] */ STRUCTURED_QUERY_SINGLE_OPTION option,
00368             /* [in] */ __RPC__in const PROPVARIANT *pOptionValue) = 0;
00369         
00370         virtual HRESULT STDMETHODCALLTYPE GetOption( 
00371             /* [in] */ STRUCTURED_QUERY_SINGLE_OPTION option,
00372             /* [retval][out] */ __RPC__out PROPVARIANT *pOptionValue) = 0;
00373         
00374         virtual HRESULT STDMETHODCALLTYPE SetMultiOption( 
00375             /* [in] */ STRUCTURED_QUERY_MULTIOPTION option,
00376             /* [in] */ __RPC__in LPCWSTR pszOptionKey,
00377             /* [in] */ __RPC__in const PROPVARIANT *pOptionValue) = 0;
00378         
00379         virtual HRESULT STDMETHODCALLTYPE GetSchemaProvider( 
00380             /* [retval][out] */ __RPC__deref_out_opt ISchemaProvider **ppSchemaProvider) = 0;
00381         
00382         virtual HRESULT STDMETHODCALLTYPE RestateToString( 
00383             /* [in] */ __RPC__in_opt ICondition *pCondition,
00384             /* [in] */ BOOL fUseEnglish,
00385             /* [out] */ __RPC__deref_out_opt LPWSTR *ppszQueryString) = 0;
00386         
00387         virtual HRESULT STDMETHODCALLTYPE ParsePropertyValue( 
00388             /* [in] */ __RPC__in LPCWSTR pszPropertyName,
00389             /* [in] */ __RPC__in LPCWSTR pszInputString,
00390             /* [retval][out] */ __RPC__deref_out_opt IQuerySolution **ppSolution) = 0;
00391         
00392         virtual HRESULT STDMETHODCALLTYPE RestatePropertyValueToString( 
00393             /* [in] */ __RPC__in_opt ICondition *pCondition,
00394             /* [in] */ BOOL fUseEnglish,
00395             /* [out] */ __RPC__deref_out_opt LPWSTR *ppszPropertyName,
00396             /* [out] */ __RPC__deref_out_opt LPWSTR *ppszQueryString) = 0;
00397         
00398     };
00399     
00400 #else   /* C style interface */
00401 
00402     typedef struct IQueryParserVtbl
00403     {
00404         BEGIN_INTERFACE
00405         
00406         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
00407             IQueryParser * This,
00408             /* [in] */ __RPC__in REFIID riid,
00409             /* [iid_is][out] */ 
00410             __RPC__deref_out  void **ppvObject);
00411         
00412         ULONG ( STDMETHODCALLTYPE *AddRef )( 
00413             IQueryParser * This);
00414         
00415         ULONG ( STDMETHODCALLTYPE *Release )( 
00416             IQueryParser * This);
00417         
00418         HRESULT ( STDMETHODCALLTYPE *Parse )( 
00419             IQueryParser * This,
00420             /* [in] */ __RPC__in LPCWSTR pszInputString,
00421             /* [in] */ __RPC__in_opt IEnumUnknown *pCustomProperties,
00422             /* [retval][out] */ __RPC__deref_out_opt IQuerySolution **ppSolution);
00423         
00424         HRESULT ( STDMETHODCALLTYPE *SetOption )( 
00425             IQueryParser * This,
00426             /* [in] */ STRUCTURED_QUERY_SINGLE_OPTION option,
00427             /* [in] */ __RPC__in const PROPVARIANT *pOptionValue);
00428         
00429         HRESULT ( STDMETHODCALLTYPE *GetOption )( 
00430             IQueryParser * This,
00431             /* [in] */ STRUCTURED_QUERY_SINGLE_OPTION option,
00432             /* [retval][out] */ __RPC__out PROPVARIANT *pOptionValue);
00433         
00434         HRESULT ( STDMETHODCALLTYPE *SetMultiOption )( 
00435             IQueryParser * This,
00436             /* [in] */ STRUCTURED_QUERY_MULTIOPTION option,
00437             /* [in] */ __RPC__in LPCWSTR pszOptionKey,
00438             /* [in] */ __RPC__in const PROPVARIANT *pOptionValue);
00439         
00440         HRESULT ( STDMETHODCALLTYPE *GetSchemaProvider )( 
00441             IQueryParser * This,
00442             /* [retval][out] */ __RPC__deref_out_opt ISchemaProvider **ppSchemaProvider);
00443         
00444         HRESULT ( STDMETHODCALLTYPE *RestateToString )( 
00445             IQueryParser * This,
00446             /* [in] */ __RPC__in_opt ICondition *pCondition,
00447             /* [in] */ BOOL fUseEnglish,
00448             /* [out] */ __RPC__deref_out_opt LPWSTR *ppszQueryString);
00449         
00450         HRESULT ( STDMETHODCALLTYPE *ParsePropertyValue )( 
00451             IQueryParser * This,
00452             /* [in] */ __RPC__in LPCWSTR pszPropertyName,
00453             /* [in] */ __RPC__in LPCWSTR pszInputString,
00454             /* [retval][out] */ __RPC__deref_out_opt IQuerySolution **ppSolution);
00455         
00456         HRESULT ( STDMETHODCALLTYPE *RestatePropertyValueToString )( 
00457             IQueryParser * This,
00458             /* [in] */ __RPC__in_opt ICondition *pCondition,
00459             /* [in] */ BOOL fUseEnglish,
00460             /* [out] */ __RPC__deref_out_opt LPWSTR *ppszPropertyName,
00461             /* [out] */ __RPC__deref_out_opt LPWSTR *ppszQueryString);
00462         
00463         END_INTERFACE
00464     } IQueryParserVtbl;
00465 
00466     interface IQueryParser
00467     {
00468         CONST_VTBL struct IQueryParserVtbl *lpVtbl;
00469     };
00470 
00471     
00472 
00473 #ifdef COBJMACROS
00474 
00475 
00476 #define IQueryParser_QueryInterface(This,riid,ppvObject)        \
00477     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
00478 
00479 #define IQueryParser_AddRef(This)       \
00480     ( (This)->lpVtbl -> AddRef(This) ) 
00481 
00482 #define IQueryParser_Release(This)      \
00483     ( (This)->lpVtbl -> Release(This) ) 
00484 
00485 
00486 #define IQueryParser_Parse(This,pszInputString,pCustomProperties,ppSolution)    \
00487     ( (This)->lpVtbl -> Parse(This,pszInputString,pCustomProperties,ppSolution) ) 
00488 
00489 #define IQueryParser_SetOption(This,option,pOptionValue)        \
00490     ( (This)->lpVtbl -> SetOption(This,option,pOptionValue) ) 
00491 
00492 #define IQueryParser_GetOption(This,option,pOptionValue)        \
00493     ( (This)->lpVtbl -> GetOption(This,option,pOptionValue) ) 
00494 
00495 #define IQueryParser_SetMultiOption(This,option,pszOptionKey,pOptionValue)      \
00496     ( (This)->lpVtbl -> SetMultiOption(This,option,pszOptionKey,pOptionValue) ) 
00497 
00498 #define IQueryParser_GetSchemaProvider(This,ppSchemaProvider)   \
00499     ( (This)->lpVtbl -> GetSchemaProvider(This,ppSchemaProvider) ) 
00500 
00501 #define IQueryParser_RestateToString(This,pCondition,fUseEnglish,ppszQueryString)       \
00502     ( (This)->lpVtbl -> RestateToString(This,pCondition,fUseEnglish,ppszQueryString) ) 
00503 
00504 #define IQueryParser_ParsePropertyValue(This,pszPropertyName,pszInputString,ppSolution) \
00505     ( (This)->lpVtbl -> ParsePropertyValue(This,pszPropertyName,pszInputString,ppSolution) ) 
00506 
00507 #define IQueryParser_RestatePropertyValueToString(This,pCondition,fUseEnglish,ppszPropertyName,ppszQueryString) \
00508     ( (This)->lpVtbl -> RestatePropertyValueToString(This,pCondition,fUseEnglish,ppszPropertyName,ppszQueryString) ) 
00509 
00510 #endif /* COBJMACROS */
00511 
00512 
00513 #endif  /* C style interface */
00514 
00515 
00516 
00517 
00518 #endif  /* __IQueryParser_INTERFACE_DEFINED__ */
00519 
00520 
00521 #ifndef __IConditionFactory_INTERFACE_DEFINED__
00522 #define __IConditionFactory_INTERFACE_DEFINED__
00523 
00524 /* interface IConditionFactory */
00525 /* [unique][uuid][object] */ 
00526 
00527 
00528 EXTERN_C const IID IID_IConditionFactory;
00529 
00530 #if defined(__cplusplus) && !defined(CINTERFACE)
00531     
00532     MIDL_INTERFACE("A5EFE073-B16F-474f-9F3E-9F8B497A3E08")
00533     IConditionFactory : public IUnknown
00534     {
00535     public:
00536         virtual HRESULT STDMETHODCALLTYPE MakeNot( 
00537             /* [in] */ __RPC__in_opt ICondition *pSubCondition,
00538             /* [in] */ BOOL simplify,
00539             /* [retval][out] */ __RPC__deref_out_opt ICondition **ppResultQuery) = 0;
00540         
00541         virtual HRESULT STDMETHODCALLTYPE MakeAndOr( 
00542             /* [in] */ CONDITION_TYPE nodeType,
00543             /* [in] */ __RPC__in_opt IEnumUnknown *pSubConditions,
00544             /* [in] */ BOOL simplify,
00545             /* [retval][out] */ __RPC__deref_out_opt ICondition **ppResultQuery) = 0;
00546         
00547         virtual HRESULT STDMETHODCALLTYPE MakeLeaf( 
00548             /* [unique][in] */ __RPC__in_opt LPCWSTR pszPropertyName,
00549             /* [in] */ CONDITION_OPERATION op,
00550             /* [unique][in] */ __RPC__in_opt LPCWSTR pszValueType,
00551             /* [in] */ __RPC__in const PROPVARIANT *pValue,
00552             /* [in] */ __RPC__in_opt IRichChunk *pPropertyNameTerm,
00553             /* [in] */ __RPC__in_opt IRichChunk *pOperationTerm,
00554             /* [in] */ __RPC__in_opt IRichChunk *pValueTerm,
00555             /* [in] */ BOOL expand,
00556             /* [retval][out] */ __RPC__deref_out_opt ICondition **ppResultQuery) = 0;
00557         
00558         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Resolve( 
00559             /* [in] */ 
00560             __in  ICondition *pConditionTree,
00561             /* [in] */ 
00562             __in  STRUCTURED_QUERY_RESOLVE_OPTION sqro,
00563             /* [ref][in] */ 
00564             __in_opt  const SYSTEMTIME *pstReferenceTime,
00565             /* [retval][out] */ 
00566             __out  ICondition **ppResolvedConditionTree) = 0;
00567         
00568     };
00569     
00570 #else   /* C style interface */
00571 
00572     typedef struct IConditionFactoryVtbl
00573     {
00574         BEGIN_INTERFACE
00575         
00576         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
00577             IConditionFactory * This,
00578             /* [in] */ __RPC__in REFIID riid,
00579             /* [iid_is][out] */ 
00580             __RPC__deref_out  void **ppvObject);
00581         
00582         ULONG ( STDMETHODCALLTYPE *AddRef )( 
00583             IConditionFactory * This);
00584         
00585         ULONG ( STDMETHODCALLTYPE *Release )( 
00586             IConditionFactory * This);
00587         
00588         HRESULT ( STDMETHODCALLTYPE *MakeNot )( 
00589             IConditionFactory * This,
00590             /* [in] */ __RPC__in_opt ICondition *pSubCondition,
00591             /* [in] */ BOOL simplify,
00592             /* [retval][out] */ __RPC__deref_out_opt ICondition **ppResultQuery);
00593         
00594         HRESULT ( STDMETHODCALLTYPE *MakeAndOr )( 
00595             IConditionFactory * This,
00596             /* [in] */ CONDITION_TYPE nodeType,
00597             /* [in] */ __RPC__in_opt IEnumUnknown *pSubConditions,
00598             /* [in] */ BOOL simplify,
00599             /* [retval][out] */ __RPC__deref_out_opt ICondition **ppResultQuery);
00600         
00601         HRESULT ( STDMETHODCALLTYPE *MakeLeaf )( 
00602             IConditionFactory * This,
00603             /* [unique][in] */ __RPC__in_opt LPCWSTR pszPropertyName,
00604             /* [in] */ CONDITION_OPERATION op,
00605             /* [unique][in] */ __RPC__in_opt LPCWSTR pszValueType,
00606             /* [in] */ __RPC__in const PROPVARIANT *pValue,
00607             /* [in] */ __RPC__in_opt IRichChunk *pPropertyNameTerm,
00608             /* [in] */ __RPC__in_opt IRichChunk *pOperationTerm,
00609             /* [in] */ __RPC__in_opt IRichChunk *pValueTerm,
00610             /* [in] */ BOOL expand,
00611             /* [retval][out] */ __RPC__deref_out_opt ICondition **ppResultQuery);
00612         
00613         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Resolve )( 
00614             IConditionFactory * This,
00615             /* [in] */ 
00616             __in  ICondition *pConditionTree,
00617             /* [in] */ 
00618             __in  STRUCTURED_QUERY_RESOLVE_OPTION sqro,
00619             /* [ref][in] */ 
00620             __in_opt  const SYSTEMTIME *pstReferenceTime,
00621             /* [retval][out] */ 
00622             __out  ICondition **ppResolvedConditionTree);
00623         
00624         END_INTERFACE
00625     } IConditionFactoryVtbl;
00626 
00627     interface IConditionFactory
00628     {
00629         CONST_VTBL struct IConditionFactoryVtbl *lpVtbl;
00630     };
00631 
00632     
00633 
00634 #ifdef COBJMACROS
00635 
00636 
00637 #define IConditionFactory_QueryInterface(This,riid,ppvObject)   \
00638     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
00639 
00640 #define IConditionFactory_AddRef(This)  \
00641     ( (This)->lpVtbl -> AddRef(This) ) 
00642 
00643 #define IConditionFactory_Release(This) \
00644     ( (This)->lpVtbl -> Release(This) ) 
00645 
00646 
00647 #define IConditionFactory_MakeNot(This,pSubCondition,simplify,ppResultQuery)    \
00648     ( (This)->lpVtbl -> MakeNot(This,pSubCondition,simplify,ppResultQuery) ) 
00649 
00650 #define IConditionFactory_MakeAndOr(This,nodeType,pSubConditions,simplify,ppResultQuery)        \
00651     ( (This)->lpVtbl -> MakeAndOr(This,nodeType,pSubConditions,simplify,ppResultQuery) ) 
00652 
00653 #define IConditionFactory_MakeLeaf(This,pszPropertyName,op,pszValueType,pValue,pPropertyNameTerm,pOperationTerm,pValueTerm,expand,ppResultQuery)        \
00654     ( (This)->lpVtbl -> MakeLeaf(This,pszPropertyName,op,pszValueType,pValue,pPropertyNameTerm,pOperationTerm,pValueTerm,expand,ppResultQuery) ) 
00655 
00656 #define IConditionFactory_Resolve(This,pConditionTree,sqro,pstReferenceTime,ppResolvedConditionTree)    \
00657     ( (This)->lpVtbl -> Resolve(This,pConditionTree,sqro,pstReferenceTime,ppResolvedConditionTree) ) 
00658 
00659 #endif /* COBJMACROS */
00660 
00661 
00662 #endif  /* C style interface */
00663 
00664 
00665 
00666 
00667 #endif  /* __IConditionFactory_INTERFACE_DEFINED__ */
00668 
00669 
00670 #ifndef __IQuerySolution_INTERFACE_DEFINED__
00671 #define __IQuerySolution_INTERFACE_DEFINED__
00672 
00673 /* interface IQuerySolution */
00674 /* [unique][uuid][object] */ 
00675 
00676 
00677 EXTERN_C const IID IID_IQuerySolution;
00678 
00679 #if defined(__cplusplus) && !defined(CINTERFACE)
00680     
00681     MIDL_INTERFACE("D6EBC66B-8921-4193-AFDD-A1789FB7FF57")
00682     IQuerySolution : public IConditionFactory
00683     {
00684     public:
00685         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetQuery( 
00686             /* [out] */ 
00687             __out_opt  ICondition **ppQueryNode,
00688             /* [out] */ 
00689             __out_opt  IEntity **ppMainType) = 0;
00690         
00691         virtual HRESULT STDMETHODCALLTYPE GetErrors( 
00692             /* [in] */ __RPC__in REFIID riid,
00693             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **ppParseErrors) = 0;
00694         
00695         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetLexicalData( 
00696             /* [out] */ 
00697             __deref_opt_out  LPWSTR *ppszInputString,
00698             /* [out] */ 
00699             __out_opt  ITokenCollection **ppTokens,
00700             /* [out] */ 
00701             __out_opt  LCID *pLocale,
00702             /* [out] */ 
00703             __out_opt  IUnknown **ppWordBreaker) = 0;
00704         
00705     };
00706     
00707 #else   /* C style interface */
00708 
00709     typedef struct IQuerySolutionVtbl
00710     {
00711         BEGIN_INTERFACE
00712         
00713         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
00714             IQuerySolution * This,
00715             /* [in] */ __RPC__in REFIID riid,
00716             /* [iid_is][out] */ 
00717             __RPC__deref_out  void **ppvObject);
00718         
00719         ULONG ( STDMETHODCALLTYPE *AddRef )( 
00720             IQuerySolution * This);
00721         
00722         ULONG ( STDMETHODCALLTYPE *Release )( 
00723             IQuerySolution * This);
00724         
00725         HRESULT ( STDMETHODCALLTYPE *MakeNot )( 
00726             IQuerySolution * This,
00727             /* [in] */ __RPC__in_opt ICondition *pSubCondition,
00728             /* [in] */ BOOL simplify,
00729             /* [retval][out] */ __RPC__deref_out_opt ICondition **ppResultQuery);
00730         
00731         HRESULT ( STDMETHODCALLTYPE *MakeAndOr )( 
00732             IQuerySolution * This,
00733             /* [in] */ CONDITION_TYPE nodeType,
00734             /* [in] */ __RPC__in_opt IEnumUnknown *pSubConditions,
00735             /* [in] */ BOOL simplify,
00736             /* [retval][out] */ __RPC__deref_out_opt ICondition **ppResultQuery);
00737         
00738         HRESULT ( STDMETHODCALLTYPE *MakeLeaf )( 
00739             IQuerySolution * This,
00740             /* [unique][in] */ __RPC__in_opt LPCWSTR pszPropertyName,
00741             /* [in] */ CONDITION_OPERATION op,
00742             /* [unique][in] */ __RPC__in_opt LPCWSTR pszValueType,
00743             /* [in] */ __RPC__in const PROPVARIANT *pValue,
00744             /* [in] */ __RPC__in_opt IRichChunk *pPropertyNameTerm,
00745             /* [in] */ __RPC__in_opt IRichChunk *pOperationTerm,
00746             /* [in] */ __RPC__in_opt IRichChunk *pValueTerm,
00747             /* [in] */ BOOL expand,
00748             /* [retval][out] */ __RPC__deref_out_opt ICondition **ppResultQuery);
00749         
00750         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Resolve )( 
00751             IQuerySolution * This,
00752             /* [in] */ 
00753             __in  ICondition *pConditionTree,
00754             /* [in] */ 
00755             __in  STRUCTURED_QUERY_RESOLVE_OPTION sqro,
00756             /* [ref][in] */ 
00757             __in_opt  const SYSTEMTIME *pstReferenceTime,
00758             /* [retval][out] */ 
00759             __out  ICondition **ppResolvedConditionTree);
00760         
00761         /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetQuery )( 
00762             IQuerySolution * This,
00763             /* [out] */ 
00764             __out_opt  ICondition **ppQueryNode,
00765             /* [out] */ 
00766             __out_opt  IEntity **ppMainType);
00767         
00768         HRESULT ( STDMETHODCALLTYPE *GetErrors )( 
00769             IQuerySolution * This,
00770             /* [in] */ __RPC__in REFIID riid,
00771             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **ppParseErrors);
00772         
00773         /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetLexicalData )( 
00774             IQuerySolution * This,
00775             /* [out] */ 
00776             __deref_opt_out  LPWSTR *ppszInputString,
00777             /* [out] */ 
00778             __out_opt  ITokenCollection **ppTokens,
00779             /* [out] */ 
00780             __out_opt  LCID *pLocale,
00781             /* [out] */ 
00782             __out_opt  IUnknown **ppWordBreaker);
00783         
00784         END_INTERFACE
00785     } IQuerySolutionVtbl;
00786 
00787     interface IQuerySolution
00788     {
00789         CONST_VTBL struct IQuerySolutionVtbl *lpVtbl;
00790     };
00791 
00792     
00793 
00794 #ifdef COBJMACROS
00795 
00796 
00797 #define IQuerySolution_QueryInterface(This,riid,ppvObject)      \
00798     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
00799 
00800 #define IQuerySolution_AddRef(This)     \
00801     ( (This)->lpVtbl -> AddRef(This) ) 
00802 
00803 #define IQuerySolution_Release(This)    \
00804     ( (This)->lpVtbl -> Release(This) ) 
00805 
00806 
00807 #define IQuerySolution_MakeNot(This,pSubCondition,simplify,ppResultQuery)       \
00808     ( (This)->lpVtbl -> MakeNot(This,pSubCondition,simplify,ppResultQuery) ) 
00809 
00810 #define IQuerySolution_MakeAndOr(This,nodeType,pSubConditions,simplify,ppResultQuery)   \
00811     ( (This)->lpVtbl -> MakeAndOr(This,nodeType,pSubConditions,simplify,ppResultQuery) ) 
00812 
00813 #define IQuerySolution_MakeLeaf(This,pszPropertyName,op,pszValueType,pValue,pPropertyNameTerm,pOperationTerm,pValueTerm,expand,ppResultQuery)   \
00814     ( (This)->lpVtbl -> MakeLeaf(This,pszPropertyName,op,pszValueType,pValue,pPropertyNameTerm,pOperationTerm,pValueTerm,expand,ppResultQuery) ) 
00815 
00816 #define IQuerySolution_Resolve(This,pConditionTree,sqro,pstReferenceTime,ppResolvedConditionTree)       \
00817     ( (This)->lpVtbl -> Resolve(This,pConditionTree,sqro,pstReferenceTime,ppResolvedConditionTree) ) 
00818 
00819 
00820 #define IQuerySolution_GetQuery(This,ppQueryNode,ppMainType)    \
00821     ( (This)->lpVtbl -> GetQuery(This,ppQueryNode,ppMainType) ) 
00822 
00823 #define IQuerySolution_GetErrors(This,riid,ppParseErrors)       \
00824     ( (This)->lpVtbl -> GetErrors(This,riid,ppParseErrors) ) 
00825 
00826 #define IQuerySolution_GetLexicalData(This,ppszInputString,ppTokens,pLocale,ppWordBreaker)      \
00827     ( (This)->lpVtbl -> GetLexicalData(This,ppszInputString,ppTokens,pLocale,ppWordBreaker) ) 
00828 
00829 #endif /* COBJMACROS */
00830 
00831 
00832 #endif  /* C style interface */
00833 
00834 
00835 
00836 
00837 #endif  /* __IQuerySolution_INTERFACE_DEFINED__ */
00838 
00839 
00840 #ifndef __ICondition_INTERFACE_DEFINED__
00841 #define __ICondition_INTERFACE_DEFINED__
00842 
00843 /* interface ICondition */
00844 /* [unique][uuid][object] */ 
00845 
00846 
00847 EXTERN_C const IID IID_ICondition;
00848 
00849 #if defined(__cplusplus) && !defined(CINTERFACE)
00850     
00851     MIDL_INTERFACE("0FC988D4-C935-4b97-A973-46282EA175C8")
00852     ICondition : public IPersistStream
00853     {
00854     public:
00855         virtual HRESULT STDMETHODCALLTYPE GetConditionType( 
00856             /* [retval][out] */ __RPC__out CONDITION_TYPE *pNodeType) = 0;
00857         
00858         virtual HRESULT STDMETHODCALLTYPE GetSubConditions( 
00859             /* [in] */ __RPC__in REFIID riid,
00860             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **ppv) = 0;
00861         
00862         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetComparisonInfo( 
00863             /* [out] */ 
00864             __deref_opt_out  LPWSTR *ppszPropertyName,
00865             /* [out] */ 
00866             __out_opt  CONDITION_OPERATION *pOperation,
00867             /* [out] */ 
00868             __out_opt  PROPVARIANT *pValue) = 0;
00869         
00870         virtual HRESULT STDMETHODCALLTYPE GetValueType( 
00871             /* [retval][out] */ __RPC__deref_out_opt LPWSTR *ppszValueTypeName) = 0;
00872         
00873         virtual HRESULT STDMETHODCALLTYPE GetValueNormalization( 
00874             /* [retval][out] */ __RPC__deref_out_opt LPWSTR *ppszNormalization) = 0;
00875         
00876         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetInputTerms( 
00877             /* [out] */ 
00878             __out_opt  IRichChunk **ppPropertyTerm,
00879             /* [out] */ 
00880             __out_opt  IRichChunk **ppOperationTerm,
00881             /* [out] */ 
00882             __out_opt  IRichChunk **ppValueTerm) = 0;
00883         
00884         virtual HRESULT STDMETHODCALLTYPE Clone( 
00885             /* [retval][out] */ __RPC__deref_out_opt ICondition **ppc) = 0;
00886         
00887     };
00888     
00889 #else   /* C style interface */
00890 
00891     typedef struct IConditionVtbl
00892     {
00893         BEGIN_INTERFACE
00894         
00895         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
00896             ICondition * This,
00897             /* [in] */ __RPC__in REFIID riid,
00898             /* [iid_is][out] */ 
00899             __RPC__deref_out  void **ppvObject);
00900         
00901         ULONG ( STDMETHODCALLTYPE *AddRef )( 
00902             ICondition * This);
00903         
00904         ULONG ( STDMETHODCALLTYPE *Release )( 
00905             ICondition * This);
00906         
00907         HRESULT ( STDMETHODCALLTYPE *GetClassID )( 
00908             ICondition * This,
00909             /* [out] */ __RPC__out CLSID *pClassID);
00910         
00911         HRESULT ( STDMETHODCALLTYPE *IsDirty )( 
00912             ICondition * This);
00913         
00914         HRESULT ( STDMETHODCALLTYPE *Load )( 
00915             ICondition * This,
00916             /* [unique][in] */ __RPC__in_opt IStream *pStm);
00917         
00918         HRESULT ( STDMETHODCALLTYPE *Save )( 
00919             ICondition * This,
00920             /* [unique][in] */ __RPC__in_opt IStream *pStm,
00921             /* [in] */ BOOL fClearDirty);
00922         
00923         HRESULT ( STDMETHODCALLTYPE *GetSizeMax )( 
00924             ICondition * This,
00925             /* [out] */ __RPC__out ULARGE_INTEGER *pcbSize);
00926         
00927         HRESULT ( STDMETHODCALLTYPE *GetConditionType )( 
00928             ICondition * This,
00929             /* [retval][out] */ __RPC__out CONDITION_TYPE *pNodeType);
00930         
00931         HRESULT ( STDMETHODCALLTYPE *GetSubConditions )( 
00932             ICondition * This,
00933             /* [in] */ __RPC__in REFIID riid,
00934             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **ppv);
00935         
00936         /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetComparisonInfo )( 
00937             ICondition * This,
00938             /* [out] */ 
00939             __deref_opt_out  LPWSTR *ppszPropertyName,
00940             /* [out] */ 
00941             __out_opt  CONDITION_OPERATION *pOperation,
00942             /* [out] */ 
00943             __out_opt  PROPVARIANT *pValue);
00944         
00945         HRESULT ( STDMETHODCALLTYPE *GetValueType )( 
00946             ICondition * This,
00947             /* [retval][out] */ __RPC__deref_out_opt LPWSTR *ppszValueTypeName);
00948         
00949         HRESULT ( STDMETHODCALLTYPE *GetValueNormalization )( 
00950             ICondition * This,
00951             /* [retval][out] */ __RPC__deref_out_opt LPWSTR *ppszNormalization);
00952         
00953         /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetInputTerms )( 
00954             ICondition * This,
00955             /* [out] */ 
00956             __out_opt  IRichChunk **ppPropertyTerm,
00957             /* [out] */ 
00958             __out_opt  IRichChunk **ppOperationTerm,
00959             /* [out] */ 
00960             __out_opt  IRichChunk **ppValueTerm);
00961         
00962         HRESULT ( STDMETHODCALLTYPE *Clone )( 
00963             ICondition * This,
00964             /* [retval][out] */ __RPC__deref_out_opt ICondition **ppc);
00965         
00966         END_INTERFACE
00967     } IConditionVtbl;
00968 
00969     interface ICondition
00970     {
00971         CONST_VTBL struct IConditionVtbl *lpVtbl;
00972     };
00973 
00974     
00975 
00976 #ifdef COBJMACROS
00977 
00978 
00979 #define ICondition_QueryInterface(This,riid,ppvObject)  \
00980     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
00981 
00982 #define ICondition_AddRef(This) \
00983     ( (This)->lpVtbl -> AddRef(This) ) 
00984 
00985 #define ICondition_Release(This)        \
00986     ( (This)->lpVtbl -> Release(This) ) 
00987 
00988 
00989 #define ICondition_GetClassID(This,pClassID)    \
00990     ( (This)->lpVtbl -> GetClassID(This,pClassID) ) 
00991 
00992 
00993 #define ICondition_IsDirty(This)        \
00994     ( (This)->lpVtbl -> IsDirty(This) ) 
00995 
00996 #define ICondition_Load(This,pStm)      \
00997     ( (This)->lpVtbl -> Load(This,pStm) ) 
00998 
00999 #define ICondition_Save(This,pStm,fClearDirty)  \
01000     ( (This)->lpVtbl -> Save(This,pStm,fClearDirty) ) 
01001 
01002 #define ICondition_GetSizeMax(This,pcbSize)     \
01003     ( (This)->lpVtbl -> GetSizeMax(This,pcbSize) ) 
01004 
01005 
01006 #define ICondition_GetConditionType(This,pNodeType)     \
01007     ( (This)->lpVtbl -> GetConditionType(This,pNodeType) ) 
01008 
01009 #define ICondition_GetSubConditions(This,riid,ppv)      \
01010     ( (This)->lpVtbl -> GetSubConditions(This,riid,ppv) ) 
01011 
01012 #define ICondition_GetComparisonInfo(This,ppszPropertyName,pOperation,pValue)   \
01013     ( (This)->lpVtbl -> GetComparisonInfo(This,ppszPropertyName,pOperation,pValue) ) 
01014 
01015 #define ICondition_GetValueType(This,ppszValueTypeName) \
01016     ( (This)->lpVtbl -> GetValueType(This,ppszValueTypeName) ) 
01017 
01018 #define ICondition_GetValueNormalization(This,ppszNormalization)        \
01019     ( (This)->lpVtbl -> GetValueNormalization(This,ppszNormalization) ) 
01020 
01021 #define ICondition_GetInputTerms(This,ppPropertyTerm,ppOperationTerm,ppValueTerm)       \
01022     ( (This)->lpVtbl -> GetInputTerms(This,ppPropertyTerm,ppOperationTerm,ppValueTerm) ) 
01023 
01024 #define ICondition_Clone(This,ppc)      \
01025     ( (This)->lpVtbl -> Clone(This,ppc) ) 
01026 
01027 #endif /* COBJMACROS */
01028 
01029 
01030 #endif  /* C style interface */
01031 
01032 
01033 
01034 
01035 #endif  /* __ICondition_INTERFACE_DEFINED__ */
01036 
01037 
01038 #ifndef __IConditionGenerator_INTERFACE_DEFINED__
01039 #define __IConditionGenerator_INTERFACE_DEFINED__
01040 
01041 /* interface IConditionGenerator */
01042 /* [unique][uuid][object] */ 
01043 
01044 
01045 EXTERN_C const IID IID_IConditionGenerator;
01046 
01047 #if defined(__cplusplus) && !defined(CINTERFACE)
01048     
01049     MIDL_INTERFACE("92D2CC58-4386-45a3-B98C-7E0CE64A4117")
01050     IConditionGenerator : public IUnknown
01051     {
01052     public:
01053         virtual HRESULT STDMETHODCALLTYPE Initialize( 
01054             /* [in] */ __RPC__in_opt ISchemaProvider *pSchemaProvider) = 0;
01055         
01056         virtual HRESULT STDMETHODCALLTYPE RecognizeNamedEntities( 
01057             /* [in] */ __RPC__in LPCWSTR pszInputString,
01058             /* [in] */ LCID lcid,
01059             /* [in] */ __RPC__in_opt ITokenCollection *pTokenCollection,
01060             /* [out][in] */ __RPC__inout_opt INamedEntityCollector *pNamedEntities) = 0;
01061         
01062         virtual HRESULT STDMETHODCALLTYPE GenerateForLeaf( 
01063             /* [in] */ __RPC__in_opt IConditionFactory *pConditionFactory,
01064             /* [unique][in] */ __RPC__in_opt LPCWSTR pszPropertyName,
01065             /* [in] */ CONDITION_OPERATION op,
01066             /* [unique][in] */ __RPC__in_opt LPCWSTR pszValueType,
01067             /* [in] */ __RPC__in LPCWSTR pszValue,
01068             /* [unique][in] */ __RPC__in_opt LPCWSTR pszValue2,
01069             /* [in] */ __RPC__in_opt IRichChunk *pPropertyNameTerm,
01070             /* [in] */ __RPC__in_opt IRichChunk *pOperationTerm,
01071             /* [in] */ __RPC__in_opt IRichChunk *pValueTerm,
01072             /* [in] */ BOOL automaticWildcard,
01073             /* [out] */ __RPC__out BOOL *pNoStringQuery,
01074             /* [retval][out] */ __RPC__deref_out_opt ICondition **ppQueryExpression) = 0;
01075         
01076         virtual /* [local] */ HRESULT STDMETHODCALLTYPE DefaultPhrase( 
01077             /* [unique][in] */ LPCWSTR pszValueType,
01078             /* [in] */ const PROPVARIANT *ppropvar,
01079             /* [in] */ BOOL fUseEnglish,
01080             /* [retval][out] */ 
01081             __deref_opt_out  LPWSTR *ppszPhrase) = 0;
01082         
01083     };
01084     
01085 #else   /* C style interface */
01086 
01087     typedef struct IConditionGeneratorVtbl
01088     {
01089         BEGIN_INTERFACE
01090         
01091         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
01092             IConditionGenerator * This,
01093             /* [in] */ __RPC__in REFIID riid,
01094             /* [iid_is][out] */ 
01095             __RPC__deref_out  void **ppvObject);
01096         
01097         ULONG ( STDMETHODCALLTYPE *AddRef )( 
01098             IConditionGenerator * This);
01099         
01100         ULONG ( STDMETHODCALLTYPE *Release )( 
01101             IConditionGenerator * This);
01102         
01103         HRESULT ( STDMETHODCALLTYPE *Initialize )( 
01104             IConditionGenerator * This,
01105             /* [in] */ __RPC__in_opt ISchemaProvider *pSchemaProvider);
01106         
01107         HRESULT ( STDMETHODCALLTYPE *RecognizeNamedEntities )( 
01108             IConditionGenerator * This,
01109             /* [in] */ __RPC__in LPCWSTR pszInputString,
01110             /* [in] */ LCID lcid,
01111             /* [in] */ __RPC__in_opt ITokenCollection *pTokenCollection,
01112             /* [out][in] */ __RPC__inout_opt INamedEntityCollector *pNamedEntities);
01113         
01114         HRESULT ( STDMETHODCALLTYPE *GenerateForLeaf )( 
01115             IConditionGenerator * This,
01116             /* [in] */ __RPC__in_opt IConditionFactory *pConditionFactory,
01117             /* [unique][in] */ __RPC__in_opt LPCWSTR pszPropertyName,
01118             /* [in] */ CONDITION_OPERATION op,
01119             /* [unique][in] */ __RPC__in_opt LPCWSTR pszValueType,
01120             /* [in] */ __RPC__in LPCWSTR pszValue,
01121             /* [unique][in] */ __RPC__in_opt LPCWSTR pszValue2,
01122             /* [in] */ __RPC__in_opt IRichChunk *pPropertyNameTerm,
01123             /* [in] */ __RPC__in_opt IRichChunk *pOperationTerm,
01124             /* [in] */ __RPC__in_opt IRichChunk *pValueTerm,
01125             /* [in] */ BOOL automaticWildcard,
01126             /* [out] */ __RPC__out BOOL *pNoStringQuery,
01127             /* [retval][out] */ __RPC__deref_out_opt ICondition **ppQueryExpression);
01128         
01129         /* [local] */ HRESULT ( STDMETHODCALLTYPE *DefaultPhrase )( 
01130             IConditionGenerator * This,
01131             /* [unique][in] */ LPCWSTR pszValueType,
01132             /* [in] */ const PROPVARIANT *ppropvar,
01133             /* [in] */ BOOL fUseEnglish,
01134             /* [retval][out] */ 
01135             __deref_opt_out  LPWSTR *ppszPhrase);
01136         
01137         END_INTERFACE
01138     } IConditionGeneratorVtbl;
01139 
01140     interface IConditionGenerator
01141     {
01142         CONST_VTBL struct IConditionGeneratorVtbl *lpVtbl;
01143     };
01144 
01145     
01146 
01147 #ifdef COBJMACROS
01148 
01149 
01150 #define IConditionGenerator_QueryInterface(This,riid,ppvObject) \
01151     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
01152 
01153 #define IConditionGenerator_AddRef(This)        \
01154     ( (This)->lpVtbl -> AddRef(This) ) 
01155 
01156 #define IConditionGenerator_Release(This)       \
01157     ( (This)->lpVtbl -> Release(This) ) 
01158 
01159 
01160 #define IConditionGenerator_Initialize(This,pSchemaProvider)    \
01161     ( (This)->lpVtbl -> Initialize(This,pSchemaProvider) ) 
01162 
01163 #define IConditionGenerator_RecognizeNamedEntities(This,pszInputString,lcid,pTokenCollection,pNamedEntities)    \
01164     ( (This)->lpVtbl -> RecognizeNamedEntities(This,pszInputString,lcid,pTokenCollection,pNamedEntities) ) 
01165 
01166 #define IConditionGenerator_GenerateForLeaf(This,pConditionFactory,pszPropertyName,op,pszValueType,pszValue,pszValue2,pPropertyNameTerm,pOperationTerm,pValueTerm,automaticWildcard,pNoStringQuery,ppQueryExpression)   \
01167     ( (This)->lpVtbl -> GenerateForLeaf(This,pConditionFactory,pszPropertyName,op,pszValueType,pszValue,pszValue2,pPropertyNameTerm,pOperationTerm,pValueTerm,automaticWildcard,pNoStringQuery,ppQueryExpression) ) 
01168 
01169 #define IConditionGenerator_DefaultPhrase(This,pszValueType,ppropvar,fUseEnglish,ppszPhrase)    \
01170     ( (This)->lpVtbl -> DefaultPhrase(This,pszValueType,ppropvar,fUseEnglish,ppszPhrase) ) 
01171 
01172 #endif /* COBJMACROS */
01173 
01174 
01175 #endif  /* C style interface */
01176 
01177 
01178 
01179 
01180 #endif  /* __IConditionGenerator_INTERFACE_DEFINED__ */
01181 
01182 
01183 #ifndef __IRichChunk_INTERFACE_DEFINED__
01184 #define __IRichChunk_INTERFACE_DEFINED__
01185 
01186 /* interface IRichChunk */
01187 /* [unique][uuid][object] */ 
01188 
01189 
01190 EXTERN_C const IID IID_IRichChunk;
01191 
01192 #if defined(__cplusplus) && !defined(CINTERFACE)
01193     
01194     MIDL_INTERFACE("4FDEF69C-DBC9-454e-9910-B34F3C64B510")
01195     IRichChunk : public IUnknown
01196     {
01197     public:
01198         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetData( 
01199             /* [out] */ 
01200             __out_opt  ULONG *pFirstPos,
01201             /* [out] */ 
01202             __out_opt  ULONG *pLength,
01203             /* [out] */ 
01204             __deref_opt_out  LPWSTR *ppsz,
01205             /* [out] */ 
01206             __out_opt  PROPVARIANT *pValue) = 0;
01207         
01208     };
01209     
01210 #else   /* C style interface */
01211 
01212     typedef struct IRichChunkVtbl
01213     {
01214         BEGIN_INTERFACE
01215         
01216         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
01217             IRichChunk * This,
01218             /* [in] */ __RPC__in REFIID riid,
01219             /* [iid_is][out] */ 
01220             __RPC__deref_out  void **ppvObject);
01221         
01222         ULONG ( STDMETHODCALLTYPE *AddRef )( 
01223             IRichChunk * This);
01224         
01225         ULONG ( STDMETHODCALLTYPE *Release )( 
01226             IRichChunk * This);
01227         
01228         /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetData )( 
01229             IRichChunk * This,
01230             /* [out] */ 
01231             __out_opt  ULONG *pFirstPos,
01232             /* [out] */ 
01233             __out_opt  ULONG *pLength,
01234             /* [out] */ 
01235             __deref_opt_out  LPWSTR *ppsz,
01236             /* [out] */ 
01237             __out_opt  PROPVARIANT *pValue);
01238         
01239         END_INTERFACE
01240     } IRichChunkVtbl;
01241 
01242     interface IRichChunk
01243     {
01244         CONST_VTBL struct IRichChunkVtbl *lpVtbl;
01245     };
01246 
01247     
01248 
01249 #ifdef COBJMACROS
01250 
01251 
01252 #define IRichChunk_QueryInterface(This,riid,ppvObject)  \
01253     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
01254 
01255 #define IRichChunk_AddRef(This) \
01256     ( (This)->lpVtbl -> AddRef(This) ) 
01257 
01258 #define IRichChunk_Release(This)        \
01259     ( (This)->lpVtbl -> Release(This) ) 
01260 
01261 
01262 #define IRichChunk_GetData(This,pFirstPos,pLength,ppsz,pValue)  \
01263     ( (This)->lpVtbl -> GetData(This,pFirstPos,pLength,ppsz,pValue) ) 
01264 
01265 #endif /* COBJMACROS */
01266 
01267 
01268 #endif  /* C style interface */
01269 
01270 
01271 
01272 
01273 #endif  /* __IRichChunk_INTERFACE_DEFINED__ */
01274 
01275 
01276 #ifndef __IInterval_INTERFACE_DEFINED__
01277 #define __IInterval_INTERFACE_DEFINED__
01278 
01279 /* interface IInterval */
01280 /* [unique][uuid][object] */ 
01281 
01282 
01283 EXTERN_C const IID IID_IInterval;
01284 
01285 #if defined(__cplusplus) && !defined(CINTERFACE)
01286     
01287     MIDL_INTERFACE("6BF0A714-3C18-430b-8B5D-83B1C234D3DB")
01288     IInterval : public IUnknown
01289     {
01290     public:
01291         virtual HRESULT STDMETHODCALLTYPE GetLimits( 
01292             /* [out] */ __RPC__out INTERVAL_LIMIT_KIND *pilkLower,
01293             /* [out] */ __RPC__out PROPVARIANT *ppropvarLower,
01294             /* [out] */ __RPC__out INTERVAL_LIMIT_KIND *pilkUpper,
01295             /* [out] */ __RPC__out PROPVARIANT *ppropvarUpper) = 0;
01296         
01297     };
01298     
01299 #else   /* C style interface */
01300 
01301     typedef struct IIntervalVtbl
01302     {
01303         BEGIN_INTERFACE
01304         
01305         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
01306             IInterval * This,
01307             /* [in] */ __RPC__in REFIID riid,
01308             /* [iid_is][out] */ 
01309             __RPC__deref_out  void **ppvObject);
01310         
01311         ULONG ( STDMETHODCALLTYPE *AddRef )( 
01312             IInterval * This);
01313         
01314         ULONG ( STDMETHODCALLTYPE *Release )( 
01315             IInterval * This);
01316         
01317         HRESULT ( STDMETHODCALLTYPE *GetLimits )( 
01318             IInterval * This,
01319             /* [out] */ __RPC__out INTERVAL_LIMIT_KIND *pilkLower,
01320             /* [out] */ __RPC__out PROPVARIANT *ppropvarLower,
01321             /* [out] */ __RPC__out INTERVAL_LIMIT_KIND *pilkUpper,
01322             /* [out] */ __RPC__out PROPVARIANT *ppropvarUpper);
01323         
01324         END_INTERFACE
01325     } IIntervalVtbl;
01326 
01327     interface IInterval
01328     {
01329         CONST_VTBL struct IIntervalVtbl *lpVtbl;
01330     };
01331 
01332     
01333 
01334 #ifdef COBJMACROS
01335 
01336 
01337 #define IInterval_QueryInterface(This,riid,ppvObject)   \
01338     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
01339 
01340 #define IInterval_AddRef(This)  \
01341     ( (This)->lpVtbl -> AddRef(This) ) 
01342 
01343 #define IInterval_Release(This) \
01344     ( (This)->lpVtbl -> Release(This) ) 
01345 
01346 
01347 #define IInterval_GetLimits(This,pilkLower,ppropvarLower,pilkUpper,ppropvarUpper)       \
01348     ( (This)->lpVtbl -> GetLimits(This,pilkLower,ppropvarLower,pilkUpper,ppropvarUpper) ) 
01349 
01350 #endif /* COBJMACROS */
01351 
01352 
01353 #endif  /* C style interface */
01354 
01355 
01356 
01357 
01358 #endif  /* __IInterval_INTERFACE_DEFINED__ */
01359 
01360 
01361 #ifndef __IMetaData_INTERFACE_DEFINED__
01362 #define __IMetaData_INTERFACE_DEFINED__
01363 
01364 /* interface IMetaData */
01365 /* [unique][uuid][object][helpstring] */ 
01366 
01367 
01368 EXTERN_C const IID IID_IMetaData;
01369 
01370 #if defined(__cplusplus) && !defined(CINTERFACE)
01371     
01372     MIDL_INTERFACE("780102B0-C43B-4876-BC7B-5E9BA5C88794")
01373     IMetaData : public IUnknown
01374     {
01375     public:
01376         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetData( 
01377             /* [out] */ 
01378             __deref_opt_out  LPWSTR *ppszKey,
01379             /* [out] */ 
01380             __deref_opt_out  LPWSTR *ppszValue) = 0;
01381         
01382     };
01383     
01384 #else   /* C style interface */
01385 
01386     typedef struct IMetaDataVtbl
01387     {
01388         BEGIN_INTERFACE
01389         
01390         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
01391             IMetaData * This,
01392             /* [in] */ __RPC__in REFIID riid,
01393             /* [iid_is][out] */ 
01394             __RPC__deref_out  void **ppvObject);
01395         
01396         ULONG ( STDMETHODCALLTYPE *AddRef )( 
01397             IMetaData * This);
01398         
01399         ULONG ( STDMETHODCALLTYPE *Release )( 
01400             IMetaData * This);
01401         
01402         /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetData )( 
01403             IMetaData * This,
01404             /* [out] */ 
01405             __deref_opt_out  LPWSTR *ppszKey,
01406             /* [out] */ 
01407             __deref_opt_out  LPWSTR *ppszValue);
01408         
01409         END_INTERFACE
01410     } IMetaDataVtbl;
01411 
01412     interface IMetaData
01413     {
01414         CONST_VTBL struct IMetaDataVtbl *lpVtbl;
01415     };
01416 
01417     
01418 
01419 #ifdef COBJMACROS
01420 
01421 
01422 #define IMetaData_QueryInterface(This,riid,ppvObject)   \
01423     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
01424 
01425 #define IMetaData_AddRef(This)  \
01426     ( (This)->lpVtbl -> AddRef(This) ) 
01427 
01428 #define IMetaData_Release(This) \
01429     ( (This)->lpVtbl -> Release(This) ) 
01430 
01431 
01432 #define IMetaData_GetData(This,ppszKey,ppszValue)       \
01433     ( (This)->lpVtbl -> GetData(This,ppszKey,ppszValue) ) 
01434 
01435 #endif /* COBJMACROS */
01436 
01437 
01438 #endif  /* C style interface */
01439 
01440 
01441 
01442 
01443 #endif  /* __IMetaData_INTERFACE_DEFINED__ */
01444 
01445 
01446 /* interface __MIDL_itf_structuredquery_0000_0008 */
01447 /* [local] */ 
01448 
01449 
01450 
01451 
01452 extern RPC_IF_HANDLE __MIDL_itf_structuredquery_0000_0008_v0_0_c_ifspec;
01453 extern RPC_IF_HANDLE __MIDL_itf_structuredquery_0000_0008_v0_0_s_ifspec;
01454 
01455 #ifndef __IEntity_INTERFACE_DEFINED__
01456 #define __IEntity_INTERFACE_DEFINED__
01457 
01458 /* interface IEntity */
01459 /* [unique][object][uuid][helpstring] */ 
01460 
01461 
01462 EXTERN_C const IID IID_IEntity;
01463 
01464 #if defined(__cplusplus) && !defined(CINTERFACE)
01465     
01466     MIDL_INTERFACE("24264891-E80B-4fd3-B7CE-4FF2FAE8931F")
01467     IEntity : public IUnknown
01468     {
01469     public:
01470         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Name( 
01471             /* [retval][out] */ 
01472             __deref_opt_out  LPWSTR *ppszName) = 0;
01473         
01474         virtual HRESULT STDMETHODCALLTYPE Base( 
01475             /* [retval][out] */ __RPC__deref_out_opt IEntity **pBaseEntity) = 0;
01476         
01477         virtual HRESULT STDMETHODCALLTYPE Relationships( 
01478             /* [in] */ __RPC__in REFIID riid,
01479             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **pRelationships) = 0;
01480         
01481         virtual HRESULT STDMETHODCALLTYPE GetRelationship( 
01482             /* [in] */ __RPC__in LPCWSTR pszRelationName,
01483             /* [retval][out] */ __RPC__deref_out_opt IRelationship **pRelationship) = 0;
01484         
01485         virtual HRESULT STDMETHODCALLTYPE MetaData( 
01486             /* [in] */ __RPC__in REFIID riid,
01487             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **pMetaData) = 0;
01488         
01489         virtual HRESULT STDMETHODCALLTYPE NamedEntities( 
01490             /* [in] */ __RPC__in REFIID riid,
01491             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **pNamedEntities) = 0;
01492         
01493         virtual HRESULT STDMETHODCALLTYPE GetNamedEntity( 
01494             /* [in] */ __RPC__in LPCWSTR pszValue,
01495             /* [retval][out] */ __RPC__deref_out_opt INamedEntity **ppNamedEntity) = 0;
01496         
01497         virtual /* [local] */ HRESULT STDMETHODCALLTYPE DefaultPhrase( 
01498             /* [retval][out] */ 
01499             __deref_opt_out  LPWSTR *ppszPhrase) = 0;
01500         
01501     };
01502     
01503 #else   /* C style interface */
01504 
01505     typedef struct IEntityVtbl
01506     {
01507         BEGIN_INTERFACE
01508         
01509         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
01510             IEntity * This,
01511             /* [in] */ __RPC__in REFIID riid,
01512             /* [iid_is][out] */ 
01513             __RPC__deref_out  void **ppvObject);
01514         
01515         ULONG ( STDMETHODCALLTYPE *AddRef )( 
01516             IEntity * This);
01517         
01518         ULONG ( STDMETHODCALLTYPE *Release )( 
01519             IEntity * This);
01520         
01521         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Name )( 
01522             IEntity * This,
01523             /* [retval][out] */ 
01524             __deref_opt_out  LPWSTR *ppszName);
01525         
01526         HRESULT ( STDMETHODCALLTYPE *Base )( 
01527             IEntity * This,
01528             /* [retval][out] */ __RPC__deref_out_opt IEntity **pBaseEntity);
01529         
01530         HRESULT ( STDMETHODCALLTYPE *Relationships )( 
01531             IEntity * This,
01532             /* [in] */ __RPC__in REFIID riid,
01533             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **pRelationships);
01534         
01535         HRESULT ( STDMETHODCALLTYPE *GetRelationship )( 
01536             IEntity * This,
01537             /* [in] */ __RPC__in LPCWSTR pszRelationName,
01538             /* [retval][out] */ __RPC__deref_out_opt IRelationship **pRelationship);
01539         
01540         HRESULT ( STDMETHODCALLTYPE *MetaData )( 
01541             IEntity * This,
01542             /* [in] */ __RPC__in REFIID riid,
01543             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **pMetaData);
01544         
01545         HRESULT ( STDMETHODCALLTYPE *NamedEntities )( 
01546             IEntity * This,
01547             /* [in] */ __RPC__in REFIID riid,
01548             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **pNamedEntities);
01549         
01550         HRESULT ( STDMETHODCALLTYPE *GetNamedEntity )( 
01551             IEntity * This,
01552             /* [in] */ __RPC__in LPCWSTR pszValue,
01553             /* [retval][out] */ __RPC__deref_out_opt INamedEntity **ppNamedEntity);
01554         
01555         /* [local] */ HRESULT ( STDMETHODCALLTYPE *DefaultPhrase )( 
01556             IEntity * This,
01557             /* [retval][out] */ 
01558             __deref_opt_out  LPWSTR *ppszPhrase);
01559         
01560         END_INTERFACE
01561     } IEntityVtbl;
01562 
01563     interface IEntity
01564     {
01565         CONST_VTBL struct IEntityVtbl *lpVtbl;
01566     };
01567 
01568     
01569 
01570 #ifdef COBJMACROS
01571 
01572 
01573 #define IEntity_QueryInterface(This,riid,ppvObject)     \
01574     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
01575 
01576 #define IEntity_AddRef(This)    \
01577     ( (This)->lpVtbl -> AddRef(This) ) 
01578 
01579 #define IEntity_Release(This)   \
01580     ( (This)->lpVtbl -> Release(This) ) 
01581 
01582 
01583 #define IEntity_Name(This,ppszName)     \
01584     ( (This)->lpVtbl -> Name(This,ppszName) ) 
01585 
01586 #define IEntity_Base(This,pBaseEntity)  \
01587     ( (This)->lpVtbl -> Base(This,pBaseEntity) ) 
01588 
01589 #define IEntity_Relationships(This,riid,pRelationships) \
01590     ( (This)->lpVtbl -> Relationships(This,riid,pRelationships) ) 
01591 
01592 #define IEntity_GetRelationship(This,pszRelationName,pRelationship)     \
01593     ( (This)->lpVtbl -> GetRelationship(This,pszRelationName,pRelationship) ) 
01594 
01595 #define IEntity_MetaData(This,riid,pMetaData)   \
01596     ( (This)->lpVtbl -> MetaData(This,riid,pMetaData) ) 
01597 
01598 #define IEntity_NamedEntities(This,riid,pNamedEntities) \
01599     ( (This)->lpVtbl -> NamedEntities(This,riid,pNamedEntities) ) 
01600 
01601 #define IEntity_GetNamedEntity(This,pszValue,ppNamedEntity)     \
01602     ( (This)->lpVtbl -> GetNamedEntity(This,pszValue,ppNamedEntity) ) 
01603 
01604 #define IEntity_DefaultPhrase(This,ppszPhrase)  \
01605     ( (This)->lpVtbl -> DefaultPhrase(This,ppszPhrase) ) 
01606 
01607 #endif /* COBJMACROS */
01608 
01609 
01610 #endif  /* C style interface */
01611 
01612 
01613 
01614 
01615 #endif  /* __IEntity_INTERFACE_DEFINED__ */
01616 
01617 
01618 #ifndef __IRelationship_INTERFACE_DEFINED__
01619 #define __IRelationship_INTERFACE_DEFINED__
01620 
01621 /* interface IRelationship */
01622 /* [unique][object][uuid][helpstring] */ 
01623 
01624 
01625 EXTERN_C const IID IID_IRelationship;
01626 
01627 #if defined(__cplusplus) && !defined(CINTERFACE)
01628     
01629     MIDL_INTERFACE("2769280B-5108-498c-9C7F-A51239B63147")
01630     IRelationship : public IUnknown
01631     {
01632     public:
01633         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Name( 
01634             /* [retval][out] */ 
01635             __deref_opt_out  LPWSTR *ppszName) = 0;
01636         
01637         virtual HRESULT STDMETHODCALLTYPE IsReal( 
01638             /* [retval][out] */ __RPC__out BOOL *pIsReal) = 0;
01639         
01640         virtual HRESULT STDMETHODCALLTYPE Destination( 
01641             /* [retval][out] */ __RPC__deref_out_opt IEntity **pDestinationEntity) = 0;
01642         
01643         virtual HRESULT STDMETHODCALLTYPE MetaData( 
01644             /* [in] */ __RPC__in REFIID riid,
01645             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **pMetaData) = 0;
01646         
01647         virtual /* [local] */ HRESULT STDMETHODCALLTYPE DefaultPhrase( 
01648             /* [retval][out] */ 
01649             __deref_opt_out  LPWSTR *ppszPhrase) = 0;
01650         
01651     };
01652     
01653 #else   /* C style interface */
01654 
01655     typedef struct IRelationshipVtbl
01656     {
01657         BEGIN_INTERFACE
01658         
01659         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
01660             IRelationship * This,
01661             /* [in] */ __RPC__in REFIID riid,
01662             /* [iid_is][out] */ 
01663             __RPC__deref_out  void **ppvObject);
01664         
01665         ULONG ( STDMETHODCALLTYPE *AddRef )( 
01666             IRelationship * This);
01667         
01668         ULONG ( STDMETHODCALLTYPE *Release )( 
01669             IRelationship * This);
01670         
01671         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Name )( 
01672             IRelationship * This,
01673             /* [retval][out] */ 
01674             __deref_opt_out  LPWSTR *ppszName);
01675         
01676         HRESULT ( STDMETHODCALLTYPE *IsReal )( 
01677             IRelationship * This,
01678             /* [retval][out] */ __RPC__out BOOL *pIsReal);
01679         
01680         HRESULT ( STDMETHODCALLTYPE *Destination )( 
01681             IRelationship * This,
01682             /* [retval][out] */ __RPC__deref_out_opt IEntity **pDestinationEntity);
01683         
01684         HRESULT ( STDMETHODCALLTYPE *MetaData )( 
01685             IRelationship * This,
01686             /* [in] */ __RPC__in REFIID riid,
01687             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **pMetaData);
01688         
01689         /* [local] */ HRESULT ( STDMETHODCALLTYPE *DefaultPhrase )( 
01690             IRelationship * This,
01691             /* [retval][out] */ 
01692             __deref_opt_out  LPWSTR *ppszPhrase);
01693         
01694         END_INTERFACE
01695     } IRelationshipVtbl;
01696 
01697     interface IRelationship
01698     {
01699         CONST_VTBL struct IRelationshipVtbl *lpVtbl;
01700     };
01701 
01702     
01703 
01704 #ifdef COBJMACROS
01705 
01706 
01707 #define IRelationship_QueryInterface(This,riid,ppvObject)       \
01708     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
01709 
01710 #define IRelationship_AddRef(This)      \
01711     ( (This)->lpVtbl -> AddRef(This) ) 
01712 
01713 #define IRelationship_Release(This)     \
01714     ( (This)->lpVtbl -> Release(This) ) 
01715 
01716 
01717 #define IRelationship_Name(This,ppszName)       \
01718     ( (This)->lpVtbl -> Name(This,ppszName) ) 
01719 
01720 #define IRelationship_IsReal(This,pIsReal)      \
01721     ( (This)->lpVtbl -> IsReal(This,pIsReal) ) 
01722 
01723 #define IRelationship_Destination(This,pDestinationEntity)      \
01724     ( (This)->lpVtbl -> Destination(This,pDestinationEntity) ) 
01725 
01726 #define IRelationship_MetaData(This,riid,pMetaData)     \
01727     ( (This)->lpVtbl -> MetaData(This,riid,pMetaData) ) 
01728 
01729 #define IRelationship_DefaultPhrase(This,ppszPhrase)    \
01730     ( (This)->lpVtbl -> DefaultPhrase(This,ppszPhrase) ) 
01731 
01732 #endif /* COBJMACROS */
01733 
01734 
01735 #endif  /* C style interface */
01736 
01737 
01738 
01739 
01740 #endif  /* __IRelationship_INTERFACE_DEFINED__ */
01741 
01742 
01743 #ifndef __INamedEntity_INTERFACE_DEFINED__
01744 #define __INamedEntity_INTERFACE_DEFINED__
01745 
01746 /* interface INamedEntity */
01747 /* [unique][uuid][object][helpstring] */ 
01748 
01749 
01750 EXTERN_C const IID IID_INamedEntity;
01751 
01752 #if defined(__cplusplus) && !defined(CINTERFACE)
01753     
01754     MIDL_INTERFACE("ABDBD0B1-7D54-49fb-AB5C-BFF4130004CD")
01755     INamedEntity : public IUnknown
01756     {
01757     public:
01758         virtual HRESULT STDMETHODCALLTYPE GetValue( 
01759             /* [retval][out] */ __RPC__deref_out_opt LPWSTR *ppszValue) = 0;
01760         
01761         virtual /* [local] */ HRESULT STDMETHODCALLTYPE DefaultPhrase( 
01762             /* [retval][out] */ 
01763             __deref_opt_out  LPWSTR *ppszPhrase) = 0;
01764         
01765     };
01766     
01767 #else   /* C style interface */
01768 
01769     typedef struct INamedEntityVtbl
01770     {
01771         BEGIN_INTERFACE
01772         
01773         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
01774             INamedEntity * This,
01775             /* [in] */ __RPC__in REFIID riid,
01776             /* [iid_is][out] */ 
01777             __RPC__deref_out  void **ppvObject);
01778         
01779         ULONG ( STDMETHODCALLTYPE *AddRef )( 
01780             INamedEntity * This);
01781         
01782         ULONG ( STDMETHODCALLTYPE *Release )( 
01783             INamedEntity * This);
01784         
01785         HRESULT ( STDMETHODCALLTYPE *GetValue )( 
01786             INamedEntity * This,
01787             /* [retval][out] */ __RPC__deref_out_opt LPWSTR *ppszValue);
01788         
01789         /* [local] */ HRESULT ( STDMETHODCALLTYPE *DefaultPhrase )( 
01790             INamedEntity * This,
01791             /* [retval][out] */ 
01792             __deref_opt_out  LPWSTR *ppszPhrase);
01793         
01794         END_INTERFACE
01795     } INamedEntityVtbl;
01796 
01797     interface INamedEntity
01798     {
01799         CONST_VTBL struct INamedEntityVtbl *lpVtbl;
01800     };
01801 
01802     
01803 
01804 #ifdef COBJMACROS
01805 
01806 
01807 #define INamedEntity_QueryInterface(This,riid,ppvObject)        \
01808     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
01809 
01810 #define INamedEntity_AddRef(This)       \
01811     ( (This)->lpVtbl -> AddRef(This) ) 
01812 
01813 #define INamedEntity_Release(This)      \
01814     ( (This)->lpVtbl -> Release(This) ) 
01815 
01816 
01817 #define INamedEntity_GetValue(This,ppszValue)   \
01818     ( (This)->lpVtbl -> GetValue(This,ppszValue) ) 
01819 
01820 #define INamedEntity_DefaultPhrase(This,ppszPhrase)     \
01821     ( (This)->lpVtbl -> DefaultPhrase(This,ppszPhrase) ) 
01822 
01823 #endif /* COBJMACROS */
01824 
01825 
01826 #endif  /* C style interface */
01827 
01828 
01829 
01830 
01831 #endif  /* __INamedEntity_INTERFACE_DEFINED__ */
01832 
01833 
01834 #ifndef __ISchemaProvider_INTERFACE_DEFINED__
01835 #define __ISchemaProvider_INTERFACE_DEFINED__
01836 
01837 /* interface ISchemaProvider */
01838 /* [unique][object][uuid][helpstring] */ 
01839 
01840 
01841 EXTERN_C const IID IID_ISchemaProvider;
01842 
01843 #if defined(__cplusplus) && !defined(CINTERFACE)
01844     
01845     MIDL_INTERFACE("8CF89BCB-394C-49b2-AE28-A59DD4ED7F68")
01846     ISchemaProvider : public IUnknown
01847     {
01848     public:
01849         virtual HRESULT STDMETHODCALLTYPE Entities( 
01850             /* [in] */ __RPC__in REFIID riid,
01851             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **pEntities) = 0;
01852         
01853         virtual HRESULT STDMETHODCALLTYPE RootEntity( 
01854             /* [retval][out] */ __RPC__deref_out_opt IEntity **pRootEntity) = 0;
01855         
01856         virtual HRESULT STDMETHODCALLTYPE GetEntity( 
01857             /* [in] */ __RPC__in LPCWSTR pszEntityName,
01858             /* [retval][out] */ __RPC__deref_out_opt IEntity **pEntity) = 0;
01859         
01860         virtual HRESULT STDMETHODCALLTYPE MetaData( 
01861             /* [in] */ __RPC__in REFIID riid,
01862             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **pMetaData) = 0;
01863         
01864         virtual HRESULT STDMETHODCALLTYPE Localize( 
01865             /* [in] */ LCID lcid,
01866             /* [in] */ __RPC__in_opt ISchemaLocalizerSupport *pSchemaLocalizerSupport) = 0;
01867         
01868         virtual HRESULT STDMETHODCALLTYPE SaveBinary( 
01869             /* [in] */ __RPC__in LPCWSTR pszSchemaBinaryPath) = 0;
01870         
01871         virtual HRESULT STDMETHODCALLTYPE LookupAuthoredNamedEntity( 
01872             /* [in] */ __RPC__in_opt IEntity *pEntity,
01873             /* [in] */ __RPC__in LPCWSTR pszInputString,
01874             /* [in] */ __RPC__in_opt ITokenCollection *pTokenCollection,
01875             /* [in] */ ULONG cTokensBegin,
01876             /* [out] */ __RPC__out ULONG *pcTokensLength,
01877             /* [out] */ __RPC__deref_out_opt LPWSTR *ppszValue) = 0;
01878         
01879     };
01880     
01881 #else   /* C style interface */
01882 
01883     typedef struct ISchemaProviderVtbl
01884     {
01885         BEGIN_INTERFACE
01886         
01887         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
01888             ISchemaProvider * This,
01889             /* [in] */ __RPC__in REFIID riid,
01890             /* [iid_is][out] */ 
01891             __RPC__deref_out  void **ppvObject);
01892         
01893         ULONG ( STDMETHODCALLTYPE *AddRef )( 
01894             ISchemaProvider * This);
01895         
01896         ULONG ( STDMETHODCALLTYPE *Release )( 
01897             ISchemaProvider * This);
01898         
01899         HRESULT ( STDMETHODCALLTYPE *Entities )( 
01900             ISchemaProvider * This,
01901             /* [in] */ __RPC__in REFIID riid,
01902             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **pEntities);
01903         
01904         HRESULT ( STDMETHODCALLTYPE *RootEntity )( 
01905             ISchemaProvider * This,
01906             /* [retval][out] */ __RPC__deref_out_opt IEntity **pRootEntity);
01907         
01908         HRESULT ( STDMETHODCALLTYPE *GetEntity )( 
01909             ISchemaProvider * This,
01910             /* [in] */ __RPC__in LPCWSTR pszEntityName,
01911             /* [retval][out] */ __RPC__deref_out_opt IEntity **pEntity);
01912         
01913         HRESULT ( STDMETHODCALLTYPE *MetaData )( 
01914             ISchemaProvider * This,
01915             /* [in] */ __RPC__in REFIID riid,
01916             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **pMetaData);
01917         
01918         HRESULT ( STDMETHODCALLTYPE *Localize )( 
01919             ISchemaProvider * This,
01920             /* [in] */ LCID lcid,
01921             /* [in] */ __RPC__in_opt ISchemaLocalizerSupport *pSchemaLocalizerSupport);
01922         
01923         HRESULT ( STDMETHODCALLTYPE *SaveBinary )( 
01924             ISchemaProvider * This,
01925             /* [in] */ __RPC__in LPCWSTR pszSchemaBinaryPath);
01926         
01927         HRESULT ( STDMETHODCALLTYPE *LookupAuthoredNamedEntity )( 
01928             ISchemaProvider * This,
01929             /* [in] */ __RPC__in_opt IEntity *pEntity,
01930             /* [in] */ __RPC__in LPCWSTR pszInputString,
01931             /* [in] */ __RPC__in_opt ITokenCollection *pTokenCollection,
01932             /* [in] */ ULONG cTokensBegin,
01933             /* [out] */ __RPC__out ULONG *pcTokensLength,
01934             /* [out] */ __RPC__deref_out_opt LPWSTR *ppszValue);
01935         
01936         END_INTERFACE
01937     } ISchemaProviderVtbl;
01938 
01939     interface ISchemaProvider
01940     {
01941         CONST_VTBL struct ISchemaProviderVtbl *lpVtbl;
01942     };
01943 
01944     
01945 
01946 #ifdef COBJMACROS
01947 
01948 
01949 #define ISchemaProvider_QueryInterface(This,riid,ppvObject)     \
01950     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
01951 
01952 #define ISchemaProvider_AddRef(This)    \
01953     ( (This)->lpVtbl -> AddRef(This) ) 
01954 
01955 #define ISchemaProvider_Release(This)   \
01956     ( (This)->lpVtbl -> Release(This) ) 
01957 
01958 
01959 #define ISchemaProvider_Entities(This,riid,pEntities)   \
01960     ( (This)->lpVtbl -> Entities(This,riid,pEntities) ) 
01961 
01962 #define ISchemaProvider_RootEntity(This,pRootEntity)    \
01963     ( (This)->lpVtbl -> RootEntity(This,pRootEntity) ) 
01964 
01965 #define ISchemaProvider_GetEntity(This,pszEntityName,pEntity)   \
01966     ( (This)->lpVtbl -> GetEntity(This,pszEntityName,pEntity) ) 
01967 
01968 #define ISchemaProvider_MetaData(This,riid,pMetaData)   \
01969     ( (This)->lpVtbl -> MetaData(This,riid,pMetaData) ) 
01970 
01971 #define ISchemaProvider_Localize(This,lcid,pSchemaLocalizerSupport)     \
01972     ( (This)->lpVtbl -> Localize(This,lcid,pSchemaLocalizerSupport) ) 
01973 
01974 #define ISchemaProvider_SaveBinary(This,pszSchemaBinaryPath)    \
01975     ( (This)->lpVtbl -> SaveBinary(This,pszSchemaBinaryPath) ) 
01976 
01977 #define ISchemaProvider_LookupAuthoredNamedEntity(This,pEntity,pszInputString,pTokenCollection,cTokensBegin,pcTokensLength,ppszValue)   \
01978     ( (This)->lpVtbl -> LookupAuthoredNamedEntity(This,pEntity,pszInputString,pTokenCollection,cTokensBegin,pcTokensLength,ppszValue) ) 
01979 
01980 #endif /* COBJMACROS */
01981 
01982 
01983 #endif  /* C style interface */
01984 
01985 
01986 
01987 
01988 #endif  /* __ISchemaProvider_INTERFACE_DEFINED__ */
01989 
01990 
01991 #ifndef __ITokenCollection_INTERFACE_DEFINED__
01992 #define __ITokenCollection_INTERFACE_DEFINED__
01993 
01994 /* interface ITokenCollection */
01995 /* [unique][object][uuid][helpstring] */ 
01996 
01997 
01998 EXTERN_C const IID IID_ITokenCollection;
01999 
02000 #if defined(__cplusplus) && !defined(CINTERFACE)
02001     
02002     MIDL_INTERFACE("22D8B4F2-F577-4adb-A335-C2AE88416FAB")
02003     ITokenCollection : public IUnknown
02004     {
02005     public:
02006         virtual HRESULT STDMETHODCALLTYPE NumberOfTokens( 
02007             __RPC__in ULONG *pCount) = 0;
02008         
02009         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetToken( 
02010             /* [in] */ ULONG i,
02011             /* [out] */ 
02012             __out_opt  ULONG *pBegin,
02013             /* [out] */ 
02014             __out_opt  ULONG *pLength,
02015             /* [out] */ 
02016             __deref_opt_out  LPWSTR *ppsz) = 0;
02017         
02018     };
02019     
02020 #else   /* C style interface */
02021 
02022     typedef struct ITokenCollectionVtbl
02023     {
02024         BEGIN_INTERFACE
02025         
02026         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
02027             ITokenCollection * This,
02028             /* [in] */ __RPC__in REFIID riid,
02029             /* [iid_is][out] */ 
02030             __RPC__deref_out  void **ppvObject);
02031         
02032         ULONG ( STDMETHODCALLTYPE *AddRef )( 
02033             ITokenCollection * This);
02034         
02035         ULONG ( STDMETHODCALLTYPE *Release )( 
02036             ITokenCollection * This);
02037         
02038         HRESULT ( STDMETHODCALLTYPE *NumberOfTokens )( 
02039             ITokenCollection * This,
02040             __RPC__in ULONG *pCount);
02041         
02042         /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetToken )( 
02043             ITokenCollection * This,
02044             /* [in] */ ULONG i,
02045             /* [out] */ 
02046             __out_opt  ULONG *pBegin,
02047             /* [out] */ 
02048             __out_opt  ULONG *pLength,
02049             /* [out] */ 
02050             __deref_opt_out  LPWSTR *ppsz);
02051         
02052         END_INTERFACE
02053     } ITokenCollectionVtbl;
02054 
02055     interface ITokenCollection
02056     {
02057         CONST_VTBL struct ITokenCollectionVtbl *lpVtbl;
02058     };
02059 
02060     
02061 
02062 #ifdef COBJMACROS
02063 
02064 
02065 #define ITokenCollection_QueryInterface(This,riid,ppvObject)    \
02066     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
02067 
02068 #define ITokenCollection_AddRef(This)   \
02069     ( (This)->lpVtbl -> AddRef(This) ) 
02070 
02071 #define ITokenCollection_Release(This)  \
02072     ( (This)->lpVtbl -> Release(This) ) 
02073 
02074 
02075 #define ITokenCollection_NumberOfTokens(This,pCount)    \
02076     ( (This)->lpVtbl -> NumberOfTokens(This,pCount) ) 
02077 
02078 #define ITokenCollection_GetToken(This,i,pBegin,pLength,ppsz)   \
02079     ( (This)->lpVtbl -> GetToken(This,i,pBegin,pLength,ppsz) ) 
02080 
02081 #endif /* COBJMACROS */
02082 
02083 
02084 #endif  /* C style interface */
02085 
02086 
02087 
02088 
02089 #endif  /* __ITokenCollection_INTERFACE_DEFINED__ */
02090 
02091 
02092 /* interface __MIDL_itf_structuredquery_0000_0013 */
02093 /* [local] */ 
02094 
02095 typedef /* [public][public][v1_enum] */ 
02096 enum __MIDL___MIDL_itf_structuredquery_0000_0013_0001
02097     {   NEC_LOW = 0,
02098         NEC_MEDIUM      = ( NEC_LOW + 1 ) ,
02099         NEC_HIGH        = ( NEC_MEDIUM + 1 ) 
02100     }   NAMED_ENTITY_CERTAINTY;
02101 
02102 
02103 
02104 extern RPC_IF_HANDLE __MIDL_itf_structuredquery_0000_0013_v0_0_c_ifspec;
02105 extern RPC_IF_HANDLE __MIDL_itf_structuredquery_0000_0013_v0_0_s_ifspec;
02106 
02107 #ifndef __INamedEntityCollector_INTERFACE_DEFINED__
02108 #define __INamedEntityCollector_INTERFACE_DEFINED__
02109 
02110 /* interface INamedEntityCollector */
02111 /* [unique][object][uuid][helpstring] */ 
02112 
02113 
02114 EXTERN_C const IID IID_INamedEntityCollector;
02115 
02116 #if defined(__cplusplus) && !defined(CINTERFACE)
02117     
02118     MIDL_INTERFACE("AF2440F6-8AFC-47d0-9A7F-396A0ACFB43D")
02119     INamedEntityCollector : public IUnknown
02120     {
02121     public:
02122         virtual HRESULT STDMETHODCALLTYPE Add( 
02123             /* [in] */ ULONG beginSpan,
02124             /* [in] */ ULONG endSpan,
02125             /* [in] */ ULONG beginActual,
02126             /* [in] */ ULONG endActual,
02127             /* [in] */ __RPC__in_opt IEntity *pType,
02128             /* [in] */ __RPC__in LPCWSTR pszValue,
02129             /* [in] */ NAMED_ENTITY_CERTAINTY certainty) = 0;
02130         
02131     };
02132     
02133 #else   /* C style interface */
02134 
02135     typedef struct INamedEntityCollectorVtbl
02136     {
02137         BEGIN_INTERFACE
02138         
02139         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
02140             INamedEntityCollector * This,
02141             /* [in] */ __RPC__in REFIID riid,
02142             /* [iid_is][out] */ 
02143             __RPC__deref_out  void **ppvObject);
02144         
02145         ULONG ( STDMETHODCALLTYPE *AddRef )( 
02146             INamedEntityCollector * This);
02147         
02148         ULONG ( STDMETHODCALLTYPE *Release )( 
02149             INamedEntityCollector * This);
02150         
02151         HRESULT ( STDMETHODCALLTYPE *Add )( 
02152             INamedEntityCollector * This,
02153             /* [in] */ ULONG beginSpan,
02154             /* [in] */ ULONG endSpan,
02155             /* [in] */ ULONG beginActual,
02156             /* [in] */ ULONG endActual,
02157             /* [in] */ __RPC__in_opt IEntity *pType,
02158             /* [in] */ __RPC__in LPCWSTR pszValue,
02159             /* [in] */ NAMED_ENTITY_CERTAINTY certainty);
02160         
02161         END_INTERFACE
02162     } INamedEntityCollectorVtbl;
02163 
02164     interface INamedEntityCollector
02165     {
02166         CONST_VTBL struct INamedEntityCollectorVtbl *lpVtbl;
02167     };
02168 
02169     
02170 
02171 #ifdef COBJMACROS
02172 
02173 
02174 #define INamedEntityCollector_QueryInterface(This,riid,ppvObject)       \
02175     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
02176 
02177 #define INamedEntityCollector_AddRef(This)      \
02178     ( (This)->lpVtbl -> AddRef(This) ) 
02179 
02180 #define INamedEntityCollector_Release(This)     \
02181     ( (This)->lpVtbl -> Release(This) ) 
02182 
02183 
02184 #define INamedEntityCollector_Add(This,beginSpan,endSpan,beginActual,endActual,pType,pszValue,certainty)        \
02185     ( (This)->lpVtbl -> Add(This,beginSpan,endSpan,beginActual,endActual,pType,pszValue,certainty) ) 
02186 
02187 #endif /* COBJMACROS */
02188 
02189 
02190 #endif  /* C style interface */
02191 
02192 
02193 
02194 
02195 #endif  /* __INamedEntityCollector_INTERFACE_DEFINED__ */
02196 
02197 
02198 #ifndef __ISchemaLocalizerSupport_INTERFACE_DEFINED__
02199 #define __ISchemaLocalizerSupport_INTERFACE_DEFINED__
02200 
02201 /* interface ISchemaLocalizerSupport */
02202 /* [unique][object][uuid] */ 
02203 
02204 
02205 EXTERN_C const IID IID_ISchemaLocalizerSupport;
02206 
02207 #if defined(__cplusplus) && !defined(CINTERFACE)
02208     
02209     MIDL_INTERFACE("CA3FDCA2-BFBE-4eed-90D7-0CAEF0A1BDA1")
02210     ISchemaLocalizerSupport : public IUnknown
02211     {
02212     public:
02213         virtual HRESULT STDMETHODCALLTYPE Localize( 
02214             /* [in] */ __RPC__in LPCWSTR pszGlobalString,
02215             /* [retval][out] */ __RPC__deref_out_opt LPWSTR *ppszLocalString) = 0;
02216         
02217     };
02218     
02219 #else   /* C style interface */
02220 
02221     typedef struct ISchemaLocalizerSupportVtbl
02222     {
02223         BEGIN_INTERFACE
02224         
02225         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
02226             ISchemaLocalizerSupport * This,
02227             /* [in] */ __RPC__in REFIID riid,
02228             /* [iid_is][out] */ 
02229             __RPC__deref_out  void **ppvObject);
02230         
02231         ULONG ( STDMETHODCALLTYPE *AddRef )( 
02232             ISchemaLocalizerSupport * This);
02233         
02234         ULONG ( STDMETHODCALLTYPE *Release )( 
02235             ISchemaLocalizerSupport * This);
02236         
02237         HRESULT ( STDMETHODCALLTYPE *Localize )( 
02238             ISchemaLocalizerSupport * This,
02239             /* [in] */ __RPC__in LPCWSTR pszGlobalString,
02240             /* [retval][out] */ __RPC__deref_out_opt LPWSTR *ppszLocalString);
02241         
02242         END_INTERFACE
02243     } ISchemaLocalizerSupportVtbl;
02244 
02245     interface ISchemaLocalizerSupport
02246     {
02247         CONST_VTBL struct ISchemaLocalizerSupportVtbl *lpVtbl;
02248     };
02249 
02250     
02251 
02252 #ifdef COBJMACROS
02253 
02254 
02255 #define ISchemaLocalizerSupport_QueryInterface(This,riid,ppvObject)     \
02256     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
02257 
02258 #define ISchemaLocalizerSupport_AddRef(This)    \
02259     ( (This)->lpVtbl -> AddRef(This) ) 
02260 
02261 #define ISchemaLocalizerSupport_Release(This)   \
02262     ( (This)->lpVtbl -> Release(This) ) 
02263 
02264 
02265 #define ISchemaLocalizerSupport_Localize(This,pszGlobalString,ppszLocalString)  \
02266     ( (This)->lpVtbl -> Localize(This,pszGlobalString,ppszLocalString) ) 
02267 
02268 #endif /* COBJMACROS */
02269 
02270 
02271 #endif  /* C style interface */
02272 
02273 
02274 
02275 
02276 #endif  /* __ISchemaLocalizerSupport_INTERFACE_DEFINED__ */
02277 
02278 
02279 #ifndef __IQueryParserManager_INTERFACE_DEFINED__
02280 #define __IQueryParserManager_INTERFACE_DEFINED__
02281 
02282 /* interface IQueryParserManager */
02283 /* [unique][object][uuid] */ 
02284 
02285 
02286 EXTERN_C const IID IID_IQueryParserManager;
02287 
02288 #if defined(__cplusplus) && !defined(CINTERFACE)
02289     
02290     MIDL_INTERFACE("A879E3C4-AF77-44fb-8F37-EBD1487CF920")
02291     IQueryParserManager : public IUnknown
02292     {
02293     public:
02294         virtual HRESULT STDMETHODCALLTYPE CreateLoadedParser( 
02295             /* [in] */ __RPC__in LPCWSTR pszCatalog,
02296             /* [in] */ LANGID langidForKeywords,
02297             /* [in] */ __RPC__in REFIID riid,
02298             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **ppQueryParser) = 0;
02299         
02300         virtual HRESULT STDMETHODCALLTYPE InitializeOptions( 
02301             /* [in] */ BOOL fUnderstandNQS,
02302             /* [in] */ BOOL fAutoWildCard,
02303             /* [in] */ __RPC__in_opt IQueryParser *pQueryParser) = 0;
02304         
02305         virtual HRESULT STDMETHODCALLTYPE SetOption( 
02306             /* [in] */ QUERY_PARSER_MANAGER_OPTION option,
02307             /* [in] */ __RPC__in const PROPVARIANT *pOptionValue) = 0;
02308         
02309     };
02310     
02311 #else   /* C style interface */
02312 
02313     typedef struct IQueryParserManagerVtbl
02314     {
02315         BEGIN_INTERFACE
02316         
02317         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
02318             IQueryParserManager * This,
02319             /* [in] */ __RPC__in REFIID riid,
02320             /* [iid_is][out] */ 
02321             __RPC__deref_out  void **ppvObject);
02322         
02323         ULONG ( STDMETHODCALLTYPE *AddRef )( 
02324             IQueryParserManager * This);
02325         
02326         ULONG ( STDMETHODCALLTYPE *Release )( 
02327             IQueryParserManager * This);
02328         
02329         HRESULT ( STDMETHODCALLTYPE *CreateLoadedParser )( 
02330             IQueryParserManager * This,
02331             /* [in] */ __RPC__in LPCWSTR pszCatalog,
02332             /* [in] */ LANGID langidForKeywords,
02333             /* [in] */ __RPC__in REFIID riid,
02334             /* [iid_is][retval][out] */ __RPC__deref_out_opt void **ppQueryParser);
02335         
02336         HRESULT ( STDMETHODCALLTYPE *InitializeOptions )( 
02337             IQueryParserManager * This,
02338             /* [in] */ BOOL fUnderstandNQS,
02339             /* [in] */ BOOL fAutoWildCard,
02340             /* [in] */ __RPC__in_opt IQueryParser *pQueryParser);
02341         
02342         HRESULT ( STDMETHODCALLTYPE *SetOption )( 
02343             IQueryParserManager * This,
02344             /* [in] */ QUERY_PARSER_MANAGER_OPTION option,
02345             /* [in] */ __RPC__in const PROPVARIANT *pOptionValue);
02346         
02347         END_INTERFACE
02348     } IQueryParserManagerVtbl;
02349 
02350     interface IQueryParserManager
02351     {
02352         CONST_VTBL struct IQueryParserManagerVtbl *lpVtbl;
02353     };
02354 
02355     
02356 
02357 #ifdef COBJMACROS
02358 
02359 
02360 #define IQueryParserManager_QueryInterface(This,riid,ppvObject) \
02361     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
02362 
02363 #define IQueryParserManager_AddRef(This)        \
02364     ( (This)->lpVtbl -> AddRef(This) ) 
02365 
02366 #define IQueryParserManager_Release(This)       \
02367     ( (This)->lpVtbl -> Release(This) ) 
02368 
02369 
02370 #define IQueryParserManager_CreateLoadedParser(This,pszCatalog,langidForKeywords,riid,ppQueryParser)    \
02371     ( (This)->lpVtbl -> CreateLoadedParser(This,pszCatalog,langidForKeywords,riid,ppQueryParser) ) 
02372 
02373 #define IQueryParserManager_InitializeOptions(This,fUnderstandNQS,fAutoWildCard,pQueryParser)   \
02374     ( (This)->lpVtbl -> InitializeOptions(This,fUnderstandNQS,fAutoWildCard,pQueryParser) ) 
02375 
02376 #define IQueryParserManager_SetOption(This,option,pOptionValue) \
02377     ( (This)->lpVtbl -> SetOption(This,option,pOptionValue) ) 
02378 
02379 #endif /* COBJMACROS */
02380 
02381 
02382 #endif  /* C style interface */
02383 
02384 
02385 
02386 
02387 #endif  /* __IQueryParserManager_INTERFACE_DEFINED__ */
02388 
02389 
02390 
02391 #ifndef __StructuredQuery1_LIBRARY_DEFINED__
02392 #define __StructuredQuery1_LIBRARY_DEFINED__
02393 
02394 /* library StructuredQuery1 */
02395 /* [version][uuid] */ 
02396 
02397 
02398 EXTERN_C const IID LIBID_StructuredQuery1;
02399 
02400 EXTERN_C const CLSID CLSID_QueryParser;
02401 
02402 #ifdef __cplusplus
02403 
02404 class DECLSPEC_UUID("B72F8FD8-0FAB-4dd9-BDBF-245A6CE1485B")
02405 QueryParser;
02406 #endif
02407 
02408 EXTERN_C const CLSID CLSID_NegationCondition;
02409 
02410 #ifdef __cplusplus
02411 
02412 class DECLSPEC_UUID("8DE9C74C-605A-4acd-BEE3-2B222AA2D23D")
02413 NegationCondition;
02414 #endif
02415 
02416 EXTERN_C const CLSID CLSID_CompoundCondition;
02417 
02418 #ifdef __cplusplus
02419 
02420 class DECLSPEC_UUID("116F8D13-101E-4fa5-84D4-FF8279381935")
02421 CompoundCondition;
02422 #endif
02423 
02424 EXTERN_C const CLSID CLSID_LeafCondition;
02425 
02426 #ifdef __cplusplus
02427 
02428 class DECLSPEC_UUID("52F15C89-5A17-48e1-BBCD-46A3F89C7CC2")
02429 LeafCondition;
02430 #endif
02431 
02432 EXTERN_C const CLSID CLSID_ConditionFactory;
02433 
02434 #ifdef __cplusplus
02435 
02436 class DECLSPEC_UUID("E03E85B0-7BE3-4000-BA98-6C13DE9FA486")
02437 ConditionFactory;
02438 #endif
02439 
02440 EXTERN_C const CLSID CLSID_Interval;
02441 
02442 #ifdef __cplusplus
02443 
02444 class DECLSPEC_UUID("D957171F-4BF9-4de2-BCD5-C70A7CA55836")
02445 Interval;
02446 #endif
02447 
02448 EXTERN_C const CLSID CLSID_QueryParserManager;
02449 
02450 #ifdef __cplusplus
02451 
02452 class DECLSPEC_UUID("5088B39A-29B4-4d9d-8245-4EE289222F66")
02453 QueryParserManager;
02454 #endif
02455 #endif /* __StructuredQuery1_LIBRARY_DEFINED__ */
02456 
02457 /* Additional Prototypes for ALL interfaces */
02458 
02459 unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long *, unsigned long            , BSTR * ); 
02460 unsigned char * __RPC_USER  BSTR_UserMarshal(  unsigned long *, unsigned char *, BSTR * ); 
02461 unsigned char * __RPC_USER  BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * ); 
02462 void                      __RPC_USER  BSTR_UserFree(     unsigned long *, BSTR * ); 
02463 
02464 unsigned long             __RPC_USER  LPSAFEARRAY_UserSize(     unsigned long *, unsigned long            , LPSAFEARRAY * ); 
02465 unsigned char * __RPC_USER  LPSAFEARRAY_UserMarshal(  unsigned long *, unsigned char *, LPSAFEARRAY * ); 
02466 unsigned char * __RPC_USER  LPSAFEARRAY_UserUnmarshal(unsigned long *, unsigned char *, LPSAFEARRAY * ); 
02467 void                      __RPC_USER  LPSAFEARRAY_UserFree(     unsigned long *, LPSAFEARRAY * ); 
02468 
02469 /* end of Additional Prototypes */
02470 
02471 #ifdef __cplusplus
02472 }
02473 #endif
02474 
02475 #endif
02476 
02477 
02478