/* This file is part of the YAZ toolkit.
- * Copyright (C) 1995-2013 Index Data
+ * Copyright (C) Index Data
* See the file LICENSE for details.
*/
/**
#include <libxml/tree.h>
#include <assert.h>
#include <yaz/facet.h>
+#include <yaz/proto.h>
#include "sru-p.h"
char *yaz_negotiate_sru_version(char *input_ver)
const char* name = yaz_element_attribute_value_get(ptr, "facet", "code");
yaz_log(YLOG_DEBUG, "sru-proxy facet type: %s", name);
- list = yaz_use_attribute_create(odr, name);
+ list = zget_AttributeList_use_string(odr, name);
for (node = ptr->children; node; node = node->next) {
if (yaz_match_xsd_element(node, "facetvalue"))
num_terms++;
else if (yaz_match_xsd_string(ptr, "facetSort", o,
(char**) &facetSort))
;
+ else
+ ;
}
if (!req->query)
{
}
add_xsd_integer(ptr, "nextRecordPosition",
res->nextRecordPosition);
+ if ((*p)->extra_args)
+ {
+ xmlNode *p1 =
+ xmlNewChild(ptr, 0, BAD_CAST "echoedSearchRetrieveRequest",
+ 0);
+ Z_SRW_extra_arg *ea = (*p)->extra_args;
+ for (; ea; ea = ea->next)
+ add_xsd_string(p1, ea->name, ea->value);
+
+ }
if (res->num_diagnostics)
{
xmlNodePtr rptr = xmlNewChild(ptr, 0, BAD_CAST "diagnostics",