2 * Copyright (c) 2002-2004, Index Data.
3 * See the file LICENSE for details.
5 * $Id: srw.h,v 1.13 2004-01-07 21:02:42 adam Exp $
19 #define Z_SRW_recordPacking_string 0
20 #define Z_SRW_recordPacking_XML 1
33 #define Z_SRW_query_type_cql 1
34 #define Z_SRW_query_type_xcql 2
35 #define Z_SRW_query_type_pqf 3
43 #define Z_SRW_sort_type_none 1
44 #define Z_SRW_sort_type_sort 2
45 #define Z_SRW_sort_type_xSort 3
60 } Z_SRW_searchRetrieveRequest;
63 int * numberOfRecords;
65 int * resultSetIdleTime;
67 Z_SRW_record *records;
70 Z_SRW_diagnostic *diagnostics;
72 int *nextRecordPosition;
73 } Z_SRW_searchRetrieveResponse;
79 } Z_SRW_explainRequest;
83 Z_SRW_diagnostic *diagnostics;
85 } Z_SRW_explainResponse;
89 int *responsePosition;
102 Z_SRW_scanTerm *terms;
104 Z_SRW_diagnostic *diagnostics;
106 } Z_SRW_scanResponse;
108 #define Z_SRW_searchRetrieve_request 1
109 #define Z_SRW_searchRetrieve_response 2
110 #define Z_SRW_explain_request 3
111 #define Z_SRW_explain_response 4
112 #define Z_SRW_scan_request 5
113 #define Z_SRW_scan_response 6
118 Z_SRW_searchRetrieveRequest *request;
119 Z_SRW_searchRetrieveResponse *response;
120 Z_SRW_explainRequest *explain_request;
121 Z_SRW_explainResponse *explain_response;
122 Z_SRW_scanRequest *scan_request;
123 Z_SRW_scanResponse *scan_response;
128 YAZ_EXPORT int yaz_srw_codec(ODR o, void * pptr,
129 Z_SRW_PDU **handler_data,
130 void *client_data, const char *ns);
131 YAZ_EXPORT Z_SRW_PDU *yaz_srw_get(ODR o, int which);
133 YAZ_EXPORT const char *yaz_diag_srw_str (int code);
135 YAZ_EXPORT int yaz_diag_bib1_to_srw (int bib1_code);
137 YAZ_EXPORT int yaz_diag_srw_to_bib1(int srw_code);
139 YAZ_EXPORT char *yaz_uri_val(const char *path, const char *name, ODR o);
140 YAZ_EXPORT void yaz_uri_val_int(const char *path, const char *name,
142 YAZ_EXPORT int yaz_srw_decode(Z_HTTP_Request *hreq, Z_SRW_PDU **srw_pdu,
143 Z_SOAP **soap_package, ODR decode, char **charset);
144 YAZ_EXPORT int yaz_sru_decode(Z_HTTP_Request *hreq, Z_SRW_PDU **srw_pdu,
145 Z_SOAP **soap_package, ODR decode, char **charset);