YAZ  5.34.0
z-grs.h
Go to the documentation of this file.
1 
7 #ifndef z_grs_H
8 #define z_grs_H
9 
10 #include <yaz/odr.h>
11 #include <yaz/z-core.h>
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15 
16 typedef struct Z_GenericRecord Z_GenericRecord;
17 YAZ_EXPORT int z_GenericRecord(ODR o, Z_GenericRecord **p, int opt, const char *name);
18 
19 typedef struct Z_TaggedElement Z_TaggedElement;
20 YAZ_EXPORT int z_TaggedElement(ODR o, Z_TaggedElement **p, int opt, const char *name);
21 
22 typedef struct Z_ElementData Z_ElementData;
23 YAZ_EXPORT int z_ElementData(ODR o, Z_ElementData **p, int opt, const char *name);
24 
26 YAZ_EXPORT int z_ElementMetaData(ODR o, Z_ElementMetaData **p, int opt, const char *name);
27 
28 typedef struct Z_TagPath_s Z_TagPath_s;
29 YAZ_EXPORT int z_TagPath_s(ODR o, Z_TagPath_s **p, int opt, const char *name);
30 
31 typedef struct Z_TagPath Z_TagPath;
32 YAZ_EXPORT int z_TagPath(ODR o, Z_TagPath **p, int opt, const char *name);
33 
34 typedef struct Z_Order Z_Order;
35 YAZ_EXPORT int z_Order(ODR o, Z_Order **p, int opt, const char *name);
36 
37 typedef struct Z_Usage Z_Usage;
38 YAZ_EXPORT int z_Usage(ODR o, Z_Usage **p, int opt, const char *name);
39 
40 typedef struct Z_HitVector Z_HitVector;
41 YAZ_EXPORT int z_HitVector(ODR o, Z_HitVector **p, int opt, const char *name);
42 
43 typedef struct Z_Triple Z_Triple;
44 YAZ_EXPORT int z_Triple(ODR o, Z_Triple **p, int opt, const char *name);
45 
46 typedef struct Z_Variant Z_Variant;
47 YAZ_EXPORT int z_Variant(ODR o, Z_Variant **p, int opt, const char *name);
48 #ifdef __cplusplus
49 }
50 #endif
51 #ifdef __cplusplus
52 extern "C" {
53 #endif
57 };
58 
60  Odr_int *tagType; /* OPT */
62  Odr_int *tagOccurrence; /* OPT */
66 };
67 
68 struct Z_ElementData {
69  int which;
70  union {
73  char *date;
84 #define Z_ElementData_octets 1
85 #define Z_ElementData_numeric 2
86 #define Z_ElementData_date 3
87 #define Z_ElementData_ext 4
88 #define Z_ElementData_string 5
89 #define Z_ElementData_trueOrFalse 6
90 #define Z_ElementData_oid 7
91 #define Z_ElementData_intUnit 8
92 #define Z_ElementData_elementNotThere 9
93 #define Z_ElementData_elementEmpty 10
94 #define Z_ElementData_noDataRequested 11
95 #define Z_ElementData_diagnostic 12
96 #define Z_ElementData_subtree 13
97  } u;
98 };
99 
101  Z_Order *seriesOrder; /* OPT */
102  Z_Usage *usageRight; /* OPT */
103  int num_hits;
104  Z_HitVector **hits; /* OPT */
112  Z_External *other; /* OPT */
113 };
114 
115 struct Z_TagPath_s {
116  Odr_int *tagType; /* OPT */
118  Odr_int *tagOccurrence; /* OPT */
119 };
120 
121 struct Z_TagPath {
122  int num;
124 };
125 
126 struct Z_Order {
129 };
130 
131 struct Z_Usage {
132 #define Z_Usage_redistributable 1
133 #define Z_Usage_restricted 2
134 #define Z_Usage_licensePointer 3
137 };
138 
139 struct Z_HitVector {
140  Z_Term *satisfier; /* OPT */
142  Z_IntUnit *length; /* OPT */
143  Odr_int *hitRank; /* OPT */
144  Odr_oct *targetToken; /* OPT */
145 };
146 
147 struct Z_Triple {
148  Odr_oid *variantSetId; /* OPT */
151  int which;
152  union {
158  Odr_null *null;
161 #define Z_Triple_integer 1
162 #define Z_Triple_internationalString 2
163 #define Z_Triple_octetString 3
164 #define Z_Triple_objectIdentifier 4
165 #define Z_Triple_boolean 5
166 #define Z_Triple_null 6
167 #define Z_Triple_unit 7
168 #define Z_Triple_valueAndUnit 8
169  } value;
170 };
171 
172 struct Z_Variant {
176 };
177 
178 #ifdef __cplusplus
179 }
180 #endif
181 #endif
int opt
Definition: initopt.c:19
char * name
Definition: initopt.c:18
Header for ODR (Open Data Representation)
nmem_bool_t Odr_bool
Definition: odr.h:48
nmem_int_t Odr_int
Definition: odr.h:47
void Odr_null
Definition: odr.h:105
short Odr_oid
Definition: oid_util.h:42
union Z_ElementData::@101 u
Odr_bool * trueOrFalse
Definition: z-grs.h:76
Odr_null * elementNotThere
Definition: z-grs.h:79
int which
Definition: z-grs.h:69
Odr_int * numeric
Definition: z-grs.h:72
Z_External * diagnostic
Definition: z-grs.h:82
char * date
Definition: z-grs.h:73
Z_InternationalString * string
Definition: z-grs.h:75
Odr_oid * oid
Definition: z-grs.h:77
Z_GenericRecord * subtree
Definition: z-grs.h:83
Z_External * ext
Definition: z-grs.h:74
Z_IntUnit * intUnit
Definition: z-grs.h:78
Odr_null * noDataRequested
Definition: z-grs.h:81
Odr_null * elementEmpty
Definition: z-grs.h:80
Odr_oct * octets
Definition: z-grs.h:71
Z_TagPath * surrogateElement
Definition: z-grs.h:111
Z_TagPath * surrogateFor
Definition: z-grs.h:110
Z_InternationalString * displayName
Definition: z-grs.h:105
Odr_oct * elementDescriptor
Definition: z-grs.h:109
Z_HitVector ** hits
Definition: z-grs.h:104
Z_External * other
Definition: z-grs.h:112
Z_Order * seriesOrder
Definition: z-grs.h:101
Z_InternationalString * message
Definition: z-grs.h:108
int num_supportedVariants
Definition: z-grs.h:106
Z_Usage * usageRight
Definition: z-grs.h:102
Z_Variant ** supportedVariants
Definition: z-grs.h:107
structure for all known EXTERNALs
Definition: prt-ext.h:59
int num_elements
Definition: z-grs.h:55
Z_TaggedElement ** elements
Definition: z-grs.h:56
Odr_int * hitRank
Definition: z-grs.h:143
Z_IntUnit * length
Definition: z-grs.h:142
Z_Term * satisfier
Definition: z-grs.h:140
Z_IntUnit * offsetIntoElement
Definition: z-grs.h:141
Odr_oct * targetToken
Definition: z-grs.h:144
Definition: z-grs.h:126
Odr_int * order
Definition: z-grs.h:128
Odr_bool * ascending
Definition: z-grs.h:127
Odr_int * tagOccurrence
Definition: z-grs.h:118
Z_StringOrNumeric * tagValue
Definition: z-grs.h:117
Odr_int * tagType
Definition: z-grs.h:116
Z_TagPath_s ** elements
Definition: z-grs.h:123
int num
Definition: z-grs.h:122
Z_ElementData * content
Definition: z-grs.h:63
Z_Variant * appliedVariant
Definition: z-grs.h:65
Z_ElementMetaData * metaData
Definition: z-grs.h:64
Z_StringOrNumeric * tagValue
Definition: z-grs.h:61
Odr_int * tagType
Definition: z-grs.h:60
Odr_int * tagOccurrence
Definition: z-grs.h:62
Definition: z-core.h:536
Z_Unit * unit
Definition: z-grs.h:159
Odr_oid * variantSetId
Definition: z-grs.h:148
union Z_Triple::@102 value
int which
Definition: z-grs.h:151
Odr_bool * boolean
Definition: z-grs.h:157
Odr_int * type
Definition: z-grs.h:150
Odr_int * zclass
Definition: z-grs.h:149
Odr_int * integer
Definition: z-grs.h:153
Z_IntUnit * valueAndUnit
Definition: z-grs.h:160
Odr_oct * octetString
Definition: z-grs.h:155
Z_InternationalString * internationalString
Definition: z-grs.h:154
Odr_oid * objectIdentifier
Definition: z-grs.h:156
Definition: z-grs.h:131
Z_InternationalString * restriction
Definition: z-grs.h:136
Odr_int * type
Definition: z-grs.h:135
int num_triples
Definition: z-grs.h:174
Odr_oid * globalVariantSetId
Definition: z-grs.h:173
Z_Triple ** triples
Definition: z-grs.h:175
Definition: odr.h:100
Definition: odr.h:125
ASN.1 Module Z39-50-APDU-1995.
char Z_InternationalString
Definition: z-core.h:301
int z_Order(ODR o, Z_Order **p, int opt, const char *name)
Definition: z-grs.c:140
int z_TagPath_s(ODR o, Z_TagPath_s **p, int opt, const char *name)
Definition: z-grs.c:114
int z_Usage(ODR o, Z_Usage **p, int opt, const char *name)
Definition: z-grs.c:152
int z_TagPath(ODR o, Z_TagPath **p, int opt, const char *name)
Definition: z-grs.c:128
int z_TaggedElement(ODR o, Z_TaggedElement **p, int opt, const char *name)
Definition: z-grs.c:24
int z_Variant(ODR o, Z_Variant **p, int opt, const char *name)
Definition: z-grs.c:217
int z_ElementData(ODR o, Z_ElementData **p, int opt, const char *name)
Definition: z-grs.c:44
int z_ElementMetaData(ODR o, Z_ElementMetaData **p, int opt, const char *name)
Definition: z-grs.c:84
int z_GenericRecord(ODR o, Z_GenericRecord **p, int opt, const char *name)
Definition: z-grs.c:12
int z_HitVector(ODR o, Z_HitVector **p, int opt, const char *name)
Definition: z-grs.c:164
int z_Triple(ODR o, Z_Triple **p, int opt, const char *name)
Definition: z-grs.c:181