Merge branch 'master' of ssh://git.indexdata.com:222/home/git/pub/pazpar2
[pazpar2-moved-to-github.git] / etc / cf.xsl
index 65ad69e..fc18204 100644 (file)
         version="1.0"
         encoding="UTF-8"/>
 
+  <xsl:param name="medium" />
+
   <xsl:template match="/record">
     <pz:record>
+      <pz:metadata type="medium">
+         <xsl:value-of select="$medium" />
+      </pz:metadata>
       <xsl:apply-templates/>
     </pz:record>
   </xsl:template>
@@ -30,6 +35,9 @@
     <pz:metadata type="publication-date">
       <xsl:value-of select="."/>
     </pz:metadata>
+    <pz:metadata type="date">
+      <xsl:value-of select="."/>
+    </pz:metadata>
   </xsl:template>
 
   <xsl:template match="url">
@@ -42,6 +50,9 @@
     <pz:metadata type="title">
       <xsl:value-of select="."/>
     </pz:metadata>
+    <pz:metadata type="title-complete">
+      <xsl:value-of select="." />
+    </pz:metadata>
   </xsl:template>
 
   <xsl:template match="author">
     </pz:metadata>
   </xsl:template>
 
-  <xsl:template match="available">
-    <pz:metadata type="available">
+  <xsl:template match="isbn">
+    <pz:metadata type="isbn">
+      <xsl:value-of select="."/>
+    </pz:metadata>
+  </xsl:template>
+
+  <xsl:template match="issn">
+    <pz:metadata type="issn">
+      <xsl:value-of select="."/>
+    </pz:metadata>
+  </xsl:template>
+
+  <xsl:template match="journaltitle">
+    <pz:metadata type="journal-title">
+      <xsl:value-of select="."/>
+    </pz:metadata>
+  </xsl:template>
+
+  <xsl:template match="volume">
+    <pz:metadata type="volume">
+      <xsl:value-of select="."/>
+    </pz:metadata>
+  </xsl:template>
+
+  <xsl:template match="issue">
+    <pz:metadata type="issue">
       <xsl:value-of select="."/>
     </pz:metadata>
   </xsl:template>
 
+  <xsl:template match="item">
+    <pz:metadata type="locallocation">
+      <xsl:choose>
+       <xsl:when test="string-length(location)">
+         <xsl:value-of select="location"/>
+       </xsl:when>
+       <xsl:otherwise>PAZPAR2_NULL_VALUE</xsl:otherwise>
+      </xsl:choose>
+    </pz:metadata>
+    <pz:metadata type="callnumber">
+      <xsl:choose>
+       <xsl:when test="string-length(callno)">
+         <xsl:value-of select="callno"/>
+       </xsl:when>
+       <xsl:otherwise>PAZPAR2_NULL_VALUE</xsl:otherwise>
+      </xsl:choose>
+    </pz:metadata>
+    <pz:metadata type="available">
+      <xsl:choose>
+       <xsl:when test="string-length(available)">
+         <xsl:value-of select="available"/>
+       </xsl:when>
+       <xsl:otherwise>PAZPAR2_NULL_VALUE</xsl:otherwise>
+      </xsl:choose>
+    </pz:metadata>
+    <pz:metadata type="publicnote">
+      <xsl:choose>
+       <xsl:when test="string-length(publicnote)">
+         <xsl:value-of select="publicnote"/>
+       </xsl:when>
+       <xsl:otherwise>PAZPAR2_NULL_VALUE</xsl:otherwise>
+      </xsl:choose>
+    </pz:metadata>
+  </xsl:template>
+
   <xsl:template match="due">
     <pz:metadata type="due">
       <xsl:value-of select="."/>