<xsl:variable name="medium">
<xsl:choose>
<xsl:when test="$title_medium">
- <xsl:value-of select="substring-after(substring-before($title_medium,']'),'[')"/>
+ <xsl:value-of select="translate($title_medium, ' []/', '')"/>
</xsl:when>
<xsl:when test="$fulltext_a">
<xsl:text>electronic resource</xsl:text>
</xsl:variable>
<pz:record>
- <xsl:attribute name="mergekey">
- <xsl:text>title </xsl:text>
- <xsl:value-of select="marc:datafield[@tag='245']/marc:subfield[@code='a']"/>
- <xsl:text> author </xsl:text>
- <xsl:value-of select="marc:datafield[@tag='100']/marc:subfield[@code='a']"/>
- <xsl:text> medium </xsl:text>
- <xsl:value-of select="$medium"/>
- </xsl:attribute>
-
<xsl:for-each select="marc:controlfield[@tag='001']">
<pz:metadata type="id">
<xsl:for-each select="marc:datafield[@tag='035']">
<pz:metadata type="system-control-nr">
- <xsl:value-of select="marc:subfield[@code='a']"/>
+ <xsl:choose>
+ <xsl:when test="marc:subfield[@code='a']">
+ <xsl:value-of select="marc:subfield[@code='a']"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="marc:subfield[@code='b']"/>
+ </xsl:otherwise>
+ </xsl:choose>
</pz:metadata>
</xsl:for-each>
<pz:metadata type="electronic-note">
<xsl:value-of select="marc:subfield[@code='z']"/>
</pz:metadata>
+ <pz:metadata type="electronic-format-instruction">
+ <xsl:value-of select="marc:subfield[@code='i']"/>
+ </pz:metadata>
+ <pz:metadata type="electronic-format-type">
+ <xsl:value-of select="marc:subfield[@code='q']"/>
+ </pz:metadata>
</xsl:for-each>
<xsl:for-each select="marc:datafield[@tag='773']">
- <pz:metadata type="citation">
- <xsl:for-each select="*">
- <xsl:value-of select="normalize-space(.)"/>
- <xsl:text> </xsl:text>
- </xsl:for-each>
- </pz:metadata>
+ <pz:metadata type="citation">
+ <xsl:for-each select="*">
+ <xsl:value-of select="normalize-space(.)"/>
+ <xsl:text> </xsl:text>
+ </xsl:for-each>
+ </pz:metadata>
+ <xsl:if test="marc:subfield[@code='t']">
+ <pz:metadata type="journal-title">
+ <xsl:value-of select="marc:subfield[@code='t']"/>
+ </pz:metadata>
+ </xsl:if>
+ <xsl:if test="marc:subfield[@code='g']">
+ <pz:metadata type="journal-subpart">
+ <xsl:value-of select="marc:subfield[@code='g']"/>
+ </pz:metadata>
+ </xsl:if>
</xsl:for-each>
<xsl:for-each select="marc:datafield[@tag='852']">