zoom: document timeout setting.
[metaproxy-moved-to-github.git] / doc / sru_z3950.xml
1 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.4//EN" 
2     "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
3  <!ENTITY copyright SYSTEM "copyright.xml">
4  <!ENTITY % idcommon SYSTEM "common/common.ent">
5      %idcommon;
6 ]>
7 <refentry id="ref-sru_z3950">
8  <refentryinfo>
9   <productname>Metaproxy</productname>
10   <info><orgname>Index Data</orgname></info>
11  </refentryinfo>
12
13  <refmeta>
14   <refentrytitle>sru_z3950</refentrytitle>
15   <manvolnum>3mp</manvolnum>
16   <refmiscinfo class="manual">Metaproxy Module</refmiscinfo>
17  </refmeta>
18  
19  <refnamediv>
20   <refname>sru_z3950</refname>
21   <refpurpose>Metaproxy Module transforming SRU web service requests to Z3950 Metaproxy packages</refpurpose>
22  </refnamediv>
23  
24  <refsect1><title>DESCRIPTION</title>
25   <para>
26    The <literal>sru_z3950</literal> Metaproxy filter transforms valid
27    SRU GET/POST/SOAP requests to Z3950 requests, and wraps the
28    received hit counts and XML records into suitable SRU response messages. 
29   </para>
30   <para>
31    Multiple database elements defining the names of the accepted
32    databases are allowed in the configuration file. Each
33    of them must contain their own explain record, or must be empty. 
34    Notice that explain
35    records come in SRU and Z39.50 flavors, and this filter requires
36    the SRU version. See the 
37    <ulink url="&url.zeerex.explain;">ZeeReX Explain</ulink>
38    standard pages and the 
39    <ulink url="&url.sru.explain;">SRU Explain</ulink> pages
40    for more information. 
41   </para>
42   <para>
43    All Z39.50 packages and all HTTP packages that do not resolve to
44    one configured database name are passed unaltered to the next
45    filters on the route.
46    </para>
47   <para>
48    The SRU <literal>explain</literal> operation is supported, 
49    returning either the absolute minimum required by the standard, or
50    a  full  pre-defined ZeeReX explain record. 
51   </para>
52   <para>
53    It supports the SRU <literal>searchRetrieve</literal> operation, which
54    is transformed into successive Z3950 <literal>init</literal>, 
55    <literal>search</literal> and <literal>present</literal> requests. 
56   </para>
57   <para>
58    The SRU <literal>scan</literal> operation is not supported.
59    </para>
60   <para>
61    This filter does not handle CQL-to-PQF translations. In case that
62    the backends do not understand CQL, you need to append the
63    <literal>cql_pqf</literal> metaproxy filter.
64   </para>
65   <para>
66     This module supports the following SRU extra parameters:
67     <variablelist>
68       <varlistentry>
69         <term>x-target</term>
70         <listitem>
71           <para>
72             Specifies backend Z39.50 target.
73           </para>
74         </listitem>
75       </varlistentry>
76       <varlistentry>
77         <term>x-max-sockets</term>
78         <listitem>
79           <para>
80             Specifies maximum number of sockets to use for a Z39.50 backend
81             client (for one given target host/db).
82           </para>
83         </listitem>
84       </varlistentry>
85       <varlistentry>
86         <term>x-session-id</term>
87         <listitem>
88           <para>
89             Allow a user-defined session ID to be attached to filter
90             log that follows sru_z3950. The ID is present in the
91             log files and not available to the SRU webservice. In order
92             to log material out via SRU, the x-log-enable may be used
93             instead.
94           </para>
95         </listitem>
96       </varlistentry>
97       <varlistentry>
98         <term>x-log-enable</term>
99         <listitem>
100           <para>
101             Controls whether log is to be collected for filters that
102             sru_z3950. Log data is extra response data's log element.
103             A value of 1 enables logging; other value disables
104             logging (default).
105           </para>
106         </listitem>
107       </varlistentry>
108     </variablelist>
109   </para>
110  </refsect1>
111
112  <refsect1><title>SCHEMA</title>
113    <literallayout><xi:include
114                      xi:href="../xml/schema/filter_sru_z3950.rnc"
115                      xi:parse="text"  
116                      xmlns:xi="http://www.w3.org/2001/XInclude" />
117    </literallayout>
118  </refsect1>
119  
120  <refsect1><title>EXAMPLES</title>
121   <para>
122    A typical configuration looks like this:
123    <screen><![CDATA[
124     <filter type="sru_z3950">
125       <database name="Default">
126         <explain xmlns="http://explain.z3950.org/dtd/2.0/">
127           ...
128         </explain>
129       </database>
130       <database name="Dummy">
131     </filter>
132
133 ]]>
134    </screen>
135   </para>
136  </refsect1> 
137  
138  <refsect1><title>SEE ALSO</title>
139   <para>
140    <citerefentry>
141     <refentrytitle>metaproxy</refentrytitle>
142     <manvolnum>1</manvolnum>
143    </citerefentry>
144   </para>
145  </refsect1>
146  
147  &copyright;
148 </refentry>
149
150 <!-- Keep this comment at the end of the file
151 Local variables:
152 mode: nxml
153 nxml-child-indent: 1
154 End:
155 -->