/*
- * Copyright (c) 2002-2003, Index Data.
+ * Copyright (c) 2002-2004, Index Data.
* See the file LICENSE for details.
*
- * $Id: srw.h,v 1.10 2003-12-29 14:54:33 adam Exp $
+ * $Id: srw.h,v 1.16 2004-02-14 15:58:42 adam Exp $
*/
#ifndef YAZ_SRW_H
} Z_SRW_record;
typedef struct {
- int *code;
+ char *uri;
char *details;
+ char *message;
} Z_SRW_diagnostic;
typedef struct {
typedef struct {
char *recordPacking;
char *database;
+ char *stylesheet;
} Z_SRW_explainRequest;
typedef struct {
YAZ_EXPORT char *yaz_uri_val(const char *path, const char *name, ODR o);
YAZ_EXPORT void yaz_uri_val_int(const char *path, const char *name,
ODR o, int **intp);
-YAZ_EXPORT int yaz_check_for_srw(Z_HTTP_Request *hreq, Z_SRW_PDU **srw_pdu,
- char **soap_ns, ODR decode);
-YAZ_EXPORT int yaz_check_for_sru(Z_HTTP_Request *hreq, Z_SRW_PDU **srw_pdu,
- char **soap_ns, ODR decode);
+YAZ_EXPORT int yaz_srw_decode(Z_HTTP_Request *hreq, Z_SRW_PDU **srw_pdu,
+ Z_SOAP **soap_package, ODR decode, char **charset);
+YAZ_EXPORT int yaz_sru_decode(Z_HTTP_Request *hreq, Z_SRW_PDU **srw_pdu,
+ Z_SOAP **soap_package, ODR decode,
+ char **charset,
+ Z_SRW_diagnostic **, int *num_diagnostic);
+
+YAZ_EXPORT void yaz_add_srw_diagnostic(ODR o, Z_SRW_diagnostic **d,
+ int *num, int code,
+ const char *addinfo);
+
+YAZ_EXPORT void yaz_mk_std_diagnostic(ODR o, Z_SRW_diagnostic *d,
+ int code, const char *details);
YAZ_END_CDECL
#endif