doc: update supported SRU version
[yaz-moved-to-github.git] / doc / introduction.xml
index 32b4810..dd93b10 100644 (file)
@@ -1,50 +1,55 @@
-<!-- $Id: introduction.xml,v 1.24 2006-06-13 16:01:51 adam Exp $ -->
  <chapter id="introduction"><title>Introduction</title>
 
   <para>
    &yaz; is a C/C++ library for information retrieval applications
  <chapter id="introduction"><title>Introduction</title>
 
   <para>
    &yaz; is a C/C++ library for information retrieval applications
-   using the Z39.50/SRU protocols for information retrieval.
+   using the Z39.50/SRU/Solr protocols for information retrieval.
   </para>
   </para>
-  
+
   <para>
    Properties of &yaz;:
    <itemizedlist>
     <listitem><para>
   <para>
    Properties of &yaz;:
    <itemizedlist>
     <listitem><para>
-      Complete 
+      Complete
       <ulink url="&url.z39.50;">Z39.50</ulink> version 3 support.
       Amendments and Z39.50-2002 revision is supported.
      </para></listitem>
     <listitem><para>
       <ulink url="&url.z39.50;">Z39.50</ulink> version 3 support.
       Amendments and Z39.50-2002 revision is supported.
      </para></listitem>
     <listitem><para>
-      Supports 
+      Supports
       <ulink url="&url.sru;">SRU GET/POST/SOAP</ulink>
       <ulink url="&url.sru;">SRU GET/POST/SOAP</ulink>
-      version 1.1 (over HTTP and HTTPS).
+      version 1.1, 1.2 and 2.0 (over HTTP and HTTPS).
      </para></listitem>
     <listitem><para>
      </para></listitem>
     <listitem><para>
-      Includes BER encoders/decoders for the 
+      Includes BER encoders/decoders for the
       <ulink url="&url.ill;">ISO ILL</ulink>
       protocol.
      </para></listitem>
     <listitem><para>
       <ulink url="&url.ill;">ISO ILL</ulink>
       protocol.
      </para></listitem>
     <listitem><para>
+      Supports
+      <ulink url="&url.solr;">Solr</ulink> Web Service version 1.4.x
+      (client side only)
+     </para></listitem>
+    <listitem><para>
       Supports the following transports: BER over TCP/IP
       (<ulink url="&url.ber.over.tcpip;">RFC1729</ulink>),
       Supports the following transports: BER over TCP/IP
       (<ulink url="&url.ber.over.tcpip;">RFC1729</ulink>),
-      BER over unix local socket, and 
+      BER over unix local socket, and
       <ulink url="&url.http.1.1;">HTTP 1.1</ulink>.
      </para></listitem>
     <listitem><para>
       Secure Socket Layer support using
       <ulink url="&url.http.1.1;">HTTP 1.1</ulink>.
      </para></listitem>
     <listitem><para>
       Secure Socket Layer support using
+      <ulink url="&url.gnutls;">GNU TLS</ulink> or
       <ulink url="&url.openssl;">OpenSSL</ulink>.
       If enabled, &yaz; uses HTTPS transport (for SOAP) or
       "Secure BER" (for Z39.50).
      </para></listitem>
     <listitem><para>
       <ulink url="&url.openssl;">OpenSSL</ulink>.
       If enabled, &yaz; uses HTTPS transport (for SOAP) or
       "Secure BER" (for Z39.50).
      </para></listitem>
     <listitem><para>
-      Offers 
-      <ulink url="&url.zoom;">ZOOM</ulink> C API implementing both
-      Z39.50 and SRU.
+      Offers
+      <ulink url="&url.zoom;">ZOOM</ulink> C API implementing
+      Z39.50, SRU and Solr Web Service.
      </para></listitem>
     <listitem><para>
       The &yaz; library offers a set of useful utilities
       related to the protocols, such as MARC (ISO2709) parser,
      </para></listitem>
     <listitem><para>
       The &yaz; library offers a set of useful utilities
       related to the protocols, such as MARC (ISO2709) parser,
-      CCL (ISO8777) parser, 
+      CCL (ISO8777) parser,
       <ulink url="&url.cql;">CQL</ulink>
       parser, memory management routines, character set conversion.
      </para></listitem>
       <ulink url="&url.cql;">CQL</ulink>
       parser, memory management routines, character set conversion.
      </para></listitem>
@@ -70,7 +75,7 @@
    <itemizedlist>
     <listitem>
      <para>
    <itemizedlist>
     <listitem>
      <para>
-      <xref linkend="installation"/> contains installation 
+      <xref linkend="installation"/> contains installation
       instructions for &yaz;. You don't need reading this
       if you expect to download &yaz; binaries.
       However, the chapter contains information about how
       instructions for &yaz;. You don't need reading this
       if you expect to download &yaz; binaries.
       However, the chapter contains information about how
@@ -86,7 +91,7 @@
       client.
      </para>
     </listitem>
       client.
      </para>
     </listitem>
