1 <?xml version="1.0" encoding="UTF-8"?>
3 This file has been automatically generated from a Koha index definition file
4 with the stylesheet koha-indexdefs-to-zebra.xsl. Do not manually edit this file,
5 as it may be overwritten. To regenerate, edit the appropriate Koha index
6 definition file (probably something like {biblio,authority}-koha-indexdefs.xml) and run:
7 `xsltproc koha-indexdefs-to-zebra.xsl {biblio,authority}-koha-indexdefs.xml >
8 {biblio,authority}-zebra-indexdefs.xsl` (substituting the appropriate file names).
10 <xslo:stylesheet xmlns:xslo="http://www.w3.org/1999/XSL/Transform" xmlns:marc="http://www.loc.gov/MARC21/slim" xmlns:z="http://indexdata.com/zebra-2.0" xmlns:kohaidx="http://www.koha-community.org/schemas/index-defs" version="1.0">
11 <xslo:output indent="yes" method="xml" version="1.0" encoding="UTF-8"/>
12 <xslo:template match="text()"/>
13 <xslo:template match="text()" mode="index_subfields"/>
14 <xslo:template match="text()" mode="index_data_field"/>
15 <xslo:template match="text()" mode="index_facets"/>
16 <xslo:template match="text()" mode="index_heading"/>
17 <xslo:template match="text()" mode="index_heading_conditional"/>
18 <xslo:template match="text()" mode="index_match_heading"/>
19 <xslo:template match="text()" mode="index_subject_thesaurus"/>
20 <xslo:template match="/">
21 <xslo:if test="marc:collection">
23 <xslo:apply-templates select="marc:collection/marc:record"/>
26 <xslo:if test="marc:record">
27 <xslo:apply-templates select="marc:record"/>
30 <xslo:template match="marc:record">
31 <xslo:variable name="idfield" select="normalize-space(marc:controlfield[@tag='001'])"/>
32 <z:record type="update">
33 <xslo:attribute name="z:id">
34 <xslo:value-of select="$idfield"/>
36 <xslo:apply-templates/>
37 <xslo:apply-templates mode="index_subfields"/>
38 <xslo:apply-templates mode="index_data_field"/>
39 <xslo:apply-templates mode="index_facets"/>
40 <xslo:apply-templates mode="index_heading"/>
41 <xslo:apply-templates mode="index_heading_conditional"/>
42 <xslo:apply-templates mode="index_match_heading"/>
43 <xslo:apply-templates mode="index_subject_thesaurus"/>
44 <xslo:apply-templates mode="index_all"/>
47 <xslo:template match="marc:controlfield[@tag='001']">
48 <z:index name="Local-number:w">
49 <xslo:value-of select="."/>
51 <z:index name="Local-number:n">
52 <xslo:value-of select="."/>
55 <xslo:template match="marc:controlfield[@tag='009']">
56 <z:index name="Identifier-standard:w">
57 <xslo:value-of select="."/>
59 <z:index name="Identifier-standard:n">
60 <xslo:value-of select="."/>
63 <xslo:template mode="index_subfields" match="marc:datafield[@tag='090']">
64 <xslo:for-each select="marc:subfield">
65 <xslo:if test="contains('9', @code)">
66 <z:index name="Local-number:w Local-number:n">
67 <xslo:value-of select="."/>
72 <xslo:template mode="index_subfields" match="marc:datafield[@tag='099']">
73 <xslo:for-each select="marc:subfield">
74 <xslo:if test="contains('c', @code)">
75 <z:index name="date-entered-on-file:s date-entered-on-file:n date-entered-on-file:y Date-of-acquisition:w Date-of-acquisition:d Date-of-acquisition:s">
76 <xslo:value-of select="."/>
80 <xslo:for-each select="marc:subfield">
81 <xslo:if test="contains('d', @code)">
82 <z:index name="Date/time-last-modified:s Date/time-last-modified:n Date/time-last-modified:y">
83 <xslo:value-of select="."/>
87 <xslo:for-each select="marc:subfield">
88 <xslo:if test="contains('t', @code)">
89 <z:index name="ccode:w">
90 <xslo:value-of select="."/>
95 <xslo:template mode="index_subfields" match="marc:datafield[@tag='010']">
96 <xslo:for-each select="marc:subfield">
97 <xslo:if test="contains('az', @code)">
98 <z:index name="ISBN:w Identifier-standard:w">
99 <xslo:value-of select="."/>
104 <xslo:template mode="index_subfields" match="marc:datafield[@tag='011']">
105 <xslo:for-each select="marc:subfield">
106 <xslo:if test="contains('ayz', @code)">
107 <z:index name="ISSN:w Identifier-standard:w">
108 <xslo:value-of select="."/>
112 <xslo:for-each select="marc:subfield">
113 <xslo:if test="contains('fg', @code)">
114 <z:index name="Identifier-standard:w">
115 <xslo:value-of select="."/>
120 <xslo:template mode="index_subfields" match="marc:datafield[@tag='012']">
121 <xslo:for-each select="marc:subfield">
122 <xslo:if test="contains('a', @code)">
123 <z:index name="Identifier-standard:w">
124 <xslo:value-of select="."/>
129 <xslo:template mode="index_subfields" match="marc:datafield[@tag='013']">
130 <xslo:for-each select="marc:subfield">
131 <xslo:if test="contains('az', @code)">
132 <z:index name="Identifier-standard:w">
133 <xslo:value-of select="."/>
138 <xslo:template mode="index_subfields" match="marc:datafield[@tag='014']">
139 <xslo:for-each select="marc:subfield">
140 <xslo:if test="contains('az', @code)">
141 <z:index name="Identifier-standard:w">
142 <xslo:value-of select="."/>
147 <xslo:template mode="index_subfields" match="marc:datafield[@tag='015']">
148 <xslo:for-each select="marc:subfield">
149 <xslo:if test="contains('az', @code)">
150 <z:index name="Identifier-standard:w">
151 <xslo:value-of select="."/>
156 <xslo:template mode="index_subfields" match="marc:datafield[@tag='016']">
157 <xslo:for-each select="marc:subfield">
158 <xslo:if test="contains('az', @code)">
159 <z:index name="Identifier-standard:w">
160 <xslo:value-of select="."/>
165 <xslo:template mode="index_subfields" match="marc:datafield[@tag='017']">
166 <xslo:for-each select="marc:subfield">
167 <xslo:if test="contains('az', @code)">
168 <z:index name="Identifier-standard:w">
169 <xslo:value-of select="."/>
174 <xslo:template mode="index_subfields" match="marc:datafield[@tag='040']">
175 <xslo:for-each select="marc:subfield">
176 <xslo:if test="contains('az', @code)">
177 <z:index name="Identifier-standard:w">
178 <xslo:value-of select="."/>
183 <xslo:template mode="index_subfields" match="marc:datafield[@tag='071']">
184 <xslo:for-each select="marc:subfield">
185 <xslo:if test="contains('az', @code)">
186 <z:index name="Identifier-publisher-for-music:w Identifier-standard:w">
187 <xslo:value-of select="."/>
191 <xslo:for-each select="marc:subfield">
192 <xslo:if test="contains('b', @code)">
193 <z:index name="Publisher:w Publisher:p">
194 <xslo:value-of select="."/>
199 <xslo:template mode="index_subfields" match="marc:datafield[@tag='072']">
200 <xslo:for-each select="marc:subfield">
201 <xslo:if test="contains('az', @code)">
202 <z:index name="Identifier-standard:w">
203 <xslo:value-of select="."/>
208 <xslo:template mode="index_subfields" match="marc:datafield[@tag='073']">
209 <xslo:for-each select="marc:subfield">
210 <xslo:if test="contains('az', @code)">
211 <z:index name="EAN:w Identifier-standard:w">
212 <xslo:value-of select="."/>
217 <xslo:template mode="index_subfields" match="marc:datafield[@tag='200']">
218 <xslo:for-each select="marc:subfield">
219 <xslo:if test="contains('b', @code)">
220 <z:index name="itemtype:w itemtype:p itype:w itype:p Material-type:w Material-type:p">
221 <xslo:value-of select="."/>
225 <xslo:for-each select="marc:subfield">
226 <xslo:if test="contains('fg', @code)">
227 <z:index name="Author:w Author:p">
228 <xslo:value-of select="."/>
232 <xslo:for-each select="marc:subfield">
233 <xslo:if test="contains('aei', @code)">
234 <z:index name="Title:w Title:p Title:s Title-cover:w Title-cover:p Title-cover:s">
235 <xslo:value-of select="."/>
239 <xslo:for-each select="marc:subfield">
240 <xslo:if test="contains('cd', @code)">
241 <z:index name="Title:w Title:p">
242 <xslo:value-of select="."/>
247 <xslo:template mode="index_subfields" match="marc:datafield[@tag='995']">
248 <xslo:for-each select="marc:subfield">
249 <xslo:if test="contains('r', @code)">
250 <z:index name="itemtype:w itemtype:p itype:w itype:p">
251 <xslo:value-of select="."/>
255 <xslo:for-each select="marc:subfield">
256 <xslo:if test="contains('1', @code)">
257 <z:index name="damaged:w damaged:n item:w">
258 <xslo:value-of select="."/>
262 <xslo:for-each select="marc:subfield">
263 <xslo:if test="contains('2', @code)">
264 <z:index name="lost:w lost:n item:w">
265 <xslo:value-of select="."/>
269 <xslo:for-each select="marc:subfield">
270 <xslo:if test="contains('3', @code)">
271 <z:index name="withdrawn:w withdrawn:n item:w">
272 <xslo:value-of select="."/>
276 <xslo:for-each select="marc:subfield">
277 <xslo:if test="contains('a', @code)">
278 <z:index name="homebranch:w Host-item:w item:w">
279 <xslo:value-of select="."/>
283 <xslo:for-each select="marc:subfield">
284 <xslo:if test="contains('b', @code)">
285 <z:index name="homebranch:w Host-item:w item:w">
286 <xslo:value-of select="."/>
290 <xslo:for-each select="marc:subfield">
291 <xslo:if test="contains('c', @code)">
292 <z:index name="holdingbranch:w Record-Source:w item:w">
293 <xslo:value-of select="."/>
297 <xslo:for-each select="marc:subfield">
298 <xslo:if test="contains('e', @code)">
299 <z:index name="location:w location:p item:w">
300 <xslo:value-of select="."/>
304 <xslo:for-each select="marc:subfield">
305 <xslo:if test="contains('f', @code)">
306 <z:index name="barcode:w barcode:p item:w">
307 <xslo:value-of select="."/>
311 <xslo:for-each select="marc:subfield">
312 <xslo:if test="contains('h', @code)">
313 <z:index name="ccode:w ccode:p item:w">
314 <xslo:value-of select="."/>
318 <xslo:for-each select="marc:subfield">
319 <xslo:if test="contains('k', @code)">
320 <z:index name="Call-Number:w Local-classification:w lcn:w Call-Number:p Local-classification:p lcn:p item:w Local-classification:s">
321 <xslo:value-of select="."/>
325 <xslo:for-each select="marc:subfield">
326 <xslo:if test="contains('n', @code)">
327 <z:index name="onloan:d onloan:n onloan:s onloan:w item:w">
328 <xslo:value-of select="."/>
332 <xslo:for-each select="marc:subfield">
333 <xslo:if test="contains('u', @code)">
334 <z:index name="Note:w Note:p item:w">
335 <xslo:value-of select="."/>
340 <xslo:template mode="index_subfields" match="marc:datafield[@tag='100']">
341 <xslo:for-each select="marc:subfield">
342 <xslo:if test="contains('a', @code)">
343 <z:index name="tpubdate:s">
344 <xslo:value-of select="substring(., 9, 1)"/>
348 <xslo:for-each select="marc:subfield">
349 <xslo:if test="contains('a', @code)">
350 <z:index name="pubdate:s pubdate:n pubdate:y">
351 <xslo:value-of select="substring(., 10, 4)"/>
355 <xslo:for-each select="marc:subfield">
356 <xslo:if test="contains('a', @code)">
357 <z:index name="pubdate:n pubdate:y">
358 <xslo:value-of select="substring(., 14, 4)"/>
362 <xslo:for-each select="marc:subfield">
363 <xslo:if test="contains('a', @code)">
364 <z:index name="ta:w">
365 <xslo:value-of select="substring(., 18, 1)"/>
369 <xslo:for-each select="marc:subfield">
370 <xslo:if test="contains('a', @code)">
371 <z:index name="ta:w">
372 <xslo:value-of select="substring(., 19, 1)"/>
376 <xslo:for-each select="marc:subfield">
377 <xslo:if test="contains('a', @code)">
378 <z:index name="ta:w">
379 <xslo:value-of select="substring(., 20, 1)"/>
383 <xslo:for-each select="marc:subfield">
384 <xslo:if test="contains('a', @code)">
385 <z:index name="Modified-code:n">
386 <xslo:value-of select="substring(., 22, 1)"/>
390 <xslo:for-each select="marc:subfield">
391 <xslo:if test="contains('a', @code)">
392 <z:index name="char-encoding:n">
393 <xslo:value-of select="substring(., 27, 2)"/>
397 <xslo:for-each select="marc:subfield">
398 <xslo:if test="contains('a', @code)">
399 <z:index name="char-encoding:n">
400 <xslo:value-of select="substring(., 29, 2)"/>
404 <xslo:for-each select="marc:subfield">
405 <xslo:if test="contains('a', @code)">
406 <z:index name="char-encoding:n">
407 <xslo:value-of select="substring(., 31, 2)"/>
411 <xslo:for-each select="marc:subfield">
412 <xslo:if test="contains('a', @code)">
413 <z:index name="script-Title:n">
414 <xslo:value-of select="substring(., 35, 2)"/>
419 <xslo:template mode="index_subfields" match="marc:datafield[@tag='101']">
420 <xslo:for-each select="marc:subfield">
421 <xslo:if test="contains('a', @code)">
422 <z:index name="ln:w">
423 <xslo:value-of select="."/>
427 <xslo:for-each select="marc:subfield">
428 <xslo:if test="contains('c', @code)">
429 <z:index name="language-original:w">
430 <xslo:value-of select="."/>
435 <xslo:template mode="index_subfields" match="marc:datafield[@tag='102']">
436 <xslo:for-each select="marc:subfield">
437 <xslo:if test="contains('a', @code)">
438 <z:index name="Country-publication:w">
439 <xslo:value-of select="."/>
444 <xslo:template mode="index_subfields" match="marc:datafield[@tag='105']">
445 <xslo:for-each select="marc:subfield">
446 <xslo:if test="contains('a', @code)">
447 <z:index name="ff8-18-21:w">
448 <xslo:value-of select="substring(., 1, 1)"/>
452 <xslo:for-each select="marc:subfield">
453 <xslo:if test="contains('a', @code)">
454 <z:index name="ff8-18-21:w">
455 <xslo:value-of select="substring(., 2, 1)"/>
459 <xslo:for-each select="marc:subfield">
460 <xslo:if test="contains('a', @code)">
461 <z:index name="ff8-18-21:w">
462 <xslo:value-of select="substring(., 3, 1)"/>
466 <xslo:for-each select="marc:subfield">
467 <xslo:if test="contains('a', @code)">
468 <z:index name="ff8-18-21:w">
469 <xslo:value-of select="substring(., 4, 1)"/>
473 <xslo:for-each select="marc:subfield">
474 <xslo:if test="contains('a', @code)">
475 <z:index name="ctype:w">
476 <xslo:value-of select="substring(., 5, 1)"/>
480 <xslo:for-each select="marc:subfield">
481 <xslo:if test="contains('a', @code)">
482 <z:index name="ctype:w">
483 <xslo:value-of select="substring(., 6, 1)"/>
487 <xslo:for-each select="marc:subfield">
488 <xslo:if test="contains('a', @code)">
489 <z:index name="ctype:w">
490 <xslo:value-of select="substring(., 7, 1)"/>
494 <xslo:for-each select="marc:subfield">
495 <xslo:if test="contains('a', @code)">
496 <z:index name="ctype:w">
497 <xslo:value-of select="substring(., 8, 1)"/>
501 <xslo:for-each select="marc:subfield">
502 <xslo:if test="contains('a', @code)">
503 <z:index name="ff8-29:w">
504 <xslo:value-of select="substring(., 9, 1)"/>
508 <xslo:for-each select="marc:subfield">
509 <xslo:if test="contains('a', @code)">
510 <z:index name="ff8-30:w">
511 <xslo:value-of select="substring(., 10, 1)"/>
515 <xslo:for-each select="marc:subfield">
516 <xslo:if test="contains('a', @code)">
517 <z:index name="ff8-31:w">
518 <xslo:value-of select="substring(., 11, 1)"/>
522 <xslo:for-each select="marc:subfield">
523 <xslo:if test="contains('a', @code)">
524 <z:index name="lf:w">
525 <xslo:value-of select="substring(., 12, 1)"/>
529 <xslo:for-each select="marc:subfield">
530 <xslo:if test="contains('a', @code)">
531 <z:index name="bio:w">
532 <xslo:value-of select="substring(., 13, 1)"/>
537 <xslo:template mode="index_subfields" match="marc:datafield[@tag='106']">
538 <xslo:for-each select="marc:subfield">
539 <xslo:if test="contains('a', @code)">
540 <z:index name="ff8-23:w ff8-23:p">
541 <xslo:value-of select="."/>
546 <xslo:template mode="index_subfields" match="marc:datafield[@tag='110']">
547 <xslo:for-each select="marc:subfield">
548 <xslo:if test="contains('a', @code)">
549 <z:index name="ff8-21:w">
550 <xslo:value-of select="substring(., 1, 1)"/>
554 <xslo:for-each select="marc:subfield">
555 <xslo:if test="contains('a', @code)">
556 <z:index name="ff8-18:w">
557 <xslo:value-of select="substring(., 2, 1)"/>
561 <xslo:for-each select="marc:subfield">
562 <xslo:if test="contains('a', @code)">
563 <z:index name="ff8-19:w">
564 <xslo:value-of select="substring(., 3, 1)"/>
568 <xslo:for-each select="marc:subfield">
569 <xslo:if test="contains('a', @code)">
570 <z:index name="ctype:w">
571 <xslo:value-of select="substring(., 4, 1)"/>
575 <xslo:for-each select="marc:subfield">
576 <xslo:if test="contains('a', @code)">
577 <z:index name="ctype:w">
578 <xslo:value-of select="substring(., 5, 1)"/>
582 <xslo:for-each select="marc:subfield">
583 <xslo:if test="contains('a', @code)">
584 <z:index name="ff8-29:w">
585 <xslo:value-of select="substring(., 8, 1)"/>
589 <xslo:for-each select="marc:subfield">
590 <xslo:if test="contains('a', @code)">
591 <z:index name="Title-page-availability:w">
592 <xslo:value-of select="substring(., 9, 1)"/>
596 <xslo:for-each select="marc:subfield">
597 <xslo:if test="contains('a', @code)">
598 <z:index name="ff8-31:w">
599 <xslo:value-of select="substring(., 10, 1)"/>
603 <xslo:for-each select="marc:subfield">
604 <xslo:if test="contains('a', @code)">
605 <z:index name="Cumulative-index-availability:w">
606 <xslo:value-of select="substring(., 11, 1)"/>
611 <xslo:template mode="index_subfields" match="marc:datafield[@tag='115']">
612 <xslo:for-each select="marc:subfield">
613 <xslo:if test="contains('a', @code)">
614 <z:index name="Video-mt:w">
615 <xslo:value-of select="substring(., 1, 1)"/>
620 <xslo:template mode="index_subfields" match="marc:datafield[@tag='116']">
621 <xslo:for-each select="marc:subfield">
622 <xslo:if test="contains('a', @code)">
623 <z:index name="Graphics-type:w">
624 <xslo:value-of select="substring(., 1, 1)"/>
628 <xslo:for-each select="marc:subfield">
629 <xslo:if test="contains('a', @code)">
630 <z:index name="Graphics-support:w">
631 <xslo:value-of select="substring(., 2, 1)"/>
635 <xslo:for-each select="marc:subfield">
636 <xslo:if test="contains('a', @code)">
637 <z:index name="Graphics-support:w">
638 <xslo:value-of select="substring(., 3, 1)"/>
643 <xslo:template mode="index_subfields" match="marc:datafield[@tag='700']">
644 <xslo:for-each select="marc:subfield">
645 <xslo:if test="contains('3', @code)">
646 <z:index name="Identifier-standard:w">
647 <xslo:value-of select="."/>
651 <xslo:for-each select="marc:subfield">
652 <xslo:if test="contains('9', @code)">
653 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
654 <xslo:value-of select="."/>
658 <xslo:for-each select="marc:subfield">
659 <xslo:if test="contains('a', @code)">
660 <z:index name="Author:w Personal-name:w Author:p Personal-name:p Personal-name:w Author:s">
661 <xslo:value-of select="."/>
666 <xslo:template mode="index_subfields" match="marc:datafield[@tag='701']">
667 <xslo:for-each select="marc:subfield">
668 <xslo:if test="contains('3', @code)">
669 <z:index name="Identifier-standard:w">
670 <xslo:value-of select="."/>
674 <xslo:for-each select="marc:subfield">
675 <xslo:if test="contains('9', @code)">
676 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
677 <xslo:value-of select="."/>
682 <xslo:template mode="index_subfields" match="marc:datafield[@tag='702']">
683 <xslo:for-each select="marc:subfield">
684 <xslo:if test="contains('3', @code)">
685 <z:index name="Identifier-standard:w">
686 <xslo:value-of select="."/>
690 <xslo:for-each select="marc:subfield">
691 <xslo:if test="contains('9', @code)">
692 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
693 <xslo:value-of select="."/>
698 <xslo:template mode="index_subfields" match="marc:datafield[@tag='710']">
699 <xslo:for-each select="marc:subfield">
700 <xslo:if test="contains('3', @code)">
701 <z:index name="Identifier-standard:w">
702 <xslo:value-of select="."/>
706 <xslo:for-each select="marc:subfield">
707 <xslo:if test="contains('9', @code)">
708 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
709 <xslo:value-of select="."/>
714 <xslo:template mode="index_subfields" match="marc:datafield[@tag='711']">
715 <xslo:for-each select="marc:subfield">
716 <xslo:if test="contains('3', @code)">
717 <z:index name="Identifier-standard:w">
718 <xslo:value-of select="."/>
722 <xslo:for-each select="marc:subfield">
723 <xslo:if test="contains('9', @code)">
724 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
725 <xslo:value-of select="."/>
730 <xslo:template mode="index_subfields" match="marc:datafield[@tag='712']">
731 <xslo:for-each select="marc:subfield">
732 <xslo:if test="contains('3', @code)">
733 <z:index name="Identifier-standard:w">
734 <xslo:value-of select="."/>
738 <xslo:for-each select="marc:subfield">
739 <xslo:if test="contains('9', @code)">
740 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
741 <xslo:value-of select="."/>
746 <xslo:template mode="index_subfields" match="marc:datafield[@tag='716']">
747 <xslo:for-each select="marc:subfield">
748 <xslo:if test="contains('9', @code)">
749 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
750 <xslo:value-of select="."/>
755 <xslo:template mode="index_subfields" match="marc:datafield[@tag='720']">
756 <xslo:for-each select="marc:subfield">
757 <xslo:if test="contains('9', @code)">
758 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
759 <xslo:value-of select="."/>
764 <xslo:template mode="index_subfields" match="marc:datafield[@tag='721']">
765 <xslo:for-each select="marc:subfield">
766 <xslo:if test="contains('9', @code)">
767 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
768 <xslo:value-of select="."/>
773 <xslo:template mode="index_subfields" match="marc:datafield[@tag='722']">
774 <xslo:for-each select="marc:subfield">
775 <xslo:if test="contains('9', @code)">
776 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
777 <xslo:value-of select="."/>
782 <xslo:template mode="index_subfields" match="marc:datafield[@tag='730']">
783 <xslo:for-each select="marc:subfield">
784 <xslo:if test="contains('9', @code)">
785 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
786 <xslo:value-of select="."/>
791 <xslo:template mode="index_subfields" match="marc:datafield[@tag='208']">
792 <xslo:for-each select="marc:subfield">
793 <xslo:if test="contains('ad', @code)">
794 <z:index name="Material-Type:w Material-Type:p">
795 <xslo:value-of select="."/>
800 <xslo:template mode="index_subfields" match="marc:datafield[@tag='210']">
801 <xslo:for-each select="marc:subfield">
802 <xslo:if test="contains('c', @code)">
803 <z:index name="Publisher:w Publisher:p">
804 <xslo:value-of select="."/>
808 <xslo:for-each select="marc:subfield">
809 <xslo:if test="contains('d', @code)">
810 <z:index name="pubdate:n pubdate:y">
811 <xslo:value-of select="."/>
816 <xslo:template mode="index_subfields" match="marc:datafield[@tag='225']">
817 <xslo:for-each select="marc:subfield">
818 <xslo:if test="contains('a', @code)">
819 <z:index name="Title-series:w Title-series:p">
820 <xslo:value-of select="."/>
824 <xslo:for-each select="marc:subfield">
825 <xslo:if test="contains('d', @code)">
826 <z:index name="Title-series:w Title-series:p">
827 <xslo:value-of select="."/>
831 <xslo:for-each select="marc:subfield">
832 <xslo:if test="contains('e', @code)">
833 <z:index name="Title-series:w Title-series:p">
834 <xslo:value-of select="."/>
838 <xslo:for-each select="marc:subfield">
839 <xslo:if test="contains('f', @code)">
840 <z:index name="Author:w Author:p Name-and-title:w Name-and-title:p">
841 <xslo:value-of select="."/>
845 <xslo:for-each select="marc:subfield">
846 <xslo:if test="contains('h', @code)">
847 <z:index name="Title-series:w Title-series:p">
848 <xslo:value-of select="."/>
852 <xslo:for-each select="marc:subfield">
853 <xslo:if test="contains('i', @code)">
854 <z:index name="Title-series:w Title-series:p">
855 <xslo:value-of select="."/>
859 <xslo:for-each select="marc:subfield">
860 <xslo:if test="contains('v', @code)">
861 <z:index name="Title-series:w Title-series:p">
862 <xslo:value-of select="."/>
866 <xslo:for-each select="marc:subfield">
867 <xslo:if test="contains('x', @code)">
868 <z:index name="ISSN:w">
869 <xslo:value-of select="."/>
874 <xslo:template mode="index_subfields" match="marc:datafield[@tag='300']">
875 <xslo:for-each select="marc:subfield">
876 <xslo:if test="contains('a', @code)">
877 <z:index name="Note:w Note:p">
878 <xslo:value-of select="."/>
883 <xslo:template mode="index_subfields" match="marc:datafield[@tag='301']">
884 <xslo:for-each select="marc:subfield">
885 <xslo:if test="contains('a', @code)">
886 <z:index name="Note:w Note:p">
887 <xslo:value-of select="."/>
892 <xslo:template mode="index_subfields" match="marc:datafield[@tag='302']">
893 <xslo:for-each select="marc:subfield">
894 <xslo:if test="contains('a', @code)">
895 <z:index name="Note:w Note:p">
896 <xslo:value-of select="."/>
901 <xslo:template mode="index_subfields" match="marc:datafield[@tag='303']">
902 <xslo:for-each select="marc:subfield">
903 <xslo:if test="contains('a', @code)">
904 <z:index name="Note:w Note:p">
905 <xslo:value-of select="."/>
910 <xslo:template mode="index_subfields" match="marc:datafield[@tag='304']">
911 <xslo:for-each select="marc:subfield">
912 <xslo:if test="contains('a', @code)">
913 <z:index name="Note:w Note:p Title:w Title:p">
914 <xslo:value-of select="."/>
919 <xslo:template mode="index_subfields" match="marc:datafield[@tag='305']">
920 <xslo:for-each select="marc:subfield">
921 <xslo:if test="contains('a', @code)">
922 <z:index name="Note:w Note:p">
923 <xslo:value-of select="."/>
928 <xslo:template mode="index_subfields" match="marc:datafield[@tag='306']">
929 <xslo:for-each select="marc:subfield">
930 <xslo:if test="contains('a', @code)">
931 <z:index name="Note:w Note:p">
932 <xslo:value-of select="."/>
937 <xslo:template mode="index_subfields" match="marc:datafield[@tag='307']">
938 <xslo:for-each select="marc:subfield">
939 <xslo:if test="contains('a', @code)">
940 <z:index name="Note:w Note:p">
941 <xslo:value-of select="."/>
946 <xslo:template mode="index_subfields" match="marc:datafield[@tag='308']">
947 <xslo:for-each select="marc:subfield">
948 <xslo:if test="contains('a', @code)">
949 <z:index name="Note:w Note:p">
950 <xslo:value-of select="."/>
955 <xslo:template mode="index_subfields" match="marc:datafield[@tag='310']">
956 <xslo:for-each select="marc:subfield">
957 <xslo:if test="contains('a', @code)">
958 <z:index name="Note:w Note:p">
959 <xslo:value-of select="."/>
964 <xslo:template mode="index_subfields" match="marc:datafield[@tag='311']">
965 <xslo:for-each select="marc:subfield">
966 <xslo:if test="contains('a', @code)">
967 <z:index name="Note:w Note:p">
968 <xslo:value-of select="."/>
973 <xslo:template mode="index_subfields" match="marc:datafield[@tag='312']">
974 <xslo:for-each select="marc:subfield">
975 <xslo:if test="contains('a', @code)">
976 <z:index name="Note:w Note:p">
977 <xslo:value-of select="."/>
982 <xslo:template mode="index_subfields" match="marc:datafield[@tag='313']">
983 <xslo:for-each select="marc:subfield">
984 <xslo:if test="contains('a', @code)">
985 <z:index name="Note:w Note:p">
986 <xslo:value-of select="."/>
991 <xslo:template mode="index_subfields" match="marc:datafield[@tag='314']">
992 <xslo:for-each select="marc:subfield">
993 <xslo:if test="contains('a', @code)">
994 <z:index name="Note:w Note:p Author:w Author:p">
995 <xslo:value-of select="."/>
1000 <xslo:template mode="index_subfields" match="marc:datafield[@tag='315']">
1001 <xslo:for-each select="marc:subfield">
1002 <xslo:if test="contains('a', @code)">
1003 <z:index name="Note:w Note:p">
1004 <xslo:value-of select="."/>
1009 <xslo:template mode="index_subfields" match="marc:datafield[@tag='316']">
1010 <xslo:for-each select="marc:subfield">
1011 <xslo:if test="contains('a', @code)">
1012 <z:index name="Note:w Note:p">
1013 <xslo:value-of select="."/>
1018 <xslo:template mode="index_subfields" match="marc:datafield[@tag='317']">
1019 <xslo:for-each select="marc:subfield">
1020 <xslo:if test="contains('a', @code)">
1021 <z:index name="Note:w Note:p">
1022 <xslo:value-of select="."/>
1027 <xslo:template mode="index_subfields" match="marc:datafield[@tag='320']">
1028 <xslo:for-each select="marc:subfield">
1029 <xslo:if test="contains('a', @code)">
1030 <z:index name="Note:w Note:p">
1031 <xslo:value-of select="."/>
1036 <xslo:template mode="index_subfields" match="marc:datafield[@tag='321']">
1037 <xslo:for-each select="marc:subfield">
1038 <xslo:if test="contains('a', @code)">
1039 <z:index name="Note:w Note:p">
1040 <xslo:value-of select="."/>
1045 <xslo:template mode="index_subfields" match="marc:datafield[@tag='322']">
1046 <xslo:for-each select="marc:subfield">
1047 <xslo:if test="contains('a', @code)">
1048 <z:index name="Note:w Note:p">
1049 <xslo:value-of select="."/>
1054 <xslo:template mode="index_subfields" match="marc:datafield[@tag='323']">
1055 <xslo:for-each select="marc:subfield">
1056 <xslo:if test="contains('a', @code)">
1057 <z:index name="Note:w Note:p">
1058 <xslo:value-of select="."/>
1063 <xslo:template mode="index_subfields" match="marc:datafield[@tag='324']">
1064 <xslo:for-each select="marc:subfield">
1065 <xslo:if test="contains('a', @code)">
1066 <z:index name="Note:w Note:p">
1067 <xslo:value-of select="."/>
1072 <xslo:template mode="index_subfields" match="marc:datafield[@tag='325']">
1073 <xslo:for-each select="marc:subfield">
1074 <xslo:if test="contains('a', @code)">
1075 <z:index name="Note:w Note:p">
1076 <xslo:value-of select="."/>
1081 <xslo:template mode="index_subfields" match="marc:datafield[@tag='326']">
1082 <xslo:for-each select="marc:subfield">
1083 <xslo:if test="contains('a', @code)">
1084 <z:index name="Note:w Note:p">
1085 <xslo:value-of select="."/>
1090 <xslo:template mode="index_subfields" match="marc:datafield[@tag='327']">
1091 <xslo:for-each select="marc:subfield">
1092 <xslo:if test="contains('abcdefghi', @code)">
1093 <z:index name="Note:w Note:p Title:w Title:p">
1094 <xslo:value-of select="."/>
1099 <xslo:template mode="index_subfields" match="marc:datafield[@tag='328']">
1100 <xslo:for-each select="marc:subfield">
1101 <xslo:if test="contains('abcde', @code)">
1102 <z:index name="Note:w Note:p Dissertation-information:p Dissertation-information:w">
1103 <xslo:value-of select="."/>
1107 <xslo:for-each select="marc:subfield">
1108 <xslo:if test="contains('t', @code)">
1109 <z:index name="Note:w Note:p Dissertation-information:p Dissertation-information:w Title:p Title:w">
1110 <xslo:value-of select="."/>
1115 <xslo:template mode="index_subfields" match="marc:datafield[@tag='330']">
1116 <xslo:for-each select="marc:subfield">
1117 <xslo:if test="contains('a', @code)">
1118 <z:index name="Abstract:w Note:w Abstract:p Note:p">
1119 <xslo:value-of select="."/>
1124 <xslo:template mode="index_subfields" match="marc:datafield[@tag='332']">
1125 <xslo:for-each select="marc:subfield">
1126 <xslo:if test="contains('a', @code)">
1127 <z:index name="Note:w Note:p">
1128 <xslo:value-of select="."/>
1133 <xslo:template mode="index_subfields" match="marc:datafield[@tag='333']">
1134 <xslo:for-each select="marc:subfield">
1135 <xslo:if test="contains('a', @code)">
1136 <z:index name="Note:w Note:p">
1137 <xslo:value-of select="."/>
1142 <xslo:template mode="index_subfields" match="marc:datafield[@tag='334']">
1143 <xslo:for-each select="marc:subfield">
1144 <xslo:if test="contains('abcd', @code)">
1145 <z:index name="Note:w Note:p">
1146 <xslo:value-of select="."/>
1151 <xslo:template mode="index_subfields" match="marc:datafield[@tag='336']">
1152 <xslo:for-each select="marc:subfield">
1153 <xslo:if test="contains('a', @code)">
1154 <z:index name="Note:w Note:p">
1155 <xslo:value-of select="."/>
1160 <xslo:template mode="index_subfields" match="marc:datafield[@tag='337']">
1161 <xslo:for-each select="marc:subfield">
1162 <xslo:if test="contains('a', @code)">
1163 <z:index name="Note:w Note:p">
1164 <xslo:value-of select="."/>
1169 <xslo:template mode="index_subfields" match="marc:datafield[@tag='345']">
1170 <xslo:for-each select="marc:subfield">
1171 <xslo:if test="contains('a', @code)">
1172 <z:index name="Note:w Note:p">
1173 <xslo:value-of select="."/>
1178 <xslo:template mode="index_subfields" match="marc:datafield[@tag='410']">
1179 <xslo:for-each select="marc:subfield">
1180 <xslo:if test="contains('t', @code)">
1181 <z:index name="Title-series:w Title-series:p">
1182 <xslo:value-of select="."/>
1187 <xslo:template mode="index_subfields" match="marc:datafield[@tag='413']">
1188 <xslo:for-each select="marc:subfield">
1189 <xslo:if test="contains('t', @code)">
1190 <z:index name="Title:w Title:p">
1191 <xslo:value-of select="."/>
1196 <xslo:template mode="index_subfields" match="marc:datafield[@tag='421']">
1197 <xslo:for-each select="marc:subfield">
1198 <xslo:if test="contains('t', @code)">
1199 <z:index name="Title:w Title:p">
1200 <xslo:value-of select="."/>
1205 <xslo:template mode="index_subfields" match="marc:datafield[@tag='422']">
1206 <xslo:for-each select="marc:subfield">
1207 <xslo:if test="contains('t', @code)">
1208 <z:index name="Title:w Title:p">
1209 <xslo:value-of select="."/>
1214 <xslo:template mode="index_subfields" match="marc:datafield[@tag='423']">
1215 <xslo:for-each select="marc:subfield">
1216 <xslo:if test="contains('t', @code)">
1217 <z:index name="Title:w Title:p">
1218 <xslo:value-of select="."/>
1223 <xslo:template mode="index_subfields" match="marc:datafield[@tag='424']">
1224 <xslo:for-each select="marc:subfield">
1225 <xslo:if test="contains('t', @code)">
1226 <z:index name="Title:w Title:p">
1227 <xslo:value-of select="."/>
1232 <xslo:template mode="index_subfields" match="marc:datafield[@tag='425']">
1233 <xslo:for-each select="marc:subfield">
1234 <xslo:if test="contains('t', @code)">
1235 <z:index name="Title:w Title:p">
1236 <xslo:value-of select="."/>
1241 <xslo:template mode="index_subfields" match="marc:datafield[@tag='430']">
1242 <xslo:for-each select="marc:subfield">
1243 <xslo:if test="contains('t', @code)">
1244 <z:index name="Title:w Title:p">
1245 <xslo:value-of select="."/>
1250 <xslo:template mode="index_subfields" match="marc:datafield[@tag='431']">
1251 <xslo:for-each select="marc:subfield">
1252 <xslo:if test="contains('t', @code)">
1253 <z:index name="Title:w Title:p">
1254 <xslo:value-of select="."/>
1259 <xslo:template mode="index_subfields" match="marc:datafield[@tag='432']">
1260 <xslo:for-each select="marc:subfield">
1261 <xslo:if test="contains('t', @code)">
1262 <z:index name="Title:w Title:p">
1263 <xslo:value-of select="."/>
1268 <xslo:template mode="index_subfields" match="marc:datafield[@tag='433']">
1269 <xslo:for-each select="marc:subfield">
1270 <xslo:if test="contains('t', @code)">
1271 <z:index name="Title:w Title:p">
1272 <xslo:value-of select="."/>
1277 <xslo:template mode="index_subfields" match="marc:datafield[@tag='434']">
1278 <xslo:for-each select="marc:subfield">
1279 <xslo:if test="contains('t', @code)">
1280 <z:index name="Title:w Title:p">
1281 <xslo:value-of select="."/>
1286 <xslo:template mode="index_subfields" match="marc:datafield[@tag='435']">
1287 <xslo:for-each select="marc:subfield">
1288 <xslo:if test="contains('t', @code)">
1289 <z:index name="Title:w Title:p">
1290 <xslo:value-of select="."/>
1295 <xslo:template mode="index_subfields" match="marc:datafield[@tag='436']">
1296 <xslo:for-each select="marc:subfield">
1297 <xslo:if test="contains('t', @code)">
1298 <z:index name="Title:w Title:p">
1299 <xslo:value-of select="."/>
1304 <xslo:template mode="index_subfields" match="marc:datafield[@tag='437']">
1305 <xslo:for-each select="marc:subfield">
1306 <xslo:if test="contains('t', @code)">
1307 <z:index name="Title:w Title:p">
1308 <xslo:value-of select="."/>
1313 <xslo:template mode="index_subfields" match="marc:datafield[@tag='440']">
1314 <xslo:for-each select="marc:subfield">
1315 <xslo:if test="contains('t', @code)">
1316 <z:index name="Title:w Title:p">
1317 <xslo:value-of select="."/>
1322 <xslo:template mode="index_subfields" match="marc:datafield[@tag='441']">
1323 <xslo:for-each select="marc:subfield">
1324 <xslo:if test="contains('t', @code)">
1325 <z:index name="Title:w Title:p">
1326 <xslo:value-of select="."/>
1331 <xslo:template mode="index_subfields" match="marc:datafield[@tag='442']">
1332 <xslo:for-each select="marc:subfield">
1333 <xslo:if test="contains('t', @code)">
1334 <z:index name="Title:w Title:p">
1335 <xslo:value-of select="."/>
1340 <xslo:template mode="index_subfields" match="marc:datafield[@tag='443']">
1341 <xslo:for-each select="marc:subfield">
1342 <xslo:if test="contains('t', @code)">
1343 <z:index name="Title:w Title:p">
1344 <xslo:value-of select="."/>
1349 <xslo:template mode="index_subfields" match="marc:datafield[@tag='444']">
1350 <xslo:for-each select="marc:subfield">
1351 <xslo:if test="contains('t', @code)">
1352 <z:index name="Title:w Title:p">
1353 <xslo:value-of select="."/>
1358 <xslo:template mode="index_subfields" match="marc:datafield[@tag='445']">
1359 <xslo:for-each select="marc:subfield">
1360 <xslo:if test="contains('t', @code)">
1361 <z:index name="Title:w Title:p">
1362 <xslo:value-of select="."/>
1367 <xslo:template mode="index_subfields" match="marc:datafield[@tag='446']">
1368 <xslo:for-each select="marc:subfield">
1369 <xslo:if test="contains('t', @code)">
1370 <z:index name="Title:w Title:p">
1371 <xslo:value-of select="."/>
1376 <xslo:template mode="index_subfields" match="marc:datafield[@tag='447']">
1377 <xslo:for-each select="marc:subfield">
1378 <xslo:if test="contains('t', @code)">
1379 <z:index name="Title:w Title:p">
1380 <xslo:value-of select="."/>
1385 <xslo:template mode="index_subfields" match="marc:datafield[@tag='448']">
1386 <xslo:for-each select="marc:subfield">
1387 <xslo:if test="contains('t', @code)">
1388 <z:index name="Title:w Title:p">
1389 <xslo:value-of select="."/>
1394 <xslo:template mode="index_subfields" match="marc:datafield[@tag='451']">
1395 <xslo:for-each select="marc:subfield">
1396 <xslo:if test="contains('t', @code)">
1397 <z:index name="Title:w Title:p">
1398 <xslo:value-of select="."/>
1403 <xslo:template mode="index_subfields" match="marc:datafield[@tag='452']">
1404 <xslo:for-each select="marc:subfield">
1405 <xslo:if test="contains('t', @code)">
1406 <z:index name="Title:w Title:p">
1407 <xslo:value-of select="."/>
1412 <xslo:template mode="index_subfields" match="marc:datafield[@tag='453']">
1413 <xslo:for-each select="marc:subfield">
1414 <xslo:if test="contains('t', @code)">
1415 <z:index name="Title:w Title:p">
1416 <xslo:value-of select="."/>
1421 <xslo:template mode="index_subfields" match="marc:datafield[@tag='454']">
1422 <xslo:for-each select="marc:subfield">
1423 <xslo:if test="contains('t', @code)">
1424 <z:index name="Title:w Title:p">
1425 <xslo:value-of select="."/>
1430 <xslo:template mode="index_subfields" match="marc:datafield[@tag='455']">
1431 <xslo:for-each select="marc:subfield">
1432 <xslo:if test="contains('t', @code)">
1433 <z:index name="Title:w Title:p">
1434 <xslo:value-of select="."/>
1439 <xslo:template mode="index_subfields" match="marc:datafield[@tag='456']">
1440 <xslo:for-each select="marc:subfield">
1441 <xslo:if test="contains('t', @code)">
1442 <z:index name="Title:w Title:p">
1443 <xslo:value-of select="."/>
1448 <xslo:template mode="index_subfields" match="marc:datafield[@tag='461']">
1449 <xslo:for-each select="marc:subfield">
1450 <xslo:if test="contains('t', @code)">
1451 <z:index name="Title:w Title:p Host-item:w Host-item:p">
1452 <xslo:value-of select="."/>
1457 <xslo:template mode="index_subfields" match="marc:datafield[@tag='462']">
1458 <xslo:for-each select="marc:subfield">
1459 <xslo:if test="contains('t', @code)">
1460 <z:index name="Title:w Title:p">
1461 <xslo:value-of select="."/>
1466 <xslo:template mode="index_subfields" match="marc:datafield[@tag='463']">
1467 <xslo:for-each select="marc:subfield">
1468 <xslo:if test="contains('t', @code)">
1469 <z:index name="Title:w Title:p">
1470 <xslo:value-of select="."/>
1475 <xslo:template mode="index_subfields" match="marc:datafield[@tag='464']">
1476 <xslo:for-each select="marc:subfield">
1477 <xslo:if test="contains('t', @code)">
1478 <z:index name="Title:w Title:p Host-item:w Host-item:p">
1479 <xslo:value-of select="."/>
1484 <xslo:template mode="index_subfields" match="marc:datafield[@tag='470']">
1485 <xslo:for-each select="marc:subfield">
1486 <xslo:if test="contains('t', @code)">
1487 <z:index name="Title:w Title:p">
1488 <xslo:value-of select="."/>
1493 <xslo:template mode="index_subfields" match="marc:datafield[@tag='481']">
1494 <xslo:for-each select="marc:subfield">
1495 <xslo:if test="contains('t', @code)">
1496 <z:index name="Title:w Title:p">
1497 <xslo:value-of select="."/>
1502 <xslo:template mode="index_subfields" match="marc:datafield[@tag='482']">
1503 <xslo:for-each select="marc:subfield">
1504 <xslo:if test="contains('t', @code)">
1505 <z:index name="Title:w Title:p">
1506 <xslo:value-of select="."/>
1511 <xslo:template mode="index_subfields" match="marc:datafield[@tag='488']">
1512 <xslo:for-each select="marc:subfield">
1513 <xslo:if test="contains('t', @code)">
1514 <z:index name="Title:w Title:p">
1515 <xslo:value-of select="."/>
1520 <xslo:template mode="index_subfields" match="marc:datafield[@tag='500']">
1521 <xslo:for-each select="marc:subfield">
1522 <xslo:if test="contains('9', @code)">
1523 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1524 <xslo:value-of select="."/>
1529 <xslo:template mode="index_subfields" match="marc:datafield[@tag='501']">
1530 <xslo:for-each select="marc:subfield">
1531 <xslo:if test="contains('9', @code)">
1532 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1533 <xslo:value-of select="."/>
1538 <xslo:template mode="index_subfields" match="marc:datafield[@tag='503']">
1539 <xslo:for-each select="marc:subfield">
1540 <xslo:if test="contains('9', @code)">
1541 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1542 <xslo:value-of select="."/>
1547 <xslo:template mode="index_subfields" match="marc:datafield[@tag='510']">
1548 <xslo:for-each select="marc:subfield">
1549 <xslo:if test="contains('9', @code)">
1550 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1551 <xslo:value-of select="."/>
1556 <xslo:template mode="index_subfields" match="marc:datafield[@tag='512']">
1557 <xslo:for-each select="marc:subfield">
1558 <xslo:if test="contains('9', @code)">
1559 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1560 <xslo:value-of select="."/>
1565 <xslo:template mode="index_subfields" match="marc:datafield[@tag='513']">
1566 <xslo:for-each select="marc:subfield">
1567 <xslo:if test="contains('9', @code)">
1568 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1569 <xslo:value-of select="."/>
1574 <xslo:template mode="index_subfields" match="marc:datafield[@tag='514']">
1575 <xslo:for-each select="marc:subfield">
1576 <xslo:if test="contains('9', @code)">
1577 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1578 <xslo:value-of select="."/>
1583 <xslo:template mode="index_subfields" match="marc:datafield[@tag='515']">
1584 <xslo:for-each select="marc:subfield">
1585 <xslo:if test="contains('9', @code)">
1586 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1587 <xslo:value-of select="."/>
1592 <xslo:template mode="index_subfields" match="marc:datafield[@tag='516']">
1593 <xslo:for-each select="marc:subfield">
1594 <xslo:if test="contains('9', @code)">
1595 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1596 <xslo:value-of select="."/>
1601 <xslo:template mode="index_subfields" match="marc:datafield[@tag='517']">
1602 <xslo:for-each select="marc:subfield">
1603 <xslo:if test="contains('9', @code)">
1604 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1605 <xslo:value-of select="."/>
1610 <xslo:template mode="index_subfields" match="marc:datafield[@tag='518']">
1611 <xslo:for-each select="marc:subfield">
1612 <xslo:if test="contains('9', @code)">
1613 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1614 <xslo:value-of select="."/>
1619 <xslo:template mode="index_subfields" match="marc:datafield[@tag='519']">
1620 <xslo:for-each select="marc:subfield">
1621 <xslo:if test="contains('9', @code)">
1622 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1623 <xslo:value-of select="."/>
1628 <xslo:template mode="index_subfields" match="marc:datafield[@tag='520']">
1629 <xslo:for-each select="marc:subfield">
1630 <xslo:if test="contains('9', @code)">
1631 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1632 <xslo:value-of select="."/>
1637 <xslo:template mode="index_subfields" match="marc:datafield[@tag='530']">
1638 <xslo:for-each select="marc:subfield">
1639 <xslo:if test="contains('9', @code)">
1640 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1641 <xslo:value-of select="."/>
1646 <xslo:template mode="index_subfields" match="marc:datafield[@tag='531']">
1647 <xslo:for-each select="marc:subfield">
1648 <xslo:if test="contains('9', @code)">
1649 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1650 <xslo:value-of select="."/>
1655 <xslo:template mode="index_subfields" match="marc:datafield[@tag='532']">
1656 <xslo:for-each select="marc:subfield">
1657 <xslo:if test="contains('9', @code)">
1658 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1659 <xslo:value-of select="."/>
1664 <xslo:template mode="index_subfields" match="marc:datafield[@tag='540']">
1665 <xslo:for-each select="marc:subfield">
1666 <xslo:if test="contains('9', @code)">
1667 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1668 <xslo:value-of select="."/>
1673 <xslo:template mode="index_subfields" match="marc:datafield[@tag='541']">
1674 <xslo:for-each select="marc:subfield">
1675 <xslo:if test="contains('9', @code)">
1676 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1677 <xslo:value-of select="."/>
1682 <xslo:template mode="index_subfields" match="marc:datafield[@tag='545']">
1683 <xslo:for-each select="marc:subfield">
1684 <xslo:if test="contains('9', @code)">
1685 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1686 <xslo:value-of select="."/>
1691 <xslo:template mode="index_subfields" match="marc:datafield[@tag='560']">
1692 <xslo:for-each select="marc:subfield">
1693 <xslo:if test="contains('9', @code)">
1694 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1695 <xslo:value-of select="."/>
1700 <xslo:template mode="index_subfields" match="marc:datafield[@tag='600']">
1701 <xslo:for-each select="marc:subfield">
1702 <xslo:if test="contains('a', @code)">
1703 <z:index name="Personal-name:w Personal-name:p Subject:w Subject:p">
1704 <xslo:value-of select="."/>
1708 <xslo:for-each select="marc:subfield">
1709 <xslo:if test="contains('9', @code)">
1710 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1711 <xslo:value-of select="."/>
1716 <xslo:template mode="index_subfields" match="marc:datafield[@tag='601']">
1717 <xslo:for-each select="marc:subfield">
1718 <xslo:if test="contains('a', @code)">
1719 <z:index name="Corporate-name:w Conference-name:w Corporate-name:p Conference-name:p">
1720 <xslo:value-of select="."/>
1724 <xslo:for-each select="marc:subfield">
1725 <xslo:if test="contains('9', @code)">
1726 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1727 <xslo:value-of select="."/>
1732 <xslo:template mode="index_subfields" match="marc:datafield[@tag='602']">
1733 <xslo:for-each select="marc:subfield">
1734 <xslo:if test="contains('a', @code)">
1735 <z:index name="Personal-name:w Personal-name:p">
1736 <xslo:value-of select="."/>
1740 <xslo:for-each select="marc:subfield">
1741 <xslo:if test="contains('9', @code)">
1742 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1743 <xslo:value-of select="."/>
1748 <xslo:template mode="index_subfields" match="marc:datafield[@tag='604']">
1749 <xslo:for-each select="marc:subfield">
1750 <xslo:if test="contains('9', @code)">
1751 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1752 <xslo:value-of select="."/>
1757 <xslo:template mode="index_subfields" match="marc:datafield[@tag='605']">
1758 <xslo:for-each select="marc:subfield">
1759 <xslo:if test="contains('9', @code)">
1760 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1761 <xslo:value-of select="."/>
1766 <xslo:template mode="index_subfields" match="marc:datafield[@tag='606']">
1767 <xslo:for-each select="marc:subfield">
1768 <xslo:if test="contains('9', @code)">
1769 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1770 <xslo:value-of select="."/>
1775 <xslo:template mode="index_subfields" match="marc:datafield[@tag='607']">
1776 <xslo:for-each select="marc:subfield">
1777 <xslo:if test="contains('9', @code)">
1778 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1779 <xslo:value-of select="."/>
1784 <xslo:template mode="index_subfields" match="marc:datafield[@tag='608']">
1785 <xslo:for-each select="marc:subfield">
1786 <xslo:if test="contains('9', @code)">
1787 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1788 <xslo:value-of select="."/>
1793 <xslo:template mode="index_subfields" match="marc:datafield[@tag='610']">
1794 <xslo:for-each select="marc:subfield">
1795 <xslo:if test="contains('9', @code)">
1796 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1797 <xslo:value-of select="."/>
1802 <xslo:template mode="index_subfields" match="marc:datafield[@tag='615']">
1803 <xslo:for-each select="marc:subfield">
1804 <xslo:if test="contains('9', @code)">
1805 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1806 <xslo:value-of select="."/>
1811 <xslo:template mode="index_subfields" match="marc:datafield[@tag='616']">
1812 <xslo:for-each select="marc:subfield">
1813 <xslo:if test="contains('9', @code)">
1814 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1815 <xslo:value-of select="."/>
1820 <xslo:template mode="index_subfields" match="marc:datafield[@tag='617']">
1821 <xslo:for-each select="marc:subfield">
1822 <xslo:if test="contains('9', @code)">
1823 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1824 <xslo:value-of select="."/>
1829 <xslo:template mode="index_subfields" match="marc:datafield[@tag='620']">
1830 <xslo:for-each select="marc:subfield">
1831 <xslo:if test="contains('9', @code)">
1832 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1833 <xslo:value-of select="."/>
1838 <xslo:template mode="index_subfields" match="marc:datafield[@tag='621']">
1839 <xslo:for-each select="marc:subfield">
1840 <xslo:if test="contains('9', @code)">
1841 <z:index name="Koha-Auth-Number:w Koha-Auth-Number:n">
1842 <xslo:value-of select="."/>
1847 <xslo:template mode="index_subfields" match="marc:datafield[@tag='675']">
1848 <xslo:for-each select="marc:subfield">
1849 <xslo:if test="contains('a', @code)">
1850 <z:index name="UDC-classification:w UDC-classification:p UDC-classification:s">
1851 <xslo:value-of select="."/>
1856 <xslo:template mode="index_subfields" match="marc:datafield[@tag='676']">
1857 <xslo:for-each select="marc:subfield">
1858 <xslo:if test="contains('a', @code)">
1859 <z:index name="Dewey-classification:w Dewey-classification:p Dewey-classification:s">
1860 <xslo:value-of select="."/>
1865 <xslo:template mode="index_subfields" match="marc:datafield[@tag='680']">
1866 <xslo:for-each select="marc:subfield">
1867 <xslo:if test="contains('b', @code)">
1868 <z:index name="LC-call-number:s">
1869 <xslo:value-of select="."/>
1874 <xslo:template mode="index_subfields" match="marc:datafield[@tag='942']">
1875 <xslo:for-each select="marc:subfield">
1876 <xslo:if test="contains('0', @code)">
1877 <z:index name="totalissues:n totalissues:s">
1878 <xslo:value-of select="."/>
1883 <xslo:template mode="index_data_field" match="marc:datafield[@tag='700']">
1884 <z:index name="Author:w Personal-name:w Author:p Personal-name:p Personal-name:p">
1885 <xslo:variable name="raw_heading">
1886 <xslo:for-each select="marc:subfield">
1887 <xslo:if test="position() > 1">
1888 <xslo:value-of select="substring(' ', 1, 1)"/>
1890 <xslo:value-of select="."/>
1893 <xslo:value-of select="normalize-space($raw_heading)"/>
1896 <xslo:template mode="index_data_field" match="marc:datafield[@tag='701']">
1897 <z:index name="Author:w Personal-name:w Author:p Personal-name:p Personal-name:p">
1898 <xslo:variable name="raw_heading">
1899 <xslo:for-each select="marc:subfield">
1900 <xslo:if test="position() > 1">
1901 <xslo:value-of select="substring(' ', 1, 1)"/>
1903 <xslo:value-of select="."/>
1906 <xslo:value-of select="normalize-space($raw_heading)"/>
1909 <xslo:template mode="index_data_field" match="marc:datafield[@tag='702']">
1910 <z:index name="Author:w Personal-name:w Author:p Personal-name:p Personal-name:p">
1911 <xslo:variable name="raw_heading">
1912 <xslo:for-each select="marc:subfield">
1913 <xslo:if test="position() > 1">
1914 <xslo:value-of select="substring(' ', 1, 1)"/>
1916 <xslo:value-of select="."/>
1919 <xslo:value-of select="normalize-space($raw_heading)"/>
1922 <xslo:template mode="index_data_field" match="marc:datafield[@tag='710']">
1923 <z:index name="Author:w Author-name-corporate:w Author-name-conference:w Corporate-name:w Conference-name:w Author:p Author-name-corporate:p Author-name-conference:p Corporate-name:p Conference-name:p">
1924 <xslo:variable name="raw_heading">
1925 <xslo:for-each select="marc:subfield">
1926 <xslo:if test="position() > 1">
1927 <xslo:value-of select="substring(' ', 1, 1)"/>
1929 <xslo:value-of select="."/>
1932 <xslo:value-of select="normalize-space($raw_heading)"/>
1935 <xslo:template mode="index_data_field" match="marc:datafield[@tag='711']">
1936 <z:index name="Author:w Author-name-corporate:w Author-name-conference:w Corporate-name:w Conference-name:w Author:p Author-name-corporate:p Author-name-conference:p Corporate-name:p Conference-name:p">
1937 <xslo:variable name="raw_heading">
1938 <xslo:for-each select="marc:subfield">
1939 <xslo:if test="position() > 1">
1940 <xslo:value-of select="substring(' ', 1, 1)"/>
1942 <xslo:value-of select="."/>
1945 <xslo:value-of select="normalize-space($raw_heading)"/>
1948 <xslo:template mode="index_data_field" match="marc:datafield[@tag='712']">
1949 <z:index name="Author:w Author-name-corporate:w Author-name-conference:w Corporate-name:w Conference-name:w Author:p Author-name-corporate:p Author-name-conference:p Corporate-name:p Conference-name:p">
1950 <xslo:variable name="raw_heading">
1951 <xslo:for-each select="marc:subfield">
1952 <xslo:if test="position() > 1">
1953 <xslo:value-of select="substring(' ', 1, 1)"/>
1955 <xslo:value-of select="."/>
1958 <xslo:value-of select="normalize-space($raw_heading)"/>
1961 <xslo:template mode="index_data_field" match="marc:datafield[@tag='716']">
1962 <z:index name="Author:w Author:p">
1963 <xslo:variable name="raw_heading">
1964 <xslo:for-each select="marc:subfield">
1965 <xslo:if test="position() > 1">
1966 <xslo:value-of select="substring(' ', 1, 1)"/>
1968 <xslo:value-of select="."/>
1971 <xslo:value-of select="normalize-space($raw_heading)"/>
1974 <xslo:template mode="index_data_field" match="marc:datafield[@tag='720']">
1975 <z:index name="Author:w Author:p">
1976 <xslo:variable name="raw_heading">
1977 <xslo:for-each select="marc:subfield">
1978 <xslo:if test="position() > 1">
1979 <xslo:value-of select="substring(' ', 1, 1)"/>
1981 <xslo:value-of select="."/>
1984 <xslo:value-of select="normalize-space($raw_heading)"/>
1987 <xslo:template mode="index_data_field" match="marc:datafield[@tag='721']">
1988 <z:index name="Author:w Author:p">
1989 <xslo:variable name="raw_heading">
1990 <xslo:for-each select="marc:subfield">
1991 <xslo:if test="position() > 1">
1992 <xslo:value-of select="substring(' ', 1, 1)"/>
1994 <xslo:value-of select="."/>
1997 <xslo:value-of select="normalize-space($raw_heading)"/>
2000 <xslo:template mode="index_data_field" match="marc:datafield[@tag='722']">
2001 <z:index name="Author:w Author:p">
2002 <xslo:variable name="raw_heading">
2003 <xslo:for-each select="marc:subfield">
2004 <xslo:if test="position() > 1">
2005 <xslo:value-of select="substring(' ', 1, 1)"/>
2007 <xslo:value-of select="."/>
2010 <xslo:value-of select="normalize-space($raw_heading)"/>
2013 <xslo:template mode="index_data_field" match="marc:datafield[@tag='730']">
2014 <z:index name="Author:w Author:p">
2015 <xslo:variable name="raw_heading">
2016 <xslo:for-each select="marc:subfield">
2017 <xslo:if test="position() > 1">
2018 <xslo:value-of select="substring(' ', 1, 1)"/>
2020 <xslo:value-of select="."/>
2023 <xslo:value-of select="normalize-space($raw_heading)"/>
2026 <xslo:template mode="index_data_field" match="marc:datafield[@tag='205']">
2027 <z:index name="Title:w Title:p">
2028 <xslo:variable name="raw_heading">
2029 <xslo:for-each select="marc:subfield">
2030 <xslo:if test="position() > 1">
2031 <xslo:value-of select="substring(' ', 1, 1)"/>
2033 <xslo:value-of select="."/>
2036 <xslo:value-of select="normalize-space($raw_heading)"/>
2039 <xslo:template mode="index_data_field" match="marc:datafield[@tag='500']">
2040 <z:index name="Title:w Title:p">
2041 <xslo:variable name="raw_heading">
2042 <xslo:for-each select="marc:subfield">
2043 <xslo:if test="position() > 1">
2044 <xslo:value-of select="substring(' ', 1, 1)"/>
2046 <xslo:value-of select="."/>
2049 <xslo:value-of select="normalize-space($raw_heading)"/>
2052 <xslo:template mode="index_data_field" match="marc:datafield[@tag='501']">
2053 <z:index name="Title:w Title:p">
2054 <xslo:variable name="raw_heading">
2055 <xslo:for-each select="marc:subfield">
2056 <xslo:if test="position() > 1">
2057 <xslo:value-of select="substring(' ', 1, 1)"/>
2059 <xslo:value-of select="."/>
2062 <xslo:value-of select="normalize-space($raw_heading)"/>
2065 <xslo:template mode="index_data_field" match="marc:datafield[@tag='503']">
2066 <z:index name="Title:w Title:p">
2067 <xslo:variable name="raw_heading">
2068 <xslo:for-each select="marc:subfield">
2069 <xslo:if test="position() > 1">
2070 <xslo:value-of select="substring(' ', 1, 1)"/>
2072 <xslo:value-of select="."/>
2075 <xslo:value-of select="normalize-space($raw_heading)"/>
2078 <xslo:template mode="index_data_field" match="marc:datafield[@tag='510']">
2079 <z:index name="Title:w Title:p">
2080 <xslo:variable name="raw_heading">
2081 <xslo:for-each select="marc:subfield">
2082 <xslo:if test="position() > 1">
2083 <xslo:value-of select="substring(' ', 1, 1)"/>
2085 <xslo:value-of select="."/>
2088 <xslo:value-of select="normalize-space($raw_heading)"/>
2091 <xslo:template mode="index_data_field" match="marc:datafield[@tag='512']">
2092 <z:index name="Title:w Title:p">
2093 <xslo:variable name="raw_heading">
2094 <xslo:for-each select="marc:subfield">
2095 <xslo:if test="position() > 1">
2096 <xslo:value-of select="substring(' ', 1, 1)"/>
2098 <xslo:value-of select="."/>
2101 <xslo:value-of select="normalize-space($raw_heading)"/>
2104 <xslo:template mode="index_data_field" match="marc:datafield[@tag='513']">
2105 <z:index name="Title:w Title:p">
2106 <xslo:variable name="raw_heading">
2107 <xslo:for-each select="marc:subfield">
2108 <xslo:if test="position() > 1">
2109 <xslo:value-of select="substring(' ', 1, 1)"/>
2111 <xslo:value-of select="."/>
2114 <xslo:value-of select="normalize-space($raw_heading)"/>
2117 <xslo:template mode="index_data_field" match="marc:datafield[@tag='514']">
2118 <z:index name="Title:w Title:p">
2119 <xslo:variable name="raw_heading">
2120 <xslo:for-each select="marc:subfield">
2121 <xslo:if test="position() > 1">
2122 <xslo:value-of select="substring(' ', 1, 1)"/>
2124 <xslo:value-of select="."/>
2127 <xslo:value-of select="normalize-space($raw_heading)"/>
2130 <xslo:template mode="index_data_field" match="marc:datafield[@tag='515']">
2131 <z:index name="Title:w Title:p">
2132 <xslo:variable name="raw_heading">
2133 <xslo:for-each select="marc:subfield">
2134 <xslo:if test="position() > 1">
2135 <xslo:value-of select="substring(' ', 1, 1)"/>
2137 <xslo:value-of select="."/>
2140 <xslo:value-of select="normalize-space($raw_heading)"/>
2143 <xslo:template mode="index_data_field" match="marc:datafield[@tag='516']">
2144 <z:index name="Title:w Title:p">
2145 <xslo:variable name="raw_heading">
2146 <xslo:for-each select="marc:subfield">
2147 <xslo:if test="position() > 1">
2148 <xslo:value-of select="substring(' ', 1, 1)"/>
2150 <xslo:value-of select="."/>
2153 <xslo:value-of select="normalize-space($raw_heading)"/>
2156 <xslo:template mode="index_data_field" match="marc:datafield[@tag='517']">
2157 <z:index name="Title:w Title:p">
2158 <xslo:variable name="raw_heading">
2159 <xslo:for-each select="marc:subfield">
2160 <xslo:if test="position() > 1">
2161 <xslo:value-of select="substring(' ', 1, 1)"/>
2163 <xslo:value-of select="."/>
2166 <xslo:value-of select="normalize-space($raw_heading)"/>
2169 <xslo:template mode="index_data_field" match="marc:datafield[@tag='518']">
2170 <z:index name="Title:w Title:p">
2171 <xslo:variable name="raw_heading">
2172 <xslo:for-each select="marc:subfield">
2173 <xslo:if test="position() > 1">
2174 <xslo:value-of select="substring(' ', 1, 1)"/>
2176 <xslo:value-of select="."/>
2179 <xslo:value-of select="normalize-space($raw_heading)"/>
2182 <xslo:template mode="index_data_field" match="marc:datafield[@tag='519']">
2183 <z:index name="Title:w Title:p">
2184 <xslo:variable name="raw_heading">
2185 <xslo:for-each select="marc:subfield">
2186 <xslo:if test="position() > 1">
2187 <xslo:value-of select="substring(' ', 1, 1)"/>
2189 <xslo:value-of select="."/>
2192 <xslo:value-of select="normalize-space($raw_heading)"/>
2195 <xslo:template mode="index_data_field" match="marc:datafield[@tag='520']">
2196 <z:index name="Title:w Title:p">
2197 <xslo:variable name="raw_heading">
2198 <xslo:for-each select="marc:subfield">
2199 <xslo:if test="position() > 1">
2200 <xslo:value-of select="substring(' ', 1, 1)"/>
2202 <xslo:value-of select="."/>
2205 <xslo:value-of select="normalize-space($raw_heading)"/>
2208 <xslo:template mode="index_data_field" match="marc:datafield[@tag='530']">
2209 <z:index name="Title:w Title:p">
2210 <xslo:variable name="raw_heading">
2211 <xslo:for-each select="marc:subfield">
2212 <xslo:if test="position() > 1">
2213 <xslo:value-of select="substring(' ', 1, 1)"/>
2215 <xslo:value-of select="."/>
2218 <xslo:value-of select="normalize-space($raw_heading)"/>
2221 <xslo:template mode="index_data_field" match="marc:datafield[@tag='531']">
2222 <z:index name="Title:w Title:p">
2223 <xslo:variable name="raw_heading">
2224 <xslo:for-each select="marc:subfield">
2225 <xslo:if test="position() > 1">
2226 <xslo:value-of select="substring(' ', 1, 1)"/>
2228 <xslo:value-of select="."/>
2231 <xslo:value-of select="normalize-space($raw_heading)"/>
2234 <xslo:template mode="index_data_field" match="marc:datafield[@tag='532']">
2235 <z:index name="Title:w Title:p">
2236 <xslo:variable name="raw_heading">
2237 <xslo:for-each select="marc:subfield">
2238 <xslo:if test="position() > 1">
2239 <xslo:value-of select="substring(' ', 1, 1)"/>
2241 <xslo:value-of select="."/>
2244 <xslo:value-of select="normalize-space($raw_heading)"/>
2247 <xslo:template mode="index_data_field" match="marc:datafield[@tag='540']">
2248 <z:index name="Title:w Title:p">
2249 <xslo:variable name="raw_heading">
2250 <xslo:for-each select="marc:subfield">
2251 <xslo:if test="position() > 1">
2252 <xslo:value-of select="substring(' ', 1, 1)"/>
2254 <xslo:value-of select="."/>
2257 <xslo:value-of select="normalize-space($raw_heading)"/>
2260 <xslo:template mode="index_data_field" match="marc:datafield[@tag='541']">
2261 <z:index name="Title:w Title:p">
2262 <xslo:variable name="raw_heading">
2263 <xslo:for-each select="marc:subfield">
2264 <xslo:if test="position() > 1">
2265 <xslo:value-of select="substring(' ', 1, 1)"/>
2267 <xslo:value-of select="."/>
2270 <xslo:value-of select="normalize-space($raw_heading)"/>
2273 <xslo:template mode="index_data_field" match="marc:datafield[@tag='545']">
2274 <z:index name="Title:w Title:p">
2275 <xslo:variable name="raw_heading">
2276 <xslo:for-each select="marc:subfield">
2277 <xslo:if test="position() > 1">
2278 <xslo:value-of select="substring(' ', 1, 1)"/>
2280 <xslo:value-of select="."/>
2283 <xslo:value-of select="normalize-space($raw_heading)"/>
2286 <xslo:template mode="index_data_field" match="marc:datafield[@tag='560']">
2287 <z:index name="Title:w Title:p">
2288 <xslo:variable name="raw_heading">
2289 <xslo:for-each select="marc:subfield">
2290 <xslo:if test="position() > 1">
2291 <xslo:value-of select="substring(' ', 1, 1)"/>
2293 <xslo:value-of select="."/>
2296 <xslo:value-of select="normalize-space($raw_heading)"/>
2299 <xslo:template mode="index_data_field" match="marc:datafield[@tag='600']">
2300 <z:index name="Subject:w Subject:p">
2301 <xslo:variable name="raw_heading">
2302 <xslo:for-each select="marc:subfield">
2303 <xslo:if test="position() > 1">
2304 <xslo:value-of select="substring(' ', 1, 1)"/>
2306 <xslo:value-of select="."/>
2309 <xslo:value-of select="normalize-space($raw_heading)"/>
2312 <xslo:template mode="index_data_field" match="marc:datafield[@tag='601']">
2313 <z:index name="Subject:w Subject:p">
2314 <xslo:variable name="raw_heading">
2315 <xslo:for-each select="marc:subfield">
2316 <xslo:if test="position() > 1">
2317 <xslo:value-of select="substring(' ', 1, 1)"/>
2319 <xslo:value-of select="."/>
2322 <xslo:value-of select="normalize-space($raw_heading)"/>
2325 <xslo:template mode="index_data_field" match="marc:datafield[@tag='602']">
2326 <z:index name="Subject:w Subject:p">
2327 <xslo:variable name="raw_heading">
2328 <xslo:for-each select="marc:subfield">
2329 <xslo:if test="position() > 1">
2330 <xslo:value-of select="substring(' ', 1, 1)"/>
2332 <xslo:value-of select="."/>
2335 <xslo:value-of select="normalize-space($raw_heading)"/>
2338 <xslo:template mode="index_data_field" match="marc:datafield[@tag='604']">
2339 <z:index name="Subject:w Subject:p">
2340 <xslo:variable name="raw_heading">
2341 <xslo:for-each select="marc:subfield">
2342 <xslo:if test="position() > 1">
2343 <xslo:value-of select="substring(' ', 1, 1)"/>
2345 <xslo:value-of select="."/>
2348 <xslo:value-of select="normalize-space($raw_heading)"/>
2351 <xslo:template mode="index_data_field" match="marc:datafield[@tag='605']">
2352 <z:index name="Subject:w Subject:p">
2353 <xslo:variable name="raw_heading">
2354 <xslo:for-each select="marc:subfield">
2355 <xslo:if test="position() > 1">
2356 <xslo:value-of select="substring(' ', 1, 1)"/>
2358 <xslo:value-of select="."/>
2361 <xslo:value-of select="normalize-space($raw_heading)"/>
2364 <xslo:template mode="index_data_field" match="marc:datafield[@tag='606']">
2365 <z:index name="Subject:w Subject:p">
2366 <xslo:variable name="raw_heading">
2367 <xslo:for-each select="marc:subfield">
2368 <xslo:if test="position() > 1">
2369 <xslo:value-of select="substring(' ', 1, 1)"/>
2371 <xslo:value-of select="."/>
2374 <xslo:value-of select="normalize-space($raw_heading)"/>
2377 <xslo:template mode="index_data_field" match="marc:datafield[@tag='607']">
2378 <z:index name="Subject:w Subject:p">
2379 <xslo:variable name="raw_heading">
2380 <xslo:for-each select="marc:subfield">
2381 <xslo:if test="position() > 1">
2382 <xslo:value-of select="substring(' ', 1, 1)"/>
2384 <xslo:value-of select="."/>
2387 <xslo:value-of select="normalize-space($raw_heading)"/>
2390 <xslo:template mode="index_data_field" match="marc:datafield[@tag='608']">
2391 <z:index name="Subject:w Subject:p">
2392 <xslo:variable name="raw_heading">
2393 <xslo:for-each select="marc:subfield">
2394 <xslo:if test="position() > 1">
2395 <xslo:value-of select="substring(' ', 1, 1)"/>
2397 <xslo:value-of select="."/>
2400 <xslo:value-of select="normalize-space($raw_heading)"/>
2403 <xslo:template mode="index_data_field" match="marc:datafield[@tag='610']">
2404 <z:index name="Subject:w Subject:p">
2405 <xslo:variable name="raw_heading">
2406 <xslo:for-each select="marc:subfield">
2407 <xslo:if test="position() > 1">
2408 <xslo:value-of select="substring(' ', 1, 1)"/>
2410 <xslo:value-of select="."/>
2413 <xslo:value-of select="normalize-space($raw_heading)"/>
2416 <xslo:template mode="index_data_field" match="marc:datafield[@tag='615']">
2417 <z:index name="Subject:w Subject:p">
2418 <xslo:variable name="raw_heading">
2419 <xslo:for-each select="marc:subfield">
2420 <xslo:if test="position() > 1">
2421 <xslo:value-of select="substring(' ', 1, 1)"/>
2423 <xslo:value-of select="."/>
2426 <xslo:value-of select="normalize-space($raw_heading)"/>
2429 <xslo:template mode="index_data_field" match="marc:datafield[@tag='616']">
2430 <z:index name="Subject:w Subject:p">
2431 <xslo:variable name="raw_heading">
2432 <xslo:for-each select="marc:subfield">
2433 <xslo:if test="position() > 1">
2434 <xslo:value-of select="substring(' ', 1, 1)"/>
2436 <xslo:value-of select="."/>
2439 <xslo:value-of select="normalize-space($raw_heading)"/>
2442 <xslo:template mode="index_data_field" match="marc:datafield[@tag='617']">
2443 <z:index name="Subject:w Subject:p">
2444 <xslo:variable name="raw_heading">
2445 <xslo:for-each select="marc:subfield">
2446 <xslo:if test="position() > 1">
2447 <xslo:value-of select="substring(' ', 1, 1)"/>
2449 <xslo:value-of select="."/>
2452 <xslo:value-of select="normalize-space($raw_heading)"/>
2455 <xslo:template mode="index_data_field" match="marc:datafield[@tag='620']">
2456 <z:index name="Subject:w Subject:p">
2457 <xslo:variable name="raw_heading">
2458 <xslo:for-each select="marc:subfield">
2459 <xslo:if test="position() > 1">
2460 <xslo:value-of select="substring(' ', 1, 1)"/>
2462 <xslo:value-of select="."/>
2465 <xslo:value-of select="normalize-space($raw_heading)"/>
2468 <xslo:template mode="index_data_field" match="marc:datafield[@tag='621']">
2469 <z:index name="Subject:w Subject:p">
2470 <xslo:variable name="raw_heading">
2471 <xslo:for-each select="marc:subfield">
2472 <xslo:if test="position() > 1">
2473 <xslo:value-of select="substring(' ', 1, 1)"/>
2475 <xslo:value-of select="."/>
2478 <xslo:value-of select="normalize-space($raw_heading)"/>
2481 <xslo:template mode="index_data_field" match="marc:datafield[@tag='670']">
2482 <z:index name="Subject-precis:w Subject-precis:p">
2483 <xslo:variable name="raw_heading">
2484 <xslo:for-each select="marc:subfield">
2485 <xslo:if test="position() > 1">
2486 <xslo:value-of select="substring(' ', 1, 1)"/>
2488 <xslo:value-of select="."/>
2491 <xslo:value-of select="normalize-space($raw_heading)"/>
2494 <xslo:template mode="index_data_field" match="marc:datafield[@tag='680']">
2495 <z:index name="LC-call-number:w LC-call-number:p">
2496 <xslo:variable name="raw_heading">
2497 <xslo:for-each select="marc:subfield">
2498 <xslo:if test="position() > 1">
2499 <xslo:value-of select="substring(' ', 1, 1)"/>
2501 <xslo:value-of select="."/>
2504 <xslo:value-of select="normalize-space($raw_heading)"/>
2507 <xslo:template mode="index_data_field" match="marc:datafield[@tag='686']">
2508 <z:index name="Local-classification:w Local-classification:p">
2509 <xslo:variable name="raw_heading">
2510 <xslo:for-each select="marc:subfield">
2511 <xslo:if test="position() > 1">
2512 <xslo:value-of select="substring(' ', 1, 1)"/>
2514 <xslo:value-of select="."/>
2517 <xslo:value-of select="normalize-space($raw_heading)"/>
2520 <xslo:template mode="index_data_field" match="marc:datafield[@tag='995']">
2521 <z:index name="item:w">
2522 <xslo:variable name="raw_heading">
2523 <xslo:for-each select="marc:subfield">
2524 <xslo:if test="position() > 1">
2525 <xslo:value-of select="substring(' ', 1, 1)"/>
2527 <xslo:value-of select="."/>
2530 <xslo:value-of select="normalize-space($raw_heading)"/>
2533 <xslo:template mode="index_facets" match="marc:datafield[@tag='225']">
2534 <xslo:if test="not(@ind1='z')">
2535 <z:index name="se:0">
2536 <xslo:value-of select="marc:subfield[@code='a']"/>
2540 <xslo:template mode="index_facets" match="marc:datafield[@tag='500']">
2541 <xslo:if test="not(@ind1='z')">
2542 <z:index name="su-ut:0">
2543 <xslo:value-of select="marc:subfield[@code='a']"/>
2547 <xslo:template mode="index_facets" match="marc:datafield[@tag='501']">
2548 <xslo:if test="not(@ind1='z')">
2549 <z:index name="su-ut:0">
2550 <xslo:value-of select="marc:subfield[@code='a']"/>
2554 <xslo:template mode="index_facets" match="marc:datafield[@tag='503']">
2555 <xslo:if test="not(@ind1='z')">
2556 <z:index name="su-ut:0">
2557 <xslo:value-of select="marc:subfield[@code='a']"/>
2561 <xslo:template mode="index_facets" match="marc:datafield[@tag='600']">
2562 <xslo:if test="not(@ind1='z')">
2563 <z:index name="su-to:0">
2564 <xslo:value-of select="marc:subfield[@code='a']"/>
2565 <xslo:if test="marc:subfield[@code='a'] and marc:subfield[@code='b']">
2566 <xslo:text><*></xslo:text>
2568 <xslo:value-of select="marc:subfield[@code='b']"/>
2572 <xslo:template mode="index_facets" match="marc:datafield[@tag='601']">
2573 <xslo:if test="not(@ind1='z')">
2574 <z:index name="su-to:0">
2575 <xslo:value-of select="marc:subfield[@code='a']"/>
2576 <xslo:if test="marc:subfield[@code='a'] and marc:subfield[@code='b']">
2577 <xslo:text><*></xslo:text>
2579 <xslo:value-of select="marc:subfield[@code='b']"/>
2583 <xslo:template mode="index_facets" match="marc:datafield[@tag='602']">
2584 <xslo:if test="not(@ind1='z')">
2585 <z:index name="su-to:0">
2586 <xslo:value-of select="marc:subfield[@code='a']"/>
2590 <xslo:template mode="index_facets" match="marc:datafield[@tag='604']">
2591 <xslo:if test="not(@ind1='z')">
2592 <z:index name="su-to:0">
2593 <xslo:value-of select="marc:subfield[@code='a']"/>
2594 <xslo:if test="marc:subfield[@code='a'] and marc:subfield[@code='t']">
2595 <xslo:text><*></xslo:text>
2597 <xslo:value-of select="marc:subfield[@code='t']"/>
2601 <xslo:template mode="index_facets" match="marc:datafield[@tag='605']">
2602 <xslo:if test="not(@ind1='z')">
2603 <z:index name="su-to:0">
2604 <xslo:value-of select="marc:subfield[@code='a']"/>
2608 <xslo:template mode="index_facets" match="marc:datafield[@tag='606']">
2609 <xslo:if test="not(@ind1='z')">
2610 <z:index name="su-to:0">
2611 <xslo:value-of select="marc:subfield[@code='a']"/>
2612 <xslo:if test="marc:subfield[@code='a'] and marc:subfield[@code='x']">
2613 <xslo:text><*></xslo:text>
2615 <xslo:value-of select="marc:subfield[@code='x']"/>
2619 <xslo:template mode="index_facets" match="marc:datafield[@tag='607']">
2620 <xslo:if test="not(@ind1='z')">
2621 <z:index name="su-geo:0">
2622 <xslo:value-of select="marc:subfield[@code='a']"/>
2626 <xslo:template mode="index_facets" match="marc:datafield[@tag='610']">
2627 <xslo:if test="not(@ind1='z')">
2628 <z:index name="su-to:0">
2629 <xslo:value-of select="marc:subfield[@code='a']"/>
2633 <xslo:template mode="index_facets" match="marc:datafield[@tag='700']">
2634 <xslo:if test="not(@ind1='z')">
2635 <z:index name="au:0">
2636 <xslo:value-of select="marc:subfield[@code='a']"/>
2637 <xslo:if test="marc:subfield[@code='a'] and marc:subfield[@code='b']">
2638 <xslo:text><*></xslo:text>
2640 <xslo:value-of select="marc:subfield[@code='b']"/>
2644 <xslo:template mode="index_facets" match="marc:datafield[@tag='701']">
2645 <xslo:if test="not(@ind1='z')">
2646 <z:index name="au:0">
2647 <xslo:value-of select="marc:subfield[@code='a']"/>
2648 <xslo:if test="marc:subfield[@code='a'] and marc:subfield[@code='b']">
2649 <xslo:text><*></xslo:text>
2651 <xslo:value-of select="marc:subfield[@code='b']"/>
2655 <xslo:template mode="index_facets" match="marc:datafield[@tag='702']">
2656 <xslo:if test="not(@ind1='z')">
2657 <z:index name="au:0">
2658 <xslo:value-of select="marc:subfield[@code='a']"/>
2659 <xslo:if test="marc:subfield[@code='a'] and marc:subfield[@code='b']">
2660 <xslo:text><*></xslo:text>
2662 <xslo:value-of select="marc:subfield[@code='b']"/>
2666 <xslo:template mode="index_facets" match="marc:datafield[@tag='995']">
2667 <xslo:if test="not(@ind1='z')">
2668 <z:index name="homebranch:0">
2669 <xslo:value-of select="marc:subfield[@code='b']"/>
2671 <z:index name="holdingbranch:0">
2672 <xslo:value-of select="marc:subfield[@code='c']"/>
2674 <z:index name="location:0">
2675 <xslo:value-of select="marc:subfield[@code='e']"/>
2679 <xslo:template mode="index_all" match="text()">
2680 <z:index name="Any:w Any:p">
2681 <xslo:value-of select="."/>
2684 <xslo:template name="chopPunctuation">
2685 <xslo:param name="chopString"/>
2686 <xslo:variable name="length" select="string-length($chopString)"/>
2688 <xslo:when test="$length=0"/>
2689 <xslo:when test="contains('-,.:=;!%/', substring($chopString,$length,1))">
2690 <xslo:call-template name="chopPunctuation">
2691 <xslo:with-param name="chopString" select="substring($chopString,1,$length - 1)"/>
2692 </xslo:call-template>
2694 <xslo:when test="not($chopString)"/>
2696 <xslo:value-of select="$chopString"/>