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