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