X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=src%2Fsru-p.h;h=3a3031b6f182f0a1298349f0b08e39529f5bcf2b;hp=7bd27624c520816b4f8c3dfe4391c22756e63e54;hb=935b1ba0c2c3dc480b0afcb3673abe2ef2dd893f;hpb=b51665819b5685aeeac61d30aee5e66f1af7a4cc diff --git a/src/sru-p.h b/src/sru-p.h index 7bd2762..3a3031b 100644 --- a/src/sru-p.h +++ b/src/sru-p.h @@ -1,5 +1,5 @@ /* This file is part of the YAZ toolkit. - * Copyright (C) 1995-2013 Index Data. + * Copyright (C) Index Data. * All rights reserved. * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: @@ -39,10 +39,47 @@ Z_AttributeList *yaz_use_attribute_create(ODR o, const char *name); char *yaz_negotiate_sru_version(char *input_ver); +void yaz_sru_facet_request(ODR, Z_FacetList **facetList, + const char **limit, const char **start, + const char **sort); + #if YAZ_HAVE_XML2 #include #include -const char *yaz_element_attribute_value_get(xmlNodePtr ptr, const char *node_name, const char *attribute_name); + +int yaz_match_xsd_string(xmlNodePtr ptr, const char *elem, ODR o, + char **val); +int yaz_match_xsd_integer(xmlNodePtr ptr, const char *elem, ODR o, + 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, + const char *node_name, const char *attribute_name); #endif /*