From 98ca7fad326a30dfb855484ab60cfd07d9e3add5 Mon Sep 17 00:00:00 2001
From: Hector Castro <hector.hecaxmmx@gmail.com>
Date: Mon, 9 Nov 2015 11:05:39 -0600
Subject: [PATCH] Bug 13642 - Add 264 field to MARC21*DC.xsl

Modify MARC21*DC.xsl to add RDA 264 field

To test:
-Copy from LOC z39.50 the Maxwell's handbook for RDA (ISBN 9780838911723)
-Look the field 264
-In datail for the record, export or save to Dublin Core (the three options)
-Open the xml generated, notice that <dc:publisher> and <dc:date> are not present
-Apply this patch
-Reload and export again
-Open the xml, you will see the tags publisher and date taken from 264
---
 koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2DC.xsl   |   14 ++++++++++++++
 .../intranet-tmpl/prog/en/xslt/MARC21slim2OAIDC.xsl      |   12 ++++++++++++
 .../intranet-tmpl/prog/en/xslt/MARC21slim2RDFDC.xsl      |   14 ++++++++++++++
 .../intranet-tmpl/prog/en/xslt/MARC21slim2SRWDC.xsl      |   12 ++++++++++++
 4 files changed, 52 insertions(+)

diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2DC.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2DC.xsl
index a9fa440..ade69de 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2DC.xsl
+++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2DC.xsl
@@ -77,6 +77,20 @@
 				</dc:date>				
 			</xsl:for-each>
 
+                        <xsl:for-each select="marc:datafield[@tag=264]">
+                                <dc:publisher>
+                                        <xsl:call-template name="subfieldSelect">
+                                                <xsl:with-param name="codes">ab</xsl:with-param>
+                                        </xsl:call-template>
+                                </dc:publisher>
+                        </xsl:for-each>
+
+                        <xsl:for-each select="marc:datafield[@tag=264]/marc:subfield[@code='c']">
+                                <dc:date>
+                                        <xsl:value-of select="."/>
+                                </dc:date>
+                        </xsl:for-each>
+
 			<dc:language>
 				<xsl:value-of select="substring($controlField008,36,3)"/>
 			</dc:language>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2OAIDC.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2OAIDC.xsl
index 291ab06..36ba41f 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2OAIDC.xsl
+++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2OAIDC.xsl
@@ -85,6 +85,18 @@
 				<xsl:value-of select="."/>
 			</dc:date>
 		</xsl:for-each>
+                <xsl:for-each select="marc:datafield[@tag=264]">
+                        <dc:publisher>
+                                <xsl:call-template name="subfieldSelect">
+                                        <xsl:with-param name="codes">ab</xsl:with-param>
+                                </xsl:call-template>
+                        </dc:publisher>
+                </xsl:for-each>
+                        <xsl:for-each select="marc:datafield[@tag=264]/marc:subfield[@code='c']">
+                                <dc:date>
+                                        <xsl:value-of select="."/>
+                                </dc:date>
+                        </xsl:for-each>
 		<dc:language>
 			<xsl:value-of select="substring($controlField008,36,3)"/>
 		</dc:language>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2RDFDC.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2RDFDC.xsl
index 32b71d5..922605b 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2RDFDC.xsl
+++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2RDFDC.xsl
@@ -72,6 +72,20 @@
 				</dc:date>				
 			</xsl:for-each>
 
+                        <xsl:for-each select="marc:datafield[@tag=264]">
+                                <dc:publisher>
+                                        <xsl:call-template name="subfieldSelect">
+                                                <xsl:with-param name="codes">ab</xsl:with-param>
+                                        </xsl:call-template>
+                                </dc:publisher>
+                        </xsl:for-each>
+
+                        <xsl:for-each select="marc:datafield[@tag=264]/marc:subfield[@code='c']">
+                                <dc:date>
+                                        <xsl:value-of select="."/>
+                                </dc:date>
+                        </xsl:for-each>
+
 			<dc:language>
 				<xsl:value-of select="substring($controlField008,36,3)"/>
 			</dc:language>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2SRWDC.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2SRWDC.xsl
index e01e38c..009d8b1 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2SRWDC.xsl
+++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2SRWDC.xsl
@@ -89,6 +89,18 @@
 				<xsl:value-of select="."/>
 			</date>
 		</xsl:for-each>
+                <xsl:for-each select="marc:datafield[@tag=264]">
+                        <publisher>
+                                <xsl:call-template name="subfieldSelect">
+                                        <xsl:with-param name="codes">ab</xsl:with-param>
+                                </xsl:call-template>
+                        </publisher>
+                </xsl:for-each>
+                <xsl:for-each select="marc:datafield[@tag=264]/marc:subfield[@code='c']">
+                        <date>
+                                <xsl:value-of select="."/>
+                        </date>
+                </xsl:for-each>
 		<xsl:if test="substring($controlField008,36,3)">
 			<language>
 				<xsl:value-of select="substring($controlField008,36,3)"/>
-- 
1.7.10.4