X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fsrw.c;h=56273354b414f37e738a71ddc071178df8211be3;hb=1eab9deeb96ddadbf8edf6b301ad9555196c1f99;hp=3f39cf39b859c60f54c988f568781b6f5e37df2a;hpb=06eb0818f902a5d6805b656e0ba2e39ac2ed7817;p=yaz-moved-to-github.git diff --git a/src/srw.c b/src/srw.c index 3f39cf3..5627335 100644 --- a/src/srw.c +++ b/src/srw.c @@ -2,7 +2,7 @@ * Copyright (c) 2002-2003, Index Data. * See the file LICENSE for details. * - * $Id: srw.c,v 1.3 2003-12-20 00:51:19 adam Exp $ + * $Id: srw.c,v 1.6 2003-12-22 22:47:20 adam Exp $ */ #include @@ -302,9 +302,11 @@ static int yaz_srw_diagnostics(ODR o, xmlNodePtr pptr, Z_SRW_diagnostic **recs, else if (o->direction == ODR_ENCODE) { int i; + xmlNsPtr ns_diag = + xmlNewNs(pptr, "http://www.loc.gov/zing/srw/diagnostics/", "diag"); for (i = 0; i < *num; i++) { - xmlNodePtr rptr = xmlNewChild(pptr, 0, "diagnostic", 0); + xmlNodePtr rptr = xmlNewChild(pptr, ns_diag, "diagnostic", 0); add_xsd_integer(rptr, "code", (*recs)[i].code); add_xsd_string(rptr, "details", (*recs)[i].details); } @@ -437,6 +439,7 @@ int yaz_srw_codec(ODR o, void * vptr, Z_SRW_PDU **handler_data, (*p)->which = Z_SRW_explain_request; req = (*p)->u.explain_request = odr_malloc(o, sizeof(*req)); req->recordPacking = 0; + req->database = 0; for (; ptr; ptr = ptr->next) { if (match_xsd_string(ptr, "recordPacking", o, @@ -613,6 +616,9 @@ Z_SRW_PDU *yaz_srw_get(ODR o, int which) odr_malloc(o, sizeof(*sr->u.explain_response)); sr->u.explain_response->record.recordData_buf = 0; sr->u.explain_response->record.recordData_len = 0; + sr->u.explain_response->record.recordSchema = 0; + sr->u.explain_response->record.recordPosition = 0; + sr->u.explain_response->record.recordPacking = Z_SRW_recordPacking_string; } return sr; }