• Main Page
  • Data Structures
  • Files

z-core.h

Go to the documentation of this file.
00001 
00007 #ifndef z_core_H
00008 #define z_core_H
00009 
00010 #include <yaz/odr.h>
00011 #ifdef __cplusplus
00012 extern "C" {
00013 #endif
00014 
00015 typedef struct Z_External Z_External;
00016 YAZ_EXPORT int z_External(ODR o, Z_External **p, int opt, const char *name);
00017 
00018 
00019 typedef struct Z_APDU Z_APDU;
00020 YAZ_EXPORT int z_APDU (ODR o, Z_APDU **p, int opt, const char *name);
00021 
00022 typedef struct Z_InitRequest Z_InitRequest;
00023 YAZ_EXPORT int z_InitRequest (ODR o, Z_InitRequest **p, int opt, const char *name);
00024 
00025 typedef struct Z_IdPass Z_IdPass;
00026 YAZ_EXPORT int z_IdPass (ODR o, Z_IdPass **p, int opt, const char *name);
00027 
00028 typedef struct Z_IdAuthentication Z_IdAuthentication;
00029 YAZ_EXPORT int z_IdAuthentication (ODR o, Z_IdAuthentication **p, int opt, const char *name);
00030 
00031 typedef struct Z_InitResponse Z_InitResponse;
00032 YAZ_EXPORT int z_InitResponse (ODR o, Z_InitResponse **p, int opt, const char *name);
00033 
00034 typedef Odr_bitmask  Z_ProtocolVersion;
00035 YAZ_EXPORT int z_ProtocolVersion (ODR o, Z_ProtocolVersion **p, int opt, const char *name);
00036 
00037 typedef Odr_bitmask  Z_Options;
00038 YAZ_EXPORT int z_Options (ODR o, Z_Options **p, int opt, const char *name);
00039 
00040 typedef struct Z_SearchRequest Z_SearchRequest;
00041 YAZ_EXPORT int z_SearchRequest (ODR o, Z_SearchRequest **p, int opt, const char *name);
00042 
00043 typedef struct Z_Query Z_Query;
00044 YAZ_EXPORT int z_Query (ODR o, Z_Query **p, int opt, const char *name);
00045 
00046 typedef struct Z_RPNQuery Z_RPNQuery;
00047 YAZ_EXPORT int z_RPNQuery (ODR o, Z_RPNQuery **p, int opt, const char *name);
00048 
00049 typedef struct Z_Complex Z_Complex;
00050 YAZ_EXPORT int z_Complex (ODR o, Z_Complex **p, int opt, const char *name);
00051 
00052 typedef struct Z_RPNStructure Z_RPNStructure;
00053 YAZ_EXPORT int z_RPNStructure (ODR o, Z_RPNStructure **p, int opt, const char *name);
00054 
00055 typedef struct Z_Operand Z_Operand;
00056 YAZ_EXPORT int z_Operand (ODR o, Z_Operand **p, int opt, const char *name);
00057 
00058 typedef struct Z_AttributesPlusTerm Z_AttributesPlusTerm;
00059 YAZ_EXPORT int z_AttributesPlusTerm (ODR o, Z_AttributesPlusTerm **p, int opt, const char *name);
00060 
00061 typedef struct Z_ResultSetPlusAttributes Z_ResultSetPlusAttributes;
00062 YAZ_EXPORT int z_ResultSetPlusAttributes (ODR o, Z_ResultSetPlusAttributes **p, int opt, const char *name);
00063 
00064 typedef struct Z_AttributeList Z_AttributeList;
00065 YAZ_EXPORT int z_AttributeList (ODR o, Z_AttributeList **p, int opt, const char *name);
00066 
00067 typedef struct Z_Term Z_Term;
00068 YAZ_EXPORT int z_Term (ODR o, Z_Term **p, int opt, const char *name);
00069 
00070 typedef struct Z_Operator Z_Operator;
00071 YAZ_EXPORT int z_Operator (ODR o, Z_Operator **p, int opt, const char *name);
00072 
00073 typedef struct Z_ComplexAttribute Z_ComplexAttribute;
00074 YAZ_EXPORT int z_ComplexAttribute (ODR o, Z_ComplexAttribute **p, int opt, const char *name);
00075 
00076 typedef struct Z_AttributeElement Z_AttributeElement;
00077 YAZ_EXPORT int z_AttributeElement (ODR o, Z_AttributeElement **p, int opt, const char *name);
00078 
00079 typedef struct Z_ProximityOperator Z_ProximityOperator;
00080 YAZ_EXPORT int z_ProximityOperator (ODR o, Z_ProximityOperator **p, int opt, const char *name);
00081 
00082 typedef int  Z_ProxUnit;
00083 YAZ_EXPORT int z_ProxUnit (ODR o, Z_ProxUnit **p, int opt, const char *name);
00084 
00085 typedef struct Z_SearchResponse Z_SearchResponse;
00086 YAZ_EXPORT int z_SearchResponse (ODR o, Z_SearchResponse **p, int opt, const char *name);
00087 
00088 typedef struct Z_RecordComposition Z_RecordComposition;
00089 YAZ_EXPORT int z_RecordComposition (ODR o, Z_RecordComposition **p, int opt, const char *name);
00090 
00091 typedef struct Z_PresentRequest Z_PresentRequest;
00092 YAZ_EXPORT int z_PresentRequest (ODR o, Z_PresentRequest **p, int opt, const char *name);
00093 
00094 typedef struct Z_Segment Z_Segment;
00095 YAZ_EXPORT int z_Segment (ODR o, Z_Segment **p, int opt, const char *name);
00096 
00097 typedef struct Z_PresentResponse Z_PresentResponse;
00098 YAZ_EXPORT int z_PresentResponse (ODR o, Z_PresentResponse **p, int opt, const char *name);
00099 
00100 typedef struct Z_NamePlusRecordList Z_NamePlusRecordList;
00101 YAZ_EXPORT int z_NamePlusRecordList (ODR o, Z_NamePlusRecordList **p, int opt, const char *name);
00102 
00103 typedef struct Z_DiagRecs Z_DiagRecs;
00104 YAZ_EXPORT int z_DiagRecs (ODR o, Z_DiagRecs **p, int opt, const char *name);
00105 
00106 typedef struct Z_Records Z_Records;
00107 YAZ_EXPORT int z_Records (ODR o, Z_Records **p, int opt, const char *name);
00108 
00109 typedef struct Z_NamePlusRecord Z_NamePlusRecord;
00110 YAZ_EXPORT int z_NamePlusRecord (ODR o, Z_NamePlusRecord **p, int opt, const char *name);
00111 
00112 typedef struct Z_FragmentSyntax Z_FragmentSyntax;
00113 YAZ_EXPORT int z_FragmentSyntax (ODR o, Z_FragmentSyntax **p, int opt, const char *name);
00114 
00115 typedef struct Z_DiagRec Z_DiagRec;
00116 YAZ_EXPORT int z_DiagRec (ODR o, Z_DiagRec **p, int opt, const char *name);
00117 
00118 typedef struct Z_DefaultDiagFormat Z_DefaultDiagFormat;
00119 YAZ_EXPORT int z_DefaultDiagFormat (ODR o, Z_DefaultDiagFormat **p, int opt, const char *name);
00120 
00121 typedef struct Z_Range Z_Range;
00122 YAZ_EXPORT int z_Range (ODR o, Z_Range **p, int opt, const char *name);
00123 
00124 typedef struct Z_DatabaseSpecificUnit Z_DatabaseSpecificUnit;
00125 YAZ_EXPORT int z_DatabaseSpecificUnit (ODR o, Z_DatabaseSpecificUnit **p, int opt, const char *name);
00126 
00127 typedef struct Z_DatabaseSpecific Z_DatabaseSpecific;
00128 YAZ_EXPORT int z_DatabaseSpecific (ODR o, Z_DatabaseSpecific **p, int opt, const char *name);
00129 
00130 typedef struct Z_ElementSetNames Z_ElementSetNames;
00131 YAZ_EXPORT int z_ElementSetNames (ODR o, Z_ElementSetNames **p, int opt, const char *name);
00132 
00133 typedef int  Z_PresentStatus;
00134 YAZ_EXPORT int z_PresentStatus (ODR o, Z_PresentStatus **p, int opt, const char *name);
00135 
00136 typedef struct Z_DbSpecific Z_DbSpecific;
00137 YAZ_EXPORT int z_DbSpecific (ODR o, Z_DbSpecific **p, int opt, const char *name);
00138 
00139 typedef struct Z_CompSpec Z_CompSpec;
00140 YAZ_EXPORT int z_CompSpec (ODR o, Z_CompSpec **p, int opt, const char *name);
00141 
00142 typedef struct Z_ElementSpec Z_ElementSpec;
00143 YAZ_EXPORT int z_ElementSpec (ODR o, Z_ElementSpec **p, int opt, const char *name);
00144 
00145 typedef struct Z_Specification Z_Specification;
00146 YAZ_EXPORT int z_Specification (ODR o, Z_Specification **p, int opt, const char *name);
00147 
00148 typedef struct Z_DeleteResultSetRequest Z_DeleteResultSetRequest;
00149 YAZ_EXPORT int z_DeleteResultSetRequest (ODR o, Z_DeleteResultSetRequest **p, int opt, const char *name);
00150 
00151 typedef struct Z_DeleteResultSetResponse Z_DeleteResultSetResponse;
00152 YAZ_EXPORT int z_DeleteResultSetResponse (ODR o, Z_DeleteResultSetResponse **p, int opt, const char *name);
00153 
00154 typedef struct Z_ListStatus Z_ListStatus;
00155 YAZ_EXPORT int z_ListStatus (ODR o, Z_ListStatus **p, int opt, const char *name);
00156 
00157 typedef struct Z_ListStatuses Z_ListStatuses;
00158 YAZ_EXPORT int z_ListStatuses (ODR o, Z_ListStatuses **p, int opt, const char *name);
00159 
00160 typedef int  Z_DeleteStatus;
00161 YAZ_EXPORT int z_DeleteStatus (ODR o, Z_DeleteStatus **p, int opt, const char *name);
00162 
00163 typedef struct Z_AccessControlRequest Z_AccessControlRequest;
00164 YAZ_EXPORT int z_AccessControlRequest (ODR o, Z_AccessControlRequest **p, int opt, const char *name);
00165 
00166 typedef struct Z_AccessControlResponse Z_AccessControlResponse;
00167 YAZ_EXPORT int z_AccessControlResponse (ODR o, Z_AccessControlResponse **p, int opt, const char *name);
00168 
00169 typedef struct Z_ResourceControlRequest Z_ResourceControlRequest;
00170 YAZ_EXPORT int z_ResourceControlRequest (ODR o, Z_ResourceControlRequest **p, int opt, const char *name);
00171 
00172 typedef struct Z_ResourceControlResponse Z_ResourceControlResponse;
00173 YAZ_EXPORT int z_ResourceControlResponse (ODR o, Z_ResourceControlResponse **p, int opt, const char *name);
00174 
00175 typedef struct Z_TriggerResourceControlRequest Z_TriggerResourceControlRequest;
00176 YAZ_EXPORT int z_TriggerResourceControlRequest (ODR o, Z_TriggerResourceControlRequest **p, int opt, const char *name);
00177 
00178 typedef struct Z_ResourceReportRequest Z_ResourceReportRequest;
00179 YAZ_EXPORT int z_ResourceReportRequest (ODR o, Z_ResourceReportRequest **p, int opt, const char *name);
00180 
00181 typedef struct Z_ResourceReportResponse Z_ResourceReportResponse;
00182 YAZ_EXPORT int z_ResourceReportResponse (ODR o, Z_ResourceReportResponse **p, int opt, const char *name);
00183 
00184 typedef Z_External  Z_ResourceReport;
00185 YAZ_EXPORT int z_ResourceReport (ODR o, Z_ResourceReport **p, int opt, const char *name);
00186 
00187 typedef Odr_oid  Z_ResourceReportId;
00188 YAZ_EXPORT int z_ResourceReportId (ODR o, Z_ResourceReportId **p, int opt, const char *name);
00189 
00190 typedef struct Z_ScanRequest Z_ScanRequest;
00191 YAZ_EXPORT int z_ScanRequest (ODR o, Z_ScanRequest **p, int opt, const char *name);
00192 
00193 typedef struct Z_ScanResponse Z_ScanResponse;
00194 YAZ_EXPORT int z_ScanResponse (ODR o, Z_ScanResponse **p, int opt, const char *name);
00195 
00196 typedef struct Z_ListEntries Z_ListEntries;
00197 YAZ_EXPORT int z_ListEntries (ODR o, Z_ListEntries **p, int opt, const char *name);
00198 
00199 typedef struct Z_Entry Z_Entry;
00200 YAZ_EXPORT int z_Entry (ODR o, Z_Entry **p, int opt, const char *name);
00201 
00202 typedef struct Z_TermInfo Z_TermInfo;
00203 YAZ_EXPORT int z_TermInfo (ODR o, Z_TermInfo **p, int opt, const char *name);
00204 
00205 typedef struct Z_byDatabaseList_s Z_byDatabaseList_s;
00206 YAZ_EXPORT int z_byDatabaseList_s (ODR o, Z_byDatabaseList_s **p, int opt, const char *name);
00207 
00208 typedef struct Z_byDatabaseList Z_byDatabaseList;
00209 YAZ_EXPORT int z_byDatabaseList (ODR o, Z_byDatabaseList **p, int opt, const char *name);
00210 
00211 typedef struct Z_OccurrenceByAttributesElem Z_OccurrenceByAttributesElem;
00212 YAZ_EXPORT int z_OccurrenceByAttributesElem (ODR o, Z_OccurrenceByAttributesElem **p, int opt, const char *name);
00213 
00214 typedef struct Z_OccurrenceByAttributes Z_OccurrenceByAttributes;
00215 YAZ_EXPORT int z_OccurrenceByAttributes (ODR o, Z_OccurrenceByAttributes **p, int opt, const char *name);
00216 
00217 typedef struct Z_SortKeySpecList Z_SortKeySpecList;
00218 YAZ_EXPORT int z_SortKeySpecList (ODR o, Z_SortKeySpecList **p, int opt, const char *name);
00219 
00220 typedef struct Z_SortRequest Z_SortRequest;
00221 YAZ_EXPORT int z_SortRequest (ODR o, Z_SortRequest **p, int opt, const char *name);
00222 
00223 typedef struct Z_SortResponse Z_SortResponse;
00224 YAZ_EXPORT int z_SortResponse (ODR o, Z_SortResponse **p, int opt, const char *name);
00225 
00226 typedef struct Z_SortKeySpec Z_SortKeySpec;
00227 YAZ_EXPORT int z_SortKeySpec (ODR o, Z_SortKeySpec **p, int opt, const char *name);
00228 
00229 typedef struct Z_SortDbSpecificList_s Z_SortDbSpecificList_s;
00230 YAZ_EXPORT int z_SortDbSpecificList_s (ODR o, Z_SortDbSpecificList_s **p, int opt, const char *name);
00231 
00232 typedef struct Z_SortDbSpecificList Z_SortDbSpecificList;
00233 YAZ_EXPORT int z_SortDbSpecificList (ODR o, Z_SortDbSpecificList **p, int opt, const char *name);
00234 
00235 typedef struct Z_SortElement Z_SortElement;
00236 YAZ_EXPORT int z_SortElement (ODR o, Z_SortElement **p, int opt, const char *name);
00237 
00238 typedef struct Z_SortAttributes Z_SortAttributes;
00239 YAZ_EXPORT int z_SortAttributes (ODR o, Z_SortAttributes **p, int opt, const char *name);
00240 
00241 typedef struct Z_SortKey Z_SortKey;
00242 YAZ_EXPORT int z_SortKey (ODR o, Z_SortKey **p, int opt, const char *name);
00243 
00244 typedef struct Z_ExtendedServicesRequest Z_ExtendedServicesRequest;
00245 YAZ_EXPORT int z_ExtendedServicesRequest (ODR o, Z_ExtendedServicesRequest **p, int opt, const char *name);
00246 
00247 typedef struct Z_ExtendedServicesResponse Z_ExtendedServicesResponse;
00248 YAZ_EXPORT int z_ExtendedServicesResponse (ODR o, Z_ExtendedServicesResponse **p, int opt, const char *name);
00249 
00250 typedef struct Z_Permissions_s Z_Permissions_s;
00251 YAZ_EXPORT int z_Permissions_s (ODR o, Z_Permissions_s **p, int opt, const char *name);
00252 
00253 typedef struct Z_Permissions Z_Permissions;
00254 YAZ_EXPORT int z_Permissions (ODR o, Z_Permissions **p, int opt, const char *name);
00255 
00256 typedef struct Z_Close Z_Close;
00257 YAZ_EXPORT int z_Close (ODR o, Z_Close **p, int opt, const char *name);
00258 
00259 typedef int  Z_CloseReason;
00260 YAZ_EXPORT int z_CloseReason (ODR o, Z_CloseReason **p, int opt, const char *name);
00261 
00262 typedef struct Z_DuplicateDetectionRequest Z_DuplicateDetectionRequest;
00263 YAZ_EXPORT int z_DuplicateDetectionRequest (ODR o, Z_DuplicateDetectionRequest **p, int opt, const char *name);
00264 
00265 typedef struct Z_DuplicateDetectionCriterion Z_DuplicateDetectionCriterion;
00266 YAZ_EXPORT int z_DuplicateDetectionCriterion (ODR o, Z_DuplicateDetectionCriterion **p, int opt, const char *name);
00267 
00268 typedef struct Z_RetentionCriterion Z_RetentionCriterion;
00269 YAZ_EXPORT int z_RetentionCriterion (ODR o, Z_RetentionCriterion **p, int opt, const char *name);
00270 
00271 typedef struct Z_SortCriterionPreferredDatabases Z_SortCriterionPreferredDatabases;
00272 YAZ_EXPORT int z_SortCriterionPreferredDatabases (ODR o, Z_SortCriterionPreferredDatabases **p, int opt, const char *name);
00273 
00274 typedef struct Z_SortCriterion Z_SortCriterion;
00275 YAZ_EXPORT int z_SortCriterion (ODR o, Z_SortCriterion **p, int opt, const char *name);
00276 
00277 typedef struct Z_DuplicateDetectionResponse Z_DuplicateDetectionResponse;
00278 YAZ_EXPORT int z_DuplicateDetectionResponse (ODR o, Z_DuplicateDetectionResponse **p, int opt, const char *name);
00279 
00280 typedef Odr_oct  Z_ReferenceId;
00281 YAZ_EXPORT int z_ReferenceId (ODR o, Z_ReferenceId **p, int opt, const char *name);
00282 
00283 typedef Odr_oid  Z_AttributeSetId;
00284 YAZ_EXPORT int z_AttributeSetId (ODR o, Z_AttributeSetId **p, int opt, const char *name);
00285 
00286 typedef struct Z_OtherInformationUnit Z_OtherInformationUnit;
00287 YAZ_EXPORT int z_OtherInformationUnit (ODR o, Z_OtherInformationUnit **p, int opt, const char *name);
00288 
00289 typedef struct Z_OtherInformation Z_OtherInformation;
00290 YAZ_EXPORT int z_OtherInformation (ODR o, Z_OtherInformation **p, int opt, const char *name);
00291 
00292 typedef struct Z_InfoCategory Z_InfoCategory;
00293 YAZ_EXPORT int z_InfoCategory (ODR o, Z_InfoCategory **p, int opt, const char *name);
00294 
00295 typedef struct Z_IntUnit Z_IntUnit;
00296 YAZ_EXPORT int z_IntUnit (ODR o, Z_IntUnit **p, int opt, const char *name);
00297 
00298 typedef struct Z_Unit Z_Unit;
00299 YAZ_EXPORT int z_Unit (ODR o, Z_Unit **p, int opt, const char *name);
00300 
00301 typedef char  Z_InternationalString;
00302 YAZ_EXPORT int z_InternationalString (ODR o, Z_InternationalString **p, int opt, const char *name);
00303 
00304 typedef Z_InternationalString  Z_ResultSetId;
00305 YAZ_EXPORT int z_ResultSetId (ODR o, Z_ResultSetId **p, int opt, const char *name);
00306 
00307 typedef Z_InternationalString  Z_ElementSetName;
00308 YAZ_EXPORT int z_ElementSetName (ODR o, Z_ElementSetName **p, int opt, const char *name);
00309 
00310 typedef Z_InternationalString  Z_DatabaseName;
00311 YAZ_EXPORT int z_DatabaseName (ODR o, Z_DatabaseName **p, int opt, const char *name);
00312 
00313 typedef struct Z_StringOrNumeric Z_StringOrNumeric;
00314 YAZ_EXPORT int z_StringOrNumeric (ODR o, Z_StringOrNumeric **p, int opt, const char *name);
00315 #ifdef __cplusplus
00316 }
00317 #endif
00318 #ifdef __cplusplus
00319 extern "C" {
00320 #endif
00321 struct Z_APDU {
00322         int which;
00323         union {
00324                 Z_InitRequest *initRequest;
00325                 Z_InitResponse *initResponse;
00326                 Z_SearchRequest *searchRequest;
00327                 Z_SearchResponse *searchResponse;
00328                 Z_PresentRequest *presentRequest;
00329                 Z_PresentResponse *presentResponse;
00330                 Z_DeleteResultSetRequest *deleteResultSetRequest;
00331                 Z_DeleteResultSetResponse *deleteResultSetResponse;
00332                 Z_AccessControlRequest *accessControlRequest;
00333                 Z_AccessControlResponse *accessControlResponse;
00334                 Z_ResourceControlRequest *resourceControlRequest;
00335                 Z_ResourceControlResponse *resourceControlResponse;
00336                 Z_TriggerResourceControlRequest *triggerResourceControlRequest;
00337                 Z_ResourceReportRequest *resourceReportRequest;
00338                 Z_ResourceReportResponse *resourceReportResponse;
00339                 Z_ScanRequest *scanRequest;
00340                 Z_ScanResponse *scanResponse;
00341                 Z_SortRequest *sortRequest;
00342                 Z_SortResponse *sortResponse;
00343                 Z_Segment *segmentRequest;
00344                 Z_ExtendedServicesRequest *extendedServicesRequest;
00345                 Z_ExtendedServicesResponse *extendedServicesResponse;
00346                 Z_Close *close;
00347                 Z_DuplicateDetectionRequest *duplicateDetectionRequest;
00348                 Z_DuplicateDetectionResponse *duplicateDetectionResponse;
00349 #define Z_APDU_initRequest 1
00350 #define Z_APDU_initResponse 2
00351 #define Z_APDU_searchRequest 3
00352 #define Z_APDU_searchResponse 4
00353 #define Z_APDU_presentRequest 5
00354 #define Z_APDU_presentResponse 6
00355 #define Z_APDU_deleteResultSetRequest 7
00356 #define Z_APDU_deleteResultSetResponse 8
00357 #define Z_APDU_accessControlRequest 9
00358 #define Z_APDU_accessControlResponse 10
00359 #define Z_APDU_resourceControlRequest 11
00360 #define Z_APDU_resourceControlResponse 12
00361 #define Z_APDU_triggerResourceControlRequest 13
00362 #define Z_APDU_resourceReportRequest 14
00363 #define Z_APDU_resourceReportResponse 15
00364 #define Z_APDU_scanRequest 16
00365 #define Z_APDU_scanResponse 17
00366 #define Z_APDU_sortRequest 18
00367 #define Z_APDU_sortResponse 19
00368 #define Z_APDU_segmentRequest 20
00369 #define Z_APDU_extendedServicesRequest 21
00370 #define Z_APDU_extendedServicesResponse 22
00371 #define Z_APDU_close 23
00372 #define Z_APDU_duplicateDetectionRequest 24
00373 #define Z_APDU_duplicateDetectionResponse 25
00374         } u;
00375 };
00376 
00377 struct Z_InitRequest {
00378         Z_ReferenceId *referenceId; /* OPT */
00379         Z_ProtocolVersion *protocolVersion;
00380         Z_Options *options;
00381         int *preferredMessageSize;
00382         int *maximumRecordSize;
00383         Z_IdAuthentication *idAuthentication; /* OPT */
00384         Z_InternationalString *implementationId; /* OPT */
00385         Z_InternationalString *implementationName; /* OPT */
00386         Z_InternationalString *implementationVersion; /* OPT */
00387         Z_External *userInformationField; /* OPT */
00388         Z_OtherInformation *otherInfo; /* OPT */
00389 };
00390 
00391 struct Z_IdPass {
00392         Z_InternationalString *groupId; /* OPT */
00393         Z_InternationalString *userId; /* OPT */
00394         Z_InternationalString *password; /* OPT */
00395 };
00396 
00397 struct Z_IdAuthentication {
00398         int which;
00399         union {
00400                 char *open;
00401                 Z_IdPass *idPass;
00402                 Odr_null *anonymous;
00403                 Z_External *other;
00404 #define Z_IdAuthentication_open 1
00405 #define Z_IdAuthentication_idPass 2
00406 #define Z_IdAuthentication_anonymous 3
00407 #define Z_IdAuthentication_other 4
00408         } u;
00409 };
00410 
00411 struct Z_InitResponse {
00412         Z_ReferenceId *referenceId; /* OPT */
00413         Z_ProtocolVersion *protocolVersion;
00414         Z_Options *options;
00415         int *preferredMessageSize;
00416         int *maximumRecordSize;
00417         bool_t *result;
00418         Z_InternationalString *implementationId; /* OPT */
00419         Z_InternationalString *implementationName; /* OPT */
00420         Z_InternationalString *implementationVersion; /* OPT */
00421         Z_External *userInformationField; /* OPT */
00422         Z_OtherInformation *otherInfo; /* OPT */
00423 };
00424 
00425 #define Z_ProtocolVersion_1 0
00426 #define Z_ProtocolVersion_2 1
00427 #define Z_ProtocolVersion_3 2
00428 
00429 #define Z_Options_search 0
00430 #define Z_Options_present 1
00431 #define Z_Options_delSet 2
00432 #define Z_Options_resourceReport 3
00433 #define Z_Options_triggerResourceCtrl 4
00434 #define Z_Options_resourceCtrl 5
00435 #define Z_Options_accessCtrl 6
00436 #define Z_Options_scan 7
00437 #define Z_Options_sort 8
00438 #define Z_Options_extendedServices 10
00439 #define Z_Options_level_1Segmentation 11
00440 #define Z_Options_level_2Segmentation 12
00441 #define Z_Options_concurrentOperations 13
00442 #define Z_Options_namedResultSets 14
00443 #define Z_Options_encapsulation 15
00444 #define Z_Options_resultCount 16
00445 #define Z_Options_negotiationModel 17
00446 #define Z_Options_duplicateDetection 18
00447 #define Z_Options_queryType104 19
00448 #define Z_Options_pQESCorrection 20
00449 #define Z_Options_stringSchema 21
00450 
00451 struct Z_SearchRequest {
00452         Z_ReferenceId *referenceId; /* OPT */
00453         int *smallSetUpperBound;
00454         int *largeSetLowerBound;
00455         int *mediumSetPresentNumber;
00456         bool_t *replaceIndicator;
00457         Z_InternationalString *resultSetName;
00458         int num_databaseNames;
00459         Z_DatabaseName **databaseNames;
00460         Z_ElementSetNames *smallSetElementSetNames; /* OPT */
00461         Z_ElementSetNames *mediumSetElementSetNames; /* OPT */
00462         Odr_oid *preferredRecordSyntax; /* OPT */
00463         Z_Query *query;
00464         Z_OtherInformation *additionalSearchInfo; /* OPT */
00465         Z_OtherInformation *otherInfo; /* OPT */
00466 };
00467 
00468 struct Z_Query {
00469         int which;
00470         union {
00471                 void *type_0;
00472                 Z_RPNQuery *type_1;
00473                 Odr_oct *type_2;
00474                 Odr_oct *type_100;
00475                 Z_RPNQuery *type_101;
00476                 Odr_oct *type_102;
00477                 Z_External *type_104;
00478 #define Z_Query_type_0 1
00479 #define Z_Query_type_1 2
00480 #define Z_Query_type_2 3
00481