Initial commit
[yaz4j-moved-to-github.git] / dependencies / yaz_3.0.14 / include / yaz / z-core.h
1 /** \file z-core.h
2     \brief ASN.1 Module Z39-50-APDU-1995
3
4     Generated automatically by YAZ ASN.1 Compiler 0.4
5 */
6
7 #ifndef z_core_H
8 #define z_core_H
9
10 #include <yaz/odr.h>
11 #ifdef __cplusplus
12 extern "C" {
13 #endif
14
15 typedef struct Z_External Z_External;
16 YAZ_EXPORT int z_External(ODR o, Z_External **p, int opt, const char *name);
17
18
19 typedef struct Z_APDU Z_APDU;
20 YAZ_EXPORT int z_APDU (ODR o, Z_APDU **p, int opt, const char *name);
21
22 typedef struct Z_InitRequest Z_InitRequest;
23 YAZ_EXPORT int z_InitRequest (ODR o, Z_InitRequest **p, int opt, const char *name);
24
25 typedef struct Z_IdPass Z_IdPass;
26 YAZ_EXPORT int z_IdPass (ODR o, Z_IdPass **p, int opt, const char *name);
27
28 typedef struct Z_IdAuthentication Z_IdAuthentication;
29 YAZ_EXPORT int z_IdAuthentication (ODR o, Z_IdAuthentication **p, int opt, const char *name);
30
31 typedef struct Z_InitResponse Z_InitResponse;
32 YAZ_EXPORT int z_InitResponse (ODR o, Z_InitResponse **p, int opt, const char *name);
33
34 typedef Odr_bitmask  Z_ProtocolVersion;
35 YAZ_EXPORT int z_ProtocolVersion (ODR o, Z_ProtocolVersion **p, int opt, const char *name);
36
37 typedef Odr_bitmask  Z_Options;
38 YAZ_EXPORT int z_Options (ODR o, Z_Options **p, int opt, const char *name);
39
40 typedef struct Z_SearchRequest Z_SearchRequest;
41 YAZ_EXPORT int z_SearchRequest (ODR o, Z_SearchRequest **p, int opt, const char *name);
42
43 typedef struct Z_Query Z_Query;
44 YAZ_EXPORT int z_Query (ODR o, Z_Query **p, int opt, const char *name);
45
46 typedef struct Z_RPNQuery Z_RPNQuery;
47 YAZ_EXPORT int z_RPNQuery (ODR o, Z_RPNQuery **p, int opt, const char *name);
48
49 typedef struct Z_Complex Z_Complex;
50 YAZ_EXPORT int z_Complex (ODR o, Z_Complex **p, int opt, const char *name);
51
52 typedef struct Z_RPNStructure Z_RPNStructure;
53 YAZ_EXPORT int z_RPNStructure (ODR o, Z_RPNStructure **p, int opt, const char *name);
54
55 typedef struct Z_Operand Z_Operand;
56 YAZ_EXPORT int z_Operand (ODR o, Z_Operand **p, int opt, const char *name);
57
58 typedef struct Z_AttributesPlusTerm Z_AttributesPlusTerm;
59 YAZ_EXPORT int z_AttributesPlusTerm (ODR o, Z_AttributesPlusTerm **p, int opt, const char *name);
60
61 typedef struct Z_ResultSetPlusAttributes Z_ResultSetPlusAttributes;
62 YAZ_EXPORT int z_ResultSetPlusAttributes (ODR o, Z_ResultSetPlusAttributes **p, int opt, const char *name);
63
64 typedef struct Z_AttributeList Z_AttributeList;
65 YAZ_EXPORT int z_AttributeList (ODR o, Z_AttributeList **p, int opt, const char *name);
66
67 typedef struct Z_Term Z_Term;
68 YAZ_EXPORT int z_Term (ODR o, Z_Term **p, int opt, const char *name);
69
70 typedef struct Z_Operator Z_Operator;
71 YAZ_EXPORT int z_Operator (ODR o, Z_Operator **p, int opt, const char *name);
72
73 typedef struct Z_ComplexAttribute Z_ComplexAttribute;
74 YAZ_EXPORT int z_ComplexAttribute (ODR o, Z_ComplexAttribute **p, int opt, const char *name);
75
76 typedef struct Z_AttributeElement Z_AttributeElement;
77 YAZ_EXPORT int z_AttributeElement (ODR o, Z_AttributeElement **p, int opt, const char *name);
78
79 typedef struct Z_ProximityOperator Z_ProximityOperator;
80 YAZ_EXPORT int z_ProximityOperator (ODR o, Z_ProximityOperator **p, int opt, const char *name);
81
82 typedef int  Z_ProxUnit;
83 YAZ_EXPORT int z_ProxUnit (ODR o, Z_ProxUnit **p, int opt, const char *name);
84
85 typedef struct Z_SearchResponse Z_SearchResponse;
86 YAZ_EXPORT int z_SearchResponse (ODR o, Z_SearchResponse **p, int opt, const char *name);
87
88 typedef struct Z_RecordComposition Z_RecordComposition;
89 YAZ_EXPORT int z_RecordComposition (ODR o, Z_RecordComposition **p, int opt, const char *name);
90
91 typedef struct Z_PresentRequest Z_PresentRequest;
92 YAZ_EXPORT int z_PresentRequest (ODR o, Z_PresentRequest **p, int opt, const char *name);
93
94 typedef struct Z_Segment Z_Segment;
95 YAZ_EXPORT int z_Segment (ODR o, Z_Segment **p, int opt, const char *name);
96
97 typedef struct Z_PresentResponse Z_PresentResponse;
98 YAZ_EXPORT int z_PresentResponse (ODR o, Z_PresentResponse **p, int opt, const char *name);
99
100 typedef struct Z_NamePlusRecordList Z_NamePlusRecordList;
101 YAZ_EXPORT int z_NamePlusRecordList (ODR o, Z_NamePlusRecordList **p, int opt, const char *name);
102
103 typedef struct Z_DiagRecs Z_DiagRecs;
104 YAZ_EXPORT int z_DiagRecs (ODR o, Z_DiagRecs **p, int opt, const char *name);
105
106 typedef struct Z_Records Z_Records;
107 YAZ_EXPORT int z_Records (ODR o, Z_Records **p, int opt, const char *name);
108
109 typedef struct Z_NamePlusRecord Z_NamePlusRecord;
110 YAZ_EXPORT int z_NamePlusRecord (ODR o, Z_NamePlusRecord **p, int opt, const char *name);
111
112 typedef struct Z_FragmentSyntax Z_FragmentSyntax;
113 YAZ_EXPORT int z_FragmentSyntax (ODR o, Z_FragmentSyntax **p, int opt, const char *name);
114
115 typedef struct Z_DiagRec Z_DiagRec;
116 YAZ_EXPORT int z_DiagRec (ODR o, Z_DiagRec **p, int opt, const char *name);
117
118 typedef struct Z_DefaultDiagFormat Z_DefaultDiagFormat;
119 YAZ_EXPORT int z_DefaultDiagFormat (ODR o, Z_DefaultDiagFormat **p, int opt, const char *name);
120
121 typedef struct Z_Range Z_Range;
122 YAZ_EXPORT int z_Range (ODR o, Z_Range **p, int opt, const char *name);
123
124 typedef struct Z_DatabaseSpecificUnit Z_DatabaseSpecificUnit;
125 YAZ_EXPORT int z_DatabaseSpecificUnit (ODR o, Z_DatabaseSpecificUnit **p, int opt, const char *name);
126
127 typedef struct Z_DatabaseSpecific Z_DatabaseSpecific;
128 YAZ_EXPORT int z_DatabaseSpecific (ODR o, Z_DatabaseSpecific **p, int opt, const char *name);
129
130 typedef struct Z_ElementSetNames Z_ElementSetNames;
131 YAZ_EXPORT int z_ElementSetNames (ODR o, Z_ElementSetNames **p, int opt, const char *name);
132
133 typedef int  Z_PresentStatus;
134 YAZ_EXPORT int z_PresentStatus (ODR o, Z_PresentStatus **p, int opt, const char *name);
135
136 typedef struct Z_DbSpecific Z_DbSpecific;
137 YAZ_EXPORT int z_DbSpecific (ODR o, Z_DbSpecific **p, int opt, const char *name);
138
139 typedef struct Z_CompSpec Z_CompSpec;
140 YAZ_EXPORT int z_CompSpec (ODR o, Z_CompSpec **p, int opt, const char *name);
141
142 typedef struct Z_ElementSpec Z_ElementSpec;
143 YAZ_EXPORT int z_ElementSpec (ODR o, Z_ElementSpec **p, int opt, const char *name);
144
145 typedef struct Z_Specification Z_Specification;
146 YAZ_EXPORT int z_Specification (ODR o, Z_Specification **p, int opt, const char *name);
147
148 typedef struct Z_DeleteResultSetRequest Z_DeleteResultSetRequest;
149 YAZ_EXPORT int z_DeleteResultSetRequest (ODR o, Z_DeleteResultSetRequest **p, int opt, const char *name);
150
151 typedef struct Z_DeleteResultSetResponse Z_DeleteResultSetResponse;
152 YAZ_EXPORT int z_DeleteResultSetResponse (ODR o, Z_DeleteResultSetResponse **p, int opt, const char *name);
153
154 typedef struct Z_ListStatus Z_ListStatus;
155 YAZ_EXPORT int z_ListStatus (ODR o, Z_ListStatus **p, int opt, const char *name);
156
157 typedef struct Z_ListStatuses Z_ListStatuses;
158 YAZ_EXPORT int z_ListStatuses (ODR o, Z_ListStatuses **p, int opt, const char *name);
159
160 typedef int  Z_DeleteStatus;
161 YAZ_EXPORT int z_DeleteStatus (ODR o, Z_DeleteStatus **p, int opt, const char *name);
162
163 typedef struct Z_AccessControlRequest Z_AccessControlRequest;
164 YAZ_EXPORT int z_AccessControlRequest (ODR o, Z_AccessControlRequest **p, int opt, const char *name);
165
166 typedef struct Z_AccessControlResponse Z_AccessControlResponse;
167 YAZ_EXPORT int z_AccessControlResponse (ODR o, Z_AccessControlResponse **p, int opt, const char *name);
168
169 typedef struct Z_ResourceControlRequest Z_ResourceControlRequest;
170 YAZ_EXPORT int z_ResourceControlRequest (ODR o, Z_ResourceControlRequest **p, int opt, const char *name);
171
172 typedef struct Z_ResourceControlResponse Z_ResourceControlResponse;
173 YAZ_EXPORT int z_ResourceControlResponse (ODR o, Z_ResourceControlResponse **p, int opt, const char *name);
174
175 typedef struct Z_TriggerResourceControlRequest Z_TriggerResourceControlRequest;
176 YAZ_EXPORT int z_TriggerResourceControlRequest (ODR o, Z_TriggerResourceControlRequest **p, int opt, const char *name);
177
178 typedef struct Z_ResourceReportRequest Z_ResourceReportRequest;
179 YAZ_EXPORT int z_ResourceReportRequest (ODR o, Z_ResourceReportRequest **p, int opt, const char *name);
180
181 typedef struct Z_ResourceReportResponse Z_ResourceReportResponse;
182 YAZ_EXPORT int z_ResourceReportResponse (ODR o, Z_ResourceReportResponse **p, int opt, const char *name);
183
184 typedef Z_External  Z_ResourceReport;
185 YAZ_EXPORT int z_ResourceReport (ODR o, Z_ResourceReport **p, int opt, const char *name);
186
187 typedef Odr_oid  Z_ResourceReportId;
188 YAZ_EXPORT int z_ResourceReportId (ODR o, Z_ResourceReportId **p, int opt, const char *name);
189
190 typedef struct Z_ScanRequest Z_ScanRequest;
191 YAZ_EXPORT int z_ScanRequest (ODR o, Z_ScanRequest **p, int opt, const char *name);
192
193 typedef struct Z_ScanResponse Z_ScanResponse;
194 YAZ_EXPORT int z_ScanResponse (ODR o, Z_ScanResponse **p, int opt, const char *name);
195
196 typedef struct Z_ListEntries Z_ListEntries;
197 YAZ_EXPORT int z_ListEntries (ODR o, Z_ListEntries **p, int opt, const char *name);
198
199 typedef struct Z_Entry Z_Entry;
200 YAZ_EXPORT int z_Entry (ODR o, Z_Entry **p, int opt, const char *name);
201
202 typedef struct Z_TermInfo Z_TermInfo;
203 YAZ_EXPORT int z_TermInfo (ODR o, Z_TermInfo **p, int opt, const char *name);
204
205 typedef struct Z_byDatabaseList_s Z_byDatabaseList_s;
206 YAZ_EXPORT int z_byDatabaseList_s (ODR o, Z_byDatabaseList_s **p, int opt, const char *name);
207
208 typedef struct Z_byDatabaseList Z_byDatabaseList;
209 YAZ_EXPORT int z_byDatabaseList (ODR o, Z_byDatabaseList **p, int opt, const char *name);
210
211 typedef struct Z_OccurrenceByAttributesElem Z_OccurrenceByAttributesElem;
212 YAZ_EXPORT int z_OccurrenceByAttributesElem (ODR o, Z_OccurrenceByAttributesElem **p, int opt, const char *name);
213
214 typedef struct Z_OccurrenceByAttributes Z_OccurrenceByAttributes;
215 YAZ_EXPORT int z_OccurrenceByAttributes (ODR o, Z_OccurrenceByAttributes **p, int opt, const char *name);
216
217 typedef struct Z_SortKeySpecList Z_SortKeySpecList;
218 YAZ_EXPORT int z_SortKeySpecList (ODR o, Z_SortKeySpecList **p, int opt, const char *name);
219
220 typedef struct Z_SortRequest Z_SortRequest;
221 YAZ_EXPORT int z_SortRequest (ODR o, Z_SortRequest **p, int opt, const char *name);
222
223 typedef struct Z_SortResponse Z_SortResponse;
224 YAZ_EXPORT int z_SortResponse (ODR o, Z_SortResponse **p, int opt, const char *name);
225
226 typedef struct Z_SortKeySpec Z_SortKeySpec;
227 YAZ_EXPORT int z_SortKeySpec (ODR o, Z_SortKeySpec **p, int opt, const char *name);
228
229 typedef struct Z_SortDbSpecificList_s Z_SortDbSpecificList_s;
230 YAZ_EXPORT int z_SortDbSpecificList_s (ODR o, Z_SortDbSpecificList_s **p, int opt, const char *name);
231
232 typedef struct Z_SortDbSpecificList Z_SortDbSpecificList;
233 YAZ_EXPORT int z_SortDbSpecificList (ODR o, Z_SortDbSpecificList **p, int opt, const char *name);
234
235 typedef struct Z_SortElement Z_SortElement;
236 YAZ_EXPORT int z_SortElement (ODR o, Z_SortElement **p, int opt, const char *name);
237
238 typedef struct Z_SortAttributes Z_SortAttributes;
239 YAZ_EXPORT int z_SortAttributes (ODR o, Z_SortAttributes **p, int opt, const char *name);
240
241 typedef struct Z_SortKey Z_SortKey;
242 YAZ_EXPORT int z_SortKey (ODR o, Z_SortKey **p, int opt, const char *name);
243
244 typedef struct Z_ExtendedServicesRequest Z_ExtendedServicesRequest;
245 YAZ_EXPORT int z_ExtendedServicesRequest (ODR o, Z_ExtendedServicesRequest **p, int opt, const char *name);
246
247 typedef struct Z_ExtendedServicesResponse Z_ExtendedServicesResponse;
248 YAZ_EXPORT int z_ExtendedServicesResponse (ODR o, Z_ExtendedServicesResponse **p, int opt, const char *name);
249
250 typedef struct Z_Permissions_s Z_Permissions_s;
251 YAZ_EXPORT int z_Permissions_s (ODR o, Z_Permissions_s **p, int opt, const char *name);
252
253 typedef struct Z_Permissions Z_Permissions;
254 YAZ_EXPORT int z_Permissions (ODR o, Z_Permissions **p, int opt, const char *name);
255
256 typedef struct Z_Close Z_Close;
257 YAZ_EXPORT int z_Close (ODR o, Z_Close **p, int opt, const char *name);
258
259 typedef int  Z_CloseReason;
260 YAZ_EXPORT int z_CloseReason (ODR o, Z_CloseReason **p, int opt, const char *name);
261
262 typedef struct Z_DuplicateDetectionRequest Z_DuplicateDetectionRequest;
263 YAZ_EXPORT int z_DuplicateDetectionRequest (ODR o, Z_DuplicateDetectionRequest **p, int opt, const char *name);
264
265 typedef struct Z_DuplicateDetectionCriterion Z_DuplicateDetectionCriterion;
266 YAZ_EXPORT int z_DuplicateDetectionCriterion (ODR o, Z_DuplicateDetectionCriterion **p, int opt, const char *name);
267
268 typedef struct Z_RetentionCriterion Z_RetentionCriterion;
269 YAZ_EXPORT int z_RetentionCriterion (ODR o, Z_RetentionCriterion **p, int opt, const char *name);
270
271 typedef struct Z_SortCriterionPreferredDatabases Z_SortCriterionPreferredDatabases;
272 YAZ_EXPORT int z_SortCriterionPreferredDatabases (ODR o, Z_SortCriterionPreferredDatabases **p, int opt, const char *name);
273
274 typedef struct Z_SortCriterion Z_SortCriterion;
275 YAZ_EXPORT int z_SortCriterion (ODR o, Z_SortCriterion **p, int opt, const char *name);
276
277 typedef struct Z_DuplicateDetectionResponse Z_DuplicateDetectionResponse;
278 YAZ_EXPORT int z_DuplicateDetectionResponse (ODR o, Z_DuplicateDetectionResponse **p, int opt, const char *name);
279
280 typedef Odr_oct  Z_ReferenceId;
281 YAZ_EXPORT int z_ReferenceId (ODR o, Z_ReferenceId **p, int opt, const char *name);
282
283 typedef Odr_oid  Z_AttributeSetId;
284 YAZ_EXPORT int z_AttributeSetId (ODR o, Z_AttributeSetId **p, int opt, const char *name);
285
286 typedef struct Z_OtherInformationUnit Z_OtherInformationUnit;
287 YAZ_EXPORT int z_OtherInformationUnit (ODR o, Z_OtherInformationUnit **p, int opt, const char *name);
288
289 typedef struct Z_OtherInformation Z_OtherInformation;
290 YAZ_EXPORT int z_OtherInformation (ODR o, Z_OtherInformation **p, int opt, const char *name);
291
292 typedef struct Z_InfoCategory Z_InfoCategory;
293 YAZ_EXPORT int z_InfoCategory (ODR o, Z_InfoCategory **p, int opt, const char *name);
294
295 typedef struct Z_IntUnit Z_IntUnit;
296 YAZ_EXPORT int z_IntUnit (ODR o, Z_IntUnit **p, int opt, const char *name);
297
298 typedef struct Z_Unit Z_Unit;
299 YAZ_EXPORT int z_Unit (ODR o, Z_Unit **p, int opt, const char *name);
300
301 typedef char  Z_InternationalString;
302 YAZ_EXPORT int z_InternationalString (ODR o, Z_InternationalString **p, int opt, const char *name);
303
304 typedef Z_InternationalString  Z_ResultSetId;
305 YAZ_EXPORT int z_ResultSetId (ODR o, Z_ResultSetId **p, int opt, const char *name);
306
307 typedef Z_InternationalString  Z_ElementSetName;
308 YAZ_EXPORT int z_ElementSetName (ODR o, Z_ElementSetName **p, int opt, const char *name);
309
310 typedef Z_InternationalString  Z_DatabaseName;
311 YAZ_EXPORT int z_DatabaseName (ODR o, Z_DatabaseName **p, int opt, const char *name);
312
313 typedef struct Z_StringOrNumeric Z_StringOrNumeric;
314 YAZ_EXPORT int z_StringOrNumeric (ODR o, Z_StringOrNumeric **p, int opt, const char *name);
315 #ifdef __cplusplus
316 }
317 #endif
318 #ifdef __cplusplus
319 extern "C" {
320 #endif
321 struct Z_APDU {
322         int which;
323         union {
324                 Z_InitRequest *initRequest;
325                 Z_InitResponse *initResponse;
326                 Z_SearchRequest *searchRequest;
327                 Z_SearchResponse *searchResponse;
328                 Z_PresentRequest *presentRequest;
329                 Z_PresentResponse *presentResponse;
330                 Z_DeleteResultSetRequest *deleteResultSetRequest;
331                 Z_DeleteResultSetResponse *deleteResultSetResponse;
332                 Z_AccessControlRequest *accessControlRequest;
333                 Z_AccessControlResponse *accessControlResponse;
334                 Z_ResourceControlRequest *resourceControlRequest;
335                 Z_ResourceControlResponse *resourceControlResponse;
336                 Z_TriggerResourceControlRequest *triggerResourceControlRequest;
337                 Z_ResourceReportRequest *resourceReportRequest;
338                 Z_ResourceReportResponse *resourceReportResponse;
339                 Z_ScanRequest *scanRequest;
340                 Z_ScanResponse *scanResponse;
341                 Z_SortRequest *sortRequest;
342                 Z_SortResponse *sortResponse;
343                 Z_Segment *segmentRequest;
344                 Z_ExtendedServicesRequest *extendedServicesRequest;
345                 Z_ExtendedServicesResponse *extendedServicesResponse;
346                 Z_Close *close;
347                 Z_DuplicateDetectionRequest *duplicateDetectionRequest;
348                 Z_DuplicateDetectionResponse *duplicateDetectionResponse;
349 #define Z_APDU_initRequest 1
350 #define Z_APDU_initResponse 2
351 #define Z_APDU_searchRequest 3
352 #define Z_APDU_searchResponse 4
353 #define Z_APDU_presentRequest 5
354 #define Z_APDU_presentResponse 6
355 #define Z_APDU_deleteResultSetRequest 7
356 #define Z_APDU_deleteResultSetResponse 8
357 #define Z_APDU_accessControlRequest 9
358 #define Z_APDU_accessControlResponse 10
359 #define Z_APDU_resourceControlRequest 11
360 #define Z_APDU_resourceControlResponse 12
361 #define Z_APDU_triggerResourceControlRequest 13
362 #define Z_APDU_resourceReportRequest 14
363 #define Z_APDU_resourceReportResponse 15
364 #define Z_APDU_scanRequest 16
365 #define Z_APDU_scanResponse 17
366 #define Z_APDU_sortRequest 18
367 #define Z_APDU_sortResponse 19
368 #define Z_APDU_segmentRequest 20
369 #define Z_APDU_extendedServicesRequest 21
370 #define Z_APDU_extendedServicesResponse 22
371 #define Z_APDU_close 23
372 #define Z_APDU_duplicateDetectionRequest 24
373 #define Z_APDU_duplicateDetectionResponse 25
374         } u;
375 };
376
377 struct Z_InitRequest {
378         Z_ReferenceId *referenceId; /* OPT */
379         Z_ProtocolVersion *protocolVersion;
380         Z_Options *options;
381         int *preferredMessageSize;
382         int *maximumRecordSize;
383         Z_IdAuthentication *idAuthentication; /* OPT */
384         Z_InternationalString *implementationId; /* OPT */
385         Z_InternationalString *implementationName; /* OPT */
386         Z_InternationalString *implementationVersion; /* OPT */
387         Z_External *userInformationField; /* OPT */
388         Z_OtherInformation *otherInfo; /* OPT */
389 };
390
391 struct Z_IdPass {
392         Z_InternationalString *groupId; /* OPT */
393         Z_InternationalString *userId; /* OPT */
394         Z_InternationalString *password; /* OPT */
395 };
396
397 struct Z_IdAuthentication {
398         int which;
399         union {
400                 char *open;
401                 Z_IdPass *idPass;
402                 Odr_null *anonymous;
403                 Z_External *other;
404 #define Z_IdAuthentication_open 1
405 #define Z_IdAuthentication_idPass 2
406 #define Z_IdAuthentication_anonymous 3
407 #define Z_IdAuthentication_other 4
408         } u;
409 };
410
411 struct Z_InitResponse {
412         Z_ReferenceId *referenceId; /* OPT */
413         Z_ProtocolVersion *protocolVersion;
414         Z_Options *options;
415         int *preferredMessageSize;
416         int *maximumRecordSize;
417         bool_t *result;
418         Z_InternationalString *implementationId; /* OPT */
419         Z_InternationalString *implementationName; /* OPT */
420         Z_InternationalString *implementationVersion; /* OPT */
421         Z_External *userInformationField; /* OPT */
422         Z_OtherInformation *otherInfo; /* OPT */
423 };
424
425 #define Z_ProtocolVersion_1 0
426 #define Z_ProtocolVersion_2 1
427 #define Z_ProtocolVersion_3 2
428
429 #define Z_Options_search 0
430 #define Z_Options_present 1
431 #define Z_Options_delSet 2
432 #define Z_Options_resourceReport 3
433 #define Z_Options_triggerResourceCtrl 4
434 #define Z_Options_resourceCtrl 5
435 #define Z_Options_accessCtrl 6
436 #define Z_Options_scan 7
437 #define Z_Options_sort 8
438 #define Z_Options_extendedServices 10
439 #define Z_Options_level_1Segmentation 11
440 #define Z_Options_level_2Segmentation 12
441 #define Z_Options_concurrentOperations 13
442 #define Z_Options_namedResultSets 14
443 #define Z_Options_encapsulation 15
444 #define Z_Options_resultCount 16
445 #define Z_Options_negotiationModel 17
446 #define Z_Options_duplicateDetection 18
447 #define Z_Options_queryType104 19
448 #define Z_Options_pQESCorrection 20
449 #define Z_Options_stringSchema 21
450
451 struct Z_SearchRequest {
452         Z_ReferenceId *referenceId; /* OPT */
453         int *smallSetUpperBound;
454         int *largeSetLowerBound;
455         int *mediumSetPresentNumber;
456         bool_t *replaceIndicator;
457         Z_InternationalString *resultSetName;
458         int num_databaseNames;
459         Z_DatabaseName **databaseNames;
460         Z_ElementSetNames *smallSetElementSetNames; /* OPT */
461         Z_ElementSetNames *mediumSetElementSetNames; /* OPT */
462         Odr_oid *preferredRecordSyntax; /* OPT */
463         Z_Query *query;
464         Z_OtherInformation *additionalSearchInfo; /* OPT */
465         Z_OtherInformation *otherInfo; /* OPT */
466 };
467
468 struct Z_Query {
469         int which;
470         union {
471                 void *type_0;
472                 Z_RPNQuery *type_1;
473                 Odr_oct *type_2;
474                 Odr_oct *type_100;
475                 Z_RPNQuery *type_101;
476                 Odr_oct *type_102;
477                 Z_External *type_104;
478 #define Z_Query_type_0 1
479 #define Z_Query_type_1 2
480 #define Z_Query_type_2 3
481 #define Z_Query_type_100 4
482 #define Z_Query_type_101 5
483 #define Z_Query_type_102 6
484 #define Z_Query_type_104 7
485         } u;
486 };
487
488 struct Z_RPNQuery {
489         Z_AttributeSetId *attributeSetId;
490         Z_RPNStructure *RPNStructure;
491 };
492
493 struct Z_Complex {
494         Z_RPNStructure *s1;
495         Z_RPNStructure *s2;
496         Z_Operator *roperator;
497 };
498
499 struct Z_RPNStructure {
500         int which;
501         union {
502                 Z_Operand *simple;
503                 Z_Complex *complex;
504 #define Z_RPNStructure_simple 1
505 #define Z_RPNStructure_complex 2
506         } u;
507 };
508
509 struct Z_Operand {
510         int which;
511         union {
512                 Z_AttributesPlusTerm *attributesPlusTerm;
513                 Z_ResultSetId *resultSetId;
514                 Z_ResultSetPlusAttributes *resultAttr;
515 #define Z_Operand_APT 1
516 #define Z_Operand_resultSetId 2
517 #define Z_Operand_resultAttr 3
518         } u;
519 };
520
521 struct Z_AttributesPlusTerm {
522         Z_AttributeList *attributes;
523         Z_Term *term;
524 };
525
526 struct Z_ResultSetPlusAttributes {
527         Z_ResultSetId *resultSet;
528         Z_AttributeList *attributes;
529 };
530
531 struct Z_AttributeList {
532         int num_attributes;
533         Z_AttributeElement **attributes;
534 };
535
536 struct Z_Term {
537         int which;
538         union {
539                 Odr_oct *general;
540                 int *numeric;
541                 Z_InternationalString *characterString;
542                 Odr_oid *oid;
543                 char *dateTime;
544                 Z_External *external;
545                 Z_IntUnit *integerAndUnit;
546                 Odr_null *null;
547 #define Z_Term_general 1
548 #define Z_Term_numeric 2
549 #define Z_Term_characterString 3
550 #define Z_Term_oid 4
551 #define Z_Term_dateTime 5
552 #define Z_Term_external 6
553 #define Z_Term_integerAndUnit 7
554 #define Z_Term_null 8
555         } u;
556 };
557
558 struct Z_Operator {
559         int which;
560         union {
561                 Odr_null *op_and;
562                 Odr_null *op_or;
563                 Odr_null *and_not;
564                 Z_ProximityOperator *prox;
565 #define Z_Operator_and 1
566 #define Z_Operator_or 2
567 #define Z_Operator_and_not 3
568 #define Z_Operator_prox 4
569         } u;
570 };
571
572 struct Z_ComplexAttribute {
573         int num_list;
574         Z_StringOrNumeric **list;
575         int num_semanticAction;
576         int **semanticAction; /* OPT */
577 };
578
579 struct Z_AttributeElement {
580         Z_AttributeSetId *attributeSet; /* OPT */
581         int *attributeType;
582         int which;
583         union {
584                 int *numeric;
585                 Z_ComplexAttribute *complex;
586 #define Z_AttributeValue_numeric 1
587 #define Z_AttributeValue_complex 2
588         } value;
589 };
590
591 struct Z_ProximityOperator {
592         bool_t *exclusion; /* OPT */
593         int *distance;
594         bool_t *ordered;
595 #define Z_ProximityOperator_Prox_lessThan 1
596 #define Z_ProximityOperator_Prox_lessThanOrEqual 2
597 #define Z_ProximityOperator_Prox_equal 3
598 #define Z_ProximityOperator_Prox_greaterThanOrEqual 4
599 #define Z_ProximityOperator_Prox_greaterThan 5
600 #define Z_ProximityOperator_Prox_notEqual 6
601         int *relationType;
602         int which;
603         union {
604                 Z_ProxUnit *known;
605                 int *zprivate;
606 #define Z_ProximityOperator_known 1
607 #define Z_ProximityOperator_private 2
608         } u;
609 };
610
611 #define Z_ProxUnit_character 1
612 #define Z_ProxUnit_word 2
613 #define Z_ProxUnit_sentence 3
614 #define Z_ProxUnit_paragraph 4
615 #define Z_ProxUnit_section 5
616 #define Z_ProxUnit_chapter 6
617 #define Z_ProxUnit_document 7
618 #define Z_ProxUnit_element 8
619 #define Z_ProxUnit_subelement 9
620 #define Z_ProxUnit_elementType 10
621 #define Z_ProxUnit_byte 11
622
623 struct Z_SearchResponse {
624         Z_ReferenceId *referenceId; /* OPT */
625         int *resultCount;
626         int *numberOfRecordsReturned;
627         int *nextResultSetPosition;
628         bool_t *searchStatus;
629 #define Z_SearchResponse_subset 1
630 #define Z_SearchResponse_interim 2
631 #define Z_SearchResponse_none 3
632 #define Z_SearchResponse_estimate 4
633         int *resultSetStatus; /* OPT */
634         Z_PresentStatus *presentStatus; /* OPT */
635         Z_Records *records; /* OPT */
636         Z_OtherInformation *additionalSearchInfo; /* OPT */
637         Z_OtherInformation *otherInfo; /* OPT */
638 };
639
640 struct Z_RecordComposition {
641         int which;
642         union {
643                 Z_ElementSetNames *simple;
644                 Z_CompSpec *complex;
645 #define Z_RecordComp_simple 1
646 #define Z_RecordComp_complex 2
647         } u;
648 };
649
650 struct Z_PresentRequest {
651         Z_ReferenceId *referenceId; /* OPT */
652         Z_ResultSetId *resultSetId;
653         int *resultSetStartPoint;
654         int *numberOfRecordsRequested;
655         int num_ranges;
656         Z_Range **additionalRanges; /* OPT */
657         Z_RecordComposition *recordComposition; /* OPT */
658         Odr_oid *preferredRecordSyntax; /* OPT */
659         int *maxSegmentCount; /* OPT */
660         int *maxRecordSize; /* OPT */
661         int *maxSegmentSize; /* OPT */
662         Z_OtherInformation *otherInfo; /* OPT */
663 };
664
665 struct Z_Segment {
666         Z_ReferenceId *referenceId; /* OPT */
667         int *numberOfRecordsReturned;
668         int num_segmentRecords;
669         Z_NamePlusRecord **segmentRecords;
670         Z_OtherInformation *otherInfo; /* OPT */
671 };
672
673 struct Z_PresentResponse {
674         Z_ReferenceId *referenceId; /* OPT */
675         int *numberOfRecordsReturned;
676         int *nextResultSetPosition;
677         Z_PresentStatus *presentStatus;
678         Z_Records *records; /* OPT */
679         Z_OtherInformation *otherInfo; /* OPT */
680 };
681
682 struct Z_NamePlusRecordList {
683         int num_records;
684         Z_NamePlusRecord **records;
685 };
686
687 struct Z_DiagRecs {
688         int num_diagRecs;
689         Z_DiagRec **diagRecs;
690 };
691
692 struct Z_Records {
693         int which;
694         union {
695                 Z_NamePlusRecordList *databaseOrSurDiagnostics;
696                 Z_DefaultDiagFormat *nonSurrogateDiagnostic;
697                 Z_DiagRecs *multipleNonSurDiagnostics;
698 #define Z_Records_DBOSD 1
699 #define Z_Records_NSD 2
700 #define Z_Records_multipleNSD 3
701         } u;
702 };
703
704 struct Z_NamePlusRecord {
705         Z_DatabaseName *databaseName; /* OPT */
706         int which;
707         union {
708                 Z_External *databaseRecord;
709                 Z_DiagRec *surrogateDiagnostic;
710                 Z_FragmentSyntax *startingFragment;
711                 Z_FragmentSyntax *intermediateFragment;
712                 Z_FragmentSyntax *finalFragment;
713 #define Z_NamePlusRecord_databaseRecord 1
714 #define Z_NamePlusRecord_surrogateDiagnostic 2
715 #define Z_NamePlusRecord_startingFragment 3
716 #define Z_NamePlusRecord_intermediateFragment 4
717 #define Z_NamePlusRecord_finalFragment 5
718         } u;
719 };
720
721 struct Z_FragmentSyntax {
722         int which;
723         union {
724                 Z_External *externallyTagged;
725                 Odr_oct *notExternallyTagged;
726 #define Z_FragmentSyntax_externallyTagged 1
727 #define Z_FragmentSyntax_notExternallyTagged 2
728         } u;
729 };
730
731 struct Z_DiagRec {
732         int which;
733         union {
734                 Z_DefaultDiagFormat *defaultFormat;
735                 Z_External *externallyDefined;
736 #define Z_DiagRec_defaultFormat 1
737 #define Z_DiagRec_externallyDefined 2
738         } u;
739 };
740
741 struct Z_DefaultDiagFormat {
742         Odr_oid *diagnosticSetId;
743         int *condition;
744         int which;
745         union {
746                 char *v2Addinfo;
747                 Z_InternationalString *v3Addinfo;
748 #define Z_DefaultDiagFormat_v2Addinfo 1
749 #define Z_DefaultDiagFormat_v3Addinfo 2
750         } u;
751 };
752
753 struct Z_Range {
754         int *startingPosition;
755         int *numberOfRecords;
756 };
757
758 struct Z_DatabaseSpecificUnit {
759         Z_DatabaseName *dbName;
760         Z_ElementSetName *esn;
761 };
762
763 struct Z_DatabaseSpecific {
764         int num;
765         Z_DatabaseSpecificUnit **elements;
766 };
767
768 struct Z_ElementSetNames {
769         int which;
770         union {
771                 Z_InternationalString *generic;
772                 Z_DatabaseSpecific *databaseSpecific;
773 #define Z_ElementSetNames_generic 1
774 #define Z_ElementSetNames_databaseSpecific 2
775         } u;
776 };
777
778 #define Z_PresentStatus_success 0
779 #define Z_PresentStatus_partial_1 1
780 #define Z_PresentStatus_partial_2 2
781 #define Z_PresentStatus_partial_3 3
782 #define Z_PresentStatus_partial_4 4
783 #define Z_PresentStatus_failure 5
784
785 struct Z_DbSpecific {
786         Z_DatabaseName *db;
787         Z_Specification *spec;
788 };
789
790 struct Z_CompSpec {
791         bool_t *selectAlternativeSyntax;
792         Z_Specification *generic; /* OPT */
793         int num_dbSpecific;
794         Z_DbSpecific **dbSpecific; /* OPT */
795         int num_recordSyntax;
796         Odr_oid **recordSyntax; /* OPT */
797 };
798
799 struct Z_ElementSpec {
800         int which;
801         union {
802                 Z_InternationalString *elementSetName;
803                 Z_External *externalSpec;
804 #define Z_ElementSpec_elementSetName 1
805 #define Z_ElementSpec_externalSpec 2
806         } u;
807 };
808
809 struct Z_Specification {
810         int which;
811         union {
812                 Odr_oid *oid;
813                 Z_InternationalString *uri;
814 #define Z_Schema_oid 1
815 #define Z_Schema_uri 2
816         } schema; /* OPT */
817         Z_ElementSpec *elementSpec; /* OPT */
818 };
819
820 struct Z_DeleteResultSetRequest {
821         Z_ReferenceId *referenceId; /* OPT */
822 #define Z_DeleteResultSetRequest_list 0
823 #define Z_DeleteResultSetRequest_all 1
824         int *deleteFunction;
825         int num_resultSetList;
826         Z_ResultSetId **resultSetList; /* OPT */
827         Z_OtherInformation *otherInfo; /* OPT */
828 };
829
830 struct Z_DeleteResultSetResponse {
831         Z_ReferenceId *referenceId; /* OPT */
832         Z_DeleteStatus *deleteOperationStatus;
833         Z_ListStatuses *deleteListStatuses; /* OPT */
834         int *numberNotDeleted; /* OPT */
835         Z_ListStatuses *bulkStatuses; /* OPT */
836         Z_InternationalString *deleteMessage; /* OPT */
837         Z_OtherInformation *otherInfo; /* OPT */
838 };
839
840 struct Z_ListStatus {
841         Z_ResultSetId *id;
842         Z_DeleteStatus *status;
843 };
844
845 struct Z_ListStatuses {
846         int num;
847         Z_ListStatus **elements;
848 };
849
850 #define Z_DeleteStatus_success 0
851 #define Z_DeleteStatus_resultSetDidNotExist 1
852 #define Z_DeleteStatus_previouslyDeletedByTarget 2
853 #define Z_DeleteStatus_systemProblemAtTarget 3
854 #define Z_DeleteStatus_accessNotAllowed 4
855 #define Z_DeleteStatus_resourceControlAtOrigin 5
856 #define Z_DeleteStatus_resourceControlAtTarget 6
857 #define Z_DeleteStatus_bulkDeleteNotSupported 7
858 #define Z_DeleteStatus_notAllRsltSetsDeletedOnBulkDlte 8
859 #define Z_DeleteStatus_notAllRequestedResultSetsDeleted 9
860 #define Z_DeleteStatus_resultSetInUse 10
861
862 struct Z_AccessControlRequest {
863         Z_ReferenceId *referenceId; /* OPT */
864         int which;
865         union {
866                 Odr_oct *simpleForm;
867                 Z_External *externallyDefined;
868 #define Z_AccessControlRequest_simpleForm 1
869 #define Z_AccessControlRequest_externallyDefined 2
870         } u;
871         Z_OtherInformation *otherInfo; /* OPT */
872 };
873
874 struct Z_AccessControlResponse {
875         Z_ReferenceId *referenceId; /* OPT */
876         int which;
877         union {
878                 Odr_oct *simpleForm;
879                 Z_External *externallyDefined;
880 #define Z_AccessControlResponse_simpleForm 1
881 #define Z_AccessControlResponse_externallyDefined 2
882         } u; /* OPT */
883         Z_DiagRec *diagnostic; /* OPT */
884         Z_OtherInformation *otherInfo; /* OPT */
885 };
886
887 struct Z_ResourceControlRequest {
888         Z_ReferenceId *referenceId; /* OPT */
889         bool_t *suspendedFlag; /* OPT */
890         Z_ResourceReport *resourceReport; /* OPT */
891 #define Z_ResourceControlRequest_subset 1
892 #define Z_ResourceControlRequest_interim 2
893 #define Z_ResourceControlRequest_none 3
894         int *partialResultsAvailable; /* OPT */
895         bool_t *responseRequired;
896         bool_t *triggeredRequestFlag; /* OPT */
897         Z_OtherInformation *otherInfo; /* OPT */
898 };
899
900 struct Z_ResourceControlResponse {
901         Z_ReferenceId *referenceId; /* OPT */
902         bool_t *continueFlag;
903         bool_t *resultSetWanted; /* OPT */
904         Z_OtherInformation *otherInfo; /* OPT */
905 };
906
907 struct Z_TriggerResourceControlRequest {
908         Z_ReferenceId *referenceId; /* OPT */
909 #define Z_TriggerResourceControlRequest_resourceReport 1
910 #define Z_TriggerResourceControlRequest_resourceControl 2
911 #define Z_TriggerResourceControlRequest_cancel 3
912         int *requestedAction;
913         Z_ResourceReportId *prefResourceReportFormat; /* OPT */
914         bool_t *resultSetWanted; /* OPT */
915         Z_OtherInformation *otherInfo; /* OPT */
916 };
917
918 struct Z_ResourceReportRequest {
919         Z_ReferenceId *referenceId; /* OPT */
920         Z_ReferenceId *opId; /* OPT */
921         Z_ResourceReportId *prefResourceReportFormat; /* OPT */
922         Z_OtherInformation *otherInfo; /* OPT */
923 };
924
925 struct Z_ResourceReportResponse {
926         Z_ReferenceId *referenceId; /* OPT */
927 #define Z_ResourceReportResponse_success 0
928 #define Z_ResourceReportResponse_partial 1
929 #define Z_ResourceReportResponse_failure_1 2
930 #define Z_ResourceReportResponse_failure_2 3
931 #define Z_ResourceReportResponse_failure_3 4
932 #define Z_ResourceReportResponse_failure_4 5
933 #define Z_ResourceReportResponse_failure_5 6
934 #define Z_ResourceReportResponse_failure_6 7
935         int *resourceReportStatus;
936         Z_ResourceReport *resourceReport; /* OPT */
937         Z_OtherInformation *otherInfo; /* OPT */
938 };
939
940
941
942
943
944 struct Z_ScanRequest {
945         Z_ReferenceId *referenceId; /* OPT */
946         int num_databaseNames;
947         Z_DatabaseName **databaseNames;
948         Z_AttributeSetId *attributeSet; /* OPT */
949         Z_AttributesPlusTerm *termListAndStartPoint;
950         int *stepSize; /* OPT */
951         int *numberOfTermsRequested;
952         int *preferredPositionInResponse; /* OPT */
953         Z_OtherInformation *otherInfo; /* OPT */
954 };
955
956 struct Z_ScanResponse {
957         Z_ReferenceId *referenceId; /* OPT */
958         int *stepSize; /* OPT */
959 #define Z_Scan_success 0
960 #define Z_Scan_partial_1 1
961 #define Z_Scan_partial_2 2
962 #define Z_Scan_partial_3 3
963 #define Z_Scan_partial_4 4
964 #define Z_Scan_partial_5 5
965 #define Z_Scan_failure 6
966         int *scanStatus;
967         int *numberOfEntriesReturned;
968         int *positionOfTerm; /* OPT */
969         Z_ListEntries *entries; /* OPT */
970         Z_AttributeSetId *attributeSet; /* OPT */
971         Z_OtherInformation *otherInfo; /* OPT */
972 };
973
974 struct Z_ListEntries {
975         int num_entries;
976         Z_Entry **entries; /* OPT */
977         int num_nonsurrogateDiagnostics;
978         Z_DiagRec **nonsurrogateDiagnostics; /* OPT */
979 };
980
981 struct Z_Entry {
982         int which;
983         union {
984                 Z_TermInfo *termInfo;
985                 Z_DiagRec *surrogateDiagnostic;
986 #define Z_Entry_termInfo 1
987 #define Z_Entry_surrogateDiagnostic 2
988         } u;
989 };
990
991 struct Z_TermInfo {
992         Z_Term *term;
993         Z_InternationalString *displayTerm; /* OPT */
994         Z_AttributeList *suggestedAttributes; /* OPT */
995         int num_alternativeTerm;
996         Z_AttributesPlusTerm **alternativeTerm; /* OPT */
997         int *globalOccurrences; /* OPT */
998         Z_OccurrenceByAttributes *byAttributes; /* OPT */
999         Z_OtherInformation *otherTermInfo; /* OPT */
1000 };
1001
1002 struct Z_byDatabaseList_s {
1003         Z_DatabaseName *db;
1004         int *num; /* OPT */
1005         Z_OtherInformation *otherDbInfo; /* OPT */
1006 };
1007
1008 struct Z_byDatabaseList {
1009         int num;
1010         Z_byDatabaseList_s **elements;
1011 };
1012
1013 struct Z_OccurrenceByAttributesElem {
1014         Z_AttributeList *attributes;
1015         int which;
1016         union {
1017                 int *global;
1018                 Z_byDatabaseList *byDatabase;
1019 #define Z_OccurrenceByAttributesElem_global 1
1020 #define Z_OccurrenceByAttributesElem_byDatabase 2
1021         } u; /* OPT */
1022         Z_OtherInformation *otherOccurInfo; /* OPT */
1023 };
1024
1025 struct Z_OccurrenceByAttributes {
1026         int num;
1027         Z_OccurrenceByAttributesElem **elements;
1028 };
1029
1030 struct Z_SortKeySpecList {
1031         int num_specs;
1032         Z_SortKeySpec **specs;
1033 };
1034
1035 struct Z_SortRequest {
1036         Z_ReferenceId *referenceId; /* OPT */
1037         int num_inputResultSetNames;
1038         Z_InternationalString **inputResultSetNames;
1039         Z_InternationalString *sortedResultSetName;
1040         Z_SortKeySpecList *sortSequence;
1041         Z_OtherInformation *otherInfo; /* OPT */
1042 };
1043
1044 struct Z_SortResponse {
1045         Z_ReferenceId *referenceId; /* OPT */
1046 #define Z_SortResponse_success 0
1047 #define Z_SortResponse_partial_1 1
1048 #define Z_SortResponse_failure 2
1049         int *sortStatus;
1050 #define Z_SortResponse_empty 1
1051 #define Z_SortResponse_interim 2
1052 #define Z_SortResponse_unchanged 3
1053 #define Z_SortResponse_none 4
1054         int *resultSetStatus; /* OPT */
1055         int num_diagnostics;
1056         Z_DiagRec **diagnostics; /* OPT */
1057         int *resultCount; /* OPT */
1058         Z_OtherInformation *otherInfo; /* OPT */
1059 };
1060
1061 struct Z_SortKeySpec {
1062         Z_SortElement *sortElement;
1063 #define Z_SortKeySpec_ascending 0
1064 #define Z_SortKeySpec_descending 1
1065 #define Z_SortKeySpec_ascendingByFrequency 3
1066 #define Z_SortKeySpec_descendingByfrequency 4
1067         int *sortRelation;
1068 #define Z_SortKeySpec_caseSensitive 0
1069 #define Z_SortKeySpec_caseInsensitive 1
1070         int *caseSensitivity;
1071         int which;
1072         union {
1073                 Odr_null *abort;
1074                 Odr_null *null;
1075                 Odr_oct *missingValueData;
1076 #define Z_SortKeySpec_abort 1
1077 #define Z_SortKeySpec_null 2
1078 #define Z_SortKeySpec_missingValueData 3
1079         } u; /* OPT */
1080 };
1081
1082 struct Z_SortDbSpecificList_s {
1083         Z_DatabaseName *databaseName;
1084         Z_SortKey *dbSort;
1085 };
1086
1087 struct Z_SortDbSpecificList {
1088         int num;
1089         Z_SortDbSpecificList_s **elements;
1090 };
1091
1092 struct Z_SortElement {
1093         int which;
1094         union {
1095                 Z_SortKey *generic;
1096                 Z_SortDbSpecificList *databaseSpecific;
1097 #define Z_SortElement_generic 1
1098 #define Z_SortElement_databaseSpecific 2
1099         } u;
1100 };
1101
1102 struct Z_SortAttributes {
1103         Z_AttributeSetId *id;
1104         Z_AttributeList *list;
1105 };
1106
1107 struct Z_SortKey {
1108         int which;
1109         union {
1110                 Z_InternationalString *sortField;
1111                 Z_Specification *elementSpec;
1112                 Z_SortAttributes *sortAttributes;
1113 #define Z_SortKey_sortField 1
1114 #define Z_SortKey_elementSpec 2
1115 #define Z_SortKey_sortAttributes 3
1116         } u;
1117 };
1118
1119 struct Z_ExtendedServicesRequest {
1120         Z_ReferenceId *referenceId; /* OPT */
1121 #define Z_ExtendedServicesRequest_create 1
1122 #define Z_ExtendedServicesRequest_delete 2
1123 #define Z_ExtendedServicesRequest_modify 3
1124         int *function;
1125         Odr_oid *packageType;
1126         Z_InternationalString *packageName; /* OPT */
1127         Z_InternationalString *userId; /* OPT */
1128         Z_IntUnit *retentionTime; /* OPT */
1129         Z_Permissions *permissions; /* OPT */
1130         Z_InternationalString *description; /* OPT */
1131         Z_External *taskSpecificParameters; /* OPT */
1132 #define Z_ExtendedServicesRequest_wait 1
1133 #define Z_ExtendedServicesRequest_waitIfPossible 2
1134 #define Z_ExtendedServicesRequest_dontWait 3
1135 #define Z_ExtendedServicesRequest_dontReturnPackage 4
1136         int *waitAction;
1137         Z_ElementSetName *elements; /* OPT */
1138         Z_OtherInformation *otherInfo; /* OPT */
1139 };
1140
1141 struct Z_ExtendedServicesResponse {
1142         Z_ReferenceId *referenceId; /* OPT */
1143 #define Z_ExtendedServicesResponse_done 1
1144 #define Z_ExtendedServicesResponse_accepted 2
1145 #define Z_ExtendedServicesResponse_failure 3
1146         int *operationStatus;
1147         int num_diagnostics;
1148         Z_DiagRec **diagnostics; /* OPT */
1149         Z_External *taskPackage; /* OPT */
1150         Z_OtherInformation *otherInfo; /* OPT */
1151 };
1152
1153 struct Z_Permissions_s {
1154         Z_InternationalString *userId; /* OPT */
1155 #define Z_Permissions_s_delete 1
1156 #define Z_Permissions_s_modifyContents 2
1157 #define Z_Permissions_s_modifyPermissions 3
1158 #define Z_Permissions_s_present 4
1159 #define Z_Permissions_s_invoke 5
1160         int num_allowableFunctions;
1161         int **allowableFunctions;
1162 };
1163
1164 struct Z_Permissions {
1165         int num;
1166         Z_Permissions_s **elements;
1167 };
1168
1169 struct Z_Close {
1170         Z_ReferenceId *referenceId; /* OPT */
1171         Z_CloseReason *closeReason;
1172         Z_InternationalString *diagnosticInformation; /* OPT */
1173         Z_ResourceReportId *resourceReportFormat; /* OPT */
1174         Z_ResourceReport *resourceReport; /* OPT */
1175         Z_OtherInformation *otherInfo; /* OPT */
1176 };
1177
1178 #define Z_Close_finished 0
1179 #define Z_Close_shutdown 1
1180 #define Z_Close_systemProblem 2
1181 #define Z_Close_costLimit 3
1182 #define Z_Close_resources 4
1183 #define Z_Close_securityViolation 5
1184 #define Z_Close_protocolError 6
1185 #define Z_Close_lackOfActivity 7
1186 #define Z_Close_peerAbort 8
1187 #define Z_Close_unspecified 9
1188
1189 struct Z_DuplicateDetectionRequest {
1190         Z_ReferenceId *referenceId; /* OPT */
1191         int num_inputResultSetIds;
1192         Z_InternationalString **inputResultSetIds;
1193         Z_InternationalString *outputResultSetName;
1194         Z_External *applicablePortionOfRecord; /* OPT */
1195         int num_duplicateDetectionCriteria;
1196         Z_DuplicateDetectionCriterion **duplicateDetectionCriteria; /* OPT */
1197         bool_t *clustering; /* OPT */
1198         int num_retentionCriteria;
1199         Z_RetentionCriterion **retentionCriteria;
1200         int num_sortCriteria;
1201         Z_SortCriterion **sortCriteria; /* OPT */
1202         Z_OtherInformation *otherInfo; /* OPT */
1203 };
1204
1205 struct Z_DuplicateDetectionCriterion {
1206         int which;
1207         union {
1208                 int *levelOfMatch;
1209                 Odr_null *caseSensitive;
1210                 Odr_null *punctuationSensitive;
1211                 Z_External *regularExpression;
1212                 Odr_null *rsDuplicates;
1213 #define Z_DuplicateDetectionCriterion_levelOfMatch 1
1214 #define Z_DuplicateDetectionCriterion_caseSensitive 2
1215 #define Z_DuplicateDetectionCriterion_punctuationSensitive 3
1216 #define Z_DuplicateDetectionCriterion_regularExpression 4
1217 #define Z_DuplicateDetectionCriterion_rsDuplicates 5
1218         } u;
1219 };
1220
1221 struct Z_RetentionCriterion {
1222         int which;
1223         union {
1224                 int *numberOfEntries;
1225                 int *percentOfEntries;
1226                 Odr_null *duplicatesOnly;
1227                 Odr_null *discardRsDuplicates;
1228 #define Z_RetentionCriterion_numberOfEntries 1
1229 #define Z_RetentionCriterion_percentOfEntries 2
1230 #define Z_RetentionCriterion_duplicatesOnly 3
1231 #define Z_RetentionCriterion_discardRsDuplicates 4
1232         } u;
1233 };
1234
1235 struct Z_SortCriterionPreferredDatabases {
1236         int num;
1237         Z_InternationalString **elements;
1238 };
1239
1240 struct Z_SortCriterion {
1241         int which;
1242         union {
1243                 Odr_null *mostComprehensive;
1244                 Odr_null *leastConmprehensive;
1245                 Odr_null *mostRecent;
1246                 Odr_null *oldest;
1247                 Odr_null *leastCost;
1248                 Z_SortCriterionPreferredDatabases *preferredDatabases;
1249 #define Z_SortCriterion_mostComprehensive 1
1250 #define Z_SortCriterion_leastConmprehensive 2
1251 #define Z_SortCriterion_mostRecent 3
1252 #define Z_SortCriterion_oldest 4
1253 #define Z_SortCriterion_leastCost 5
1254 #define Z_SortCriterion_preferredDatabases 6
1255         } u;
1256 };
1257
1258 struct Z_DuplicateDetectionResponse {
1259         Z_ReferenceId *referenceId; /* OPT */
1260 #define Z_DuplicateDetectionResponse_success 0
1261 #define Z_DuplicateDetectionResponse_failure 1
1262         int *status;
1263         int *resultSetCount; /* OPT */
1264         int num_diagnostics;
1265         Z_DiagRec **diagnostics; /* OPT */
1266         Z_OtherInformation *otherInfo; /* OPT */
1267 };
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279 struct Z_OtherInformationUnit {
1280         Z_InfoCategory *category; /* OPT */
1281         int which;
1282         union {
1283                 Z_InternationalString *characterInfo;
1284                 Odr_oct *binaryInfo;
1285                 Z_External *externallyDefinedInfo;
1286                 Odr_oid *oid;
1287 #define Z_OtherInfo_characterInfo 1
1288 #define Z_OtherInfo_binaryInfo 2
1289 #define Z_OtherInfo_externallyDefinedInfo 3
1290 #define Z_OtherInfo_oid 4
1291         } information;
1292 };
1293
1294 struct Z_OtherInformation {
1295         int num_elements;
1296         Z_OtherInformationUnit **list;
1297 };
1298
1299 struct Z_InfoCategory {
1300         Odr_oid *categoryTypeId; /* OPT */
1301         int *categoryValue;
1302 };
1303
1304 struct Z_IntUnit {
1305         int *value;
1306         Z_Unit *unitUsed;
1307 };
1308
1309 struct Z_Unit {
1310         Z_InternationalString *unitSystem; /* OPT */
1311         Z_StringOrNumeric *unitType; /* OPT */
1312         Z_StringOrNumeric *unit; /* OPT */
1313         int *scaleFactor; /* OPT */
1314 };
1315
1316
1317
1318 struct Z_StringOrNumeric {
1319         int which;
1320         union {
1321                 Z_InternationalString *string;
1322                 int *numeric;
1323 #define Z_StringOrNumeric_string 1
1324 #define Z_StringOrNumeric_numeric 2
1325         } u;
1326 };
1327
1328 #ifdef __cplusplus
1329 }
1330 #endif
1331
1332 #ifdef __cplusplus
1333 extern "C" {
1334 #endif
1335
1336 int z_ANY_type_0 (ODR o, void **p, int opt);
1337
1338 #ifdef __cplusplus
1339 }
1340 #endif
1341
1342 #endif