* Copyright (C) 1995-2005, Index Data ApS
* See the file LICENSE for details.
*
- * $Id: srw.c,v 1.40 2005-11-11 22:07:11 adam Exp $
+ * $Id: srw.c,v 1.44 2006-03-01 22:33:06 adam Exp $
*/
/**
* \file srw.c
}
if (rec->recordPosition)
add_xsd_integer(ptr, "recordPosition", rec->recordPosition );
- if (*extra)
+ if (extra && *extra)
{
xmlNodePtr rptr = xmlNewChild(ptr, 0, BAD_CAST "extraRecordData",
0);
{
xmlNodePtr rptr = xmlNewChild(pptr, 0, BAD_CAST "record",
0);
- yaz_srw_record(o, rptr, (*recs)+i, *extra + i, client_data, ns);
+ yaz_srw_record(o, rptr, (*recs)+i, (*extra ? *extra + i : 0),
+ client_data, ns);
}
}
return 0;
else if (match_xsd_string(ptr, "recordXPath", o,
&req->recordXPath))
;
- else if (match_xsd_string(ptr, "resultSetTTL", o,
- &req->database))
+ else if (match_xsd_integer(ptr, "resultSetTTL", o,
+ &req->resultSetTTL))
;
else if (match_xsd_string(ptr, "sortKeys", o,
&req->sort.sortKeys))
else if (match_xsd_string(ptr, "database", o,
&req->database))
;
- /* missing is xQuery, xSortKeys .. */
}
}
else if (!xmlStrcmp(method->name, BAD_CAST "searchRetrieveResponse"))
if ((*p)->which == Z_SRW_update_request)
{
Z_SRW_updateRequest *req = (*p)->u.update_request;
- xmlNodePtr ptr = xmlNewChild(pptr, 0, "updateRequest", 0);
- ns_srw = xmlNewNs(ptr, ns, "zu");
+ xmlNodePtr ptr = xmlNewChild(pptr, 0, BAD_CAST "updateRequest", 0);
+ ns_srw = xmlNewNs(ptr, BAD_CAST ns, BAD_CAST "zu");
xmlSetNs(ptr, ns_srw);
add_xsd_string(ptr, "version", (*p)->srw_version);
else if ((*p)->which == Z_SRW_update_response)
{
Z_SRW_updateResponse *res = (*p)->u.update_response;
- xmlNodePtr ptr = xmlNewChild(pptr, 0, "updateResponse", 0);
- ns_srw = xmlNewNs(ptr, ns, "zu");
+ xmlNodePtr ptr = xmlNewChild(pptr, 0, (xmlChar *)
+ "updateResponse", 0);
+ ns_srw = xmlNewNs(ptr, BAD_CAST ns, BAD_CAST "zu");
xmlSetNs(ptr, ns_srw);
add_xsd_string(ptr, "version", (*p)->srw_version);
add_xsd_string(ptr, "recordChecksum", res->recordChecksum );
if (res->record.recordData_len)
{
- xmlNodePtr rptr = xmlNewChild(ptr, 0, "record", 0);
+ xmlNodePtr rptr = xmlNewChild(ptr, 0, BAD_CAST "record", 0);
yaz_srw_record(o, rptr, &res->record, &res->extra_record,
client_data, ns);
}
if (res->num_diagnostics)
{
- xmlNodePtr rptr = xmlNewChild(ptr, 0, "diagnostics", 0);
+ xmlNodePtr rptr = xmlNewChild(ptr, 0, BAD_CAST "diagnostics", 0);
yaz_srw_diagnostics(o, rptr, &res->diagnostics,
&res->num_diagnostics, client_data, ns);
}