always use LCDB_MARC8 database
[metaproxy-moved-to-github.git] / etc / config-loc.xml
1 <?xml version="1.0"?>
2 <!--
3 1.   LCDB_UTF8_Port1        (e.g., z3950.loc.gov:7097/voyager)
4 2.   LCDB_UTF8_Port2        (e.g., z3950.loc.gov:7098/voyager)
5 3.   LCDB_MARC8_Port1       (e.g., z3950.loc.gov:7095/voyager)
6 4.   LCDB_MARC8_Port2       (e.g., z3950.loc.gov:7096/voyager)
7 5.   HLAS_UTF8              (e.g., z3950.loc.gov:7999/voyager)
8 6.   HLAS_MARC8             (e.g., z3950.loc.gov:7990/voyager)
9 7.   NLSBPH_UTF8            (e.g., z3950.loc.gov:7499/voyager)
10 8.   NLSBPH_MARC8           (e.g., z3950.loc.gov:7490/voyager)
11 9.   Name_Authority_File    (e.g., sun4.loc.gov:9018/NAF)
12 10.  Subject_Authority_File (e.g., sun4.loc.gov:9019/SAF)
13 11.  Server_in_the_UK       (e.g., blah.blah.uk:210/Aleph)
14 12.  Server_in_California   (e.g., blah.blah.edu:210/Unicorn)
15 13.  Performing_Arts_Encyclopedia (e.g., sun4.loc.gov:9013/PAE)
16 14.  Veterans_History_Project (e.g., sun4.loc.gov:9013/VETS)
17
18
19 MetaProxy could be configured to support accessing
20 the following databaseNames (virtual databases):
21
22    LCDB_UTF8               (1 and 2 above with load balancing)
23    LCDB_MARC8              (3 and 4 above with load balancing)
24    AllVoyager              (1, 2, 5, 7 above with merged results)
25    Name_Authority_File     (Just 9 above)
26    Subject_Authority_File  (Just 10 above)
27    Authority_Files         (9 and 10 above)
28    LC_and_Friends          (1, 2, 5, 7, 11, 12, 13, and 14 above)
29 -->
30 <metaproxy xmlns="http://indexdata.com/metaproxy" version="1.0">
31   <start route="start"/>
32   <filters>
33     <!-- record transform for servers that return MARC8-encoded MARC -->
34     <filter id="marc8-records" type="record_transform">
35       <retrievalinfo  xmlns="http://indexdata.com/yaz" version="1.0">
36         <retrieval syntax="xml" name="dc"
37                    identifier="info:srw/schema/1/dc-v1.1">
38         <backend syntax="usmarc" name="F">
39           <marc inputformat="marc" outputformat="marcxml"
40                 inputcharset="marc-8"/>
41           <xslt stylesheet="../xml/xslt/MARC21slim2DC.xsl"/>
42         </backend>
43       </retrieval>
44       <retrieval syntax="opac"/>
45       <retrieval syntax="xml" name="opac">
46         <backend syntax="opac" name="F">
47         <marc inputformat="marc" outputformat="marcxml"
48               inputcharset="marc-8"/>
49         </backend>
50       </retrieval>
51       <retrieval syntax="usmarc">
52         <backend syntax="usmarc" name="F">
53         </backend>
54         </retrieval>
55       </retrievalinfo>
56     </filter>
57
58     <!-- record transform for servers that return UTF8-encoded MARC -->
59     <filter id="utf8-records" type="record_transform">
60       <retrievalinfo  xmlns="http://indexdata.com/yaz" version="1.0">
61         <retrieval syntax="xml" name="dc"
62                    identifier="info:srw/schema/1/dc-v1.1">
63         <backend syntax="usmarc" name="F">
64           <marc inputformat="marc" outputformat="marcxml"
65                 inputcharset="utf8"/>
66           <xslt stylesheet="../xml/xslt/MARC21slim2DC.xsl"/>
67         </backend>
68       </retrieval>
69       <retrieval syntax="opac"/>
70       <retrieval syntax="xml" name="opac">
71         <backend syntax="opac" name="F">
72         <marc inputformat="marc" outputformat="marcxml"
73               inputcharset="utf8"/>
74         </backend>
75       </retrieval>
76       <retrieval syntax="usmarc">
77         <backend syntax="usmarc" name="F">
78         </backend>
79         </retrieval>
80       </retrievalinfo>
81     </filter>
82
83   </filters>
84   <routes>
85     <route id="start">
86       <filter type="frontend_net">
87         <port>@:7090</port>
88         <!-- maximum connections within a minute from same IP -->
89         <threads>100</threads>
90         <connect-max>10</connect-max>
91       </filter>
92
93       <!-- converts SRU to Z39.50 and back -->
94       <filter type="sru_z3950"/>
95
96       <filter type="log">
97         <message>F</message>
98         <category init-options="true" apdu="false"/>
99       </filter>
100
101       <!-- converts CQL to RPN -->
102       <filter type="cql_rpn">
103         <conversion file="cql2pqf.txt"/>
104       </filter>
105
106       <!-- RPN Query rewrite .. Does query check as well -->
107       <filter type="query_rewrite">
108        <xslt stylesheet="pqf2pqf-loc.xsl"/>
109       </filter>
110
111       <filter type="limit">
112         <limit bandwidth="50000" pdu="100" search="5" retrieve="50"/>
113       </filter>
114       <filter type="session_shared">
115         <resultset ttl="10" max="3"/>
116         <session ttl="30"/>
117       </filter>
118       <filter type="virt_db">
119         <virtual>
120           <database>idtest</database>
121           <target>localhost:9999/Default</target>
122         </virtual>
123         <virtual>
124           <database>LCDB_UTF8</database>
125           <target>z3950.loc.gov:7097/LCDB_MARC8_UTF8</target>
126         </virtual>
127         <virtual>
128           <database>LCDB_MARC8</database>
129           <target>z3950.loc.gov:7095/LCDB_MARC8_MARC8</target>
130         </virtual>
131         <virtual>
132           <database>HLAS_UTF8</database>
133           <target>z3950.loc.gov:7999/HLAS_UTF8</target>
134         </virtual>
135         <virtual>
136           <database>HLAS_MARC8</database>
137           <target>z3950.loc.gov:7990/HLAS_MARC8</target>
138         </virtual>
139         <virtual>
140           <database>NLSBPH_UTF8</database>
141           <target>z3950.loc.gov:7499/NLSBPH_UTF8</target>
142         </virtual>
143         <virtual>
144           <database>NLSBPH_MARC8</database>
145           <target>z3950.loc.gov:7490/NLSBPH_MARC8</target>
146         </virtual>
147         <virtual>
148           <database>Name_Authority_File</database>
149           <target>sun4.loc.gov:9018/NAF</target>
150         </virtual>
151         <virtual>
152           <database>Subject_Authority_File</database>
153           <target>sun4.loc.gov:9019/SAF</target>
154         </virtual>
155         <virtual>
156           <database>Server_in_the_UK</database>
157           <target>blah.blah.uk:210/Aleph</target>
158         </virtual>
159         <virtual>
160           <database>Server_in_Califorina</database>
161           <target>blah.blah.edu:210/Unicorn</target>
162         </virtual>
163         <virtual>
164           <database>Performing_Arts_Encylopedia</database>
165           <target>sun4.loc.gov:9013/PAE</target>
166         </virtual>
167         <virtual>
168           <database>Veterans_History_Project</database>
169           <target>sun4.loc.gov:9013/VETS</target>
170         </virtual>
171
172         <!-- merged results -->
173         <virtual>
174           <database>AllVoyager</database>
175           <target>z3950.loc.gov:7097/LCDB_MARC8_UTF8</target>
176           <target>z3950.loc.gov:7999/HLAS_UTF8</target>
177           <target>z3950.loc.gov:7999/NLSBPH_UTF8</target>
178         </virtual>
179
180       </filter>
181
182       <!-- merge and route -->
183       <filter type="multi">
184         <target route="idtest">localhost*</target>
185         <target route="lcdb_utf8">z3950.loc.gov:7097/LCDB_MARC8_UTF8</target>
186         <target route="lcdb_marc8">z3950.loc.gov:7095/LCDB_MARC8_MARC8</target>
187         <target route="utf8">*UTF8</target>
188       </filter>
189       <!-- other targets.. MARC-8 and foreign .. -->
190       <filter refid="marc8-records"/>
191       <filter type="z3950_client"/>
192       <filter type="bounce"/>
193     </route>
194
195     <!-- idtest -->
196     <route id="idtest">
197       <filter type="virt_db">
198         <virtual>
199           <database>Default</database>
200           <target>localhost:9001/Default</target>
201           <target>localhost:9002/Default</target>
202         </virtual>
203       </filter>
204       <filter type="load_balance"/>
205       <filter refid="marc8-records"/>
206       <filter type="z3950_client"/>
207       <filter type="bounce"/>
208     </route>
209
210     <!-- lcdb utf8 -->
211     <route id="lcdb_utf8">
212       <filter type="virt_db">
213         <virtual>
214           <database>LCDB_UTF8</database>
215           <target>z3950.loc.gov:7097/voyager</target>
216           <target>z3950.loc.gov:7098/voyager</target>
217         </virtual>
218       </filter>
219       <filter type="load_balance"/>
220       <filter refid="utf8-records"/>
221       <filter type="z3950_client"/>
222       <filter type="bounce"/>
223     </route>
224
225     <!-- lcdb marc8 -->
226     <route id="lcdb_marc8">
227       <filter type="virt_db">
228         <virtual>
229           <database>LCDB_MARC8</database>
230           <target>z3950.loc.gov:7095/voyager</target>
231           <target>z3950.loc.gov:7096/voyager</target>
232         </virtual>
233       </filter>
234       <filter type="load_balance"/>
235       <filter refid="marc8-records"/>
236       <filter type="z3950_client"/>
237       <filter type="bounce"/>
238     </route>
239
240     <!-- other utf8 targets -->
241     <route id="utf8">
242       <filter refid="utf8-records"/>
243       <filter type="z3950_client"/>
244       <filter type="bounce"/>
245     </route>
246
247   </routes>
248 </metaproxy>
249