SRU/Z39.50 configuration uses session_shared. Illustrate the usage of routes
[metaproxy-moved-to-github.git] / etc / config-sru-to-z3950.xml
1 <?xml version="1.0"?>
2 <!-- $Id: config-sru-to-z3950.xml,v 1.17 2007-01-25 13:55:11 adam Exp $ -->
3 <metaproxy 
4     xmlns="http://indexdata.com/metaproxy" 
5     version="1.0">
6   <start route="start"/>
7   <filters>
8     <filter id="frontend" type="frontend_net">
9       <threads>10</threads>
10       <port>@:9000</port>
11     </filter>
12     <filter id="sru" type="sru_z3950">
13       <database name="Default">
14        <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
15                     href="../etc/explain.xml"/>
16       </database>
17       <database name="test">
18        <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
19                     href="../etc/explain.xml"/>
20       </database>
21     </filter>
22     <filter id="cql" type="cql_rpn">
23       <conversion file="../etc/cql2pqf.txt"/>
24     </filter>
25     <filter id="retrieve" type="record_transform">
26       <retrievalinfo  xmlns="http://indexdata.com/yaz" version="1.0">
27         <retrieval syntax="xml" name="dc"
28                    identifier="info:srw/schema/1/dc-v1.1">
29           <backend syntax="usmarc" name="F">
30             <marc inputformat="marc" outputformat="marcxml"
31                   inputcharset="marc-8"/>
32             <xslt stylesheet="../xml/xslt/MARC21slim2DC.xsl"/>
33           </backend>
34         </retrieval>
35         <retrieval syntax="usmarc">
36           <backend syntax="usmarc" name="F">
37           </backend>
38         </retrieval>
39       </retrievalinfo>
40     </filter>
41   </filters>
42   <routes>  
43     <!-- Z39.50 clients -->
44     <route id="remote">
45       <filter type="log">
46         <message>remote</message>
47       </filter>
48       <filter type="z3950_client">
49         <timeout>30</timeout>
50       </filter>
51       <filter type="bounce"/>
52     </route>
53     
54     <!-- shared Z39.50 clients -->
55     <route id="shared">
56       <filter type="log">
57         <message>shared</message>
58       </filter>
59       <filter type="session_shared"/>
60       <filter type="z3950_client">
61         <timeout>30</timeout>
62       </filter>
63       <filter type="bounce"/>
64     </route>
65     
66     <!-- local built-in server -->
67     <route id="local">
68       <filter type="backend_test"/>
69       <filter type="bounce"/>
70     </route>
71
72     <route id="start">
73       <filter refid="frontend"/>
74       <filter type="log">
75         <message>HTTP</message>
76         <category apdu="true"/>
77       </filter>
78       <filter refid="sru"/>
79       <filter refid="cql"/>
80       <filter refid="retrieve"/>
81       <filter type="log">
82         <message>Z3950</message>
83       </filter>
84       <filter type="virt_db">
85         <virtual route="shared">
86           <database>Default</database>
87           <target>localhost:9999/Default</target>
88         </virtual>
89         <virtual route="local">
90           <database>test</database>
91           <target>someid</target>
92         </virtual>
93       </filter>
94     </route>
95   </routes>
96 </metaproxy>
97