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_heading"/>
16 <xslo:template match="text()" mode="index_heading_conditional"/>
17 <xslo:template match="text()" mode="index_match_heading"/>
18 <xslo:template match="text()" mode="index_subject_thesaurus"/>
19 <xslo:template match="/">
20 <xslo:if test="marc:collection">
22 <xslo:apply-templates select="marc:collection/marc:record"/>
25 <xslo:if test="marc:record">
26 <xslo:apply-templates select="marc:record"/>
29 <xslo:template match="marc:record">
30 <xslo:variable name="idfield" select="normalize-space(marc:datafield[@tag='999']/marc:subfield[@code='c'])"/>
31 <z:record type="update">
32 <xslo:attribute name="z:id">
33 <xslo:value-of select="$idfield"/>
35 <xslo:apply-templates/>
36 <xslo:apply-templates mode="index_subfields"/>
37 <xslo:apply-templates mode="index_data_field"/>
38 <xslo:apply-templates mode="index_heading"/>
39 <xslo:apply-templates mode="index_heading_conditional"/>
40 <xslo:apply-templates mode="index_match_heading"/>
41 <xslo:apply-templates mode="index_subject_thesaurus"/>
42 <xslo:apply-templates mode="index_all"/>
45 <xslo:template match="marc:leader">
46 <z:index name="llength:w">
47 <xslo:value-of select="substring(., 1, 5)"/>
49 <z:index name="rtype:w">
50 <xslo:value-of select="substring(., 7, 1)"/>
52 <z:index name="Bib-level:w">
53 <xslo:value-of select="substring(., 8, 1)"/>
56 <xslo:template match="marc:controlfield[@tag='001']">
57 <z:index name="Control-number:w">
58 <xslo:value-of select="."/>
61 <xslo:template match="marc:controlfield[@tag='005']">
62 <z:index name="Date/time-last-modified:w">
63 <xslo:value-of select="."/>
66 <xslo:template match="marc:controlfield[@tag='007']">
67 <z:index name="Microform-generation:n">
68 <xslo:value-of select="substring(., 12, 1)"/>
70 <z:index name="Material-type:w">
71 <xslo:value-of select="."/>
73 <z:index name="ff7-00:w">
74 <xslo:value-of select="substring(., 1, 1)"/>
76 <z:index name="ff7-01:w">
77 <xslo:value-of select="substring(., 2, 1)"/>
79 <z:index name="ff7-02:w">
80 <xslo:value-of select="substring(., 3, 1)"/>
82 <z:index name="ff7-01-02:w">
83 <xslo:value-of select="substring(., 1, 2)"/>
86 <xslo:template match="marc:controlfield[@tag='008']">
87 <z:index name="date-entered-on-file:n">
88 <xslo:value-of select="substring(., 1, 5)"/>
90 <z:index name="date-entered-on-file:s">
91 <xslo:value-of select="substring(., 1, 5)"/>
93 <z:index name="pubdate:w">
94 <xslo:value-of select="substring(., 8, 4)"/>
96 <z:index name="pubdate:n">
97 <xslo:value-of select="substring(., 8, 4)"/>
99 <z:index name="pubdate:y">
100 <xslo:value-of select="substring(., 8, 4)"/>
102 <z:index name="pubdate:s">
103 <xslo:value-of select="substring(., 8, 4)"/>
105 <z:index name="pl:w">
106 <xslo:value-of select="substring(., 16, 3)"/>
108 <z:index name="ta:w">
109 <xslo:value-of select="substring(., 23, 1)"/>
111 <z:index name="ff8-23:w">
112 <xslo:value-of select="substring(., 24, 1)"/>
114 <z:index name="ff8-29:w">
115 <xslo:value-of select="substring(., 30, 1)"/>
117 <z:index name="lf:w">
118 <xslo:value-of select="substring(., 34, 1)"/>
120 <z:index name="bio:w">
121 <xslo:value-of select="substring(., 35, 1)"/>
123 <z:index name="ln:n">
124 <xslo:value-of select="substring(., 36, 3)"/>
126 <z:index name="ctype:w">
127 <xslo:value-of select="substring(., 25, 4)"/>
129 <z:index name="Record-source:w">
130 <xslo:value-of select="substring(., 40, 0)"/>
133 <xslo:template mode="index_subfields" match="marc:datafield[@tag='020']">
134 <xslo:for-each select="marc:subfield">
135 <xslo:if test="contains('a', @code)">
136 <z:index name="ISBN:w Identifier-standard:w">
137 <xslo:value-of select="."/>
142 <xslo:template mode="index_subfields" match="marc:datafield[@tag='022']">
143 <xslo:for-each select="marc:subfield">
144 <xslo:if test="contains('a', @code)">
145 <z:index name="ISSN:w Identifier-standard:w">
146 <xslo:value-of select="."/>
151 <xslo:template mode="index_subfields" match="marc:datafield[@tag='024']">
152 <xslo:for-each select="marc:subfield">
153 <xslo:if test="contains('a', @code)">
154 <z:index name="Identifier-other:w">
155 <xslo:value-of select="."/>
160 <xslo:template mode="index_subfields" match="marc:datafield[@tag='041']">
161 <xslo:for-each select="marc:subfield">
162 <xslo:if test="contains('a', @code)">
163 <z:index name="ln:w">
164 <xslo:value-of select="."/>
168 <xslo:for-each select="marc:subfield">
169 <xslo:if test="contains('d', @code)">
170 <z:index name="ln:w">
171 <xslo:value-of select="."/>
175 <xslo:for-each select="marc:subfield">
176 <xslo:if test="contains('e', @code)">
177 <z:index name="ln:w">
178 <xslo:value-of select="."/>
182 <xslo:for-each select="marc:subfield">
183 <xslo:if test="contains('j', @code)">
184 <z:index name="ln:w">
185 <xslo:value-of select="."/>
190 <xslo:template mode="index_subfields" match="marc:datafield[@tag='050']">
191 <xslo:for-each select="marc:subfield">
192 <xslo:if test="contains('b', @code)">
193 <z:index name="LC-call-number:w LC-call-number:p LC-call-number:s">
194 <xslo:value-of select="."/>
199 <xslo:template mode="index_subfields" match="marc:datafield[@tag='100']">
200 <xslo:for-each select="marc:subfield">
201 <xslo:if test="contains('9', @code)">
202 <z:index name="Cross-Reference:w Koha-Auth-Number:w">
203 <xslo:value-of select="."/>
207 <xslo:for-each select="marc:subfield">
208 <xslo:if test="contains('a', @code)">
209 <z:index name="Author:w Author:p Author:s Editor:w Author-personal-bibliography:w Author-personal-bibliography:p Author-personal-bibliography:s">
210 <xslo:value-of select="."/>
215 <xslo:template mode="index_subfields" match="marc:datafield[@tag='110']">
216 <xslo:for-each select="marc:subfield">
217 <xslo:if test="contains('9', @code)">
218 <z:index name="Koha-Auth-Number:w">
219 <xslo:value-of select="."/>
224 <xslo:template mode="index_subfields" match="marc:datafield[@tag='111']">
225 <xslo:for-each select="marc:subfield">
226 <xslo:if test="contains('9', @code)">
227 <z:index name="Koha-Auth-Number:w">
228 <xslo:value-of select="."/>
233 <xslo:template mode="index_subfields" match="marc:datafield[@tag='130']">
234 <xslo:for-each select="marc:subfield">
235 <xslo:if test="contains('n', @code)">
236 <z:index name="Thematic-number:w">
237 <xslo:value-of select="."/>
241 <xslo:for-each select="marc:subfield">
242 <xslo:if test="contains('r', @code)">
243 <z:index name="Music-key:w">
244 <xslo:value-of select="."/>
248 <xslo:for-each select="marc:subfield">
249 <xslo:if test="contains('9', @code)">
250 <z:index name="Koha-Auth-Number:w">
251 <xslo:value-of select="."/>
256 <xslo:template mode="index_subfields" match="marc:datafield[@tag='240']">
257 <xslo:for-each select="marc:subfield">
258 <xslo:if test="contains('r', @code)">
259 <z:index name="Music-key:w">
260 <xslo:value-of select="."/>
264 <xslo:for-each select="marc:subfield">
265 <xslo:if test="contains('n', @code)">
266 <z:index name="Thematic-number:w">
267 <xslo:value-of select="."/>
272 <xslo:template mode="index_subfields" match="marc:datafield[@tag='243']">
273 <xslo:for-each select="marc:subfield">
274 <xslo:if test="contains('n', @code)">
275 <z:index name="Thematic-number:w">
276 <xslo:value-of select="."/>
280 <xslo:for-each select="marc:subfield">
281 <xslo:if test="contains('r', @code)">
282 <z:index name="Music-key:w">
283 <xslo:value-of select="."/>
288 <xslo:template mode="index_subfields" match="marc:datafield[@tag='245']">
289 <xslo:for-each select="marc:subfield">
290 <xslo:if test="contains('a', @code)">
291 <z:index name="Title-cover:w Title-cover:p Title-cover:s Title:w Title:p Title:s">
292 <xslo:value-of select="."/>
296 <xslo:for-each select="marc:subfield">
297 <xslo:if test="contains('c', @code)">
298 <z:index name="Author:w Author-in-order:w Author-in-order:p Author-in-order:s">
299 <xslo:value-of select="."/>
303 <xslo:for-each select="marc:subfield">
304 <xslo:if test="contains('9', @code)">
305 <z:index name="Cross-Reference:w Koha-Auth-Number:w">
306 <xslo:value-of select="."/>
311 <xslo:template mode="index_subfields" match="marc:datafield[@tag='260']">
312 <xslo:for-each select="marc:subfield">
313 <xslo:if test="contains('a', @code)">
314 <z:index name="pl:w pl:p">
315 <xslo:value-of select="."/>
319 <xslo:for-each select="marc:subfield">
320 <xslo:if test="contains('b', @code)">
321 <z:index name="Publisher:w Publisher:p">
322 <xslo:value-of select="."/>
326 <xslo:for-each select="marc:subfield">
327 <xslo:if test="contains('c', @code)">
328 <z:index name="copydate:w copydate:s">
329 <xslo:value-of select="."/>
334 <xslo:template mode="index_subfields" match="marc:datafield[@tag='400']">
335 <xslo:for-each select="marc:subfield">
336 <xslo:if test="contains('a', @code)">
337 <z:index name="Name-and-title:w">
338 <xslo:value-of select="."/>
342 <xslo:for-each select="marc:subfield">
343 <xslo:if test="contains('t', @code)">
344 <z:index name="Author-title:w Name-and-title:w Title:w Title-series:w">
345 <xslo:value-of select="."/>
349 <xslo:for-each select="marc:subfield">
350 <xslo:if test="contains('9', @code)">
351 <z:index name="Koha-Auth-Number:w">
352 <xslo:value-of select="."/>
357 <xslo:template mode="index_subfields" match="marc:datafield[@tag='410']">
358 <xslo:for-each select="marc:subfield">
359 <xslo:if test="contains('a', @code)">
360 <z:index name="Name-and-title:w">
361 <xslo:value-of select="."/>
365 <xslo:for-each select="marc:subfield">
366 <xslo:if test="contains('t', @code)">
367 <z:index name="Author-title:w Title:w Title-series:w">
368 <xslo:value-of select="."/>
372 <xslo:for-each select="marc:subfield">
373 <xslo:if test="contains('9', @code)">
374 <z:index name="Koha-Auth-Number:w">
375 <xslo:value-of select="."/>
380 <xslo:template mode="index_subfields" match="marc:datafield[@tag='411']">
381 <xslo:for-each select="marc:subfield">
382 <xslo:if test="contains('a', @code)">
383 <z:index name="Name-and-title:w">
384 <xslo:value-of select="."/>
388 <xslo:for-each select="marc:subfield">
389 <xslo:if test="contains('t', @code)">
390 <z:index name="Author-title:w Title-series:w">
391 <xslo:value-of select="."/>
396 <xslo:template mode="index_subfields" match="marc:datafield[@tag='440']">
397 <xslo:for-each select="marc:subfield">
398 <xslo:if test="contains('a', @code)">
399 <z:index name="Title-series:w Title-series:p">
400 <xslo:value-of select="."/>
404 <xslo:for-each select="marc:subfield">
405 <xslo:if test="contains('9', @code)">
406 <z:index name="Koha-Auth-Number:w">
407 <xslo:value-of select="."/>
412 <xslo:template mode="index_subfields" match="marc:datafield[@tag='490']">
413 <xslo:for-each select="marc:subfield">
414 <xslo:if test="contains('a', @code)">
415 <z:index name="Title-series:w Title-series:p">
416 <xslo:value-of select="."/>
420 <xslo:for-each select="marc:subfield">
421 <xslo:if test="contains('9', @code)">
422 <z:index name="Koha-Auth-Number:w">
423 <xslo:value-of select="."/>
428 <xslo:template mode="index_subfields" match="marc:datafield[@tag='505']">
429 <xslo:for-each select="marc:subfield">
430 <xslo:if test="contains('r', @code)">
431 <z:index name="Author:w">
432 <xslo:value-of select="."/>
436 <xslo:for-each select="marc:subfield">
437 <xslo:if test="contains('t', @code)">
438 <z:index name="Title:w">
439 <xslo:value-of select="."/>
444 <xslo:template mode="index_subfields" match="marc:datafield[@tag='521']">
445 <xslo:for-each select="marc:subfield">
446 <xslo:if test="contains('a', @code)">
447 <z:index name="lex:n">
448 <xslo:value-of select="."/>
453 <xslo:template mode="index_subfields" match="marc:datafield[@tag='526']">
454 <xslo:for-each select="marc:subfield">
455 <xslo:if test="contains('c', @code)">
456 <z:index name="arl:w arl:n">
457 <xslo:value-of select="."/>
461 <xslo:for-each select="marc:subfield">
462 <xslo:if test="contains('d', @code)">
463 <z:index name="arp:w arp:n">
464 <xslo:value-of select="."/>
469 <xslo:template mode="index_subfields" match="marc:datafield[@tag='600']">
470 <xslo:for-each select="marc:subfield">
471 <xslo:if test="contains('a', @code)">
472 <z:index name="Name-and-title:w Name:w Personal-name:w Subject-name-personal:w Subject:w Subject:p">
473 <xslo:value-of select="."/>
477 <xslo:for-each select="marc:subfield">
478 <xslo:if test="contains('t', @code)">
479 <z:index name="Name-and-title:w Title:w Subject:w Subject:p">
480 <xslo:value-of select="."/>
484 <xslo:for-each select="marc:subfield">
485 <xslo:if test="contains('9', @code)">
486 <z:index name="Koha-Auth-Number:w">
487 <xslo:value-of select="."/>
492 <xslo:template mode="index_subfields" match="marc:datafield[@tag='610']">
493 <xslo:for-each select="marc:subfield">
494 <xslo:if test="contains('a', @code)">
495 <z:index name="Name-and-title:w Subject:w Subject:p">
496 <xslo:value-of select="."/>
500 <xslo:for-each select="marc:subfield">
501 <xslo:if test="contains('t', @code)">
502 <z:index name="Name-and-title:w Title:w Subject:w Subject:p">
503 <xslo:value-of select="."/>
507 <xslo:for-each select="marc:subfield">
508 <xslo:if test="contains('9', @code)">
509 <z:index name="Koha-Auth-Number:w">
510 <xslo:value-of select="."/>
515 <xslo:template mode="index_subfields" match="marc:datafield[@tag='611']">
516 <xslo:for-each select="marc:subfield">
517 <xslo:if test="contains('a', @code)">
518 <z:index name="Name-and-title:w Subject:w Subject:p">
519 <xslo:value-of select="."/>
523 <xslo:for-each select="marc:subfield">
524 <xslo:if test="contains('t', @code)">
525 <z:index name="Name-and-title:w Title:w Subject:w Subject:p">
526 <xslo:value-of select="."/>
530 <xslo:for-each select="marc:subfield">
531 <xslo:if test="contains('9', @code)">
532 <z:index name="Koha-Auth-Number:w">
533 <xslo:value-of select="."/>
538 <xslo:template mode="index_subfields" match="marc:datafield[@tag='630']">
539 <xslo:for-each select="marc:subfield">
540 <xslo:if test="contains('n', @code)">
541 <z:index name="Thematic-number:w Subject:w Subject:p">
542 <xslo:value-of select="."/>
546 <xslo:for-each select="marc:subfield">
547 <xslo:if test="contains('r', @code)">
548 <z:index name="Music-key:w Subject:w Subject:p">
549 <xslo:value-of select="."/>
553 <xslo:for-each select="marc:subfield">
554 <xslo:if test="contains('9', @code)">
555 <z:index name="Koha-Auth-Number:w">
556 <xslo:value-of select="."/>
561 <xslo:template mode="index_subfields" match="marc:datafield[@tag='650']">
562 <xslo:for-each select="marc:subfield">
563 <xslo:if test="contains('9', @code)">
564 <z:index name="Koha-Auth-Number:w">
565 <xslo:value-of select="."/>
570 <xslo:template mode="index_subfields" match="marc:datafield[@tag='651']">
571 <xslo:for-each select="marc:subfield">
572 <xslo:if test="contains('9', @code)">
573 <z:index name="Koha-Auth-Number:w">
574 <xslo:value-of select="."/>
579 <xslo:template mode="index_subfields" match="marc:datafield[@tag='652']">
580 <xslo:for-each select="marc:subfield">
581 <xslo:if test="contains('9', @code)">
582 <z:index name="Koha-Auth-Number:w">
583 <xslo:value-of select="."/>
588 <xslo:template mode="index_subfields" match="marc:datafield[@tag='653']">
589 <xslo:for-each select="marc:subfield">
590 <xslo:if test="contains('9', @code)">
591 <z:index name="Koha-Auth-Number:w">
592 <xslo:value-of select="."/>
597 <xslo:template mode="index_subfields" match="marc:datafield[@tag='654']">
598 <xslo:for-each select="marc:subfield">
599 <xslo:if test="contains('9', @code)">
600 <z:index name="Koha-Auth-Number:w">
601 <xslo:value-of select="."/>
606 <xslo:template mode="index_subfields" match="marc:datafield[@tag='655']">
607 <xslo:for-each select="marc:subfield">
608 <xslo:if test="contains('9', @code)">
609 <z:index name="Koha-Auth-Number:w">
610 <xslo:value-of select="."/>
615 <xslo:template mode="index_subfields" match="marc:datafield[@tag='656']">
616 <xslo:for-each select="marc:subfield">
617 <xslo:if test="contains('9', @code)">
618 <z:index name="Koha-Auth-Number:w">
619 <xslo:value-of select="."/>
624 <xslo:template mode="index_subfields" match="marc:datafield[@tag='657']">
625 <xslo:for-each select="marc:subfield">
626 <xslo:if test="contains('9', @code)">
627 <z:index name="Koha-Auth-Number:w">
628 <xslo:value-of select="."/>
633 <xslo:template mode="index_subfields" match="marc:datafield[@tag='658']">
634 <xslo:for-each select="marc:subfield">
635 <xslo:if test="contains('a', @code)">
636 <z:index name="curriculum:w curriculum:p Subject:w Subject:p">
637 <xslo:value-of select="."/>
641 <xslo:for-each select="marc:subfield">
642 <xslo:if test="contains('b', @code)">
643 <z:index name="curriculum:w curriculum:p Subject:w Subject:p">
644 <xslo:value-of select="."/>
648 <xslo:for-each select="marc:subfield">
649 <xslo:if test="contains('c', @code)">
650 <z:index name="curriculum:w curriculum:p Subject:w Subject:p">
651 <xslo:value-of select="."/>
656 <xslo:template mode="index_subfields" match="marc:datafield[@tag='690']">
657 <xslo:for-each select="marc:subfield">
658 <xslo:if test="contains('9', @code)">
659 <z:index name="Koha-Auth-Number:w">
660 <xslo:value-of select="."/>
665 <xslo:template mode="index_subfields" match="marc:datafield[@tag='700']">
666 <xslo:for-each select="marc:subfield">
667 <xslo:if test="contains('9', @code)">
668 <z:index name="Cross-Reference:w Koha-Auth-Number:w">
669 <xslo:value-of select="."/>
673 <xslo:for-each select="marc:subfield">
674 <xslo:if test="contains('a', @code)">
675 <z:index name="Author:w Author:p">
676 <xslo:value-of select="."/>
680 <xslo:for-each select="marc:subfield">
681 <xslo:if test="contains('n', @code)">
682 <z:index name="Thematic-number:w">
683 <xslo:value-of select="."/>
687 <xslo:for-each select="marc:subfield">
688 <xslo:if test="contains('r', @code)">
689 <z:index name="Music-key:w">
690 <xslo:value-of select="."/>
694 <xslo:for-each select="marc:subfield">
695 <xslo:if test="contains('t', @code)">
696 <z:index name="Author-title:w Name-and-title:w Title:w Title-uniform:w">
697 <xslo:value-of select="."/>
702 <xslo:template mode="index_subfields" match="marc:datafield[@tag='710']">
703 <xslo:for-each select="marc:subfield">
704 <xslo:if test="contains('t', @code)">
705 <z:index name="Author-title:w Name-and-title:w Title:w Title-uniform:w">
706 <xslo:value-of select="."/>
710 <xslo:for-each select="marc:subfield">
711 <xslo:if test="contains('a', @code)">
712 <z:index name="Name-and-title:w">
713 <xslo:value-of select="."/>
717 <xslo:for-each select="marc:subfield">
718 <xslo:if test="contains('9', @code)">
719 <z:index name="Koha-Auth-Number:w">
720 <xslo:value-of select="."/>
725 <xslo:template mode="index_subfields" match="marc:datafield[@tag='711']">
726 <xslo:for-each select="marc:subfield">
727 <xslo:if test="contains('a', @code)">
728 <z:index name="Name-and-title:w">
729 <xslo:value-of select="."/>
733 <xslo:for-each select="marc:subfield">
734 <xslo:if test="contains('t', @code)">
735 <z:index name="Author-title:w Title:w Title-uniform:w">
736 <xslo:value-of select="."/>
740 <xslo:for-each select="marc:subfield">
741 <xslo:if test="contains('9', @code)">
742 <z:index name="Koha-Auth-Number:w">
743 <xslo:value-of select="."/>
748 <xslo:template mode="index_subfields" match="marc:datafield[@tag='730']">
749 <xslo:for-each select="marc:subfield">
750 <xslo:if test="contains('n', @code)">
751 <z:index name="Thematic-number:w">
752 <xslo:value-of select="."/>
756 <xslo:for-each select="marc:subfield">
757 <xslo:if test="contains('r', @code)">
758 <z:index name="Music-key:w">
759 <xslo:value-of select="."/>
763 <xslo:for-each select="marc:subfield">
764 <xslo:if test="contains('9', @code)">
765 <z:index name="Koha-Auth-Number:w">
766 <xslo:value-of select="."/>
771 <xslo:template mode="index_subfields" match="marc:datafield[@tag='751']">
772 <xslo:for-each select="marc:subfield">
773 <xslo:if test="contains('a', @code)">
774 <z:index name="Name-geographic:w">
775 <xslo:value-of select="."/>
779 <xslo:for-each select="marc:subfield">
780 <xslo:if test="contains('9', @code)">
781 <z:index name="Koha-Auth-Number:w">
782 <xslo:value-of select="."/>
787 <xslo:template mode="index_subfields" match="marc:datafield[@tag='770']">
788 <xslo:for-each select="marc:subfield">
789 <xslo:if test="contains('w', @code)">
790 <z:index name="Record-control-number:w">
791 <xslo:value-of select="."/>
796 <xslo:template mode="index_subfields" match="marc:datafield[@tag='772']">
797 <xslo:for-each select="marc:subfield">
798 <xslo:if test="contains('w', @code)">
799 <z:index name="Record-control-number:w">
800 <xslo:value-of select="."/>
805 <xslo:template mode="index_subfields" match="marc:datafield[@tag='773']">
806 <xslo:for-each select="marc:subfield">
807 <xslo:if test="contains('a', @code)">
808 <z:index name="Host-item:w">
809 <xslo:value-of select="."/>
813 <xslo:for-each select="marc:subfield">
814 <xslo:if test="contains('9', @code)">
815 <z:index name="Host-Item-Number:w">
816 <xslo:value-of select="."/>
820 <xslo:for-each select="marc:subfield">
821 <xslo:if test="contains('t', @code)">
822 <z:index name="Host-item:w">
823 <xslo:value-of select="."/>
827 <xslo:for-each select="marc:subfield">
828 <xslo:if test="contains('w', @code)">
829 <z:index name="Record-control-number:w">
830 <xslo:value-of select="."/>
835 <xslo:template mode="index_subfields" match="marc:datafield[@tag='774']">
836 <xslo:for-each select="marc:subfield">
837 <xslo:if test="contains('w', @code)">
838 <z:index name="Record-control-number:w">
839 <xslo:value-of select="."/>
844 <xslo:template mode="index_subfields" match="marc:datafield[@tag='775']">
845 <xslo:for-each select="marc:subfield">
846 <xslo:if test="contains('w', @code)">
847 <z:index name="Record-control-number:w">
848 <xslo:value-of select="."/>
853 <xslo:template mode="index_subfields" match="marc:datafield[@tag='776']">
854 <xslo:for-each select="marc:subfield">
855 <xslo:if test="contains('w', @code)">
856 <z:index name="Record-control-number:w">
857 <xslo:value-of select="."/>
862 <xslo:template mode="index_subfields" match="marc:datafield[@tag='777']">
863 <xslo:for-each select="marc:subfield">
864 <xslo:if test="contains('w', @code)">
865 <z:index name="Record-control-number:w">
866 <xslo:value-of select="."/>
871 <xslo:template mode="index_subfields" match="marc:datafield[@tag='780']">
872 <xslo:for-each select="marc:subfield">
873 <xslo:if test="contains('t', @code)">
874 <z:index name="Title:w">
875 <xslo:value-of select="."/>
879 <xslo:for-each select="marc:subfield">
880 <xslo:if test="contains('w', @code)">
881 <z:index name="Record-control-number:w">
882 <xslo:value-of select="."/>
887 <xslo:template mode="index_subfields" match="marc:datafield[@tag='785']">
888 <xslo:for-each select="marc:subfield">
889 <xslo:if test="contains('w', @code)">
890 <z:index name="Record-control-number:w">
891 <xslo:value-of select="."/>
896 <xslo:template mode="index_subfields" match="marc:datafield[@tag='787']">
897 <xslo:for-each select="marc:subfield">
898 <xslo:if test="contains('w', @code)">
899 <z:index name="Record-control-number:w">
900 <xslo:value-of select="."/>
905 <xslo:template mode="index_subfields" match="marc:datafield[@tag='800']">
906 <xslo:for-each select="marc:subfield">
907 <xslo:if test="contains('a', @code)">
908 <z:index name="Name-and-title:w Title-series:w Title-series:p">
909 <xslo:value-of select="."/>
913 <xslo:for-each select="marc:subfield">
914 <xslo:if test="contains('t', @code)">
915 <z:index name="Author-title:w Name-and-title:w Title:w Title-series:w Title-series:p">
916 <xslo:value-of select="."/>
920 <xslo:for-each select="marc:subfield">
921 <xslo:if test="contains('9', @code)">
922 <z:index name="Koha-Auth-Number:w">
923 <xslo:value-of select="."/>
927 <xslo:for-each select="marc:subfield">
928 <xslo:if test="contains('w', @code)">
929 <z:index name="Record-control-number:w">
930 <xslo:value-of select="."/>
935 <xslo:template mode="index_subfields" match="marc:datafield[@tag='810']">
936 <xslo:for-each select="marc:subfield">
937 <xslo:if test="contains('a', @code)">
938 <z:index name="Name-and-title:w Title-series:w Title-series:p">
939 <xslo:value-of select="."/>
943 <xslo:for-each select="marc:subfield">
944 <xslo:if test="contains('t', @code)">
945 <z:index name="Author-title:w Name-and-title:w Title:w Title-series:w Title-series:p">
946 <xslo:value-of select="."/>
950 <xslo:for-each select="marc:subfield">
951 <xslo:if test="contains('w', @code)">
952 <z:index name="Record-control-number:w">
953 <xslo:value-of select="."/>
957 <xslo:for-each select="marc:subfield">
958 <xslo:if test="contains('9', @code)">
959 <z:index name="Koha-Auth-Number:w">
960 <xslo:value-of select="."/>
965 <xslo:template mode="index_subfields" match="marc:datafield[@tag='811']">
966 <xslo:for-each select="marc:subfield">
967 <xslo:if test="contains('a', @code)">
968 <z:index name="Name-and-title:w Title-series:w Title-series:p">
969 <xslo:value-of select="."/>
973 <xslo:for-each select="marc:subfield">
974 <xslo:if test="contains('9', @code)">
975 <z:index name="Koha-Auth-Number:w">
976 <xslo:value-of select="."/>
980 <xslo:for-each select="marc:subfield">
981 <xslo:if test="contains('t', @code)">
982 <z:index name="Author-title:w Name-and-title:w Title:w Title-series:w Title-series:p">
983 <xslo:value-of select="."/>
987 <xslo:for-each select="marc:subfield">
988 <xslo:if test="contains('w', @code)">
989 <z:index name="Record-control-number:w">
990 <xslo:value-of select="."/>
995 <xslo:template mode="index_subfields" match="marc:datafield[@tag='830']">
996 <xslo:for-each select="marc:subfield">
997 <xslo:if test="contains('w', @code)">
998 <z:index name="Record-control-number:w">
999 <xslo:value-of select="."/>
1003 <xslo:for-each select="marc:subfield">
1004 <xslo:if test="contains('9', @code)">
1005 <z:index name="Koha-Auth-Number:w">
1006 <xslo:value-of select="."/>
1011 <xslo:template mode="index_subfields" match="marc:datafield[@tag='999']">
1012 <xslo:for-each select="marc:subfield">
1013 <xslo:if test="contains('c', @code)">
1014 <z:index name="Local-Number:n Local-Number:w Local-Number:s">
1015 <xslo:value-of select="."/>
1019 <xslo:for-each select="marc:subfield">
1020 <xslo:if test="contains('d', @code)">
1021 <z:index name="biblioitemnumber:n biblioitemnumber:w biblioitemnumber:s">
1022 <xslo:value-of select="."/>
1027 <xslo:template mode="index_subfields" match="marc:datafield[@tag='942']">
1028 <xslo:for-each select="marc:subfield">
1029 <xslo:if test="contains('0', @code)">
1030 <z:index name="totalissues:n totalissues:s">
1031 <xslo:value-of select="."/>
1035 <xslo:for-each select="marc:subfield">
1036 <xslo:if test="contains('2', @code)">
1037 <z:index name="cn-bib-source:w">
1038 <xslo:value-of select="."/>
1042 <xslo:for-each select="marc:subfield">
1043 <xslo:if test="contains('6', @code)">
1044 <z:index name="cn-bib-sort:n cn-bib-sort:s">
1045 <xslo:value-of select="."/>
1049 <xslo:for-each select="marc:subfield">
1050 <xslo:if test="contains('c', @code)">
1051 <z:index name="itemtype:w itemtype:p itype:w itype:p">
1052 <xslo:value-of select="."/>
1056 <xslo:for-each select="marc:subfield">
1057 <xslo:if test="contains('n', @code)">
1058 <z:index name="Suppress:w Suppress:n">
1059 <xslo:value-of select="."/>
1063 <xslo:for-each select="marc:subfield">
1064 <xslo:if test="contains('h', @code)">
1065 <z:index name="cn-class:w">
1066 <xslo:value-of select="."/>
1070 <xslo:for-each select="marc:subfield">
1071 <xslo:if test="contains('i', @code)">
1072 <z:index name="cn-item:w">
1073 <xslo:value-of select="."/>
1077 <xslo:for-each select="marc:subfield">
1078 <xslo:if test="contains('k', @code)">
1079 <z:index name="cn-prefix:w">
1080 <xslo:value-of select="."/>
1084 <xslo:for-each select="marc:subfield">
1085 <xslo:if test="contains('m', @code)">
1086 <z:index name="cn-suffix:w">
1087 <xslo:value-of select="."/>
1092 <xslo:template mode="index_subfields" match="marc:datafield[@tag='952']">
1093 <xslo:for-each select="marc:subfield">
1094 <xslo:if test="contains('0', @code)">
1095 <z:index name="withdrawn:n withdrawn:w">
1096 <xslo:value-of select="."/>
1100 <xslo:for-each select="marc:subfield">
1101 <xslo:if test="contains('1', @code)">
1102 <z:index name="lost:w lost:n">
1103 <xslo:value-of select="."/>
1107 <xslo:for-each select="marc:subfield">
1108 <xslo:if test="contains('2', @code)">
1109 <z:index name="classification-source:w">
1110 <xslo:value-of select="."/>
1114 <xslo:for-each select="marc:subfield">
1115 <xslo:if test="contains('3', @code)">
1116 <z:index name="materials-specified:w">
1117 <xslo:value-of select="."/>
1121 <xslo:for-each select="marc:subfield">
1122 <xslo:if test="contains('4', @code)">
1123 <z:index name="damaged:n damaged:w">
1124 <xslo:value-of select="."/>
1128 <xslo:for-each select="marc:subfield">
1129 <xslo:if test="contains('5', @code)">
1130 <z:index name="restricted:n restricted:w">
1131 <xslo:value-of select="."/>
1135 <xslo:for-each select="marc:subfield">
1136 <xslo:if test="contains('6', @code)">
1137 <z:index name="cn-sort:n cn-sort:s">
1138 <xslo:value-of select="."/>
1142 <xslo:for-each select="marc:subfield">
1143 <xslo:if test="contains('7', @code)">
1144 <z:index name="notforloan:n notforloan:w">
1145 <xslo:value-of select="."/>
1149 <xslo:for-each select="marc:subfield">
1150 <xslo:if test="contains('8', @code)">
1151 <z:index name="ccode:w ccode:p">
1152 <xslo:value-of select="."/>
1156 <xslo:for-each select="marc:subfield">
1157 <xslo:if test="contains('9', @code)">
1158 <z:index name="itemnumber:n itemnumber:s">
1159 <xslo:value-of select="."/>
1163 <xslo:for-each select="marc:subfield">
1164 <xslo:if test="contains('a', @code)">
1165 <z:index name="homebranch:w">
1166 <xslo:value-of select="."/>
1170 <xslo:for-each select="marc:subfield">
1171 <xslo:if test="contains('b', @code)">
1172 <z:index name="holdingbranch:w">
1173 <xslo:value-of select="."/>
1177 <xslo:for-each select="marc:subfield">
1178 <xslo:if test="contains('c', @code)">
1179 <z:index name="location:w">
1180 <xslo:value-of select="."/>
1184 <xslo:for-each select="marc:subfield">
1185 <xslo:if test="contains('d', @code)">
1186 <z:index name="Date-of-acquisition:w Date-of-acquisition:d Date-of-acquisition:s">
1187 <xslo:value-of select="."/>
1191 <xslo:for-each select="marc:subfield">
1192 <xslo:if test="contains('e', @code)">
1193 <z:index name="acqsource:w">
1194 <xslo:value-of select="."/>
1198 <xslo:for-each select="marc:subfield">
1199 <xslo:if test="contains('f', @code)">
1200 <z:index name="coded-location-qualifier:w">
1201 <xslo:value-of select="."/>
1205 <xslo:for-each select="marc:subfield">
1206 <xslo:if test="contains('g', @code)">
1207 <z:index name="price:w">
1208 <xslo:value-of select="."/>
1212 <xslo:for-each select="marc:subfield">
1213 <xslo:if test="contains('i', @code)">
1214 <z:index name="stocknumber:w">
1215 <xslo:value-of select="."/>
1219 <xslo:for-each select="marc:subfield">
1220 <xslo:if test="contains('j', @code)">
1221 <z:index name="stack:n stack:w">
1222 <xslo:value-of select="."/>
1226 <xslo:for-each select="marc:subfield">
1227 <xslo:if test="contains('l', @code)">
1228 <z:index name="issues:n issues:w issues:s">
1229 <xslo:value-of select="."/>
1233 <xslo:for-each select="marc:subfield">
1234 <xslo:if test="contains('m', @code)">
1235 <z:index name="renewals:n renewals:w">
1236 <xslo:value-of select="."/>
1240 <xslo:for-each select="marc:subfield">
1241 <xslo:if test="contains('n', @code)">
1242 <z:index name="reserves:n reserves:w">
1243 <xslo:value-of select="."/>
1247 <xslo:for-each select="marc:subfield">
1248 <xslo:if test="contains('o', @code)">
1249 <z:index name="Local-classification:w Local-classification:p Local-classification:s">
1250 <xslo:value-of select="."/>
1254 <xslo:for-each select="marc:subfield">
1255 <xslo:if test="contains('p', @code)">
1256 <z:index name="barcode:w barcode:n">
1257 <xslo:value-of select="."/>
1261 <xslo:for-each select="marc:subfield">
1262 <xslo:if test="contains('q', @code)">
1263 <z:index name="onloan:n onloan:w">
1264 <xslo:value-of select="."/>
1268 <xslo:for-each select="marc:subfield">
1269 <xslo:if test="contains('r', @code)">
1270 <z:index name="datelastseen:w">
1271 <xslo:value-of select="."/>
1275 <xslo:for-each select="marc:subfield">
1276 <xslo:if test="contains('s', @code)">
1277 <z:index name="datelastborrowed:w">
1278 <xslo:value-of select="."/>
1282 <xslo:for-each select="marc:subfield">
1283 <xslo:if test="contains('t', @code)">
1284 <z:index name="copynumber:w">
1285 <xslo:value-of select="."/>
1289 <xslo:for-each select="marc:subfield">
1290 <xslo:if test="contains('u', @code)">
1291 <z:index name="uri:u">
1292 <xslo:value-of select="."/>
1296 <xslo:for-each select="marc:subfield">
1297 <xslo:if test="contains('v', @code)">
1298 <z:index name="replacementprice:w">
1299 <xslo:value-of select="."/>
1303 <xslo:for-each select="marc:subfield">
1304 <xslo:if test="contains('w', @code)">
1305 <z:index name="replacementpricedate:w">
1306 <xslo:value-of select="."/>
1310 <xslo:for-each select="marc:subfield">
1311 <xslo:if test="contains('y', @code)">
1312 <z:index name="itype:w itype:p">
1313 <xslo:value-of select="."/>
1317 <xslo:for-each select="marc:subfield">
1318 <xslo:if test="contains('z', @code)">
1319 <z:index name="Note:w Note:p">
1320 <xslo:value-of select="."/>
1325 <xslo:template mode="index_data_field" match="marc:datafield[@tag='010']">
1326 <z:index name="LC-card-number:w Identifier-standard:w">
1327 <xslo:variable name="raw_heading">
1328 <xslo:for-each select="marc:subfield">
1329 <xslo:if test="position() > 1">
1330 <xslo:value-of select="substring(' ', 1, 1)"/>
1332 <xslo:value-of select="."/>
1335 <xslo:value-of select="normalize-space($raw_heading)"/>
1338 <xslo:template mode="index_data_field" match="marc:datafield[@tag='011']">
1339 <z:index name="LC-card-number:w Identifier-standard:w">
1340 <xslo:variable name="raw_heading">
1341 <xslo:for-each select="marc:subfield">
1342 <xslo:if test="position() > 1">
1343 <xslo:value-of select="substring(' ', 1, 1)"/>
1345 <xslo:value-of select="."/>
1348 <xslo:value-of select="normalize-space($raw_heading)"/>
1351 <xslo:template mode="index_data_field" match="marc:datafield[@tag='015']">
1352 <z:index name="BNB-card-number:w BGF-number:w Number-db:w Number-natl-biblio:w Identifier-standard:w">
1353 <xslo:variable name="raw_heading">
1354 <xslo:for-each select="marc:subfield">
1355 <xslo:if test="position() > 1">
1356 <xslo:value-of select="substring(' ', 1, 1)"/>
1358 <xslo:value-of select="."/>
1361 <xslo:value-of select="normalize-space($raw_heading)"/>
1364 <xslo:template mode="index_data_field" match="marc:datafield[@tag='017']">
1365 <z:index name="Number-legal-deposit:w Identifier-standard:w">
1366 <xslo:variable name="raw_heading">
1367 <xslo:for-each select="marc:subfield">
1368 <xslo:if test="position() > 1">
1369 <xslo:value-of select="substring(' ', 1, 1)"/>
1371 <xslo:value-of select="."/>
1374 <xslo:value-of select="normalize-space($raw_heading)"/>
1377 <xslo:template mode="index_data_field" match="marc:datafield[@tag='018']">
1378 <z:index name="Identifier-standard:w">
1379 <xslo:variable name="raw_heading">
1380 <xslo:for-each select="marc:subfield">
1381 <xslo:if test="position() > 1">
1382 <xslo:value-of select="substring(' ', 1, 1)"/>
1384 <xslo:value-of select="."/>
1387 <xslo:value-of select="normalize-space($raw_heading)"/>
1390 <xslo:template mode="index_data_field" match="marc:datafield[@tag='020']">
1391 <z:index name="Identifier-standard:w">
1392 <xslo:variable name="raw_heading">
1393 <xslo:for-each select="marc:subfield">
1394 <xslo:if test="position() > 1">
1395 <xslo:value-of select="substring(' ', 1, 1)"/>
1397 <xslo:value-of select="."/>
1400 <xslo:value-of select="normalize-space($raw_heading)"/>
1403 <xslo:template mode="index_data_field" match="marc:datafield[@tag='022']">
1404 <z:index name="Identifier-standard:w">
1405 <xslo:variable name="raw_heading">
1406 <xslo:for-each select="marc:subfield">
1407 <xslo:if test="position() > 1">
1408 <xslo:value-of select="substring(' ', 1, 1)"/>
1410 <xslo:value-of select="."/>
1413 <xslo:value-of select="normalize-space($raw_heading)"/>
1416 <xslo:template mode="index_data_field" match="marc:datafield[@tag='023']">
1417 <z:index name="Identifier-standard:w">
1418 <xslo:variable name="raw_heading">
1419 <xslo:for-each select="marc:subfield">
1420 <xslo:if test="position() > 1">
1421 <xslo:value-of select="substring(' ', 1, 1)"/>
1423 <xslo:value-of select="."/>
1426 <xslo:value-of select="normalize-space($raw_heading)"/>
1429 <xslo:template mode="index_data_field" match="marc:datafield[@tag='024']">
1430 <z:index name="Identifier-standard:w">
1431 <xslo:variable name="raw_heading">
1432 <xslo:for-each select="marc:subfield">
1433 <xslo:if test="position() > 1">
1434 <xslo:value-of select="substring(' ', 1, 1)"/>
1436 <xslo:value-of select="."/>
1439 <xslo:value-of select="normalize-space($raw_heading)"/>
1442 <xslo:template mode="index_data_field" match="marc:datafield[@tag='025']">
1443 <z:index name="Identifier-standard:w">
1444 <xslo:variable name="raw_heading">
1445 <xslo:for-each select="marc:subfield">
1446 <xslo:if test="position() > 1">
1447 <xslo:value-of select="substring(' ', 1, 1)"/>
1449 <xslo:value-of select="."/>
1452 <xslo:value-of select="normalize-space($raw_heading)"/>
1455 <xslo:template mode="index_data_field" match="marc:datafield[@tag='027']">
1456 <z:index name="Report-number:w Identifier-standard:w">
1457 <xslo:variable name="raw_heading">
1458 <xslo:for-each select="marc:subfield">
1459 <xslo:if test="position() > 1">
1460 <xslo:value-of select="substring(' ', 1, 1)"/>
1462 <xslo:value-of select="."/>
1465 <xslo:value-of select="normalize-space($raw_heading)"/>
1468 <xslo:template mode="index_data_field" match="marc:datafield[@tag='028']">
1469 <z:index name="Identifier-publisher-for-music:w Identifier-standard:w">
1470 <xslo:variable name="raw_heading">
1471 <xslo:for-each select="marc:subfield">
1472 <xslo:if test="position() > 1">
1473 <xslo:value-of select="substring(' ', 1, 1)"/>
1475 <xslo:value-of select="."/>
1478 <xslo:value-of select="normalize-space($raw_heading)"/>
1481 <xslo:template mode="index_data_field" match="marc:datafield[@tag='030']">
1482 <z:index name="CODEN:w Identifier-standard:w">
1483 <xslo:variable name="raw_heading">
1484 <xslo:for-each select="marc:subfield">
1485 <xslo:if test="position() > 1">
1486 <xslo:value-of select="substring(' ', 1, 1)"/>
1488 <xslo:value-of select="."/>
1491 <xslo:value-of select="normalize-space($raw_heading)"/>
1494 <xslo:template mode="index_data_field" match="marc:datafield[@tag='034']">
1495 <z:index name="Map-scale:w">
1496 <xslo:variable name="raw_heading">
1497 <xslo:for-each select="marc:subfield">
1498 <xslo:if test="position() > 1">
1499 <xslo:value-of select="substring(' ', 1, 1)"/>
1501 <xslo:value-of select="."/>
1504 <xslo:value-of select="normalize-space($raw_heading)"/>
1507 <xslo:template mode="index_data_field" match="marc:datafield[@tag='037']">
1508 <z:index name="Identifier-standard:w Stock-number:w">
1509 <xslo:variable name="raw_heading">
1510 <xslo:for-each select="marc:subfield">
1511 <xslo:if test="position() > 1">
1512 <xslo:value-of select="substring(' ', 1, 1)"/>
1514 <xslo:value-of select="."/>
1517 <xslo:value-of select="normalize-space($raw_heading)"/>
1520 <xslo:template mode="index_data_field" match="marc:datafield[@tag='040']">
1521 <z:index name="Code-institution:w Record-source:w">
1522 <xslo:variable name="raw_heading">
1523 <xslo:for-each select="marc:subfield">
1524 <xslo:if test="position() > 1">
1525 <xslo:value-of select="substring(' ', 1, 1)"/>
1527 <xslo:value-of select="."/>
1530 <xslo:value-of select="normalize-space($raw_heading)"/>
1533 <xslo:template mode="index_data_field" match="marc:datafield[@tag='043']">
1534 <z:index name="Code-geographic:w">
1535 <xslo:variable name="raw_heading">
1536 <xslo:for-each select="marc:subfield">
1537 <xslo:if test="position() > 1">
1538 <xslo:value-of select="substring(' ', 1, 1)"/>
1540 <xslo:value-of select="."/>
1543 <xslo:value-of select="normalize-space($raw_heading)"/>
1546 <xslo:template mode="index_data_field" match="marc:datafield[@tag='050']">
1547 <z:index name="LC-call-number:w LC-call-number:p LC-call-number:s">
1548 <xslo:variable name="raw_heading">
1549 <xslo:for-each select="marc:subfield">
1550 <xslo:if test="position() > 1">
1551 <xslo:value-of select="substring(' ', 1, 1)"/>
1553 <xslo:value-of select="."/>
1556 <xslo:value-of select="normalize-space($raw_heading)"/>
1559 <xslo:template mode="index_data_field" match="marc:datafield[@tag='052']">
1560 <z:index name="Geographic-class:w">
1561 <xslo:variable name="raw_heading">
1562 <xslo:for-each select="marc:subfield">
1563 <xslo:if test="position() > 1">
1564 <xslo:value-of select="substring(' ', 1, 1)"/>
1566 <xslo:value-of select="."/>
1569 <xslo:value-of select="normalize-space($raw_heading)"/>
1572 <xslo:template mode="index_data_field" match="marc:datafield[@tag='060']">
1573 <z:index name="NLM-call-number:w">
1574 <xslo:variable name="raw_heading">
1575 <xslo:for-each select="marc:subfield">
1576 <xslo:if test="position() > 1">
1577 <xslo:value-of select="substring(' ', 1, 1)"/>
1579 <xslo:value-of select="."/>
1582 <xslo:value-of select="normalize-space($raw_heading)"/>
1585 <xslo:template mode="index_data_field" match="marc:datafield[@tag='070']">
1586 <z:index name="NAL-call-number:w">
1587 <xslo:variable name="raw_heading">
1588 <xslo:for-each select="marc:subfield">
1589 <xslo:if test="position() > 1">
1590 <xslo:value-of select="substring(' ', 1, 1)"/>
1592 <xslo:value-of select="."/>
1595 <xslo:value-of select="normalize-space($raw_heading)"/>
1598 <xslo:template mode="index_data_field" match="marc:datafield[@tag='080']">
1599 <z:index name="UDC-classification:w">
1600 <xslo:variable name="raw_heading">
1601 <xslo:for-each select="marc:subfield">
1602 <xslo:if test="position() > 1">
1603 <xslo:value-of select="substring(' ', 1, 1)"/>
1605 <xslo:value-of select="."/>
1608 <xslo:value-of select="normalize-space($raw_heading)"/>
1611 <xslo:template mode="index_data_field" match="marc:datafield[@tag='082']">
1612 <z:index name="Dewey-classification:w Dewey-classification:s">
1613 <xslo:variable name="raw_heading">
1614 <xslo:for-each select="marc:subfield">
1615 <xslo:if test="position() > 1">
1616 <xslo:value-of select="substring(' ', 1, 1)"/>
1618 <xslo:value-of select="."/>
1621 <xslo:value-of select="normalize-space($raw_heading)"/>
1624 <xslo:template mode="index_data_field" match="marc:datafield[@tag='086']">
1625 <z:index name="Number-govt-pub:w">
1626 <xslo:variable name="raw_heading">
1627 <xslo:for-each select="marc:subfield">
1628 <xslo:if test="position() > 1">
1629 <xslo:value-of select="substring(' ', 1, 1)"/>
1631 <xslo:value-of select="."/>
1634 <xslo:value-of select="normalize-space($raw_heading)"/>
1637 <xslo:template mode="index_data_field" match="marc:datafield[@tag='100']">
1638 <z:index name="Author:w Author:p Author:s Author-title:w Author-name-personal:w Name:w Name-and-title:w Personal-name:w">
1639 <xslo:variable name="raw_heading">
1640 <xslo:for-each select="marc:subfield">
1641 <xslo:if test="position() > 1">
1642 <xslo:value-of select="substring(' ', 1, 1)"/>
1644 <xslo:value-of select="."/>
1647 <xslo:value-of select="normalize-space($raw_heading)"/>
1650 <xslo:template mode="index_data_field" match="marc:datafield[@tag='110']">
1651 <z:index name="Author:w Author:p Author:s Author-title:w Author-name-corporate:w Name:w Name-and-title:w Corporate-name:w">
1652 <xslo:variable name="raw_heading">
1653 <xslo:for-each select="marc:subfield">
1654 <xslo:if test="position() > 1">
1655 <xslo:value-of select="substring(' ', 1, 1)"/>
1657 <xslo:value-of select="."/>
1660 <xslo:value-of select="normalize-space($raw_heading)"/>
1663 <xslo:template mode="index_data_field" match="marc:datafield[@tag='111']">
1664 <z:index name="Author:w Author:p Author:s Author-title:w Author-name-corporate:w Name:w Name-and-title:w Conference-name:w">
1665 <xslo:variable name="raw_heading">
1666 <xslo:for-each select="marc:subfield">
1667 <xslo:if test="position() > 1">
1668 <xslo:value-of select="substring(' ', 1, 1)"/>
1670 <xslo:value-of select="."/>
1673 <xslo:value-of select="normalize-space($raw_heading)"/>
1676 <xslo:template mode="index_data_field" match="marc:datafield[@tag='130']">
1677 <z:index name="Title:w Title:p Title-uniform:w">
1678 <xslo:variable name="raw_heading">
1679 <xslo:for-each select="marc:subfield">
1680 <xslo:if test="position() > 1">
1681 <xslo:value-of select="substring(' ', 1, 1)"/>
1683 <xslo:value-of select="."/>
1686 <xslo:value-of select="normalize-space($raw_heading)"/>
1689 <xslo:template mode="index_data_field" match="marc:datafield[@tag='210']">
1690 <z:index name="Title:w Title:p Title-abbreviated:w">
1691 <xslo:variable name="raw_heading">
1692 <xslo:for-each select="marc:subfield">
1693 <xslo:if test="position() > 1">
1694 <xslo:value-of select="substring(' ', 1, 1)"/>
1696 <xslo:value-of select="."/>
1699 <xslo:value-of select="normalize-space($raw_heading)"/>
1702 <xslo:template mode="index_data_field" match="marc:datafield[@tag='211']">
1703 <z:index name="Title:w Title:p Title-abbreviated:w">
1704 <xslo:variable name="raw_heading">
1705 <xslo:for-each select="marc:subfield">
1706 <xslo:if test="position() > 1">
1707 <xslo:value-of select="substring(' ', 1, 1)"/>
1709 <xslo:value-of select="."/>
1712 <xslo:value-of select="normalize-space($raw_heading)"/>
1715 <xslo:template mode="index_data_field" match="marc:datafield[@tag='212']">
1716 <z:index name="Title:w Title:p Title-other-variant:w">
1717 <xslo:variable name="raw_heading">
1718 <xslo:for-each select="marc:subfield">
1719 <xslo:if test="position() > 1">
1720 <xslo:value-of select="substring(' ', 1, 1)"/>
1722 <xslo:value-of select="."/>
1725 <xslo:value-of select="normalize-space($raw_heading)"/>
1728 <xslo:template mode="index_data_field" match="marc:datafield[@tag='214']">
1729 <z:index name="Title:w Title:p Title-expanded:w">
1730 <xslo:variable name="raw_heading">
1731 <xslo:for-each select="marc:subfield">
1732 <xslo:if test="position() > 1">
1733 <xslo:value-of select="substring(' ', 1, 1)"/>
1735 <xslo:value-of select="."/>
1738 <xslo:value-of select="normalize-space($raw_heading)"/>
1741 <xslo:template mode="index_data_field" match="marc:datafield[@tag='222']">
1742 <z:index name="Title:w Title:p Title-key:w">
1743 <xslo:variable name="raw_heading">
1744 <xslo:for-each select="marc:subfield">
1745 <xslo:if test="position() > 1">
1746 <xslo:value-of select="substring(' ', 1, 1)"/>
1748 <xslo:value-of select="."/>
1751 <xslo:value-of select="normalize-space($raw_heading)"/>
1754 <xslo:template mode="index_data_field" match="marc:datafield[@tag='240']">
1755 <z:index name="Title:w Title:p Title-uniform:w">
1756 <xslo:variable name="raw_heading">
1757 <xslo:for-each select="marc:subfield">
1758 <xslo:if test="position() > 1">
1759 <xslo:value-of select="substring(' ', 1, 1)"/>
1761 <xslo:value-of select="."/>
1764 <xslo:value-of select="normalize-space($raw_heading)"/>
1767 <xslo:template mode="index_data_field" match="marc:datafield[@tag='243']">
1768 <z:index name="Title:w Title:p Title-collective:w">
1769 <xslo:variable name="raw_heading">
1770 <xslo:for-each select="marc:subfield">
1771 <xslo:if test="position() > 1">
1772 <xslo:value-of select="substring(' ', 1, 1)"/>
1774 <xslo:value-of select="."/>
1777 <xslo:value-of select="normalize-space($raw_heading)"/>
1780 <xslo:template mode="index_data_field" match="marc:datafield[@tag='245']">
1781 <z:index name="Title:w Title:p">
1782 <xslo:variable name="raw_heading">
1783 <xslo:for-each select="marc:subfield">
1784 <xslo:if test="position() > 1">
1785 <xslo:value-of select="substring(' ', 1, 1)"/>
1787 <xslo:value-of select="."/>
1790 <xslo:value-of select="normalize-space($raw_heading)"/>
1793 <xslo:template mode="index_data_field" match="marc:datafield[@tag='246']">
1794 <z:index name="Title:w Title:p Title-abbreviated:w Title-expanded:w Title-former:w">
1795 <xslo:variable name="raw_heading">
1796 <xslo:for-each select="marc:subfield">
1797 <xslo:if test="position() > 1">
1798 <xslo:value-of select="substring(' ', 1, 1)"/>
1800 <xslo:value-of select="."/>
1803 <xslo:value-of select="normalize-space($raw_heading)"/>
1806 <xslo:template mode="index_data_field" match="marc:datafield[@tag='247']">
1807 <z:index name="Title:w Title:p Title-former:w Title-other-variant:w Related-periodical:w">
1808 <xslo:variable name="raw_heading">
1809 <xslo:for-each select="marc:subfield">
1810 <xslo:if test="position() > 1">
1811 <xslo:value-of select="substring(' ', 1, 1)"/>
1813 <xslo:value-of select="."/>
1816 <xslo:value-of select="normalize-space($raw_heading)"/>
1819 <xslo:template mode="index_data_field" match="marc:datafield[@tag='260']">
1820 <z:index name="pl:w">
1821 <xslo:variable name="raw_heading">
1822 <xslo:for-each select="marc:subfield">
1823 <xslo:if test="position() > 1">
1824 <xslo:value-of select="substring(' ', 1, 1)"/>
1826 <xslo:value-of select="."/>
1829 <xslo:value-of select="normalize-space($raw_heading)"/>
1832 <xslo:template mode="index_data_field" match="marc:datafield[@tag='300']">
1833 <z:index name="Extent:w Extent:p">
1834 <xslo:variable name="raw_heading">
1835 <xslo:for-each select="marc:subfield">
1836 <xslo:if test="position() > 1">
1837 <xslo:value-of select="substring(' ', 1, 1)"/>
1839 <xslo:value-of select="."/>
1842 <xslo:value-of select="normalize-space($raw_heading)"/>
1845 <xslo:template mode="index_data_field" match="marc:datafield[@tag='400']">
1846 <z:index name="Author:w Author-name-personal:w Name:w Personal-name:w">
1847 <xslo:variable name="raw_heading">
1848 <xslo:for-each select="marc:subfield">
1849 <xslo:if test="position() > 1">
1850 <xslo:value-of select="substring(' ', 1, 1)"/>
1852 <xslo:value-of select="."/>
1855 <xslo:value-of select="normalize-space($raw_heading)"/>
1858 <xslo:template mode="index_data_field" match="marc:datafield[@tag='410']">
1859 <z:index name="Author:w Corporate-name:w">
1860 <xslo:variable name="raw_heading">
1861 <xslo:for-each select="marc:subfield">
1862 <xslo:if test="position() > 1">
1863 <xslo:value-of select="substring(' ', 1, 1)"/>
1865 <xslo:value-of select="."/>
1868 <xslo:value-of select="normalize-space($raw_heading)"/>
1871 <xslo:template mode="index_data_field" match="marc:datafield[@tag='411']">
1872 <z:index name="Author:w Conference-name:w">
1873 <xslo:variable name="raw_heading">
1874 <xslo:for-each select="marc:subfield">
1875 <xslo:if test="position() > 1">
1876 <xslo:value-of select="substring(' ', 1, 1)"/>
1878 <xslo:value-of select="."/>
1881 <xslo:value-of select="normalize-space($raw_heading)"/>
1884 <xslo:template mode="index_data_field" match="marc:datafield[@tag='440']">
1885 <z:index name="Title-series:w Title-series:p Title:w Title-series:w">
1886 <xslo:variable name="raw_heading">
1887 <xslo:for-each select="marc:subfield">
1888 <xslo:if test="position() > 1">
1889 <xslo:value-of select="substring(' ', 1, 1)"/>
1891 <xslo:value-of select="."/>
1894 <xslo:value-of select="normalize-space($raw_heading)"/>
1897 <xslo:template mode="index_data_field" match="marc:datafield[@tag='490']">
1898 <z:index name="Title:w Title-series:w">
1899 <xslo:variable name="raw_heading">
1900 <xslo:for-each select="marc:subfield">
1901 <xslo:if test="position() > 1">
1902 <xslo:value-of select="substring(' ', 1, 1)"/>
1904 <xslo:value-of select="."/>
1907 <xslo:value-of select="normalize-space($raw_heading)"/>
1910 <xslo:template mode="index_data_field" match="marc:datafield[@tag='500']">
1911 <z:index name="Note:w Note:p">
1912 <xslo:variable name="raw_heading">
1913 <xslo:for-each select="marc:subfield">
1914 <xslo:if test="position() > 1">
1915 <xslo:value-of select="substring(' ', 1, 1)"/>
1917 <xslo:value-of select="."/>
1920 <xslo:value-of select="normalize-space($raw_heading)"/>
1923 <xslo:template mode="index_data_field" match="marc:datafield[@tag='502']">
1924 <z:index name="Material-type:w">
1925 <xslo:variable name="raw_heading">
1926 <xslo:for-each select="marc:subfield">
1927 <xslo:if test="position() > 1">
1928 <xslo:value-of select="substring(' ', 1, 1)"/>
1930 <xslo:value-of select="."/>
1933 <xslo:value-of select="normalize-space($raw_heading)"/>
1936 <xslo:template mode="index_data_field" match="marc:datafield[@tag='505']">
1937 <z:index name="Note:w Note:p">
1938 <xslo:variable name="raw_heading">
1939 <xslo:for-each select="marc:subfield">
1940 <xslo:if test="position() > 1">
1941 <xslo:value-of select="substring(' ', 1, 1)"/>
1943 <xslo:value-of select="."/>
1946 <xslo:value-of select="normalize-space($raw_heading)"/>
1949 <xslo:template mode="index_data_field" match="marc:datafield[@tag='510']">
1950 <z:index name="Indexed-by:w">
1951 <xslo:variable name="raw_heading">
1952 <xslo:for-each select="marc:subfield">
1953 <xslo:if test="position() > 1">
1954 <xslo:value-of select="substring(' ', 1, 1)"/>
1956 <xslo:value-of select="."/>
1959 <xslo:value-of select="normalize-space($raw_heading)"/>
1962 <xslo:template mode="index_data_field" match="marc:datafield[@tag='520']">
1963 <z:index name="Abstract:w Abstract:p">
1964 <xslo:variable name="raw_heading">
1965 <xslo:for-each select="marc:subfield">
1966 <xslo:if test="position() > 1">
1967 <xslo:value-of select="substring(' ', 1, 1)"/>
1969 <xslo:value-of select="."/>
1972 <xslo:value-of select="normalize-space($raw_heading)"/>
1975 <xslo:template mode="index_data_field" match="marc:datafield[@tag='590']">
1976 <z:index name="Note:w Note:p">
1977 <xslo:variable name="raw_heading">
1978 <xslo:for-each select="marc:subfield">
1979 <xslo:if test="position() > 1">
1980 <xslo:value-of select="substring(' ', 1, 1)"/>
1982 <xslo:value-of select="."/>
1985 <xslo:value-of select="normalize-space($raw_heading)"/>
1988 <xslo:template mode="index_data_field" match="marc:datafield[@tag='600']">
1989 <z:index name="Name:w Personal-name:w Subject-name-personal:w Subject:w Subject:p">
1990 <xslo:variable name="raw_heading">
1991 <xslo:for-each select="marc:subfield">
1992 <xslo:if test="position() > 1">
1993 <xslo:value-of select="substring(' ', 1, 1)"/>
1995 <xslo:value-of select="."/>
1998 <xslo:value-of select="normalize-space($raw_heading)"/>
2001 <xslo:template mode="index_data_field" match="marc:datafield[@tag='610']">
2002 <z:index name="Name:w Subject:w Subject:p Corporate-name:w">
2003 <xslo:variable name="raw_heading">
2004 <xslo:for-each select="marc:subfield">
2005 <xslo:if test="position() > 1">
2006 <xslo:value-of select="substring(' ', 1, 1)"/>
2008 <xslo:value-of select="."/>
2011 <xslo:value-of select="normalize-space($raw_heading)"/>
2014 <xslo:template mode="index_data_field" match="marc:datafield[@tag='611']">
2015 <z:index name="Conference-name:w Name:w Subject:w Subject:p">
2016 <xslo:variable name="raw_heading">
2017 <xslo:for-each select="marc:subfield">
2018 <xslo:if test="position() > 1">
2019 <xslo:value-of select="substring(' ', 1, 1)"/>
2021 <xslo:value-of select="."/>
2024 <xslo:value-of select="normalize-space($raw_heading)"/>
2027 <xslo:template mode="index_data_field" match="marc:datafield[@tag='630']">
2028 <z:index name="Subject:w Subject:p">
2029 <xslo:variable name="raw_heading">
2030 <xslo:for-each select="marc:subfield">
2031 <xslo:if test="position() > 1">
2032 <xslo:value-of select="substring(' ', 1, 1)"/>
2034 <xslo:value-of select="."/>
2037 <xslo:value-of select="normalize-space($raw_heading)"/>
2040 <xslo:template mode="index_data_field" match="marc:datafield[@tag='650']">
2041 <z:index name="Subject:w Subject:p">
2042 <xslo:variable name="raw_heading">
2043 <xslo:for-each select="marc:subfield">
2044 <xslo:if test="position() > 1">
2045 <xslo:value-of select="substring(' ', 1, 1)"/>
2047 <xslo:value-of select="."/>
2050 <xslo:value-of select="normalize-space($raw_heading)"/>
2053 <xslo:template mode="index_data_field" match="marc:datafield[@tag='651']">
2054 <z:index name="Name-geographic:w Subject:w Subject:p">
2055 <xslo:variable name="raw_heading">
2056 <xslo:for-each select="marc:subfield">
2057 <xslo:if test="position() > 1">
2058 <xslo:value-of select="substring(' ', 1, 1)"/>
2060 <xslo:value-of select="."/>
2063 <xslo:value-of select="normalize-space($raw_heading)"/>
2066 <xslo:template mode="index_data_field" match="marc:datafield[@tag='653']">
2067 <z:index name="Subject:w Subject:p">
2068 <xslo:variable name="raw_heading">
2069 <xslo:for-each select="marc:subfield">
2070 <xslo:if test="position() > 1">
2071 <xslo:value-of select="substring(' ', 1, 1)"/>
2073 <xslo:value-of select="."/>
2076 <xslo:value-of select="normalize-space($raw_heading)"/>
2079 <xslo:template mode="index_data_field" match="marc:datafield[@tag='654']">
2080 <z:index name="Subject:w Subject:p">
2081 <xslo:variable name="raw_heading">
2082 <xslo:for-each select="marc:subfield">
2083 <xslo:if test="position() > 1">
2084 <xslo:value-of select="substring(' ', 1, 1)"/>
2086 <xslo:value-of select="."/>
2089 <xslo:value-of select="normalize-space($raw_heading)"/>
2092 <xslo:template mode="index_data_field" match="marc:datafield[@tag='655']">
2093 <z:index name="Subject:w Subject:p">
2094 <xslo:variable name="raw_heading">
2095 <xslo:for-each select="marc:subfield">
2096 <xslo:if test="position() > 1">
2097 <xslo:value-of select="substring(' ', 1, 1)"/>
2099 <xslo:value-of select="."/>
2102 <xslo:value-of select="normalize-space($raw_heading)"/>
2105 <xslo:template mode="index_data_field" match="marc:datafield[@tag='656']">
2106 <z:index name="Subject:w Subject:p">
2107 <xslo:variable name="raw_heading">
2108 <xslo:for-each select="marc:subfield">
2109 <xslo:if test="position() > 1">
2110 <xslo:value-of select="substring(' ', 1, 1)"/>
2112 <xslo:value-of select="."/>
2115 <xslo:value-of select="normalize-space($raw_heading)"/>
2118 <xslo:template mode="index_data_field" match="marc:datafield[@tag='657']">
2119 <z:index name="Subject:w Subject:p">
2120 <xslo:variable name="raw_heading">
2121 <xslo:for-each select="marc:subfield">
2122 <xslo:if test="position() > 1">
2123 <xslo:value-of select="substring(' ', 1, 1)"/>
2125 <xslo:value-of select="."/>
2128 <xslo:value-of select="normalize-space($raw_heading)"/>
2131 <xslo:template mode="index_data_field" match="marc:datafield[@tag='658']">
2132 <z:index name="Subject:w Subject:p">
2133 <xslo:variable name="raw_heading">
2134 <xslo:for-each select="marc:subfield">
2135 <xslo:if test="position() > 1">
2136 <xslo:value-of select="substring(' ', 1, 1)"/>
2138 <xslo:value-of select="."/>
2141 <xslo:value-of select="normalize-space($raw_heading)"/>
2144 <xslo:template mode="index_data_field" match="marc:datafield[@tag='690']">
2145 <z:index name="Subject:w Subject:p">
2146 <xslo:variable name="raw_heading">
2147 <xslo:for-each select="marc:subfield">
2148 <xslo:if test="position() > 1">
2149 <xslo:value-of select="substring(' ', 1, 1)"/>
2151 <xslo:value-of select="."/>
2154 <xslo:value-of select="normalize-space($raw_heading)"/>
2157 <xslo:template mode="index_data_field" match="marc:datafield[@tag='700']">
2158 <z:index name="Author:w Author:p Author-name-personal:w Name:w Editor:w Personal-name:w">
2159 <xslo:variable name="raw_heading">
2160 <xslo:for-each select="marc:subfield">
2161 <xslo:if test="position() > 1">
2162 <xslo:value-of select="substring(' ', 1, 1)"/>
2164 <xslo:value-of select="."/>
2167 <xslo:value-of select="normalize-space($raw_heading)"/>
2170 <xslo:template mode="index_data_field" match="marc:datafield[@tag='710']">
2171 <z:index name="Author:w Author:p Corporate-name:w Name:w">
2172 <xslo:variable name="raw_heading">
2173 <xslo:for-each select="marc:subfield">
2174 <xslo:if test="position() > 1">
2175 <xslo:value-of select="substring(' ', 1, 1)"/>
2177 <xslo:value-of select="."/>
2180 <xslo:value-of select="normalize-space($raw_heading)"/>
2183 <xslo:template mode="index_data_field" match="marc:datafield[@tag='711']">
2184 <z:index name="Author:w Author:p Author-name-corporate:w Name:w Conference-name:w">
2185 <xslo:variable name="raw_heading">
2186 <xslo:for-each select="marc:subfield">
2187 <xslo:if test="position() > 1">
2188 <xslo:value-of select="substring(' ', 1, 1)"/>
2190 <xslo:value-of select="."/>
2193 <xslo:value-of select="normalize-space($raw_heading)"/>
2196 <xslo:template mode="index_data_field" match="marc:datafield[@tag='730']">
2197 <z:index name="Title:w Title:p Title-uniform:w">
2198 <xslo:variable name="raw_heading">
2199 <xslo:for-each select="marc:subfield">
2200 <xslo:if test="position() > 1">
2201 <xslo:value-of select="substring(' ', 1, 1)"/>
2203 <xslo:value-of select="."/>
2206 <xslo:value-of select="normalize-space($raw_heading)"/>
2209 <xslo:template mode="index_data_field" match="marc:datafield[@tag='740']">
2210 <z:index name="Title:w Title:p Title-other-variant:w">
2211 <xslo:variable name="raw_heading">
2212 <xslo:for-each select="marc:subfield">
2213 <xslo:if test="position() > 1">
2214 <xslo:value-of select="substring(' ', 1, 1)"/>
2216 <xslo:value-of select="."/>
2219 <xslo:value-of select="normalize-space($raw_heading)"/>
2222 <xslo:template mode="index_data_field" match="marc:datafield[@tag='751']">
2223 <z:index name="Name-geographic:w">
2224 <xslo:variable name="raw_heading">
2225 <xslo:for-each select="marc:subfield">
2226 <xslo:if test="position() > 1">
2227 <xslo:value-of select="substring(' ', 1, 1)"/>
2229 <xslo:value-of select="."/>
2232 <xslo:value-of select="normalize-space($raw_heading)"/>
2235 <xslo:template mode="index_data_field" match="marc:datafield[@tag='780']">
2236 <z:index name="Title:w Title:p Title-former:w Related-periodical:w">
2237 <xslo:variable name="raw_heading">
2238 <xslo:for-each select="marc:subfield">
2239 <xslo:if test="position() > 1">
2240 <xslo:value-of select="substring(' ', 1, 1)"/>
2242 <xslo:value-of select="."/>
2245 <xslo:value-of select="normalize-space($raw_heading)"/>
2248 <xslo:template mode="index_data_field" match="marc:datafield[@tag='785']">
2249 <z:index name="Title:w Title:p Title-later:w Related-periodical:w">
2250 <xslo:variable name="raw_heading">
2251 <xslo:for-each select="marc:subfield">
2252 <xslo:if test="position() > 1">
2253 <xslo:value-of select="substring(' ', 1, 1)"/>
2255 <xslo:value-of select="."/>
2258 <xslo:value-of select="normalize-space($raw_heading)"/>
2261 <xslo:template mode="index_data_field" match="marc:datafield[@tag='800']">
2262 <z:index name="Author:w Author-name-personal:w Name:w Personal-name:w">
2263 <xslo:variable name="raw_heading">
2264 <xslo:for-each select="marc:subfield">
2265 <xslo:if test="position() > 1">
2266 <xslo:value-of select="substring(' ', 1, 1)"/>
2268 <xslo:value-of select="."/>
2271 <xslo:value-of select="normalize-space($raw_heading)"/>
2274 <xslo:template mode="index_data_field" match="marc:datafield[@tag='810']">
2275 <z:index name="Author:w Corporate-name:w Author-name-corporate:w Name:w">
2276 <xslo:variable name="raw_heading">
2277 <xslo:for-each select="marc:subfield">
2278 <xslo:if test="position() > 1">
2279 <xslo:value-of select="substring(' ', 1, 1)"/>
2281 <xslo:value-of select="."/>
2284 <xslo:value-of select="normalize-space($raw_heading)"/>
2287 <xslo:template mode="index_data_field" match="marc:datafield[@tag='811']">
2288 <z:index name="Author:w Author-name-corporate:w Name:w Conference-name:w">
2289 <xslo:variable name="raw_heading">
2290 <xslo:for-each select="marc:subfield">
2291 <xslo:if test="position() > 1">
2292 <xslo:value-of select="substring(' ', 1, 1)"/>
2294 <xslo:value-of select="."/>
2297 <xslo:value-of select="normalize-space($raw_heading)"/>
2300 <xslo:template mode="index_data_field" match="marc:datafield[@tag='830']">
2301 <z:index name="Title:w Title-series:w Title-series:p">
2302 <xslo:variable name="raw_heading">
2303 <xslo:for-each select="marc:subfield">
2304 <xslo:if test="position() > 1">
2305 <xslo:value-of select="substring(' ', 1, 1)"/>
2307 <xslo:value-of select="."/>
2310 <xslo:value-of select="normalize-space($raw_heading)"/>
2313 <xslo:template mode="index_data_field" match="marc:datafield[@tag='840']">
2314 <z:index name="Title:w Title-series:w Title-series:p">
2315 <xslo:variable name="raw_heading">
2316 <xslo:for-each select="marc:subfield">
2317 <xslo:if test="position() > 1">
2318 <xslo:value-of select="substring(' ', 1, 1)"/>
2320 <xslo:value-of select="."/>
2323 <xslo:value-of select="normalize-space($raw_heading)"/>
2326 <xslo:template mode="index_all" match="text()">
2327 <z:index name="Any:w Any:p">
2328 <xslo:value-of select="."/>
2331 <xslo:template name="chopPunctuation">
2332 <xslo:param name="chopString"/>
2333 <xslo:variable name="length" select="string-length($chopString)"/>
2335 <xslo:when test="$length=0"/>
2336 <xslo:when test="contains('-,.:=;!%/', substring($chopString,$length,1))">
2337 <xslo:call-template name="chopPunctuation">
2338 <xslo:with-param name="chopString" select="substring($chopString,1,$length - 1)"/>
2339 </xslo:call-template>
2341 <xslo:when test="not($chopString)"/>
2343 <xslo:value-of select="$chopString"/>