Update doc/common
[metaproxy-moved-to-github.git] / doc / record_transform.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-record_transform">
8  <refentryinfo>
9   <productname>Metaproxy</productname>
10   <info><orgname>Index Data</orgname></info>
11  </refentryinfo>
12
13  <refmeta>
14   <refentrytitle>record_transform</refentrytitle>
15   <manvolnum>3mp</manvolnum>
16   <refmiscinfo class="manual">Metaproxy Module</refmiscinfo>
17  </refmeta>
18  
19  <refnamediv>
20   <refname>record_transform</refname>
21   <refpurpose>Metaproxy Module that performs Z39.50 presentResponse record transformations</refpurpose>
22  </refnamediv>
23
24  <refsect1><title>DESCRIPTION</title>
25   <para>
26    This filter acts only on Z3950 present requests, and let all
27    other types of packages and requests pass untouched. It's use is
28    twofold: blocking Z3950 present requests, which the backend
29    server does not understand and can not honor, and transforming
30    the present syntax and elementset name according to the rules
31    specified, to fetch only existing record formats, and transform
32    them on the fly to requested record syntaxes.
33   </para> 
34   <para>
35    The allowed record present syntax and 
36    element name are described in multiple
37    <literal>&lt;retrieval&gt;</literal> elements inside the 
38    <literal>&lt;retrievalinfo&gt;</literal>
39    element. The <literal>syntax</literal> attribute is mandatory, but
40    the <literal>name</literal> attribute
41    may be omitted, in which case any 
42    element name is accepted. An additional
43    <literal>identifier</literal> attribute can be added to explicitly
44    describe the Z3950 identifier string.
45   </para>
46   <para>
47     The <literal>&lt;retrieval&gt;</literal> element and the content
48     is described in the 
49     <ulink url="&url.yaz.retrieval;">Retrieval Facility</ulink> section
50     of the YAZ manual.
51   </para>
52  </refsect1>
53  
54  <refsect1><title>SCHEMA</title>
55    <literallayout><xi:include
56                      xi:href="../xml/schema/filter_record_transform.rnc"
57                      xi:parse="text"  
58                      xmlns:xi="http://www.w3.org/2001/XInclude" />
59    </literallayout>
60  </refsect1>
61  
62  <refsect1><title>EXAMPLES</title>
63   <para>
64    A typical configuration looks like this:
65    <screen><![CDATA[
66     <filter type="record_transform">
67       <retrievalinfo  xmlns="http://indexdata.com/yaz" version="1.0">
68         <retrieval syntax="xml" name="dc"
69                    identifier="info:srw/schema/1/dc-v1.1">
70           <backend syntax="usmarc" name="F">
71             <marc inputformat="marc" outputformat="marcxml"
72                   inputcharset="marc-8"/>
73             <xslt stylesheet="../xml/xslt/MARC21slim2DC.xsl"/>
74           </backend>
75         </retrieval>
76         <retrieval syntax="opac"/>
77         <retrieval syntax="xml" name="opac">
78           <backend syntax="opac" name="F">
79           <marc inputformat="marc" outputformat="marcxml"
80                 inputcharset="marc-8"/>
81           </backend>
82         </retrieval>
83         <retrieval syntax="usmarc">
84           <backend syntax="usmarc" name="F">
85           </backend>
86         </retrieval>
87       </retrievalinfo>
88     </filter>
89 ]]>
90    </screen>
91   </para>
92  </refsect1> 
93  
94  <refsect1><title>SEE ALSO</title>
95   <para>
96    <citerefentry>
97     <refentrytitle>metaproxy</refentrytitle>
98     <manvolnum>1</manvolnum>
99    </citerefentry>
100   </para>
101  </refsect1>
102  
103  &copyright;
104 </refentry>
105
106 <!-- Keep this comment at the end of the file
107 Local variables:
108 mode: nxml
109 nxml-child-indent: 1
110 End:
111 -->