Add pazpar2 to usi xsl
[metaproxy-moved-to-github.git] / xml / xslt / pz22usi.xsl
1 <?xml version="1.0" encoding="UTF-8"?>
2 <xsl:stylesheet version="1.0" 
3                 xmlns="http://www.loc.gov/mods/v3"
4                 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
5                 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
6                 xmlns:id="http://indexdata.com/xml/modsExtension/"
7                 xmlns:pz="http://www.indexdata.com/pazpar2/1.0"
8                 x-exclude-result-prefixes="mods">
9   <xsl:output method="xml" indent="yes" />
10   <!-- <xsl:template match="text()"/> -->
11
12   <xsl:template match="/pz:record">
13       <mods version="3.4"
14           xsi:schemaLocation="http://www.loc.gov/mods/v3
15                               http://www.loc.gov/standards/mods/v3/mods-3-4.xsd">
16       <originInfo>
17         <dateIssued><xsl:value-of select="normalize-space(pz:metadata[@type='date'])"/></dateIssued>
18         <publisher>$PUBLISHER</publisher>
19         <issuance>$PUBTYPE/$DOCTYPE</issuance>
20       </originInfo>
21       <location>
22         <url usage="primary"><xsl:value-of select="pz:metadata[@type='electronic-url']"/></url>
23         <url access="preview">$THUMBURL</url>
24       </location>
25       <titleInfo>
26         <title><xsl:value-of select="pz:metadata[@type='title']"/></title>
27       </titleInfo>
28       <xsl:for-each select="pz:metadata[@type='author']">
29         <name type="personal">
30           <displayForm>
31             <xsl:value-of select="."/>
32           </displayForm>
33           <role>
34             <roleTerm type="text">author</roleTerm>
35           </role>
36         </name>
37       </xsl:for-each>
38       <abstract type="description">$DESCRIPTION</abstract>
39       <subject>
40         <topic>$SUBJECT</topic>
41       </subject>
42       <id:relevance>$RELEVANCE</id:relevance>
43       <!-- <location> is repeatable for multiple holdings -->
44       <location>
45         <holdingSimple>
46           <copyInformation>
47             <subLocation>$LOCATION</subLocation>
48             <shelfLocator>$CALLNO</shelfLocator>
49             <id:circ>
50               <id:available>$AVAILABLE</id:available>
51               <id:due>$DUE</id:due>
52             </id:circ>
53           </copyInformation>
54         </holdingSimple>
55       </location>
56       <relatedItem type="host">
57         <titleInfo>
58           <title><xsl:value-of select="pz:metadata[@type='journal-title']"/></title>
59           <!-- or -->
60           <title>$BOOKTITLE</title>
61         </titleInfo>
62         <part>
63           <detail type="volume">
64             <number><xsl:value-of select="pz:metadata[@type='volume']"/></number>
65           </detail>
66           <detail type="issue">
67             <number>$ISSUE</number>
68           </detail>
69           <extent unit="pages">
70             <start>$STARTPAGE</start>
71             <end>$ENDPAGE</end>
72           </extent>
73         </part>
74       </relatedItem>
75       <physicalDescription>
76         <form>$MEDIUM</form>
77         <internetMediaType>$FORMAT</internetMediaType>
78         <extent>$EXTENT</extent>
79       </physicalDescription>
80       <id:citation>$CITATION</id:citation>
81       <identifier type="issn">$ISSN</identifier>
82       <identifier type="isbn">$ISBN</identifier>
83       <identifier>$ID</identifier>
84       <accessCondition type="copyright">$COPYRIGHT</accessCondition>
85       <accessCondition type="copyrightabstract">$COPYRIGHTABSTRACT</accessCondition>
86       <language usage="primary">
87         <languageTerm type="text">$LANGUAGEITEM</languageTerm>
88       </language>
89       <language objectPart="summary">
90         <languageTerm type="text">$LANGUAGEABSTRACT</languageTerm>
91       </language>
92     </mods>
93   </xsl:template>
94 </xsl:stylesheet>