-<!-- $Id: asn.xml,v 1.12 2001-10-26 20:13:44 adam Exp $ -->
+<!-- $Id: asn.xml,v 1.13 2003-11-19 21:17:26 adam Exp $ -->
<chapter id="asn"><title>The Z39.50 ASN.1 Module</title>
<sect1 id="asn.introduction"><title>Introduction</title>
<para>
structure before freeing the structure itself.
</para>
<para>
- You can use the <function>odr_malloc()</function> function (see section
- <link linkend="odr-use">Using ODR</link> for details). When you use
+ You can use the <function>odr_malloc()</function> function (see
+ <xref linkend="odr.use"/> for details). When you use
<function>odr_malloc()</function>, you can release all of the
allocated data in a single operation, independent of any pointers and
relations between the data. <function>odr_malloc()</function> is based on a
<literal>z_ext_gettypebyref</literal> to look for the provided
direct-reference.
If the return value is different from NULL, you can use the provided
- function to decode the BER string (see section <link linkend="odr-use">
- Using ODR</link>).
+ function to decode the BER string (see <xref linkend="odr.use"/>
+ ).
</para>
<para>
-<!-- $Id: installation.xml,v 1.18 2003-05-27 21:44:10 adam Exp $ -->
+<!-- $Id: installation.xml,v 1.19 2003-11-19 21:17:26 adam Exp $ -->
<chapter id="installation"><title>Compilation and Installation</title>
<sect1><title>Introduction</title>
<para>
The following files are generated by the make process:
<variablelist>
- <varlistentry><term><filename>lib/libyaz.la</filename></term>
+ <varlistentry><term><filename>src/libyaz.la</filename></term>
<listitem><para>
Main &yaz; library. This is no ordinary library. It's
a Libtool archive.
By default, &yaz; creates a static library in
<filename>lib/.libs/libyaz.a</filename>.
- </para></listitem></varlistentry>
+ </para></listitem>
+ </varlistentry>
- <varlistentry><term><filename>lib/libyazthread.la</filename></term>
+ <varlistentry><term><filename>src/libyazthread.la</filename></term>
<listitem><para>
When threading is supported/enabled by configure this Libtool
library is created. It includes functions that allows &yaz;
to use threads.
- </para></listitem></varlistentry>
+ </para></listitem>
+ </varlistentry>
<varlistentry><term><filename>ztest/yaz-ztest</filename></term>
<listitem><para>Test Z39.50 server.
- </para></listitem></varlistentry>
+ </para></listitem>
+ </varlistentry>
<varlistentry><term><filename>client/yaz-client</filename></term>
<listitem><para>Z39.50 client for testing the protocol.
See chapter <link linkend="client">
YAZ client</link> for more information.
- </para></listitem></varlistentry>
+ </para></listitem>
+ </varlistentry>
- <varlistentry><term><filename>yaz-config</filename></term>
+ <varlistentry><term><filename>util/yaz-config</filename></term>
<listitem><para>A Bourne-shell script, generated by configure, that
specifies how external applications should compile - and link with
&yaz;.
- </para></listitem></varlistentry>
+ </para></listitem>
+ </varlistentry>
- <varlistentry><term><filename>yaz-asncomp</filename></term>
+ <varlistentry><term><filename>util/yaz-asncomp</filename></term>
<listitem><para>The ASN.1 compiler for &yaz;. Requires the
Tcl Shell, <application>tclsh</application>, in
<literal>PATH</literal> to operate.
- </para></listitem></varlistentry>
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><filename>util/yaz-iconv</filename></term>
+ <listitem><para>This program converts data in one character set to
+ another. This command exercises the YAZ character set
+ conversion API.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><filename>util/yaz-marcdump</filename></term>
+ <listitem><para>This program parses ISO2709 encoded MARC records
+ and prints them in line-format or XML.
+ </para></listitem>
+ </varlistentry>
- <varlistentry><term><filename>zoom/zoomsh</filename></term>
+ <varlistentry><term><filename>zoom/zoomsh</filename></term>
<listitem><para>
A simple shell implemented on top of the
<link linkend="zoom">ZOOM</link> functions.
The shell is a command line application that allows you to enter
simple commands to perform ZOOM operations.
- </para></listitem></varlistentry>
+ </para></listitem>
+ </varlistentry>
<varlistentry><term><filename>zoom/zoomtst1</filename>,
<filename>zoom/zoomtst2</filename>, ..</term>
<listitem><para>
Several small applications that demonstrates the ZOOM API.
- </para></listitem></varlistentry>
+ </para></listitem>
+ </varlistentry>
</variablelist>
</para>
-<!-- $Id: introduction.xml,v 1.15 2003-11-03 10:54:49 adam Exp $ -->
+<!-- $Id: introduction.xml,v 1.16 2003-11-19 21:17:26 adam Exp $ -->
<chapter id="introduction"><title>Introduction</title>
<para>
<para>
<xref linkend="odr"/> goes through the details of the
ODR module which is the work horse that encodes and decodes
- BER packages. Implementors using ZOOM only do <emphasis>not</emphasis>
+ BER packages. Implementors using ZOOM only, do <emphasis>not</emphasis>
need reading this.
Most other Z39.50 implementors only need to read the first two
sections (<xref linkend="odr.introduction"/> and
<para>
If you are using the premade definitions of the &asn; module, and you
are not adding new protocol of your own, the only parts of &odr; that you
- need to worry about are documented in section
- <link linkend="odr-use">Using ODR</link>.
+ need to worry about are documented in
+ <xref linkend="odr.use"/>.
</para>
</note>
-<!-- $Id: odr.xml,v 1.10 2003-11-03 10:45:05 adam Exp $ -->
+<!-- $Id: odr.xml,v 1.11 2003-11-19 21:17:26 adam Exp $ -->
<chapter id="odr"><title>The ODR Module</title>
<sect1 id="odr.introduction"><title>Introduction</title>
<para>
If you are only interested in writing a Z39.50 implementation based on
the PDUs that are already provided with &yaz;, you only need to concern
- yourself with the section on managing ODR streams (section
- <link linkend="odr-use">Using ODR</link>). Only if you need to
+ yourself with the section on managing ODR streams
+ (<xref linkend="odr.use"/>). Only if you need to
implement ASN.1 beyond that which has been provided, should you
worry about the second half of the documentation
(section <link linkend="odr-prog">Programming with ODR</link>).
</para>
</sect1>
- <sect1 id="odr.use"><title id="odr-use">Using ODR</title>
+ <sect1 id="odr.use"><title>Using ODR</title>
<sect2><title>ODR Streams</title>
-<!-- $Id: tools.xml,v 1.32 2003-11-03 10:54:01 adam Exp $ -->
+<!-- $Id: tools.xml,v 1.33 2003-11-19 21:17:26 adam Exp $ -->
<chapter id="tools"><title>Supporting Tools</title>
<para>
release the associated memory again. For the structures describing the
Z39.50 PDUs and related structures, it is convenient to use the
memory-management system of the &odr; subsystem (see
- <link linkend="odr-use">Using ODR</link>). However, in some circumstances
+ <xref linkend="odr.use"/>). However, in some circumstances
where you might otherwise benefit from using a simple nibble memory
management system, it may be impractical to use
<function>odr_malloc()</function> and <function>odr_reset()</function>.