From 252c3f38c8873b6a3ed7a46db640548720c0a1e8 Mon Sep 17 00:00:00 2001
From: Winona Salesky <wsalesky@gmail.com>
Date: Wed, 16 Sep 2015 12:37:54 -0400
Subject: [PATCH] [SIGNED-OFF]Bug 14734 - Enhance 264 display in OPAC and
Staff XSLT.
Makes 264 repeatable, prefer 264 over 260. If 264/ind1=3 is present in the
record the xslt uses ind1 to determine latest 264, if no ind1=3 then all
264 fields are displayed.
Test Plan:
1) Apply this patch
2) Ensure you are using the default XSLT setting for the staff and opac record details
3) Find or create a record with multiple MARC tags 264
4) Perform a search that would show the record in the search results.
5) Review results for correct 264 display.
6) Click title to review record details.
Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Works as advertised. 260 not showed when 264 exists, tested with multiple
records. If ind1=3 is present shows the current/latest data
---
.../prog/en/xslt/MARC21slim2intranetDetail.xsl | 66 +++++++---------
.../prog/en/xslt/MARC21slim2intranetResults.xsl | 62 +++++++--------
.../intranet-tmpl/prog/en/xslt/MARC21slimUtils.xsl | 79 ++++++++-----------
.../bootstrap/en/xslt/MARC21slim2OPACDetail.xsl | 82 +++++++++-----------
.../bootstrap/en/xslt/MARC21slim2OPACResults.xsl | 58 +++++++-------
.../bootstrap/en/xslt/MARC21slimUtils.xsl | 82 +++++++++-----------
6 files changed, 193 insertions(+), 236 deletions(-)
diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl
index bda73df..8ad6047 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl
+++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl
@@ -313,43 +313,37 @@
<!-- Publisher info and RDA related info from tags 260, 264 -->
<xsl:choose>
- <xsl:when test="marc:datafield[@tag=260]">
- <span class="results_summary publisher"><span class="label">Publisher: </span>
- <xsl:for-each select="marc:datafield[@tag=260]">
- <xsl:if test="marc:subfield[@code='a']">
- <xsl:call-template name="subfieldSelect">
- <xsl:with-param name="codes">a</xsl:with-param>
- </xsl:call-template>
- </xsl:if>
- <xsl:text> </xsl:text>
- <xsl:if test="marc:subfield[@code='b']">
- <a href="/cgi-bin/koha/catalogue/search.pl?q=pb:{marc:subfield[@code='b']}">
- <xsl:call-template name="subfieldSelect">
- <xsl:with-param name="codes">b</xsl:with-param>
- </xsl:call-template>
- </a>
- </xsl:if>
- <xsl:text> </xsl:text>
- <xsl:call-template name="chopPunctuation">
- <xsl:with-param name="chopString">
- <xsl:call-template name="subfieldSelect">
- <xsl:with-param name="codes">cg</xsl:with-param>
- </xsl:call-template>
- </xsl:with-param>
- </xsl:call-template>
- <xsl:choose><xsl:when test="position()=last()"><xsl:text></xsl:text></xsl:when><xsl:otherwise><xsl:text>; </xsl:text></xsl:otherwise></xsl:choose>
- </xsl:for-each>
- <xsl:if test="marc:datafield[@tag=264]">
- <xsl:text>; </xsl:text>
+ <xsl:when test="marc:datafield[@tag=264]">
<xsl:call-template name="showRDAtag264"/>
- </xsl:if>
- </span>
- </xsl:when>
- <xsl:when test="marc:datafield[@tag=264]">
- <span class="results_summary">
- <xsl:call-template name="showRDAtag264"/>
- </span>
- </xsl:when>
+ </xsl:when>
+ <xsl:when test="marc:datafield[@tag=260]">
+ <span class="results_summary publisher"><span class="label">Publisher: </span>
+ <xsl:for-each select="marc:datafield[@tag=260]">
+ <xsl:if test="marc:subfield[@code='a']">
+ <xsl:call-template name="subfieldSelect">
+ <xsl:with-param name="codes">a</xsl:with-param>
+ </xsl:call-template>
+ </xsl:if>
+ <xsl:text> </xsl:text>
+ <xsl:if test="marc:subfield[@code='b']">
+ <a href="/cgi-bin/koha/catalogue/search.pl?q=pb:{marc:subfield[@code='b']}">
+ <xsl:call-template name="subfieldSelect">
+ <xsl:with-param name="codes">b</xsl:with-param>
+ </xsl:call-template>
+ </a>
+ </xsl:if>
+ <xsl:text> </xsl:text>
+ <xsl:call-template name="chopPunctuation">
+ <xsl:with-param name="chopString">
+ <xsl:call-template name="subfieldSelect">
+ <xsl:with-param name="codes">cg</xsl:with-param>
+ </xsl:call-template>
+ </xsl:with-param>
+ </xsl:call-template>
+ <xsl:choose><xsl:when test="position()=last()"><xsl:text></xsl:text></xsl:when><xsl:otherwise><xsl:text>; </xsl:text></xsl:otherwise></xsl:choose>
+ </xsl:for-each>
+ </span>
+ </xsl:when>
</xsl:choose>
<!-- Edition Statement: Alternate Graphic Representation (MARC 880) -->
diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetResults.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetResults.xsl
index e913ce5..51af8dd 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetResults.xsl
+++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetResults.xsl
@@ -774,41 +774,35 @@
<!-- Publisher info and RDA related info from tags 260, 264 -->
<xsl:choose>
- <xsl:when test="marc:datafield[@tag=260]">
- <span class="results_summary publisher"><span class="label">Publisher: </span>
- <xsl:for-each select="marc:datafield[@tag=260]">
- <xsl:if test="marc:subfield[@code='a']">
- <xsl:call-template name="subfieldSelect">
- <xsl:with-param name="codes">a</xsl:with-param>
- </xsl:call-template>
- </xsl:if>
- <xsl:text> </xsl:text>
- <xsl:if test="marc:subfield[@code='b']">
- <xsl:call-template name="subfieldSelect">
- <xsl:with-param name="codes">b</xsl:with-param>
- </xsl:call-template>
- </xsl:if>
- <xsl:text> </xsl:text>
- <xsl:call-template name="chopPunctuation">
- <xsl:with-param name="chopString">
- <xsl:call-template name="subfieldSelect">
- <xsl:with-param name="codes">cg</xsl:with-param>
- </xsl:call-template>
- </xsl:with-param>
- </xsl:call-template>
- <xsl:choose><xsl:when test="position()=last()"><xsl:text></xsl:text></xsl:when><xsl:otherwise><xsl:text>; </xsl:text></xsl:otherwise></xsl:choose>
- </xsl:for-each>
- <xsl:if test="marc:datafield[@tag=264]">
- <xsl:text>; </xsl:text>
- <xsl:call-template name="showRDAtag264"/>
- </xsl:if>
- </span>
- </xsl:when>
- <xsl:when test="marc:datafield[@tag=264]">
- <span class="results_summary">
+ <xsl:when test="marc:datafield[@tag=264]">
<xsl:call-template name="showRDAtag264"/>
- </span>
- </xsl:when>
+ </xsl:when>
+ <xsl:when test="marc:datafield[@tag=260]">
+ <span class="results_summary publisher"><span class="label">Publisher: </span>
+ <xsl:for-each select="marc:datafield[@tag=260]">
+ <xsl:if test="marc:subfield[@code='a']">
+ <xsl:call-template name="subfieldSelect">
+ <xsl:with-param name="codes">a</xsl:with-param>
+ </xsl:call-template>
+ </xsl:if>
+ <xsl:text> </xsl:text>
+ <xsl:if test="marc:subfield[@code='b']">
+ <xsl:call-template name="subfieldSelect">
+ <xsl:with-param name="codes">b</xsl:with-param>
+ </xsl:call-template>
+ </xsl:if>
+ <xsl:text> </xsl:text>
+ <xsl:call-template name="chopPunctuation">
+ <xsl:with-param name="chopString">
+ <xsl:call-template name="subfieldSelect">
+ <xsl:with-param name="codes">cg</xsl:with-param>
+ </xsl:call-template>
+ </xsl:with-param>
+ </xsl:call-template>
+ <xsl:choose><xsl:when test="position()=last()"><xsl:text></xsl:text></xsl:when><xsl:otherwise><xsl:text>; </xsl:text></xsl:otherwise></xsl:choose>
+ </xsl:for-each>
+ </span>
+ </xsl:when>
</xsl:choose>
<!-- Dissertation note -->
diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slimUtils.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slimUtils.xsl
index 4e799de..38d1acd 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slimUtils.xsl
+++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slimUtils.xsl
@@ -1,6 +1,6 @@
<?xml version='1.0'?>
<!DOCTYPE stylesheet [<!ENTITY nbsp " " >]>
-<xsl:stylesheet version="1.0" xmlns:marc="http://www.loc.gov/MARC21/slim" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+<xsl:stylesheet version="1.0" xmlns:marc="http://www.loc.gov/MARC21/slim" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" exclude-result-prefixes="marc">
<xsl:template name="datafield">
<xsl:param name="tag"/>
<xsl:param name="ind1"><xsl:text> </xsl:text></xsl:param>
@@ -217,60 +217,49 @@
Publisher-latest or Publisher or 'Other'-latest or 'Other'
The preferred tag is saved in the fav variable and passed to a
helper named-template -->
+ <!-- Amended to show all 264 fields (filtered by ind1=3 if ind1=3 is present in the record) -->
<xsl:choose>
- <xsl:when test="marc:datafield[@tag=264 and @ind1=3 and @ind2=1]">
- <!-- ind1==3 means latest change -->
- <!-- ind2==1 means Publisher -->
- <xsl:variable name="fav" select="marc:datafield[@tag=264 and @ind1=3 and @ind2=1][1]"/>
- <xsl:call-template name="showRDAtag264helper">
- <xsl:with-param name="field" select="$fav"/>
- </xsl:call-template>
- </xsl:when>
-
- <xsl:when test="marc:datafield[@tag=264 and @ind2=1]">
- <xsl:variable name="fav" select="marc:datafield[@tag=264 and @ind2=1][last()]"/>
- <xsl:call-template name="showRDAtag264helper">
- <xsl:with-param name="field" select="$fav"/>
- </xsl:call-template>
- </xsl:when>
-
<xsl:when test="marc:datafield[@tag=264 and @ind1=3]">
- <xsl:variable name="fav" select="marc:datafield[@tag=264 and @ind1=3][1]"/>
- <xsl:call-template name="showRDAtag264helper">
- <xsl:with-param name="field" select="$fav"/>
- </xsl:call-template>
+ <xsl:for-each select="marc:datafield[@tag=264 and @ind1=3]">
+ <xsl:call-template name="showRDAtag264helper">
+ <xsl:with-param name="field" select="."/>
+ </xsl:call-template>
+ </xsl:for-each>
</xsl:when>
-
<xsl:otherwise>
- <xsl:variable name="fav" select="marc:datafield[@tag=264][last()]"/>
- <xsl:call-template name="showRDAtag264helper">
- <xsl:with-param name="field" select="$fav"/>
- </xsl:call-template>
+ <xsl:for-each select="marc:datafield[@tag=264]">
+ <xsl:call-template name="showRDAtag264helper">
+ <xsl:with-param name="field" select="."/>
+ </xsl:call-template>
+ </xsl:for-each>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="showRDAtag264helper">
<xsl:param name="field"/>
<xsl:variable name="ind2" select="$field/@ind2"/>
- <xsl:choose>
- <xsl:when test="$ind2='0'">
- <span class="label">Producer: </span>
- </xsl:when>
- <xsl:when test="$ind2='1'">
- <span class="label">Publisher: </span>
- </xsl:when>
- <xsl:when test="$ind2='2'">
- <span class="label">Distributor: </span>
- </xsl:when>
- <xsl:when test="$ind2='3'">
- <span class="label">Manufacturer: </span>
- </xsl:when>
- </xsl:choose>
- <xsl:value-of select="$field/marc:subfield[@code='a']"/>
- <xsl:text> </xsl:text>
- <xsl:value-of select="$field/marc:subfield[@code='b']"/>
- <xsl:text> </xsl:text>
- <xsl:value-of select="$field/marc:subfield[@code='c']"/>
+ <span class="results_summary">
+ <xsl:choose>
+ <xsl:when test="$ind2='0'">
+ <span class="label">Producer: </span>
+ </xsl:when>
+ <xsl:when test="$ind2='1'">
+ <span class="label">Publisher: </span>
+ </xsl:when>
+ <xsl:when test="$ind2='2'">
+ <span class="label">Distributor: </span>
+ </xsl:when>
+ <xsl:when test="$ind2='3'">
+ <span class="label">Manufacturer: </span>
+ </xsl:when>
+ <xsl:when test="$ind2='4'">
+ <span class="label">Copyright Date: </span>
+ </xsl:when>
+ </xsl:choose>
+ <xsl:call-template name="subfieldSelect">
+ <xsl:with-param name="codes">abc</xsl:with-param>
+ </xsl:call-template>
+ </span>
</xsl:template>
</xsl:stylesheet>
diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl
index a35ef12..5f26dba 100644
--- a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl
+++ b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl
@@ -335,51 +335,45 @@
<!-- Publisher info and RDA related info from tags 260, 264 -->
<xsl:choose>
- <xsl:when test="marc:datafield[@tag=260]">
- <span class="results_summary publisher"><span class="label">Publisher: </span>
- <xsl:for-each select="marc:datafield[@tag=260]">
- <span property="publisher" typeof="Organization">
- <xsl:if test="marc:subfield[@code='a']">
- <span property="location">
- <xsl:call-template name="subfieldSelect">
- <xsl:with-param name="codes">a</xsl:with-param>
- </xsl:call-template>
- </span>
- </xsl:if>
- <xsl:text> </xsl:text>
- <xsl:if test="marc:subfield[@code='b']">
- <span property="name"><a href="/cgi-bin/koha/opac-search.pl?q=pb:{marc:subfield[@code='b']}">
- <xsl:call-template name="subfieldSelect">
- <xsl:with-param name="codes">b</xsl:with-param>
- </xsl:call-template>
- </a></span>
- </xsl:if>
- </span>
- <xsl:text> </xsl:text>
- <xsl:if test="marc:subfield[@code='c' or @code='g']">
- <span property="datePublished">
- <xsl:call-template name="chopPunctuation">
- <xsl:with-param name="chopString">
- <xsl:call-template name="subfieldSelect">
- <xsl:with-param name="codes">cg</xsl:with-param>
- </xsl:call-template>
- </xsl:with-param>
- </xsl:call-template>
- </span>
- </xsl:if>
- <xsl:choose><xsl:when test="position()=last()"><xsl:text></xsl:text></xsl:when><xsl:otherwise><xsl:text>; </xsl:text></xsl:otherwise></xsl:choose>
- </xsl:for-each>
- <xsl:if test="marc:datafield[@tag=264]">
- <xsl:text>; </xsl:text>
- <xsl:call-template name="showRDAtag264"/>
- </xsl:if>
- </span>
- </xsl:when>
- <xsl:when test="marc:datafield[@tag=264]">
- <span class="results_summary">
+ <xsl:when test="marc:datafield[@tag=264]">
<xsl:call-template name="showRDAtag264"/>
- </span>
- </xsl:when>
+ </xsl:when>
+ <xsl:when test="marc:datafield[@tag=260]">
+ <span class="results_summary publisher"><span class="label">Publisher: </span>
+ <xsl:for-each select="marc:datafield[@tag=260]">
+ <span property="publisher" typeof="Organization">
+ <xsl:if test="marc:subfield[@code='a']">
+ <span property="location">
+ <xsl:call-template name="subfieldSelect">
+ <xsl:with-param name="codes">a</xsl:with-param>
+ </xsl:call-template>
+ </span>
+ </xsl:if>
+ <xsl:text> </xsl:text>
+ <xsl:if test="marc:subfield[@code='b']">
+ <span property="name"><a href="/cgi-bin/koha/opac-search.pl?q=pb:{marc:subfield[@code='b']}">
+ <xsl:call-template name="subfieldSelect">
+ <xsl:with-param name="codes">b</xsl:with-param>
+ </xsl:call-template>
+ </a></span>
+ </xsl:if>
+ </span>
+ <xsl:text> </xsl:text>
+ <xsl:if test="marc:subfield[@code='c' or @code='g']">
+ <span property="datePublished">
+ <xsl:call-template name="chopPunctuation">
+ <xsl:with-param name="chopString">
+ <xsl:call-template name="subfieldSelect">
+ <xsl:with-param name="codes">cg</xsl:with-param>
+ </xsl:call-template>
+ </xsl:with-param>
+ </xsl:call-template>
+ </span>
+ </xsl:if>
+ <xsl:choose><xsl:when test="position()=last()"><xsl:text></xsl:text></xsl:when><xsl:otherwise><xsl:text>; </xsl:text></xsl:otherwise></xsl:choose>
+ </xsl:for-each>
+ </span>
+ </xsl:when>
</xsl:choose>
<!-- Edition Statement: Alternate Graphic Representation (MARC 880) -->
diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACResults.xsl b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACResults.xsl
index 4623dff..ddeb1ca 100644
--- a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACResults.xsl
+++ b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACResults.xsl
@@ -924,39 +924,37 @@
<!-- Publisher info and RDA related info from tags 260, 264 -->
<xsl:choose>
+ <xsl:when test="marc:datafield[@tag=264]">
+ <xsl:call-template name="showRDAtag264"/>
+ </xsl:when>
<xsl:when test="marc:datafield[@tag=260]">
- <span class="results_summary publisher"><span class="label">Publisher: </span>
- <xsl:for-each select="marc:datafield[@tag=260]">
- <xsl:if test="marc:subfield[@code='a']">
- <xsl:call-template name="subfieldSelect">
- <xsl:with-param name="codes">a</xsl:with-param>
- </xsl:call-template>
- </xsl:if>
- <xsl:text> </xsl:text>
- <xsl:if test="marc:subfield[@code='b']">
- <xsl:call-template name="subfieldSelect">
- <xsl:with-param name="codes">b</xsl:with-param>
+ <span class="results_summary publisher"><span class="label">Publisher: </span>
+ <xsl:for-each select="marc:datafield[@tag=260]">
+ <xsl:if test="marc:subfield[@code='a']">
+ <xsl:call-template name="subfieldSelect">
+ <xsl:with-param name="codes">a</xsl:with-param>
+ </xsl:call-template>
+ </xsl:if>
+ <xsl:text> </xsl:text>
+ <xsl:if test="marc:subfield[@code='b']">
+ <xsl:call-template name="subfieldSelect">
+ <xsl:with-param name="codes">b</xsl:with-param>
+ </xsl:call-template>
+ </xsl:if>
+ <xsl:text> </xsl:text>
+ <xsl:call-template name="chopPunctuation">
+ <xsl:with-param name="chopString">
+ <xsl:call-template name="subfieldSelect">
+ <xsl:with-param name="codes">cg</xsl:with-param>
+ </xsl:call-template>
+ </xsl:with-param>
</xsl:call-template>
+ <xsl:choose><xsl:when test="position()=last()"><xsl:text></xsl:text></xsl:when><xsl:otherwise><xsl:text>; </xsl:text></xsl:otherwise></xsl:choose>
+ </xsl:for-each>
+ <xsl:if test="marc:datafield[@tag=264]">
+ <xsl:text>; </xsl:text>
+ <xsl:call-template name="showRDAtag264"/>
</xsl:if>
- <xsl:text> </xsl:text>
- <xsl:call-template name="chopPunctuation">
- <xsl:with-param name="chopString">
- <xsl:call-template name="subfieldSelect">
- <xsl:with-param name="codes">cg</xsl:with-param>
- </xsl:call-template>
- </xsl:with-param>
- </xsl:call-template>
- <xsl:choose><xsl:when test="position()=last()"><xsl:text></xsl:text></xsl:when><xsl:otherwise><xsl:text>; </xsl:text></xsl:otherwise></xsl:choose>
- </xsl:for-each>
- <xsl:if test="marc:datafield[@tag=264]">
- <xsl:text>; </xsl:text>
- <xsl:call-template name="showRDAtag264"/>
- </xsl:if>
- </span>
- </xsl:when>
- <xsl:when test="marc:datafield[@tag=264]">
- <span class="results_summary">
- <xsl:call-template name="showRDAtag264"/>
</span>
</xsl:when>
</xsl:choose>
diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slimUtils.xsl b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slimUtils.xsl
index 4f7efed..bc68f37 100644
--- a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slimUtils.xsl
+++ b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slimUtils.xsl
@@ -1,6 +1,6 @@
<?xml version='1.0'?>
<!DOCTYPE stylesheet [<!ENTITY nbsp " " >]>
-<xsl:stylesheet version="1.0" xmlns:marc="http://www.loc.gov/MARC21/slim" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+<xsl:stylesheet version="1.0" xmlns:marc="http://www.loc.gov/MARC21/slim" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" exclude-result-prefixes="marc">
<xsl:template name="datafield">
<xsl:param name="tag"/>
<xsl:param name="ind1"><xsl:text> </xsl:text></xsl:param>
@@ -209,68 +209,56 @@
</xsl:template>
<xsl:template name="showRDAtag264">
- <!-- Function showRDAtag264 shows selected information from tag 264
+ <!-- Function showRDAtag264 shows selected information from tag 264
on the Publisher line (used by OPAC Detail and Results)
Depending on how many tags you have, we will pick by preference
Publisher-latest or Publisher or 'Other'-latest or 'Other'
The preferred tag is saved in the fav variable and passed to a
helper named-template -->
+ <!-- Amended to show all 264 fields (filtered by ind1=3 if ind1=3 is present in the record) -->
<xsl:choose>
- <xsl:when test="marc:datafield[@tag=264 and @ind1=3 and @ind2=1]">
- <!-- ind1==3 means latest change -->
- <!-- ind2==1 means Publisher -->
- <xsl:variable name="fav" select="marc:datafield[@tag=264 and @ind1=3 and @ind2=1][1]"/>
- <xsl:call-template name="showRDAtag264helper">
- <xsl:with-param name="field" select="$fav"/>
- </xsl:call-template>
- </xsl:when>
-
- <xsl:when test="marc:datafield[@tag=264 and @ind2=1]">
- <xsl:variable name="fav" select="marc:datafield[@tag=264 and @ind2=1][last()]"/>
- <xsl:call-template name="showRDAtag264helper">
- <xsl:with-param name="field" select="$fav"/>
- </xsl:call-template>
- </xsl:when>
-
<xsl:when test="marc:datafield[@tag=264 and @ind1=3]">
- <xsl:variable name="fav" select="marc:datafield[@tag=264 and @ind1=3][1]"/>
- <xsl:call-template name="showRDAtag264helper">
- <xsl:with-param name="field" select="$fav"/>
- </xsl:call-template>
+ <xsl:for-each select="marc:datafield[@tag=264 and @ind1=3]">
+ <xsl:call-template name="showRDAtag264helper">
+ <xsl:with-param name="field" select="."/>
+ </xsl:call-template>
+ </xsl:for-each>
</xsl:when>
-
<xsl:otherwise>
- <xsl:variable name="fav" select="marc:datafield[@tag=264][last()]"/>
- <xsl:call-template name="showRDAtag264helper">
- <xsl:with-param name="field" select="$fav"/>
- </xsl:call-template>
+ <xsl:for-each select="marc:datafield[@tag=264]">
+ <xsl:call-template name="showRDAtag264helper">
+ <xsl:with-param name="field" select="."/>
+ </xsl:call-template>
+ </xsl:for-each>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="showRDAtag264helper">
<xsl:param name="field"/>
<xsl:variable name="ind2" select="$field/@ind2"/>
- <xsl:choose>
- <xsl:when test="$ind2='0'">
- <span class="label">Producer: </span>
- </xsl:when>
- <xsl:when test="$ind2='1'">
- <span class="label">Publisher: </span>
- </xsl:when>
- <xsl:when test="$ind2='2'">
- <span class="label">Distributor: </span>
- </xsl:when>
- <xsl:when test="$ind2='3'">
- <span class="label">Manufacturer: </span>
- </xsl:when>
- </xsl:choose>
- <xsl:value-of select="$field/marc:subfield[@code='a']"/>
- <xsl:text> </xsl:text>
- <xsl:value-of select="$field/marc:subfield[@code='b']"/>
- <xsl:text> </xsl:text>
- <xsl:value-of select="$field/marc:subfield[@code='c']"/>
+ <span class="results_summary">
+ <xsl:choose>
+ <xsl:when test="$ind2='0'">
+ <span class="label">Producer: </span>
+ </xsl:when>
+ <xsl:when test="$ind2='1'">
+ <span class="label">Publisher: </span>
+ </xsl:when>
+ <xsl:when test="$ind2='2'">
+ <span class="label">Distributor: </span>
+ </xsl:when>
+ <xsl:when test="$ind2='3'">
+ <span class="label">Manufacturer: </span>
+ </xsl:when>
+ <xsl:when test="$ind2='4'">
+ <span class="label">Copyright Date: </span>
+ </xsl:when>
+ </xsl:choose>
+ <xsl:call-template name="subfieldSelect">
+ <xsl:with-param name="codes">abc</xsl:with-param>
+ </xsl:call-template>
+ </span>
</xsl:template>
-
</xsl:stylesheet>
<!-- Stylus Studio meta-information - (c)1998-2002 eXcelon Corp.
--
1.7.10.4