ZOOM_connection_scan1 (ZOOM_connection c, ZOOM_query startterm)
ZOOM_query_cql2rpn(ZOOM_query s, const char *str, ZOOM_connection conn)
-->
-<!-- $Id: zoom.xml,v 1.54 2006-10-31 14:08:01 adam Exp $ -->
+<!-- $Id: zoom.xml,v 1.61 2007-06-29 08:05:07 adam Exp $ -->
<chapter id="zoom"><title>ZOOM</title>
<para>
&zoom; is an acronym for 'Z39.50 Object-Orientation Model' and is
specified by the value of the connection's <literal>sru</literal>
option, which may be SRU over HTTP GET (<literal>get</literal>),
SRU over HTTP POST (<literal>post</literal>) or SRW (SRU over
- SOAP) (<literal>soap</literal>).
+ SOAP) (<literal>soap</literal>). 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
+ <literal>sru=get,</literal>, like this:
+ <literal>sru=get,http://sru.miketaylor.org.uk:80/sru.pl</literal>
</para>
</note>
<literal><parameter>key</parameter>=<parameter>value</parameter></literal>
sequences, each of which represents an option to be set into the
connection structure <emphasis>before</emphasis> the
- protocol-level connection is forged and the initialisation
+ protocol-level connection is forged and the initialization
handshake takes place. This facility can be used to provide
authentication credentials, as in host-strings such as:
<literal>user=admin,password=halfAm4n,tcp:localhost:8017/db</literal>
mediumSetElementSetName</entry><entry>
The element set name to be for medium-sized result sets.
</entry><entry>none</entry></row>
+ <row><entry>
+ init_opt_search, init_opt_present, init_opt_delSet, etc.</entry><entry>
+ After a successful Init, these options may be interrogated to
+ discover whether the server claims to support the specified
+ operations.
+ </entry><entry>none</entry></row>
</tbody>
</tgroup>
</table>
If this option isn't set, the ZOOM module will automatically
allocate a result set name.
</entry><entry>default</entry></row>
+ <row><entry>
+ rpnCharset</entry><entry>Character set for RPN terms.
+ If this is set, ZOOM C will assume that the ZOOM application is
+ running UTF-8. Terms in RPN queries are then converted to the
+ rpnCharset. If this is unset, ZOOM C will not assume any encoding
+ of RPN terms and no conversion is performed.
+ </entry><entry>none</entry></row>
</tbody>
</tgroup>
</table>
scanStatus</entry><entry>An integer indicating the Scan Status
of last scan.
</entry><entry>0</entry></row>
+ <row><entry>
+ rpnCharset</entry><entry>Character set for RPN terms.
+ If this is set, ZOOM C will assume that the ZOOM application is
+ running UTF-8. Terms in RPN queries are then converted to the
+ rpnCharset. If this is unset, ZOOM C will not assume any encoding
+ of RPN terms and no conversion is performed.
+ </entry><entry>none</entry></row>
</tbody>
</tgroup>
</table>
<entry><literal>create</literal></entry>
</row>
<row>
+ <entry>waitAction</entry>
+ <entry>
+ Wait action for package. Possible values:
+ <literal>wait</literal>, <literal>waitIfPossible</literal>,
+ <literal>dontWait</literal> or <literal>dontReturnPackage</literal>.
+ </entry>
+ <entry><literal>waitIfPossible</literal></entry>
+ </row>
+ <row>
<entry>targetReference</entry>
<entry>
Target Reference. This is part of the response as returned
- by the server. Read it after a succesful operation.
+ by the server. Read it after a successful operation.
</entry>
<entry><literal>none</literal></entry>
</row>
<literal>recordDelete</literal>,
<literal>elementUpdate</literal>.
</entry>
- <entry><literal>specialUpdate</literal></entry>
+ <entry><literal>specialUpdate (recordInsert for updateVersion=1 which does not support specialUpdate)</literal></entry>
</row>
<row>
<entry>recordIdOpaque</entry>
<entry>Database from connection object</entry>
<entry>Default</entry>
</row>
+ <row>
+ <entry>correlationInfo.note</entry>
+ <entry>Correlation Info Note (string)</entry>
+ <entry>none</entry>
+ </row>
+ <row>
+ <entry>correlationInfo.id</entry>
+ <entry>Correlation Info ID (integer)</entry>
+ <entry>none</entry>
+ </row>
+ <row>
+ <entry>elementSetName</entry>
+ <entry>Element Set for Record</entry>
+ <entry>none</entry>
+ </row>
+ <row>
+ <entry>updateVersion</entry>
+ <entry>Record Update version which holds one of the values
+ 1, 2 or 3. Each version has a distinct OID:
+ 1.2.840.10003.9.5
+ (<ulink url="&url.z39.50.extupdate1;">first version</ulink>) ,
+ 1.2.840.10003.9.5.1
+ (second version) and
+ 1.2.840.10003.9.5.1.1
+ (<ulink url="&url.z39.50.extupdate3;">third and
+ newest version</ulink>).
+ </entry>
+ <entry>3</entry>
+ </row>
</tbody>
</tgroup>
</table>