Version 1.3.8
[metaproxy-moved-to-github.git] / etc / jstor-pz2.xsl
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3     Converts JSTORs info:srw/schema/srw_jstor records to
4     Pazpar2 records.
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:jstor="http://dfr.jstor.org/sru/elements/1.1">
11
12   <xsl:output indent="yes"
13               method="xml"
14               version="1.0"
15               encoding="UTF-8"/>
16   
17   <xsl:template match="/*">
18     <pz:record>
19
20       <xsl:for-each select="jstor:author">
21         <pz:metadata type="author">
22           <xsl:value-of select='.'/>
23         </pz:metadata>
24       </xsl:for-each>
25
26       <!-- jstor:stringDate -->
27
28       <xsl:for-each select="jstor:year">
29         <xsl:if test='contains(.,"YEAR:")'>
30           <pz:metadata type="date">
31             <xsl:value-of select='substring-after(.,":")'/>
32           </pz:metadata>
33         </xsl:if>
34       </xsl:for-each>
35
36       <xsl:for-each select="jstor:abstract">
37         <pz:metadata type="description">
38           <xsl:value-of select='.'/>
39         </pz:metadata>
40       </xsl:for-each>
41
42       <!-- jstor:id -->
43
44       <xsl:for-each select="jstor:issn">
45         <pz:metadata type="issn">
46           <xsl:value-of select='.'/>
47         </pz:metadata>
48       </xsl:for-each>
49
50       <!-- haven't seen this one, actually -->
51       <xsl:for-each select="jstor:isbn">
52         <pz:metadata type="isbn">
53           <xsl:value-of select='.'/>
54         </pz:metadata>
55       </xsl:for-each>
56
57       <!-- jstor:lang -->
58
59       <xsl:for-each select="jstor:publisher">
60         <pz:metadata type="publisher">
61           <xsl:value-of select='.'/>
62         </pz:metadata>
63       </xsl:for-each>
64
65       <xsl:for-each select="jstor:topics">
66         <pz:metadata type="subject">
67           <xsl:value-of select='.'/>
68         </pz:metadata>
69       </xsl:for-each>
70
71       <!-- jstor:disipline -->
72
73       <xsl:for-each select="jstor:title">
74         <pz:metadata type="title">
75           <xsl:value-of select='.'/>
76         </pz:metadata>
77       </xsl:for-each>
78
79       <xsl:for-each select="jstor:journaltitle">
80         <pz:metadata type="journal-title">
81           <xsl:value-of select='.'/>
82         </pz:metadata>
83       </xsl:for-each>
84
85       <xsl:for-each select="jstor:volume">
86         <pz:metadata type="volume-number">
87           <xsl:value-of select='.'/>
88         </pz:metadata>
89       </xsl:for-each>
90
91       <xsl:for-each select="jstor:issue">
92         <pz:metadata type="issue-number">
93           <xsl:value-of select='.'/>
94         </pz:metadata>
95       </xsl:for-each>
96
97       <!-- jstor:pagerange -->
98       
99       <!-- jstor:resourcetype -->
100
101       <!-- jstor:type -->
102
103     </pz:record>
104   </xsl:template>
105
106   <xsl:template match="text()"/>
107
108 </xsl:stylesheet>