/*
- * Copyright (c) 2002-2003, Index Data.
+ * Copyright (C) 1995-2005, Index Data ApS
* See the file LICENSE for details.
*
- * $Id: srw.h,v 1.12 2004-01-07 20:36:44 adam Exp $
+ * $Id: srw.h,v 1.20 2005-01-15 19:47:10 adam Exp $
+ */
+/**
+ * \file srw.h
+ * \brief Header for SRW/SRU
*/
#ifndef YAZ_SRW_H
} Z_SRW_record;
typedef struct {
- int *code;
+ char *uri;
char *details;
+ char *message;
} Z_SRW_diagnostic;
typedef struct {
} Z_SRW_explainResponse;
typedef struct {
- char *scanClause;
+ int query_type;
+ union {
+ char *cql;
+ char *xcql;
+ char *pqf;
+ } scanClause;
int *responsePosition;
int *maximumTerms;
char *stylesheet;
char *value;
int *numberOfRecords;
char *displayTerm;
+ char *whereInList;
} Z_SRW_scanTerm;
typedef struct {
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_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