Merge branch 'master' into sru_2_0
[yaz-moved-to-github.git] / include / yaz / facet.h
index 3f21374..079f371 100644 (file)
@@ -1,5 +1,5 @@
 /* This file is part of the YAZ toolkit.
- * Copyright (C) 1995-2010 Index Data.
+ * Copyright (C) 1995-2013 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:
@@ -57,37 +57,20 @@ struct yaz_facet_attr {
                    /* or number converted to a string */
                    /* defaults to 'any' */
     char useattrbuff[30]; /* for converting numbers to strings */
-    char *relation; /* @attr 2, defaults to '=' */
-    int limit; /* for facet attributes */
+    int sortorder;
+    int limit;
+    int start;
 };
 
 YAZ_EXPORT
-void facet_struct_init(struct yaz_facet_attr *attr_values);
+void yaz_facet_attr_init(struct yaz_facet_attr *attr_values);
 
-/* Use attribute, @attr1, can be numeric or string */
 YAZ_EXPORT
-void useattr(Z_AttributeElement *ae, struct yaz_facet_attr *av);
+void yaz_facet_attr_get_z_attributes(const Z_AttributeList *attributes,
+                                    struct yaz_facet_attr *av);
 
 YAZ_EXPORT
-void relationattr(Z_AttributeElement *ae, struct yaz_facet_attr *av);
-
-YAZ_EXPORT
-void limitattr(Z_AttributeElement *ae, struct yaz_facet_attr *av);
-
-YAZ_EXPORT
-void limitattr(Z_AttributeElement *ae, struct yaz_facet_attr *av);
-
-YAZ_EXPORT
-void facetattrs(Z_AttributeList *attributes, struct yaz_facet_attr *av);
-
-YAZ_EXPORT
-Z_FacetList *extract_facet_request(ODR odr, Z_OtherInformation *search_input);
-
-YAZ_EXPORT
-Z_Term *term_create(ODR odr, const char *cstr);
-
-YAZ_EXPORT
-Z_FacetTerm* facet_term_create(ODR odr, Z_Term *term, int freq);
+Z_FacetTerm *facet_term_create_cstr(ODR odr, const char *cstr, Odr_int freq);
 
 YAZ_EXPORT
 Z_FacetField* facet_field_create(ODR odr, Z_AttributeList *attributes,
@@ -103,6 +86,17 @@ Z_FacetList* facet_list_create(ODR odr, int num_facets);
 YAZ_EXPORT
 void facet_list_field_set(ODR odr, Z_FacetList *list, Z_FacetField *field,
                          int index);
+YAZ_EXPORT
+void yaz_oi_set_facetlist(
+    Z_OtherInformation **otherInformation, ODR odr, Z_FacetList *facet_list);
+
+YAZ_EXPORT
+Z_FacetList *yaz_oi_get_facetlist(Z_OtherInformation **otherInformation);
+
+YAZ_EXPORT
+void yaz_oi_set_facetlist(Z_OtherInformation **otherInformation, ODR odr,
+                          Z_FacetList *facet_list);
+
 
 YAZ_END_CDECL