c0ebb03cf08894d64723e7adf55cd233dc1897a0
[pazpar2-moved-to-github.git] / etc / dkabm.xsl
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3     This stylesheet expects dkabm collection records as returned
4     from DBC's OpenSearch service.
5 -->
6 <xsl:stylesheet
7     version="1.0"
8     xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
9     xmlns:pz="http://www.indexdata.com/pazpar2/1.0"
10     xmlns:dc="http://purl.org/dc/elements/1.1/"
11     xmlns:dcterms="http://purl.org/dc/terms/"
12     xmlns:dkabm="http://biblstandard.dk/abm/namespace/dkabm/">
13
14  <xsl:output indent="yes"
15         method="xml"
16         version="1.0"
17         encoding="UTF-8"/>
18
19   <xsl:param name="medium" />
20
21   <xsl:template match="/">
22     <pz:cluster>
23       <xsl:apply-templates/>
24     </pz:cluster>
25   </xsl:template>
26
27   <xsl:template match="dkabm:record">
28     <pz:record>
29
30       <pz:metadata type="id">
31         <xsl:value-of select="dc:identifier"/>
32       </pz:metadata>
33
34       <xsl:for-each select="dc:title">
35         <pz:metadata type="title">
36           <xsl:value-of select="."/>
37         </pz:metadata>
38       </xsl:for-each>
39
40       <xsl:for-each select="dc:date">
41         <pz:metadata type="date">
42           <xsl:value-of select="."/>
43               </pz:metadata>
44       </xsl:for-each>
45
46       <xsl:for-each select="dc:subject">
47         <pz:metadata type="subject">
48                 <xsl:value-of select="."/>
49               </pz:metadata>
50       </xsl:for-each>
51
52       <xsl:for-each select="dc:creator">
53               <pz:metadata type="author">
54           <xsl:value-of select="."/>
55               </pz:metadata>
56       </xsl:for-each>
57
58       <xsl:for-each select="dc:description">
59         <pz:metadata type="description">
60                 <xsl:value-of select="."/>
61               </pz:metadata>
62       </xsl:for-each>
63
64       <xsl:for-each select="dc:identifier">
65         <pz:metadata type="electronic-url">
66                 <xsl:value-of select="."/>
67               </pz:metadata>
68       </xsl:for-each>
69
70       <xsl:for-each select="dc:type">
71         <pz:metadata type="medium">
72                 <xsl:value-of select="."/>
73               </pz:metadata>
74       </xsl:for-each>
75
76       <xsl:for-each select="dcterms:bibliographicCitation">
77         <pz:metadata type="citation">
78           <xsl:value-of select="."/>
79         </pz:metadata>
80       </xsl:for-each>
81
82       <pz:metadata type="medium">
83         <xsl:value-of select="$medium" />
84       </pz:metadata>
85
86     </pz:record>
87   </xsl:template>
88
89   <xsl:template match="text()"/>
90
91 </xsl:stylesheet>