char *yaz_negotiate_sru_version(char *input_ver);
-void yaz_sru_facet_request(ODR, Z_FacetList **facetList, const char **limit);
+void yaz_sru_facet_request(ODR, Z_FacetList **facetList,
+ const char **limit, const char **start,
+ const char **sort);
#if YAZ_HAVE_XML2
#include <libxml/parser.h>
Odr_int **val);
int yaz_match_xsd_string_n(xmlNodePtr ptr, const char *elem, ODR o,
char **val, int *len);
+int yaz_match_xsd_string_n_nmem(xmlNodePtr ptr, const char *elem, NMEM nmem,
+ char **val, int *len);
int yaz_match_xsd_element(xmlNodePtr ptr, const char *elem);
+int yaz_match_xsd_XML_n2(xmlNodePtr ptr, const char *elem, ODR o,
+ char **val, int *len, int fixup_root);
+
+int yaz_match_xsd_XML_n(xmlNodePtr ptr, const char *elem, ODR o,
+ char **val, int *len);
+
xmlNodePtr add_xsd_string(xmlNodePtr ptr, const char *elem, const char *val);
void add_xsd_integer(xmlNodePtr ptr, const char *elem, const Odr_int *val);
xmlNodePtr add_xsd_string_n(xmlNodePtr ptr, const char *elem, const char *val,
int len);
+void add_XML_n(xmlNodePtr ptr, const char *elem, char *val, int len,
+ xmlNsPtr ns_ptr);
+
+xmlNodePtr add_xsd_string_ns(xmlNodePtr ptr, const char *elem, const char *val,
+ xmlNsPtr ns_ptr);
+
void yaz_sru_facet_response(ODR o, Z_FacetList **facetList, xmlNodePtr n);
const char *yaz_element_attribute_value_get(xmlNodePtr ptr,