X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=doc%2Fzoom.xml;h=7d043d2e1bbdfe58786d80437d4ef8906d103bde;hb=00512e603a9a54c4499c84442fe07ba4c9b0af95;hp=25aea865628a1a77387b5430d70f1b18f8897eea;hpb=e1fa5ba09392c3bdd5c1bacac97d87d703ed1cf3;p=yaz-moved-to-github.git
diff --git a/doc/zoom.xml b/doc/zoom.xml
index 25aea86..7d043d2 100644
--- a/doc/zoom.xml
+++ b/doc/zoom.xml
@@ -29,22 +29,22 @@ ZOOM_query_cql2rpn(ZOOM_query s, const char *str, ZOOM_connection conn)
programming language or toolkit.
-
-
- A recent addition to &yaz; is SRU support. You can now make
- SRU ZOOM connections by specifying scheme http://
- for the hostname for a connection. The dialect of SRU used is
- specified by the value of the connection's sru
- option, which may be SRU over HTTP GET (get),
- SRU over HTTP POST (post) or SRW (SRU over
- SOAP) (soap). Using the facility for embedding
- options in target strings, a connection can be forced to use SRU
- rather the SRW (the default) by prefixing the target string with
- sru=get,, like this:
+
+ From YAZ version 2.1.12, SRU is supported.
+ You can make SRU ZOOM connections by specifying scheme
+ http:// for the hostname for a connection.
+ The dialect of SRU used is specified by the value of the
+ connection's sru option, which may be SRU over
+ HTTP GET (get),
+ SRU over HTTP POST (post), (SRU over
+ SOAP) (soap) or SOLR
+ (SOLR Web Service).
+ Using the facility for embedding options in target strings, a
+ connection can be forced to use SRU rather the SRW (the default) by
+ prefixing the target string with sru=get,, like this:
sru=get,http://sru.miketaylor.org.uk:80/sru.pl
-
-
+
The lack of a simple Z39.50 client API for &yaz; has become more
and more apparent over time. So when the first &zoom; specification
@@ -192,7 +192,9 @@ ZOOM_query_cql2rpn(ZOOM_query s, const char *str, ZOOM_connection conn)
It's automatically set internally when connecting to a target.
none
- proxyProxy host
+ proxyProxy host. If set, the logical host
+ is encoded in the otherInfo area of the Z39.50 Init PDU
+ with OID 1.2.840.10003.10.1000.81.1.
none
clientIPClient IP. If set, is
@@ -275,7 +277,8 @@ ZOOM_query_cql2rpn(ZOOM_query s, const char *str, ZOOM_connection conn)
sru
SRU transport type. Must be either soap,
- get or post.
+ get, post, or
+ solr.
soap
sru_version
@@ -285,6 +288,14 @@ ZOOM_query_cql2rpn(ZOOM_query s, const char *str, ZOOM_connection conn)
first operation), holds the negotiated version with the server
(same or lower version).
1.2
+
+ facets
+ A FacetList is comma-separated list of facet, which is defined
+ as AttributeList and a optional FacetTerm
+ (a Term and a frequency). On request the terms is missing.
+ On response the the list contains the terms that the target
+ could collect.
+ none
@@ -873,6 +884,58 @@ ZOOM_query_cql2rpn(ZOOM_query s, const char *str, ZOOM_connection conn)
+ Facets
+
+ In case the target can and is requested to return facets, using a result set the ZOOM client
+ can request one or all facet fields. Using a facet field the client can request the term count and
+ then interate over the terms.
+
+
+ ZOOM_facet_field *ZOOM_resultset_facets(ZOOM_resultset r);
+ const char ** ZOOM_resultset_facets_names(ZOOM_resultset r);
+ ZOOM_facet_field ZOOM_resultset_get_facet_field(ZOOM_resultset r, const char *facet_name);
+ ZOOM_facet_field ZOOM_resultset_get_facet_field_by_index(ZOOM_resultset r, int pos);
+ size_t ZOOM_resultset_facets_size(ZOOM_resultset r);
+
+ const char *ZOOM_facet_field_name(ZOOM_facet_field facet_field);
+ size_t ZOOM_facet_field_term_count(ZOOM_facet_field facet_field);
+ const char *ZOOM_facet_field_get_term(ZOOM_facet_field facet_field, size_t idx, int *freq);
+
+
+ References to temporary structures are returned by all functions. They are only valid as long the Result set is valid.
+ ZOOM_resultset_get_facet_field or
+ ZOOM_resultset_get_facet_field_by_index.
+ ZOOM_resultset_facets.
+ ZOOM_resultset_facets_names.
+ ZOOM_facet_field_name.
+ ZOOM_facet_field_get_term.
+
+
+ A single Facet field is returned by function
+ ZOOM_resultset_get_facet_field or ZOOM_resultset_get_facet_field_by_index that takes a
+ result set and facet name or positive index respectively. First facet has position zero.
+ If no facet could be obtained (invalid name or index out of bounds) NULL is returned.
+
+
+ An array of facets field can be returned by ZOOM_resultset_facets. The length of the array is
+ given by ZOOM_resultset_facets_size. The array is zero-based and last entry will be at
+ ZOOM_resultset_facets_size(result_set)-1.
+
+
+ It is possible to interate over facets by name, by calling ZOOM_resultset_facets_names.
+ This will return an const array of char * where each string can be used as parameter for
+ ZOOM_resultset_get_facet_field.
+
+
+ Function ZOOM_facet_field_name gets the request facet name from a returned facet field.
+
+
+ Function ZOOM_facet_field_get_term returns the idx'th term and term count for a facet field.
+ Idx must between 0 and ZOOM_facet_field_term_count-1, otherwise the returned reference will be
+ NULL. On a valid idx, the value of the freq reference will be the term count.
+ The *freq parameter must be valid pointer to integer.
+
+
Scan
This section describes an interface for Scan. Scan is not an