-    
+
     <listitem>
      <para>
       <xref linkend="server"/> describes the generic frontend server
     <listitem>
      <para>
       <xref linkend="server"/> describes the generic frontend server
 
     <listitem>
      <para>
 
     <listitem>
      <para>
-      <xref linkend="client"/> describes how to use the &yaz; Z39.50
+      <xref linkend="yaz-client"/> describes how to use the &yaz; Z39.50
       client. If you're developer and wish to test your server
       or a server from another party, you might find this chapter
       useful.
       client. If you're developer and wish to test your server
       or a server from another party, you might find this chapter
       useful.
 
     <listitem>
      <para>
 
     <listitem>
      <para>
-      <xref linkend="soap"/> describes how SRU and SOAP is used 
+      <xref linkend="soap"/> describes how SRU and SOAP is used
       in &yaz;. Only if you're developing SRU applications
       this section is a must.
      </para>
       in &yaz;. Only if you're developing SRU applications
       this section is a must.
      </para>
       <xref linkend="tools"/> contains sections for the various
       tools offered by &yaz;. Scan through the material quickly
       and see what's relevant to you! SRU implementors
       <xref linkend="tools"/> contains sections for the various
       tools offered by &yaz;. Scan through the material quickly
       and see what's relevant to you! SRU implementors
-      might find the <link linkend="tools.cql">CQL</link> section
+      might find the <link linkend="cql">CQL</link> section
       particularly useful.
      </para>
     </listitem>
       particularly useful.
      </para>
     </listitem>
    </itemizedlist>
   </sect1>
   <sect1 id="introduction.api"><title>The API</title>
    </itemizedlist>
   </sect1>
   <sect1 id="introduction.api"><title>The API</title>
-   
+
    <para>
     The <ulink url="&url.yaz;">&yaz;</ulink>
     toolkit offers several different levels of access to the
     <ulink url="&url.z39.50;">ISO23950/Z39.50</ulink>,
     <ulink url="&url.ill;">ILL</ulink> and
    <para>
     The <ulink url="&url.yaz;">&yaz;</ulink>
     toolkit offers several different levels of access to the
     <ulink url="&url.z39.50;">ISO23950/Z39.50</ulink>,
     <ulink url="&url.ill;">ILL</ulink> and
-    <ulink url="&url.sru;">SRU</ulink>/<ulink url="&url.srw;">SRW</ulink>
+    <ulink url="&url.sru;">SRU</ulink>
     protocols.
     The level that you need to use depends on your requirements, and
     the role (server or client) that you want to implement.
     If you're developing a client application you should consider the
     <link linkend="zoom">ZOOM</link> API.
     It is, by far, the easiest way to develop clients in C.
     protocols.
     The level that you need to use depends on your requirements, and
     the role (server or client) that you want to implement.
     If you're developing a client application you should consider the
     <link linkend="zoom">ZOOM</link> API.
     It is, by far, the easiest way to develop clients in C.
-    Server implementers should consider the 
+    Server implementers should consider the
     <link linkend="server">generic frontend server</link>.
     None of those high-level APIs support the whole protocol, but
     they do include most facilities used in existing Z39.50 applications.
     <link linkend="server">generic frontend server</link>.
     None of those high-level APIs support the whole protocol, but
     they do include most facilities used in existing Z39.50 applications.
      </listitem>
      <listitem>
       <para>
      </listitem>
      <listitem>
       <para>
-       The second layer provides a C represenation of the 
+       The second layer provides a C represenation of the
        protocol units (packages) for Z39.50 ASN.1, ILL ASN.1,
        SRU.
       </para>
        protocol units (packages) for Z39.50 ASN.1, ILL ASN.1,
        SRU.
       </para>
     The &asn; library also provides functions (which are, in turn,
     defined using &odr; primitives) for encoding and decoding data values.
     Their general form is
     The &asn; library also provides functions (which are, in turn,
     defined using &odr; primitives) for encoding and decoding data values.
     Their general form is
-    
+
     <funcsynopsis>
      <funcprototype><funcdef>int <function>z_<replaceable>xxx</replaceable></function></funcdef>
       <paramdef>ODR <parameter>o</parameter></paramdef>
     <funcsynopsis>
      <funcprototype><funcdef>int <function>z_<replaceable>xxx</replaceable></function></funcdef>
       <paramdef>ODR <parameter>o</parameter></paramdef>
     </funcsynopsis>
     (note the lower-case &quot;z&quot; in the function name)
    </para>
     </funcsynopsis>
     (note the lower-case &quot;z&quot; in the function name)
    </para>
-   
+
    <note>
     <para>
      If you are using the premade definitions of the &asn; module, and you
    <note>
     <para>
      If you are using the premade definitions of the &asn; module, and you
      <xref linkend="odr.use"/>.
     </para>
    </note>
      <xref linkend="odr.use"/>.
     </para>
    </note>
-   
+
   <para>
     When you have created a BER-encoded buffer, you can use the &comstack;
     subsystem to transmit (or receive) data over the network. The &comstack;
   <para>
     When you have created a BER-encoded buffer, you can use the &comstack;
     subsystem to transmit (or receive) data over the network. The &comstack;