zoom: new config element passthru
[metaproxy-moved-to-github.git] / etc / config-zoom.xml
1 <?xml version="1.0"?>
2 <metaproxy xmlns="http://indexdata.com/metaproxy" version="1.0">
3   <start route="start"/>
4   <filters>
5     <filter id="frontend" type="frontend_net">
6       <threads>10</threads>
7       <port>@:9000</port>
8       <message>FN</message>
9     </filter>
10     <filter id="backend" type="zoom">
11       <torus
12             url="http://usi.indexdata.com/torus2/searchable.%realm/records/?query=%query"
13             realm="production"
14             xsldir="."
15             element_transform="pz2"
16             element_raw="raw"
17             element_passthru="F"
18             explain_xsl="torus2zeerex.xsl"
19             record_xsl="pz2dc.xsl"
20             >
21
22         <!--
23         http://usi.indexdata.com/torus2/admin.admin/records/?query=userName==test+and+password==test
24         -->
25
26
27         <!-- these records are examples only -->
28         <records>
29
30           <!-- local z-target and content connector -->
31           <record>
32             <piggyback>1</piggyback>
33             <queryEncoding>UTF-8</queryEncoding>
34             <udb>z-local</udb>
35             <cclmap_term>1=1016 s=al</cclmap_term>
36             <cclmap_ti>1=4 s=pw t=l,r</cclmap_ti>
37             <requestSyntax>usmarc</requestSyntax>
38             <transform>tmarc.xsl</transform>
39             <urlRecipe>http://sever.com?title=${md-title[\s+/+/g]}&amp;parm=1</urlRecipe>
40             <zurl>localhost:9998/Default</zurl>
41           </record>
42           <record>
43             <udb>heikki/content1</udb>
44             <zurl>localhost:9999/heikki/content1</zurl>
45             <cfAuth>cfuser/cfpassword</cfAuth>
46           </record>
47
48           <!-- sru local connector -->
49           <record>
50             <piggyback>1</piggyback>
51             <queryEncoding>UTF-8</queryEncoding>
52             <udb>sru-local</udb>
53             <cclmap_term>s=al</cclmap_term>
54             <cclmap_ti>1=title s=pw t=l,r</cclmap_ti>
55             <sru>get</sru>
56             <sruVersion>1.1</sruVersion>
57             <transform>tmarc.xsl</transform>
58             <zurl>localhost:9998/db01</zurl>
59             <sortStrategy>embed</sortStrategy>
60             <sortmap_title>dc.title</sortmap_title>
61             <rpn2cql>pqf.properties</rpn2cql>
62           </record>
63
64           <!-- jstor1 -->
65           <record>
66             <piggyback>1</piggyback>
67             <queryEncoding>UTF-8</queryEncoding>
68             <udb>jstor1</udb>
69             <cclmap_term>s=al</cclmap_term>
70             <cclmap_ti>1=title s=pw t=l,r</cclmap_ti>
71             <sru>get</sru>
72             <transform>dc.xsl</transform>
73             <literalTransform>&lt;?xml version="1.0" encoding="UTF-8"?>
74 &lt;!--
75
76     This stylesheet expects oai/dc records
77 -->
78 &lt;xsl:stylesheet
79     version="1.0"
80     xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
81     xmlns:pz="http://www.indexdata.com/pazpar2/1.0"
82     xmlns:dc="http://purl.org/dc/elements/1.1/"
83     xmlns:dcterms="http://purl.org/dc/terms/">
84
85  &lt;xsl:output indent="yes"
86         method="xml"
87         version="1.0"
88         encoding="UTF-8"/>
89
90   &lt;xsl:param name="medium" />
91
92   &lt;xsl:template match="/*">
93     &lt;pz:record>
94
95       &lt;pz:metadata type="id">
96         &lt;xsl:value-of select="dc:identifier"/>
97       &lt;/pz:metadata>
98
99       &lt;xsl:for-each select="dc:title">
100         &lt;pz:metadata type="title">
101           &lt;xsl:value-of select="."/>
102         &lt;/pz:metadata>
103       &lt;/xsl:for-each>
104
105       &lt;xsl:for-each select="dc:date">
106         &lt;pz:metadata type="date">
107           &lt;xsl:value-of select="."/>
108               &lt;/pz:metadata>
109       &lt;/xsl:for-each>
110
111       &lt;xsl:for-each select="dc:subject">
112         &lt;pz:metadata type="subject">
113                 &lt;xsl:value-of select="."/>
114               &lt;/pz:metadata>
115       &lt;/xsl:for-each>
116
117       &lt;xsl:for-each select="dc:creator">
118               &lt;pz:metadata type="author">
119           &lt;xsl:value-of select="."/>
120               &lt;/pz:metadata>
121       &lt;/xsl:for-each>
122
123       &lt;xsl:for-each select="dc:description">
124         &lt;pz:metadata type="description">
125                 &lt;xsl:value-of select="."/>
126               &lt;/pz:metadata>
127       &lt;/xsl:for-each>
128
129       &lt;xsl:for-each select="dc:identifier">
130         &lt;pz:metadata type="electronic-url">
131                 &lt;xsl:value-of select="."/>
132               &lt;/pz:metadata>
133       &lt;/xsl:for-each>
134
135       &lt;xsl:for-each select="dc:type">
136         &lt;pz:metadata type="medium">
137                 &lt;xsl:value-of select="."/>
138               &lt;/pz:metadata>
139       &lt;/xsl:for-each>
140
141       &lt;xsl:for-each select="dcterms:bibliographicCitation">
142         &lt;pz:metadata type="citation">
143           &lt;xsl:value-of select="."/>
144         &lt;/pz:metadata>
145       &lt;/xsl:for-each>
146
147       &lt;pz:metadata type="medium">
148         &lt;xsl:value-of select="$medium" />
149       &lt;/pz:metadata>
150
151     &lt;/pz:record>
152   &lt;/xsl:template>
153
154   &lt;xsl:template match="text()"/>
155
156 &lt;/xsl:stylesheet></literalTransform>
157             <zurl>dfr.jstor.org/sru</zurl>
158           </record>
159
160           <!-- jstor2 -->
161           <record>
162             <piggyback>1</piggyback>
163             <queryEncoding>UTF-8</queryEncoding>
164             <udb>jstor2</udb>
165             <cclmap_term>s=al</cclmap_term>
166             <cclmap_ti>1=title s=pw t=l,r</cclmap_ti>
167             <elementSet>info:srw/schema/srw_jstor</elementSet>
168             <sru>get</sru>
169             <transform>jstor-pz2.xsl</transform>
170             <zurl>dfr.jstor.org/sru</zurl>
171           </record>
172
173
174           <!-- cf connector -->
175           <record>
176             <piggyback>1</piggyback>
177             <queryEncoding>UTF-8</queryEncoding>
178             <udb>cf-local</udb>
179             <cclmap_term>1=1016 s=al</cclmap_term>
180             <cclmap_ti>1=4 s=pw t=l,r</cclmap_ti>
181             <requestSyntax>xml</requestSyntax>
182             <transform>cf.xsl</transform>
183             <zurl>localhost:9999/db01</zurl>
184             <cfAuth>cfuser/cfpassword</cfAuth>
185             <cfProxy>localhost:3128</cfProxy>
186             <cfSubDB>mysub</cfSubDB>
187           </record>
188         </records>
189       </torus>
190       <fieldmap cql="cql.anywhere"/>
191       <fieldmap cql="cql.serverChoice"/>
192       <fieldmap cql="dc.creator" ccl="au"/>
193       <fieldmap cql="dc.title" ccl="ti"/>
194       <fieldmap cql="dc.subject" ccl="su"/>
195       <fieldmap cql="bath.isbn" ccl="isbn"/>
196       <fieldmap cql="bath.issn" ccl="issn"/>
197       <fieldmap cql="dc.date" ccl="date"/>
198       <cclmap>
199         <qual name="ocn">
200           <attr type="1" value="12"/>
201         </qual>
202       </cclmap>
203       <contentProxy
204          config_file="/etc/cf-proxy/cproxy.cfg"
205       />
206       <log apdu="false"/>
207       <zoom timeout="20" proxy_timeout="1"/>
208     </filter>
209   </filters>
210   <routes>
211     <route id="start">
212       <filter refid="frontend"/>
213       <filter type="sru_z3950"/>
214 <!--
215       <filter type="session_shared">
216         <resultset ttl="0" restart="false"/>
217         <session ttl="60" max="100"/>
218       </filter>
219 -->
220       <filter type="log">
221         <message>B</message>
222         <category apdu="false" session="true"/>
223       </filter>
224       <filter refid="backend"/>
225       <filter type="bounce"/>
226     </route>
227   </routes>
228 </metaproxy>
229