* Copyright (c) 2002-2003, Index Data.
* See the file LICENSE for details.
*
- * $Id: srw.c,v 1.7 2003-02-23 14:26:58 adam Exp $
+ * $Id: srw.c,v 1.9 2003-03-18 13:34:37 adam Exp $
*/
#include <yaz/srw.h>
return 0;
}
+#define CHECK_TYPE 0
+
static int match_xsd_string_n(xmlNodePtr ptr, const char *elem, ODR o,
char **val, int *len)
{
+#if CHECK_TYPE
struct _xmlAttr *attr;
+#endif
if (!match_element(ptr, elem))
return 0;
-#if 0
+#if CHECK_TYPE
for (attr = ptr->properties; attr; attr = attr->next)
if (!strcmp(attr->name, "type") &&
attr->children && attr->children->type == XML_TEXT_NODE)
static int match_xsd_integer(xmlNodePtr ptr, const char *elem, ODR o, int **val)
{
+#if CHECK_TYPE
struct _xmlAttr *attr;
+#endif
if (!match_element(ptr, elem))
return 0;
-#if 0
+#if CHECK_TYPE
for (attr = ptr->properties; attr; attr = attr->next)
if (!strcmp(attr->name, "type") &&
attr->children && attr->children->type == XML_TEXT_NODE)
&res->nextRecordPosition))
;
}
-
}
else
return -1;
if ((*p)->which == Z_SRW_searchRetrieve_request)
{
Z_SRW_searchRetrieveRequest *req = (*p)->u.request;
- xmlNsPtr ns_srw = xmlNewNs(pptr, ns, "zs");
- xmlNodePtr ptr = xmlNewChild(pptr, ns_srw,
+ xmlNodePtr ptr = xmlNewChild(pptr, 0,
"searchRetrieveRequest", 0);
+ xmlNsPtr ns_srw = xmlNewNs(ptr, ns, "zs");
+
+ xmlSetNs(ptr, ns_srw);
+
switch(req->query_type)
{
case Z_SRW_query_type_cql:
else if ((*p)->which == Z_SRW_searchRetrieve_response)
{
Z_SRW_searchRetrieveResponse *res = (*p)->u.response;
- xmlNsPtr ns_srw = xmlNewNs(pptr, ns, "zs");
- xmlNodePtr ptr = xmlNewChild(pptr, ns_srw,
+ xmlNodePtr ptr = xmlNewChild(pptr, 0,
"searchRetrieveResponse", 0);
+ xmlNsPtr ns_srw = xmlNewNs(ptr, ns, "zs");
+ xmlSetNs(ptr, ns_srw);
add_xsd_integer(ptr, "numberOfRecords", res->numberOfRecords);
add_xsd_string(ptr, "resultSetId", res->resultSetId);
add_xsd_integer(ptr, "resultSetIdleTime", res->resultSetIdleTime);