Merge branch 'master' of ssh://git.indexdata.com/home/git/pub/yaz
[yaz-moved-to-github.git] / doc / zoom.xml
index ac9eadb..10a3e19 100644 (file)
@@ -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.
        </entry><entry>none</entry></row>
       <row><entry>
-        proxy</entry><entry>Proxy host
+        proxy</entry><entry>Proxy 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.
+       </entry><entry>none</entry></row>
+      <row><entry>
+        clientIP</entry><entry>Client 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.
        </entry><entry>none</entry></row>
       <row><entry>
         async</entry><entry>If true (1) the connection operates in 
@@ -726,7 +734,7 @@ ZOOM_query_cql2rpn(ZOOM_query s, const char *str, ZOOM_connection conn)
     The <parameter>type</parameter> is a string of the format:
    </para>
    <para>
-    <replaceable>form</replaceable>[; charset=<replaceable>from</replaceable>[,<replaceable>to</replaceable>]]
+    <replaceable>form</replaceable>[;charset=<replaceable>from</replaceable>[,<replaceable>to</replaceable>]][;format=<replaceable>v</replaceable>]
    </para>
    <para>
     where <replaceable>form</replaceable> specifies the format of the
@@ -739,6 +747,12 @@ ZOOM_query_cql2rpn(ZOOM_query s, const char *str, ZOOM_connection conn)
     If <replaceable>to</replaceable> is omitted UTF-8 is assumed.
    </para>
    <para>
+    The format argument controls whether record data should be XML
+    pretty-printed (post process operation).
+    It is enabled only if format value <replaceable>v</replaceable> is 
+    <literal>1</literal> and the record content is XML well-formed.
+   </para>
+   <para>
     In addition, for certain types, the length
     <literal>len</literal> passed will be set to the size in bytes of
     the returned information. 
@@ -792,14 +806,31 @@ ZOOM_query_cql2rpn(ZOOM_query s, const char *str, ZOOM_connection conn)
         MARCXML
         </ulink> 
        (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 <literal>const char *</literal>) and length is stored in
         <literal>*len</literal>.
        </para></listitem>
      </varlistentry>
      <varlistentry><term><literal>opac</literal></term>
-      <listitem><para>OPAC for record is returned in XML.
+      <listitem><para>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.
+       </para></listitem>
+     </varlistentry>
+     <varlistentry><term><literal>txml</literal></term>
+      <listitem><para>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
+       <link linkend="tools.turbomarc">
+        TurboMARC
+       </link> 
+       (converted from ISO2709 to TurboMARC by YAZ).
+       Upon completion, the XML buffer is returned
+       (type <literal>const char *</literal>) and length is stored in
+        <literal>*len</literal>.
        </para></listitem>
      </varlistentry>
     </variablelist>
@@ -865,11 +896,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 +973,7 @@ ZOOM_query_cql2rpn(ZOOM_query s, const char *str, ZOOM_connection conn)
       <row><entry>
         number</entry><entry>Number of Scan Terms requested in next scan.
         After scan it holds the actual number of terms returned.
-       </entry><entry>10</entry></row>
+       </entry><entry>20</entry></row>
       <row><entry>
         position</entry><entry>Preferred Position of term in response
         in next scan; actual position after completion of scan.