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