X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=doc%2Fzoom.xml;h=897e55691a97a99a27531ffd71ebff288da62f75;hp=ac9eadb45350089317b2270e8f3f60a3035f2b04;hb=7d6ad94dbab567cc2d3e11a648594c4bb8fd4a9b;hpb=19411dcc2419807b0b81e7ad05f63880eba58d22
diff --git a/doc/zoom.xml b/doc/zoom.xml
index ac9eadb..897e556 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,15 @@ 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
+ encoded in the otherInfo area of a Z39.50 PDU with OID
+ 1.2.840.10003.10.1000.81.3. Holds the original IP addreses
+ of a client. Is used of ZOOM is used in a gateway of some sort.
none
asyncIf true (1) the connection operates in
@@ -269,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
@@ -279,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
@@ -726,7 +743,7 @@ ZOOM_query_cql2rpn(ZOOM_query s, const char *str, ZOOM_connection conn)
The type is a string of the format:
- form[; charset=from[,to]]
+ form[;charset=from[,to]][;format=v]
where form specifies the format of the
@@ -739,6 +756,12 @@ ZOOM_query_cql2rpn(ZOOM_query s, const char *str, ZOOM_connection conn)
If to is omitted UTF-8 is assumed.
+ The format argument controls whether record data should be XML
+ pretty-printed (post process operation).
+ It is enabled only if format value v is
+ 1 and the record content is XML well-formed.
+
+
In addition, for certain types, the length
len passed will be set to the size in bytes of
the returned information.
@@ -792,14 +815,31 @@ ZOOM_query_cql2rpn(ZOOM_query s, const char *str, ZOOM_connection conn)
MARCXML
(converted from ISO2709 to MARCXML by YAZ).
- GRS-1 and OPAC records are not supported for this form.
+ OPAC records are also converted to XML and the
+ bibliographic record is converted to MARCXML (when possible).
+ GRS-1 records are not supported for this form.
Upon completion, the XML buffer is returned
(type const char *) and length is stored in
*len.
opac
- OPAC for record is returned in XML.
+ OPAC information for record is returned in XML
+ if an OPAC record is present at the position given. If no
+ OPAC record is present, a NULL pointer is returned.
+
+
+ txml
+ The record is returned in TurboMARC if possible.
+ SRU and Z39.50 records with transfer syntax XML are
+ returned verbatim. MARC records are returned in
+
+ TurboMARC
+
+ (converted from ISO2709 to TurboMARC by YAZ).
+ Upon completion, the XML buffer is returned
+ (type const char *) and length is stored in
+ *len.
@@ -844,6 +884,49 @@ 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.
+
+ Scan
This section describes an interface for Scan. Scan is not an
@@ -865,11 +948,11 @@ ZOOM_query_cql2rpn(ZOOM_query s, const char *str, ZOOM_connection conn)
size_t ZOOM_scanset_size(ZOOM_scanset scan);
- const char * ZOOM_scanset_term(ZOOM_scanset scan, size_t pos,
- int *occ, size_t *len);
+ const char *ZOOM_scanset_term(ZOOM_scanset scan, size_t pos,
+ size_t *occ, size_t *len);
- const char * ZOOM_scanset_display_term(ZOOM_scanset scan, size_t pos,
- int *occ, size_t *len);
+ const char *ZOOM_scanset_display_term(ZOOM_scanset scan, size_t pos,
+ size_t *occ, size_t *len);
void ZOOM_scanset_destroy(ZOOM_scanset scan);
@@ -942,7 +1025,7 @@ ZOOM_query_cql2rpn(ZOOM_query s, const char *str, ZOOM_connection conn)
numberNumber of Scan Terms requested in next scan.
After scan it holds the actual number of terms returned.
- 10
+ 20
positionPreferred Position of term in response
in next scan; actual position after completion of scan.