JBAS-1164 Subject browse dashes repair
authorBill Erickson <berickxx@gmail.com>
Thu, 11 Feb 2016 20:39:18 +0000 (15:39 -0500)
committerBill Erickson <berickxx@gmail.com>
Thu, 21 Mar 2019 19:46:23 +0000 (15:46 -0400)
Only add dashes before subject browse subfields v, x, y, and z.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
KCLS/sql/schema/deploy/subject-browse-entry-dashes.sql [new file with mode: 0644]
KCLS/sql/schema/revert/subject-browse-entry-dashes.sql [new file with mode: 0644]
KCLS/sql/schema/sqitch.plan
KCLS/sql/schema/verify/subject-browse-entry-dashes.sql [new file with mode: 0644]

diff --git a/KCLS/sql/schema/deploy/subject-browse-entry-dashes.sql b/KCLS/sql/schema/deploy/subject-browse-entry-dashes.sql
new file mode 100644 (file)
index 0000000..8a7e644
--- /dev/null
@@ -0,0 +1,1230 @@
+-- Deploy kcls-evergreen:subject-browse-entry-dashes to pg
+-- requires: 2.5-to-2.7-upgrade
+
+BEGIN;
+
+UPDATE config.xml_transform
+SET xslt=$$<!--
+
+KCLS index defintions stylesheet
+02/09/2016 - Modified subfieldSelectSubject to add dashes only between subject subdivisions vxyz
+07/15/2014 - Added subfieldSelectSubject to add dashes between subject subdivisions
+03/06/2013 - Added index entry for RDA publisher tag (264)
+
+-->
+<xsl:stylesheet
+  xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
+  xmlns:marc="http://www.loc.gov/MARC21/slim"
+  xmlns:index="http://kcls.org/evergreen/index"
+  version="1.0">
+  <xsl:output encoding="UTF-8" indent="yes" method="xml"/>
+
+  <xsl:template match="@*|node()">
+
+  <index:document>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">650</xsl:with-param>
+    <xsl:with-param name="search_class">subject</xsl:with-param>
+    <xsl:with-param name="index_name">topic</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcdvxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields">abcdvxyz</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">651</xsl:with-param>
+    <xsl:with-param name="search_class">subject</xsl:with-param>
+    <xsl:with-param name="index_name">geographic</xsl:with-param>
+    <xsl:with-param name="index_subfields">avxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields">avxyz</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">655</xsl:with-param>
+    <xsl:with-param name="search_class">subject</xsl:with-param>
+    <xsl:with-param name="index_name">genre</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcvxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields">abcvxyz</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">630</xsl:with-param>
+    <xsl:with-param name="search_class">subject</xsl:with-param>
+    <xsl:with-param name="index_name">uniftitle</xsl:with-param>
+    <xsl:with-param name="index_subfields">adfgklmnoprstvxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields">adfgklmnoprstvxyz</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">600</xsl:with-param>
+    <xsl:with-param name="search_class">subject</xsl:with-param>
+    <xsl:with-param name="index_name">name</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcdfgjklmnopqrstuvxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields">abcdfgjklmnopqrstuvxyz</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">610</xsl:with-param>
+    <xsl:with-param name="search_class">subject</xsl:with-param>
+    <xsl:with-param name="index_name">corpname</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcdfgklmnoprstuvxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields">abcdfgklmnoprstuvxyz</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">611</xsl:with-param>
+    <xsl:with-param name="search_class">subject</xsl:with-param>
+    <xsl:with-param name="index_name">meeting</xsl:with-param>
+    <xsl:with-param name="index_subfields">acdefgjklnpqstuvxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields">acdefgjklnpqstuvxyz</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">490</xsl:with-param>
+    <xsl:with-param name="search_class">series</xsl:with-param>
+    <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields">a</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">800</xsl:with-param>
+    <xsl:with-param name="search_class">series</xsl:with-param>
+    <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+    <xsl:with-param name="index_subfields">tflmnoprs</xsl:with-param>
+    <xsl:with-param name="facet_subfields">tflmnoprs</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">810</xsl:with-param>
+    <xsl:with-param name="search_class">series</xsl:with-param>
+    <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+    <xsl:with-param name="index_subfields">tflmnoprs</xsl:with-param>
+    <xsl:with-param name="facet_subfields">tflmnoprs</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">830</xsl:with-param>
+    <xsl:with-param name="search_class">series</xsl:with-param>
+    <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+    <xsl:with-param name="index_subfields">adfgklmnoprst</xsl:with-param>
+    <xsl:with-param name="facet_subfields">adfgklmnoprst</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">100</xsl:with-param>
+    <xsl:with-param name="search_class">author</xsl:with-param>
+    <xsl:with-param name="index_name">personal</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcdq</xsl:with-param>
+    <xsl:with-param name="facet_subfields">abcdq</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">110</xsl:with-param>
+    <xsl:with-param name="search_class">author</xsl:with-param>
+    <xsl:with-param name="index_name">corporate</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcdn</xsl:with-param>
+    <xsl:with-param name="facet_subfields">ab</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">111</xsl:with-param>
+    <xsl:with-param name="search_class">author</xsl:with-param>
+    <xsl:with-param name="index_name">meeting</xsl:with-param>
+    <xsl:with-param name="index_subfields">acdegng</xsl:with-param>
+    <xsl:with-param name="facet_subfields">acde</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">700</xsl:with-param>
+    <xsl:with-param name="search_class">author</xsl:with-param>
+    <xsl:with-param name="index_name">added_personal</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcdq</xsl:with-param>
+    <xsl:with-param name="facet_subfields">abcdq</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">710</xsl:with-param>
+    <xsl:with-param name="search_class">author</xsl:with-param>
+    <xsl:with-param name="index_name">corporate</xsl:with-param>
+    <xsl:with-param name="index_subfields">ab</xsl:with-param>
+    <xsl:with-param name="facet_subfields">ab</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">711</xsl:with-param>
+    <xsl:with-param name="search_class">author</xsl:with-param>
+    <xsl:with-param name="index_name">meeting</xsl:with-param>
+    <xsl:with-param name="index_subfields">acde</xsl:with-param>
+    <xsl:with-param name="facet_subfields">acde</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">400</xsl:with-param>
+    <xsl:with-param name="search_class">author</xsl:with-param>
+    <xsl:with-param name="index_name">added_personal</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcd</xsl:with-param>
+    <xsl:with-param name="facet_subfields">abcd</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">410</xsl:with-param>
+    <xsl:with-param name="search_class">author</xsl:with-param>
+    <xsl:with-param name="index_name">corporate</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcd</xsl:with-param>
+    <xsl:with-param name="facet_subfields">abcd</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">411</xsl:with-param>
+    <xsl:with-param name="search_class">author</xsl:with-param>
+    <xsl:with-param name="index_name">meeting</xsl:with-param>
+    <xsl:with-param name="index_subfields">acdegq</xsl:with-param>
+    <xsl:with-param name="facet_subfields">acdega</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">010</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">lccn</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">010</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">lccn</xsl:with-param>
+    <xsl:with-param name="index_subfields">z</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">020</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">isbn</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">020</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">isbn</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">020</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">isbn</xsl:with-param>
+    <xsl:with-param name="index_subfields">z</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">020</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">isbn</xsl:with-param>
+    <xsl:with-param name="index_subfields">z</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">022</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">issn</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">022</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">issn</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">022</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">issn</xsl:with-param>
+    <xsl:with-param name="index_subfields">y</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">022</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">issn</xsl:with-param>
+    <xsl:with-param name="index_subfields">y</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">022</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">issn</xsl:with-param>
+    <xsl:with-param name="index_subfields">z</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">022</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">issn</xsl:with-param>
+    <xsl:with-param name="index_subfields">z</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">024</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">upc</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">024</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">upc</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">024</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">upc</xsl:with-param>
+    <xsl:with-param name="index_subfields">z</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">024</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">upc</xsl:with-param>
+    <xsl:with-param name="index_subfields">z</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">027</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">tech_number</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">027</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">tech_number</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">027</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">tech_number</xsl:with-param>
+    <xsl:with-param name="index_subfields">z</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">027</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">tech_number</xsl:with-param>
+    <xsl:with-param name="index_subfields">z</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">028</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">tech_number</xsl:with-param>
+    <xsl:with-param name="index_subfields">ab</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">028</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">tech_number</xsl:with-param>
+    <xsl:with-param name="index_subfields">ab</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">074</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">sudoc</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">074</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">govdoc</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">074</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">sudoc</xsl:with-param>
+    <xsl:with-param name="index_subfields">z</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">074</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">govdoc</xsl:with-param>
+    <xsl:with-param name="index_subfields">z</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">086</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">sudoc</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">086</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">govdoc</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">086</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">sudoc</xsl:with-param>
+    <xsl:with-param name="index_subfields">z</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">086</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">govdoc</xsl:with-param>
+    <xsl:with-param name="index_subfields">z</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">092</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">bibcn</xsl:with-param>
+    <xsl:with-param name="index_subfields">ab</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">099</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">bibcn</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">100</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">author</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcdq</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">110</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">author</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcdn</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">111</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">author</xsl:with-param>
+    <xsl:with-param name="index_subfields">acdegnq</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">130</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">title</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">130</xsl:with-param>
+    <xsl:with-param name="search_class">title</xsl:with-param>
+    <xsl:with-param name="index_name">uniform</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">210</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">title</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">210</xsl:with-param>
+    <xsl:with-param name="search_class">title</xsl:with-param>
+    <xsl:with-param name="index_name">abbreviated</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">222</xsl:with-param>
+    <xsl:with-param name="search_class">title</xsl:with-param>
+    <xsl:with-param name="index_name">magazine</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">240</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">title</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">240</xsl:with-param>
+    <xsl:with-param name="search_class">title</xsl:with-param>
+    <xsl:with-param name="index_name">uniform</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">245</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">title</xsl:with-param>
+    <xsl:with-param name="index_subfields">abefgijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">245</xsl:with-param>
+    <xsl:with-param name="search_class">title</xsl:with-param>
+    <xsl:with-param name="index_name">proper</xsl:with-param>
+    <xsl:with-param name="index_subfields">abefgijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">245</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">author</xsl:with-param>
+    <xsl:with-param name="index_subfields">c</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">245</xsl:with-param>
+    <xsl:with-param name="search_class">author</xsl:with-param>
+    <xsl:with-param name="index_name">responsibility</xsl:with-param>
+    <xsl:with-param name="index_subfields">c</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">246</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">title</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefgjklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">246</xsl:with-param>
+    <xsl:with-param name="search_class">title</xsl:with-param>
+    <xsl:with-param name="index_name">alternative</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefgjklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">247</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">title</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">247</xsl:with-param>
+    <xsl:with-param name="search_class">title</xsl:with-param>
+    <xsl:with-param name="index_name">former</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">260</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">publisher</xsl:with-param>
+    <xsl:with-param name="index_subfields">b</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+    <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">264</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">publisher</xsl:with-param>
+    <xsl:with-param name="index_subfields">b</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">400</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">author</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcd</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">400</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">title</xsl:with-param>
+    <xsl:with-param name="index_subfields">ptv</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">400</xsl:with-param>
+    <xsl:with-param name="search_class">series</xsl:with-param>
+    <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+    <xsl:with-param name="index_subfields">ptv</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">410</xsl:with-param>
+    <xsl:with-param name="search_class">author</xsl:with-param>
+    <xsl:with-param name="index_name">corporate</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcde</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">410</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">author</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcde</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">410</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">title</xsl:with-param>
+    <xsl:with-param name="index_subfields">ptv</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">410</xsl:with-param>
+    <xsl:with-param name="search_class">series</xsl:with-param>
+    <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+    <xsl:with-param name="index_subfields">ptv</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">411</xsl:with-param>
+    <xsl:with-param name="search_class">author</xsl:with-param>
+    <xsl:with-param name="index_name">conference</xsl:with-param>
+    <xsl:with-param name="index_subfields">acdegq</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">411</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">conference</xsl:with-param>
+    <xsl:with-param name="index_subfields">acdegq</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">411</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">title</xsl:with-param>
+    <xsl:with-param name="index_subfields">ptv</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">411</xsl:with-param>
+    <xsl:with-param name="search_class">title</xsl:with-param>
+    <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+    <xsl:with-param name="index_subfields">ptv</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">440</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">title</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">440</xsl:with-param>
+    <xsl:with-param name="search_class">series</xsl:with-param>
+    <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields">abcefghijklmnopqrstuvwyz</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">490</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">title</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">490</xsl:with-param>
+    <xsl:with-param name="search_class">series</xsl:with-param>
+    <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">490</xsl:with-param>
+    <xsl:with-param name="search_class">title</xsl:with-param>
+    <xsl:with-param name="index_name">uniform</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">500</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">501</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">502</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">505</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">art</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">508</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">511</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">518</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">520</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">ab</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">522</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">533</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">af</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">534</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">af</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">545</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">ab</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">546</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">547</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">561</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">581</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">585</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">586</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">notes</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">600</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">subject</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">610</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">subject</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">611</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">subject</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">630</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">subject</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">648</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">subject</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">650</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">subject</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">651</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">subject</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">655</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">subject</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">656</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">subject</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">657</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">subject</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">658</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">fiction</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">690</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">fiction</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">691</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">fiction</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">692</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">fiction</xsl:with-param>
+    <xsl:with-param name="index_subfields">acdefgh</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">693</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">fiction</xsl:with-param>
+    <xsl:with-param name="index_subfields">acdefg</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">694</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">fiction</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">694</xsl:with-param>
+    <xsl:with-param name="search_class">series</xsl:with-param>
+    <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">695</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">fiction</xsl:with-param>
+    <xsl:with-param name="index_subfields">ab2</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">696</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">fiction</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">697</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">fiction</xsl:with-param>
+    <xsl:with-param name="index_subfields">ay</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">698</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">fiction</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">699</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">fiction</xsl:with-param>
+    <xsl:with-param name="index_subfields">abc</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">700</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">added_author</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcdq</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">700</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">added_title</xsl:with-param>
+    <xsl:with-param name="index_subfields">fgklmnoprst</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">700</xsl:with-param>
+    <xsl:with-param name="search_class">title</xsl:with-param>
+    <xsl:with-param name="index_name">added</xsl:with-param>
+    <xsl:with-param name="index_subfields">fgklmnoprst</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">710</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">added_author</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcdn</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">710</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">added_title</xsl:with-param>
+    <xsl:with-param name="index_subfields">fgklmnoprst</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">710</xsl:with-param>
+    <xsl:with-param name="search_class">title</xsl:with-param>
+    <xsl:with-param name="index_name">added</xsl:with-param>
+    <xsl:with-param name="index_subfields">fgklmnoprst</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">711</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">added_author</xsl:with-param>
+    <xsl:with-param name="index_subfields">acdegnq</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">711</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">added_title</xsl:with-param>
+    <xsl:with-param name="index_subfields">fklnpst</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">711</xsl:with-param>
+    <xsl:with-param name="search_class">title</xsl:with-param>
+    <xsl:with-param name="index_name">added</xsl:with-param>
+    <xsl:with-param name="index_subfields">fklnpst</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">730</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">added_title</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">730</xsl:with-param>
+    <xsl:with-param name="search_class">title</xsl:with-param>
+    <xsl:with-param name="index_name">added</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">740</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">added_title</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">740</xsl:with-param>
+    <xsl:with-param name="search_class">title</xsl:with-param>
+    <xsl:with-param name="index_name">added</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">780</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">previous_title</xsl:with-param>
+    <xsl:with-param name="index_subfields">st</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">780</xsl:with-param>
+    <xsl:with-param name="search_class">title</xsl:with-param>
+    <xsl:with-param name="index_name">previous</xsl:with-param>
+    <xsl:with-param name="index_subfields">st</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">785</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">succeeding_title</xsl:with-param>
+    <xsl:with-param name="index_subfields">st</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">785</xsl:with-param>
+    <xsl:with-param name="search_class">title</xsl:with-param>
+    <xsl:with-param name="index_name">succeeding</xsl:with-param>
+    <xsl:with-param name="index_subfields">st</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">800</xsl:with-param>
+    <xsl:with-param name="search_class">author</xsl:with-param>
+    <xsl:with-param name="index_name">personal_series</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcdq</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">800</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">series_author</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcdq</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">800</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">series_title</xsl:with-param>
+    <xsl:with-param name="index_subfields">fgklmnoprst</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">800</xsl:with-param>
+    <xsl:with-param name="search_class">series</xsl:with-param>
+    <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+    <xsl:with-param name="index_subfields">fgklmnoprst</xsl:with-param>
+    <xsl:with-param name="facet_subfields">fgklmnoprst</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">810</xsl:with-param>
+    <xsl:with-param name="search_class">author</xsl:with-param>
+    <xsl:with-param name="index_name">corporate_series</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcdn</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">810</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">series_author</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcdn</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">810</xsl:with-param>
+    <xsl:with-param name="search_class">series</xsl:with-param>
+    <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcdn</xsl:with-param>
+    <xsl:with-param name="facet_subfields">abcdn</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">811</xsl:with-param>
+    <xsl:with-param name="search_class">author</xsl:with-param>
+    <xsl:with-param name="index_name">conference_series</xsl:with-param>
+    <xsl:with-param name="index_subfields">acdegnq</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">811</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">series_author</xsl:with-param>
+    <xsl:with-param name="index_subfields">acdegnq</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">811</xsl:with-param>
+    <xsl:with-param name="search_class">series</xsl:with-param>
+    <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+    <xsl:with-param name="index_subfields">fklnpstv</xsl:with-param>
+    <xsl:with-param name="facet_subfields">fklnpstv</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">830</xsl:with-param>
+    <xsl:with-param name="search_class">keyword</xsl:with-param>
+    <xsl:with-param name="index_name">series_title</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">830</xsl:with-param>
+    <xsl:with-param name="search_class">series</xsl:with-param>
+    <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+    <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+    <xsl:with-param name="facet_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+  </xsl:call-template>
+  <xsl:call-template name="index_entry">
+    <xsl:with-param name="tag">938</xsl:with-param>
+    <xsl:with-param name="search_class">identifier</xsl:with-param>
+    <xsl:with-param name="index_name">match_isbn</xsl:with-param>
+    <xsl:with-param name="index_subfields">a</xsl:with-param>
+    <xsl:with-param name="facet_subfields"></xsl:with-param>
+  </xsl:call-template>
+  </index:document>
+  </xsl:template>
+
+  <xsl:template match="//marc:datafield[@tag='880']">
+    <xsl:if test="./marc:subfield[@code='6'] and string-length(./marc:subfield[@code='6']) &gt;= 6">
+      <marc:datafield>
+        <xsl:attribute name="tag">
+          <xsl:value-of select="substring(./marc:subfield[@code='6'], 1, 3)" />
+        </xsl:attribute>
+        <xsl:attribute name="ind1">
+          <xsl:value-of select="@ind1" />
+        </xsl:attribute>
+        <xsl:attribute name="ind2">
+          <xsl:value-of select="@ind2" />
+        </xsl:attribute>
+        <xsl:apply-templates />
+      </marc:datafield>
+    </xsl:if>
+  </xsl:template>
+
+  <xsl:template name="subfieldSelect">
+    <xsl:param name="codes">abcdefghijklmnopqrstuvwxyz</xsl:param>
+    <xsl:param name="delimeter">
+      <xsl:text> </xsl:text>
+    </xsl:param>
+    <xsl:variable name="str">
+      <xsl:for-each select="marc:subfield">
+        <xsl:if test="contains($codes, @code)">
+          <xsl:value-of select="text()"/>
+          <xsl:value-of select="$delimeter"/>
+        </xsl:if>
+      </xsl:for-each>
+    </xsl:variable>
+    <xsl:value-of select="substring($str,1,string-length($str)-string-length($delimeter))"/>
+  </xsl:template>
+
+  <xsl:template name="subfieldSelectSubject">
+    <xsl:param name="codes"></xsl:param>
+    <xsl:variable name="str">
+      <xsl:for-each select="marc:subfield">
+        <xsl:if test="contains('abcdefghijklmnopqrstuvwxyz', @code)">
+          <xsl:if test="position() &gt; 1">
+            <xsl:choose>
+              <xsl:when test="contains('vxyz', @code)">
+                <xsl:value-of select="' -- '"/>
+              </xsl:when>
+              <xsl:otherwise>
+                <xsl:value-of select="' '"/>
+              </xsl:otherwise>
+            </xsl:choose>
+          </xsl:if>
+          <xsl:value-of select="text()"/>
+        </xsl:if>
+      </xsl:for-each>
+    </xsl:variable>
+    <xsl:value-of select="$str"/>
+  </xsl:template>
+
+  <xsl:template name="index_entry">
+    <xsl:param name="tag" />
+    <xsl:param name="search_class" />
+    <xsl:param name="index_name" />
+    <xsl:param name="index_subfields" />
+    <xsl:param name="facet_subfields" />
+    <xsl:for-each select="marc:datafield[@tag=$tag] | 
+                marc:datafield[@tag='880']/marc:subfield[@code='6'][starts-with(., $tag)]/..">
+      <xsl:element name="index:entry">
+        <xsl:attribute name="index:class"><xsl:value-of select="$search_class" /></xsl:attribute>
+        <xsl:attribute name="index:name"><xsl:value-of select="$index_name" /></xsl:attribute>
+        <index:value>
+          <xsl:call-template name="subfieldSelect">
+            <xsl:with-param name="codes"><xsl:value-of select="$index_subfields" /></xsl:with-param>
+          </xsl:call-template>
+          <xsl:if test="$facet_subfields">
+            <index:facet>
+              <xsl:choose>
+                <xsl:when test="$search_class='subject'">
+                  <xsl:call-template name="subfieldSelectSubject">
+                    <xsl:with-param name="codes"><xsl:value-of select="$facet_subfields" /></xsl:with-param>
+                  </xsl:call-template>
+                </xsl:when>
+                <xsl:otherwise>
+                  <xsl:call-template name="subfieldSelect">
+                    <xsl:with-param name="codes"><xsl:value-of select="$facet_subfields" /></xsl:with-param>
+                  </xsl:call-template>
+                </xsl:otherwise>
+              </xsl:choose>
+            </index:facet>
+          </xsl:if>
+        </index:value>
+      </xsl:element>
+    </xsl:for-each>
+  </xsl:template>
+
+</xsl:stylesheet>
+$$ 
+WHERE name = 'kcls';
+
+
+COMMIT;
diff --git a/KCLS/sql/schema/revert/subject-browse-entry-dashes.sql b/KCLS/sql/schema/revert/subject-browse-entry-dashes.sql
new file mode 100644 (file)
index 0000000..493c61e
--- /dev/null
@@ -0,0 +1,1223 @@
+-- Revert kcls-evergreen:subject-browse-entry-dashes from pg
+
+BEGIN;
+
+-- XXX Add DDLs here.
+UPDATE config.xml_transform
+SET xslt=$$
+<!--
+
+KCLS index defintions stylesheet
+07/15/2014 - Added subfieldSelectSubject to add dashes between subject subdivisions
+03/06/2013 - Added index entry for RDA publisher tag (264)
+-->
+<xsl:stylesheet
+    xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
+    xmlns:marc="http://www.loc.gov/MARC21/slim"
+    xmlns:index="http://kcls.org/evergreen/index"
+    version="1.0">
+    <xsl:output encoding="UTF-8" indent="yes" method="xml"/>
+
+    <xsl:template match="@*|node()">
+
+    <index:document>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">650</xsl:with-param>
+        <xsl:with-param name="search_class">subject</xsl:with-param>
+        <xsl:with-param name="index_name">topic</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcdvxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields">abcdvxyz</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">651</xsl:with-param>
+        <xsl:with-param name="search_class">subject</xsl:with-param>
+        <xsl:with-param name="index_name">geographic</xsl:with-param>
+        <xsl:with-param name="index_subfields">avxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields">avxyz</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">655</xsl:with-param>
+        <xsl:with-param name="search_class">subject</xsl:with-param>
+        <xsl:with-param name="index_name">genre</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcvxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields">abcvxyz</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">630</xsl:with-param>
+        <xsl:with-param name="search_class">subject</xsl:with-param>
+        <xsl:with-param name="index_name">uniftitle</xsl:with-param>
+        <xsl:with-param name="index_subfields">adfgklmnoprstvxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields">adfgklmnoprstvxyz</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">600</xsl:with-param>
+        <xsl:with-param name="search_class">subject</xsl:with-param>
+        <xsl:with-param name="index_name">name</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcdfgjklmnopqrstuvxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields">abcdfgjklmnopqrstuvxyz</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">610</xsl:with-param>
+        <xsl:with-param name="search_class">subject</xsl:with-param>
+        <xsl:with-param name="index_name">corpname</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcdfgklmnoprstuvxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields">abcdfgklmnoprstuvxyz</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">611</xsl:with-param>
+        <xsl:with-param name="search_class">subject</xsl:with-param>
+        <xsl:with-param name="index_name">meeting</xsl:with-param>
+        <xsl:with-param name="index_subfields">acdefgjklnpqstuvxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields">acdefgjklnpqstuvxyz</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">490</xsl:with-param>
+        <xsl:with-param name="search_class">series</xsl:with-param>
+        <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields">a</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">800</xsl:with-param>
+        <xsl:with-param name="search_class">series</xsl:with-param>
+        <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+        <xsl:with-param name="index_subfields">tflmnoprs</xsl:with-param>
+        <xsl:with-param name="facet_subfields">tflmnoprs</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">810</xsl:with-param>
+        <xsl:with-param name="search_class">series</xsl:with-param>
+        <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+        <xsl:with-param name="index_subfields">tflmnoprs</xsl:with-param>
+        <xsl:with-param name="facet_subfields">tflmnoprs</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">830</xsl:with-param>
+        <xsl:with-param name="search_class">series</xsl:with-param>
+        <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+        <xsl:with-param name="index_subfields">adfgklmnoprst</xsl:with-param>
+        <xsl:with-param name="facet_subfields">adfgklmnoprst</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">100</xsl:with-param>
+        <xsl:with-param name="search_class">author</xsl:with-param>
+        <xsl:with-param name="index_name">personal</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcdq</xsl:with-param>
+        <xsl:with-param name="facet_subfields">abcdq</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">110</xsl:with-param>
+        <xsl:with-param name="search_class">author</xsl:with-param>
+        <xsl:with-param name="index_name">corporate</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcdn</xsl:with-param>
+        <xsl:with-param name="facet_subfields">ab</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">111</xsl:with-param>
+        <xsl:with-param name="search_class">author</xsl:with-param>
+        <xsl:with-param name="index_name">meeting</xsl:with-param>
+        <xsl:with-param name="index_subfields">acdegng</xsl:with-param>
+        <xsl:with-param name="facet_subfields">acde</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">700</xsl:with-param>
+        <xsl:with-param name="search_class">author</xsl:with-param>
+        <xsl:with-param name="index_name">added_personal</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcdq</xsl:with-param>
+        <xsl:with-param name="facet_subfields">abcdq</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">710</xsl:with-param>
+        <xsl:with-param name="search_class">author</xsl:with-param>
+        <xsl:with-param name="index_name">corporate</xsl:with-param>
+        <xsl:with-param name="index_subfields">ab</xsl:with-param>
+        <xsl:with-param name="facet_subfields">ab</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">711</xsl:with-param>
+        <xsl:with-param name="search_class">author</xsl:with-param>
+        <xsl:with-param name="index_name">meeting</xsl:with-param>
+        <xsl:with-param name="index_subfields">acde</xsl:with-param>
+        <xsl:with-param name="facet_subfields">acde</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">400</xsl:with-param>
+        <xsl:with-param name="search_class">author</xsl:with-param>
+        <xsl:with-param name="index_name">added_personal</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcd</xsl:with-param>
+        <xsl:with-param name="facet_subfields">abcd</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">410</xsl:with-param>
+        <xsl:with-param name="search_class">author</xsl:with-param>
+        <xsl:with-param name="index_name">corporate</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcd</xsl:with-param>
+        <xsl:with-param name="facet_subfields">abcd</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">411</xsl:with-param>
+        <xsl:with-param name="search_class">author</xsl:with-param>
+        <xsl:with-param name="index_name">meeting</xsl:with-param>
+        <xsl:with-param name="index_subfields">acdegq</xsl:with-param>
+        <xsl:with-param name="facet_subfields">acdega</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">010</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">lccn</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">010</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">lccn</xsl:with-param>
+        <xsl:with-param name="index_subfields">z</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">020</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">isbn</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">020</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">isbn</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">020</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">isbn</xsl:with-param>
+        <xsl:with-param name="index_subfields">z</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">020</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">isbn</xsl:with-param>
+        <xsl:with-param name="index_subfields">z</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">022</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">issn</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">022</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">issn</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">022</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">issn</xsl:with-param>
+        <xsl:with-param name="index_subfields">y</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">022</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">issn</xsl:with-param>
+        <xsl:with-param name="index_subfields">y</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">022</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">issn</xsl:with-param>
+        <xsl:with-param name="index_subfields">z</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">022</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">issn</xsl:with-param>
+        <xsl:with-param name="index_subfields">z</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">024</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">upc</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">024</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">upc</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">024</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">upc</xsl:with-param>
+        <xsl:with-param name="index_subfields">z</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">024</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">upc</xsl:with-param>
+        <xsl:with-param name="index_subfields">z</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">027</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">tech_number</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">027</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">tech_number</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">027</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">tech_number</xsl:with-param>
+        <xsl:with-param name="index_subfields">z</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">027</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">tech_number</xsl:with-param>
+        <xsl:with-param name="index_subfields">z</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">028</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">tech_number</xsl:with-param>
+        <xsl:with-param name="index_subfields">ab</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">028</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">tech_number</xsl:with-param>
+        <xsl:with-param name="index_subfields">ab</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">074</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">sudoc</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">074</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">govdoc</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">074</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">sudoc</xsl:with-param>
+        <xsl:with-param name="index_subfields">z</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">074</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">govdoc</xsl:with-param>
+        <xsl:with-param name="index_subfields">z</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">086</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">sudoc</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">086</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">govdoc</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">086</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">sudoc</xsl:with-param>
+        <xsl:with-param name="index_subfields">z</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">086</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">govdoc</xsl:with-param>
+        <xsl:with-param name="index_subfields">z</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">092</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">bibcn</xsl:with-param>
+        <xsl:with-param name="index_subfields">ab</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">099</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">bibcn</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">100</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">author</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcdq</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">110</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">author</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcdn</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">111</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">author</xsl:with-param>
+        <xsl:with-param name="index_subfields">acdegnq</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">130</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">title</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">130</xsl:with-param>
+        <xsl:with-param name="search_class">title</xsl:with-param>
+        <xsl:with-param name="index_name">uniform</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">210</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">title</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">210</xsl:with-param>
+        <xsl:with-param name="search_class">title</xsl:with-param>
+        <xsl:with-param name="index_name">abbreviated</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">222</xsl:with-param>
+        <xsl:with-param name="search_class">title</xsl:with-param>
+        <xsl:with-param name="index_name">magazine</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">240</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">title</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">240</xsl:with-param>
+        <xsl:with-param name="search_class">title</xsl:with-param>
+        <xsl:with-param name="index_name">uniform</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">245</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">title</xsl:with-param>
+        <xsl:with-param name="index_subfields">abefgijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">245</xsl:with-param>
+        <xsl:with-param name="search_class">title</xsl:with-param>
+        <xsl:with-param name="index_name">proper</xsl:with-param>
+        <xsl:with-param name="index_subfields">abefgijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">245</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">author</xsl:with-param>
+        <xsl:with-param name="index_subfields">c</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">245</xsl:with-param>
+        <xsl:with-param name="search_class">author</xsl:with-param>
+        <xsl:with-param name="index_name">responsibility</xsl:with-param>
+        <xsl:with-param name="index_subfields">c</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">246</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">title</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefgjklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">246</xsl:with-param>
+        <xsl:with-param name="search_class">title</xsl:with-param>
+        <xsl:with-param name="index_name">alternative</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefgjklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">247</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">title</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">247</xsl:with-param>
+        <xsl:with-param name="search_class">title</xsl:with-param>
+        <xsl:with-param name="index_name">former</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">260</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">publisher</xsl:with-param>
+        <xsl:with-param name="index_subfields">b</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+        <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">264</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">publisher</xsl:with-param>
+        <xsl:with-param name="index_subfields">b</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">400</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">author</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcd</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">400</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">title</xsl:with-param>
+        <xsl:with-param name="index_subfields">ptv</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">400</xsl:with-param>
+        <xsl:with-param name="search_class">series</xsl:with-param>
+        <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+        <xsl:with-param name="index_subfields">ptv</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">410</xsl:with-param>
+        <xsl:with-param name="search_class">author</xsl:with-param>
+        <xsl:with-param name="index_name">corporate</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcde</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">410</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">author</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcde</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">410</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">title</xsl:with-param>
+        <xsl:with-param name="index_subfields">ptv</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">410</xsl:with-param>
+        <xsl:with-param name="search_class">series</xsl:with-param>
+        <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+        <xsl:with-param name="index_subfields">ptv</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">411</xsl:with-param>
+        <xsl:with-param name="search_class">author</xsl:with-param>
+        <xsl:with-param name="index_name">conference</xsl:with-param>
+        <xsl:with-param name="index_subfields">acdegq</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">411</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">conference</xsl:with-param>
+        <xsl:with-param name="index_subfields">acdegq</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">411</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">title</xsl:with-param>
+        <xsl:with-param name="index_subfields">ptv</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">411</xsl:with-param>
+        <xsl:with-param name="search_class">title</xsl:with-param>
+        <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+        <xsl:with-param name="index_subfields">ptv</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">440</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">title</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">440</xsl:with-param>
+        <xsl:with-param name="search_class">series</xsl:with-param>
+        <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields">abcefghijklmnopqrstuvwyz</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">490</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">title</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">490</xsl:with-param>
+        <xsl:with-param name="search_class">series</xsl:with-param>
+        <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">490</xsl:with-param>
+        <xsl:with-param name="search_class">title</xsl:with-param>
+        <xsl:with-param name="index_name">uniform</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">500</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">501</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">502</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">505</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">art</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">508</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">511</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">518</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">520</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">ab</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">522</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">533</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">af</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">534</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">af</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">545</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">ab</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">546</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">547</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">561</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">581</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">585</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">586</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">notes</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">600</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">subject</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">610</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">subject</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">611</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">subject</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">630</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">subject</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">648</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">subject</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">650</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">subject</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">651</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">subject</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">655</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">subject</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">656</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">subject</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">657</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">subject</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">658</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">fiction</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefghijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">690</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">fiction</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">691</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">fiction</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">692</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">fiction</xsl:with-param>
+        <xsl:with-param name="index_subfields">acdefgh</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">693</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">fiction</xsl:with-param>
+        <xsl:with-param name="index_subfields">acdefg</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">694</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">fiction</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">694</xsl:with-param>
+        <xsl:with-param name="search_class">series</xsl:with-param>
+        <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">695</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">fiction</xsl:with-param>
+        <xsl:with-param name="index_subfields">ab2</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">696</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">fiction</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">697</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">fiction</xsl:with-param>
+        <xsl:with-param name="index_subfields">ay</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">698</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">fiction</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">699</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">fiction</xsl:with-param>
+        <xsl:with-param name="index_subfields">abc</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">700</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">added_author</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcdq</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">700</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">added_title</xsl:with-param>
+        <xsl:with-param name="index_subfields">fgklmnoprst</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">700</xsl:with-param>
+        <xsl:with-param name="search_class">title</xsl:with-param>
+        <xsl:with-param name="index_name">added</xsl:with-param>
+        <xsl:with-param name="index_subfields">fgklmnoprst</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">710</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">added_author</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcdn</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">710</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">added_title</xsl:with-param>
+        <xsl:with-param name="index_subfields">fgklmnoprst</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">710</xsl:with-param>
+        <xsl:with-param name="search_class">title</xsl:with-param>
+        <xsl:with-param name="index_name">added</xsl:with-param>
+        <xsl:with-param name="index_subfields">fgklmnoprst</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">711</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">added_author</xsl:with-param>
+        <xsl:with-param name="index_subfields">acdegnq</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">711</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">added_title</xsl:with-param>
+        <xsl:with-param name="index_subfields">fklnpst</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">711</xsl:with-param>
+        <xsl:with-param name="search_class">title</xsl:with-param>
+        <xsl:with-param name="index_name">added</xsl:with-param>
+        <xsl:with-param name="index_subfields">fklnpst</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">730</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">added_title</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">730</xsl:with-param>
+        <xsl:with-param name="search_class">title</xsl:with-param>
+        <xsl:with-param name="index_name">added</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">740</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">added_title</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">740</xsl:with-param>
+        <xsl:with-param name="search_class">title</xsl:with-param>
+        <xsl:with-param name="index_name">added</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">780</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">previous_title</xsl:with-param>
+        <xsl:with-param name="index_subfields">st</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">780</xsl:with-param>
+        <xsl:with-param name="search_class">title</xsl:with-param>
+        <xsl:with-param name="index_name">previous</xsl:with-param>
+        <xsl:with-param name="index_subfields">st</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">785</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">succeeding_title</xsl:with-param>
+        <xsl:with-param name="index_subfields">st</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">785</xsl:with-param>
+        <xsl:with-param name="search_class">title</xsl:with-param>
+        <xsl:with-param name="index_name">succeeding</xsl:with-param>
+        <xsl:with-param name="index_subfields">st</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">800</xsl:with-param>
+        <xsl:with-param name="search_class">author</xsl:with-param>
+        <xsl:with-param name="index_name">personal_series</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcdq</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">800</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">series_author</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcdq</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">800</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">series_title</xsl:with-param>
+        <xsl:with-param name="index_subfields">fgklmnoprst</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">800</xsl:with-param>
+        <xsl:with-param name="search_class">series</xsl:with-param>
+        <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+        <xsl:with-param name="index_subfields">fgklmnoprst</xsl:with-param>
+        <xsl:with-param name="facet_subfields">fgklmnoprst</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">810</xsl:with-param>
+        <xsl:with-param name="search_class">author</xsl:with-param>
+        <xsl:with-param name="index_name">corporate_series</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcdn</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">810</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">series_author</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcdn</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">810</xsl:with-param>
+        <xsl:with-param name="search_class">series</xsl:with-param>
+        <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcdn</xsl:with-param>
+        <xsl:with-param name="facet_subfields">abcdn</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">811</xsl:with-param>
+        <xsl:with-param name="search_class">author</xsl:with-param>
+        <xsl:with-param name="index_name">conference_series</xsl:with-param>
+        <xsl:with-param name="index_subfields">acdegnq</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">811</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">series_author</xsl:with-param>
+        <xsl:with-param name="index_subfields">acdegnq</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">811</xsl:with-param>
+        <xsl:with-param name="search_class">series</xsl:with-param>
+        <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+        <xsl:with-param name="index_subfields">fklnpstv</xsl:with-param>
+        <xsl:with-param name="facet_subfields">fklnpstv</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">830</xsl:with-param>
+        <xsl:with-param name="search_class">keyword</xsl:with-param>
+        <xsl:with-param name="index_name">series_title</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">830</xsl:with-param>
+        <xsl:with-param name="search_class">series</xsl:with-param>
+        <xsl:with-param name="index_name">seriestitle</xsl:with-param>
+        <xsl:with-param name="index_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+        <xsl:with-param name="facet_subfields">abcefgijklmnopqrstuvwxyz</xsl:with-param>
+    </xsl:call-template>
+    <xsl:call-template name="index_entry">
+        <xsl:with-param name="tag">938</xsl:with-param>
+        <xsl:with-param name="search_class">identifier</xsl:with-param>
+        <xsl:with-param name="index_name">match_isbn</xsl:with-param>
+        <xsl:with-param name="index_subfields">a</xsl:with-param>
+        <xsl:with-param name="facet_subfields"></xsl:with-param>
+    </xsl:call-template>
+    </index:document>
+    </xsl:template>
+
+    <xsl:template match="//marc:datafield[@tag='880']">
+        <xsl:if test="./marc:subfield[@code='6'] and string-length(./marc:subfield[@code='6']) &gt;= 6">
+            <marc:datafield>
+                <xsl:attribute name="tag">
+                    <xsl:value-of select="substring(./marc:subfield[@code='6'], 1, 3)" />
+                </xsl:attribute>
+                <xsl:attribute name="ind1">
+                    <xsl:value-of select="@ind1" />
+                </xsl:attribute>
+                <xsl:attribute name="ind2">
+                    <xsl:value-of select="@ind2" />
+                </xsl:attribute>
+                <xsl:apply-templates />
+            </marc:datafield>
+        </xsl:if>
+    </xsl:template>
+
+    <xsl:template name="subfieldSelect">
+        <xsl:param name="codes">abcdefghijklmnopqrstuvwxyz</xsl:param>
+        <xsl:param name="delimeter">
+            <xsl:text> </xsl:text>
+        </xsl:param>
+        <xsl:variable name="str">
+            <xsl:for-each select="marc:subfield">
+                <xsl:if test="contains($codes, @code)">
+                    <xsl:value-of select="text()"/>
+                    <xsl:value-of select="$delimeter"/>
+                </xsl:if>
+            </xsl:for-each>
+        </xsl:variable>
+        <xsl:value-of select="substring($str,1,string-length($str)-string-length($delimeter))"/>
+    </xsl:template>
+
+    <xsl:template name="subfieldSelectSubject">
+        <xsl:param name="codes">abcdefghijklmnopqrstuvwxyz</xsl:param>
+        <xsl:param name="delimeter">
+            <xsl:text> -- </xsl:text>
+        </xsl:param>
+        <xsl:variable name="str">
+            <xsl:for-each select="marc:subfield">
+                <xsl:if test="contains($codes, @code)">
+                    <xsl:value-of select="text()"/>
+                    <xsl:value-of select="$delimeter"/>
+                </xsl:if>
+            </xsl:for-each>
+        </xsl:variable>
+        <xsl:value-of select="substring($str,1,string-length($str)-string-length($delimeter))"/>
+    </xsl:template>
+
+    <xsl:template name="index_entry">
+        <xsl:param name="tag" />
+        <xsl:param name="search_class" />
+        <xsl:param name="index_name" />
+        <xsl:param name="index_subfields" />
+        <xsl:param name="facet_subfields" />
+        <xsl:for-each select="marc:datafield[@tag=$tag] | 
+                              marc:datafield[@tag='880']/marc:subfield[@code='6'][starts-with(., $tag)]/..">
+            <xsl:element name="index:entry">
+                <xsl:attribute name="index:class"><xsl:value-of select="$search_class" /></xsl:attribute>
+                <xsl:attribute name="index:name"><xsl:value-of select="$index_name" /></xsl:attribute>
+                <index:value>
+                    <xsl:call-template name="subfieldSelect">
+                        <xsl:with-param name="codes"><xsl:value-of select="$index_subfields" /></xsl:with-param>
+                    </xsl:call-template>
+                    <xsl:if test="$facet_subfields">
+                        <index:facet>
+                            <xsl:choose>
+                                <xsl:when test="$search_class='subject'">
+                                    <xsl:call-template name="subfieldSelectSubject">
+                                        <xsl:with-param name="codes"><xsl:value-of select="$facet_subfields" /></xsl:with-param>
+                                    </xsl:call-template>
+                                </xsl:when>
+                                <xsl:otherwise>
+                                    <xsl:call-template name="subfieldSelect">
+                                        <xsl:with-param name="codes"><xsl:value-of select="$facet_subfields" /></xsl:with-param>
+                                    </xsl:call-template>
+                                </xsl:otherwise>
+                            </xsl:choose>
+                        </index:facet>
+                    </xsl:if>
+                </index:value>
+            </xsl:element>
+        </xsl:for-each>
+    </xsl:template>
+
+</xsl:stylesheet>
+$$ 
+WHERE name = 'kcls';
+
+
+COMMIT;
index 5b4533c..188e2bf 100644 (file)
@@ -18,3 +18,4 @@ po-print-li-count-and-date [blanket-po-print-template] 2015-11-20T18:56:33Z Bill
 dob-as-date [student-groups] 2015-10-05T14:17:54Z Bill Erickson <berickxx@gmail.com> # Store DoB as date
 2.5-to-2.7-upgrade [student-groups] 2015-10-15T20:40:14Z Bill Erickson <berickxx@gmail.com> # 2.5 to 2.7 Upgrade
 2.7-auth-reingest [2.5-to-2.7-upgrade] 2015-12-30T16:25:38Z Bill Erickson <berickxx@gmail.com> # Reingest authority records after 2.7 update
+subject-browse-entry-dashes [2.5-to-2.7-upgrade] 2016-02-11T20:12:05Z Bill Erickson <berickxx@gmail.com> # Clean up subject browse dashes
diff --git a/KCLS/sql/schema/verify/subject-browse-entry-dashes.sql b/KCLS/sql/schema/verify/subject-browse-entry-dashes.sql
new file mode 100644 (file)
index 0000000..645e399
--- /dev/null
@@ -0,0 +1,7 @@
+-- Verify kcls-evergreen:subject-browse-entry-dashes on pg
+
+BEGIN;
+
+-- XXX Add verifications here.
+
+ROLLBACK;