Bugzilla – Attachment 31428 Details for
Bug 11232
Retrieve facets from Zebra
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 11232: UNIMARC facet definition and updated XSL file for DOM
Bug-11232-UNIMARC-facet-definition-and-updated-XSL.patch (text/plain), 10.70 KB, created by
Tomás Cohen Arazi (tcohen)
on 2014-09-06 15:21:20 UTC
(
hide
)
Description:
Bug 11232: UNIMARC facet definition and updated XSL file for DOM
Filename:
MIME Type:
Creator:
Tomás Cohen Arazi (tcohen)
Created:
2014-09-06 15:21:20 UTC
Size:
10.70 KB
patch
obsolete
>From 222c1ed372e20ef128a6a2afa0162532cbcbc49a Mon Sep 17 00:00:00 2001 >From: Tomas Cohen Arazi <tomascohen@gmail.com> >Date: Thu, 4 Sep 2014 13:12:52 -0300 >Subject: [PATCH] Bug 11232: UNIMARC facet definition and updated XSL file for > DOM > >This patch adds the facets definitions to the biblio-koha-indexdefs.xml, based >on what is hardcoded on C4::Koha::getFacets(). > >The biblio-zebra-indexdefs.xsl file for UNIMARC is generated using the usual: > >xsltproc ...koha-indexdefs-to-zebra.xsl ...unimarc/biblios/biblio-koha-indexdefs.xml > \ > ...unimarc/biblios/biblio-zebra-indexdefs.xsl > >Sponsored-by: Universidad Nacional de Cordoba >--- > .../unimarc/biblios/biblio-koha-indexdefs.xml | 56 ++++++++ > .../unimarc/biblios/biblio-zebra-indexdefs.xsl | 158 ++++++++++++++++++++- > 2 files changed, 212 insertions(+), 2 deletions(-) > >diff --git a/etc/zebradb/marc_defs/unimarc/biblios/biblio-koha-indexdefs.xml b/etc/zebradb/marc_defs/unimarc/biblios/biblio-koha-indexdefs.xml >index aeeacc5..d0f7e46 100644 >--- a/etc/zebradb/marc_defs/unimarc/biblios/biblio-koha-indexdefs.xml >+++ b/etc/zebradb/marc_defs/unimarc/biblios/biblio-koha-indexdefs.xml >@@ -1429,4 +1429,60 @@ > <target_index>totalissues:n</target_index> > <target_index>totalissues:s</target_index> > </index_subfields> >+ >+ <facet tag="225" subfields="a"> >+ <target_index>se:0</target_index> >+ </facet> >+ <facet tag="500" subfields="a"> >+ <target_index>su-ut:0</target_index> >+ </facet> >+ <facet tag="501" subfields="a"> >+ <target_index>su-ut:0</target_index> >+ </facet> >+ <facet tag="503" subfields="a"> >+ <target_index>su-ut:0</target_index> >+ </facet> >+ <facet tag="600" subfields="ab"> >+ <target_index>su-to:0</target_index> >+ </facet> >+ <facet tag="601" subfields="ab"> >+ <target_index>su-to:0</target_index> >+ </facet> >+ <facet tag="602" subfields="a"> >+ <target_index>su-to:0</target_index> >+ </facet> >+ <facet tag="604" subfields="at"> >+ <target_index>su-to:0</target_index> >+ </facet> >+ <facet tag="605" subfields="a"> >+ <target_index>su-to:0</target_index> >+ </facet> >+ <facet tag="606" subfields="ax"> >+ <target_index>su-to:0</target_index> >+ </facet> >+ <facet tag="607" subfields="a"> >+ <target_index>su-geo:0</target_index> >+ </facet> >+ <facet tag="610" subfields="a"> >+ <target_index>su-to:0</target_index> >+ </facet> >+ <facet tag="700" subfields="ab"> >+ <target_index>au:0</target_index> >+ </facet> >+ <facet tag="701" subfields="ab"> >+ <target_index>au:0</target_index> >+ </facet> >+ <facet tag="702" subfields="ab"> >+ <target_index>au:0</target_index> >+ </facet> >+ <facet tag="995" subfields="a"> >+ <target_index>homebranch:0</target_index> >+ </facet> >+ <facet tag="995" subfields="b"> >+ <target_index>holdingbranch:0</target_index> >+ </facet> >+ <facet tag="995" subfields="e"> >+ <target_index>location:0</target_index> >+ </facet> >+ > </kohaidx:index_defs> >diff --git a/etc/zebradb/marc_defs/unimarc/biblios/biblio-zebra-indexdefs.xsl b/etc/zebradb/marc_defs/unimarc/biblios/biblio-zebra-indexdefs.xsl >index 46f106d..b00538c 100644 >--- a/etc/zebradb/marc_defs/unimarc/biblios/biblio-zebra-indexdefs.xsl >+++ b/etc/zebradb/marc_defs/unimarc/biblios/biblio-zebra-indexdefs.xsl >@@ -12,6 +12,7 @@ definition file (probably something like {biblio,authority}-koha-indexdefs.xml) > <xslo:template match="text()"/> > <xslo:template match="text()" mode="index_subfields"/> > <xslo:template match="text()" mode="index_data_field"/> >+ <xslo:template match="text()" mode="index_facets"/> > <xslo:template match="text()" mode="index_heading"/> > <xslo:template match="text()" mode="index_heading_conditional"/> > <xslo:template match="text()" mode="index_match_heading"/> >@@ -35,6 +36,7 @@ definition file (probably something like {biblio,authority}-koha-indexdefs.xml) > <xslo:apply-templates/> > <xslo:apply-templates mode="index_subfields"/> > <xslo:apply-templates mode="index_data_field"/> >+ <xslo:apply-templates mode="index_facets"/> > <xslo:apply-templates mode="index_heading"/> > <xslo:apply-templates mode="index_heading_conditional"/> > <xslo:apply-templates mode="index_match_heading"/> >@@ -436,8 +438,6 @@ definition file (probably something like {biblio,authority}-koha-indexdefs.xml) > </z:index> > </xslo:if> > </xslo:for-each> >- </xslo:template> >- <xslo:template mode="index_subfields" match="marc:datafield[@tag='101']"> > <xslo:for-each select="marc:subfield"> > <xslo:if test="contains('c', @code)"> > <z:index name="language-original:w"> >@@ -2500,6 +2500,160 @@ definition file (probably something like {biblio,authority}-koha-indexdefs.xml) > <xslo:value-of select="normalize-space($raw_heading)"/> > </z:index> > </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='225']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="se:0"> >+ <xslo:value-of select="marc:subfield[@code='a']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='500']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="su-ut:0"> >+ <xslo:value-of select="marc:subfield[@code='a']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='501']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="su-ut:0"> >+ <xslo:value-of select="marc:subfield[@code='a']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='503']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="su-ut:0"> >+ <xslo:value-of select="marc:subfield[@code='a']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='600']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="su-to:0"> >+ <xslo:value-of select="marc:subfield[@code='a']"/> >+ <xslo:if test="marc:subfield[@code='a'] and marc:subfield[@code='b']"> >+ <xslo:text>::*::</xslo:text> >+ </xslo:if> >+ <xslo:value-of select="marc:subfield[@code='b']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='601']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="su-to:0"> >+ <xslo:value-of select="marc:subfield[@code='a']"/> >+ <xslo:if test="marc:subfield[@code='a'] and marc:subfield[@code='b']"> >+ <xslo:text>::*::</xslo:text> >+ </xslo:if> >+ <xslo:value-of select="marc:subfield[@code='b']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='602']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="su-to:0"> >+ <xslo:value-of select="marc:subfield[@code='a']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='604']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="su-to:0"> >+ <xslo:value-of select="marc:subfield[@code='a']"/> >+ <xslo:if test="marc:subfield[@code='a'] and marc:subfield[@code='t']"> >+ <xslo:text>::*::</xslo:text> >+ </xslo:if> >+ <xslo:value-of select="marc:subfield[@code='t']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='605']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="su-to:0"> >+ <xslo:value-of select="marc:subfield[@code='a']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='606']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="su-to:0"> >+ <xslo:value-of select="marc:subfield[@code='a']"/> >+ <xslo:if test="marc:subfield[@code='a'] and marc:subfield[@code='x']"> >+ <xslo:text>::*::</xslo:text> >+ </xslo:if> >+ <xslo:value-of select="marc:subfield[@code='x']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='607']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="su-geo:0"> >+ <xslo:value-of select="marc:subfield[@code='a']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='610']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="su-to:0"> >+ <xslo:value-of select="marc:subfield[@code='a']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='700']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="au:0"> >+ <xslo:value-of select="marc:subfield[@code='a']"/> >+ <xslo:if test="marc:subfield[@code='a'] and marc:subfield[@code='b']"> >+ <xslo:text>::*::</xslo:text> >+ </xslo:if> >+ <xslo:value-of select="marc:subfield[@code='b']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='701']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="au:0"> >+ <xslo:value-of select="marc:subfield[@code='a']"/> >+ <xslo:if test="marc:subfield[@code='a'] and marc:subfield[@code='b']"> >+ <xslo:text>::*::</xslo:text> >+ </xslo:if> >+ <xslo:value-of select="marc:subfield[@code='b']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='702']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="au:0"> >+ <xslo:value-of select="marc:subfield[@code='a']"/> >+ <xslo:if test="marc:subfield[@code='a'] and marc:subfield[@code='b']"> >+ <xslo:text>::*::</xslo:text> >+ </xslo:if> >+ <xslo:value-of select="marc:subfield[@code='b']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='995']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="homebranch:0"> >+ <xslo:value-of select="marc:subfield[@code='a']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='995']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="holdingbranch:0"> >+ <xslo:value-of select="marc:subfield[@code='b']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> >+ <xslo:template mode="index_facets" match="marc:datafield[@tag='995']"> >+ <xslo:if test="not(@ind1='z')"> >+ <z:index name="location:0"> >+ <xslo:value-of select="marc:subfield[@code='e']"/> >+ </z:index> >+ </xslo:if> >+ </xslo:template> > <xslo:template mode="index_all" match="text()"> > <z:index name="Any:w Any:p"> > <xslo:value-of select="."/> >-- >1.9.1
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 11232
:
26911
|
31426
|
31427
|
31428
|
31429
|
31430
|
31431
|
31432
|
31433
|
31434
|
31435
|
31436
|
31455
|
31456
|
31457
|
31458
|
31459
|
31460
|
31781
|
31782
|
31783
|
31784
|
31785
|
31786
|
31795
|
31796
|
31797
|
31798
|
31799
|
31800
|
32152
|
32153
|
32154
|
32155
|
32156
|
32157
|
32330
|
32331
|
32350
|
32352
|
32353
|
32354
|
32355
|
32356
|
32357
|
32358
|
32359
|
32360