source: clfs-sysroot/BOOK/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/biblio.xsl @ a18aefd

Last change on this file since a18aefd was a18aefd, checked in by Manuel Canales Esparcia <manuel@…>, 17 years ago

Added lfs-xsl stylesheets.

  • Property mode set to 100644
File size: 35.1 KB
Line 
1<?xml version='1.0'?>
2<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3                xmlns:fo="http://www.w3.org/1999/XSL/Format"
4                version='1.0'>
5
6<!-- ********************************************************************
7     $Id$
8     ********************************************************************
9
10     This file is part of the XSL DocBook Stylesheet distribution.
11     See ../README or http://docbook.sf.net/release/xsl/current/ for
12     copyright and other information.
13
14     ******************************************************************** -->
15
16<!-- ==================================================================== -->
17
18<xsl:template match="bibliography">
19  <xsl:variable name="id">
20    <xsl:call-template name="object.id"/>
21  </xsl:variable>
22
23  <xsl:choose>
24    <xsl:when test="not(parent::*) or parent::part or parent::book">
25      <xsl:variable name="master-reference">
26        <xsl:call-template name="select.pagemaster"/>
27      </xsl:variable>
28
29      <fo:page-sequence hyphenate="{$hyphenate}"
30                        master-reference="{$master-reference}">
31        <xsl:attribute name="language">
32          <xsl:call-template name="l10n.language"/>
33        </xsl:attribute>
34        <xsl:attribute name="format">
35          <xsl:call-template name="page.number.format">
36            <xsl:with-param name="master-reference" select="$master-reference"/>
37          </xsl:call-template>
38        </xsl:attribute>
39        <xsl:attribute name="initial-page-number">
40          <xsl:call-template name="initial.page.number">
41            <xsl:with-param name="master-reference" select="$master-reference"/>
42          </xsl:call-template>
43        </xsl:attribute>
44        <xsl:attribute name="force-page-count">
45          <xsl:call-template name="force.page.count">
46            <xsl:with-param name="master-reference" select="$master-reference"/>
47          </xsl:call-template>
48        </xsl:attribute>
49        <xsl:attribute name="hyphenation-character">
50          <xsl:call-template name="gentext">
51            <xsl:with-param name="key" select="'hyphenation-character'"/>
52          </xsl:call-template>
53        </xsl:attribute>
54        <xsl:attribute name="hyphenation-push-character-count">
55          <xsl:call-template name="gentext">
56            <xsl:with-param name="key" select="'hyphenation-push-character-count'"/>
57          </xsl:call-template>
58        </xsl:attribute>
59        <xsl:attribute name="hyphenation-remain-character-count">
60          <xsl:call-template name="gentext">
61            <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/>
62          </xsl:call-template>
63        </xsl:attribute>
64
65        <xsl:apply-templates select="." mode="running.head.mode">
66          <xsl:with-param name="master-reference" select="$master-reference"/>
67        </xsl:apply-templates>
68        <xsl:apply-templates select="." mode="running.foot.mode">
69          <xsl:with-param name="master-reference" select="$master-reference"/>
70        </xsl:apply-templates>
71
72        <fo:flow flow-name="xsl-region-body">
73          <xsl:call-template name="set.flow.properties">
74            <xsl:with-param name="element" select="local-name(.)"/>
75            <xsl:with-param name="master-reference" select="$master-reference"/>
76          </xsl:call-template>
77
78          <fo:block id="{$id}">
79            <xsl:call-template name="bibliography.titlepage"/>
80          </fo:block>
81          <xsl:apply-templates/>
82        </fo:flow>
83      </fo:page-sequence>
84    </xsl:when>
85    <xsl:otherwise>
86      <fo:block id="{$id}"
87                space-before.minimum="1em"
88                space-before.optimum="1.5em"
89                space-before.maximum="2em">
90        <xsl:call-template name="bibliography.titlepage"/>
91      </fo:block>
92      <xsl:apply-templates/>
93    </xsl:otherwise>
94  </xsl:choose>
95</xsl:template>
96
97<xsl:template match="bibliography/bibliographyinfo"></xsl:template>
98<xsl:template match="bibliography/info"></xsl:template>
99<xsl:template match="bibliography/title"></xsl:template>
100<xsl:template match="bibliography/subtitle"></xsl:template>
101<xsl:template match="bibliography/titleabbrev"></xsl:template>
102
103<!-- ==================================================================== -->
104
105<xsl:template match="bibliodiv">
106  <fo:block>
107    <xsl:attribute name="id">
108      <xsl:call-template name="object.id"/>
109    </xsl:attribute>
110    <xsl:call-template name="bibliodiv.titlepage"/>
111    <xsl:apply-templates/>
112  </fo:block>
113</xsl:template>
114
115<xsl:template match="bibliodiv/title"/>
116<xsl:template match="bibliodiv/subtitle"/>
117<xsl:template match="bibliodiv/titleabbrev"/>
118
119<!-- ==================================================================== -->
120
121<xsl:template match="bibliolist">
122  <xsl:variable name="id">
123    <xsl:call-template name="object.id"/>
124  </xsl:variable>
125
126  <fo:block id="{$id}"
127            space-before.minimum="1em"
128            space-before.optimum="1.5em"
129            space-before.maximum="2em">
130
131    <xsl:if test="blockinfo/title|info/title|title">
132      <xsl:call-template name="formal.object.heading"/>
133    </xsl:if>
134
135    <xsl:apply-templates select="*[not(self::blockinfo)
136                                   and not(self::info)
137                                   and not(self::title)
138                                   and not(self::titleabbrev)]"/>
139  </fo:block>
140</xsl:template>
141
142<!-- ==================================================================== -->
143
144<xsl:template match="biblioentry">
145  <xsl:param name="label">
146    <xsl:call-template name="biblioentry.label"/>
147  </xsl:param>
148
149  <xsl:variable name="id">
150    <xsl:call-template name="object.id"/>
151  </xsl:variable>
152
153  <xsl:choose>
154    <xsl:when test="string(.) = ''">
155      <xsl:variable name="bib" select="document($bibliography.collection,.)"/>
156      <xsl:variable name="entry" select="$bib/bibliography/
157                                         *[@id=$id or @xml:id=$id][1]"/>
158      <xsl:choose>
159        <xsl:when test="$entry">
160          <xsl:choose>
161            <xsl:when test="$bibliography.numbered != 0">
162              <xsl:apply-templates select="$entry">
163                <xsl:with-param name="label" select="$label"/>
164              </xsl:apply-templates>
165            </xsl:when>
166            <xsl:otherwise>
167              <xsl:apply-templates select="$entry"/>
168            </xsl:otherwise>
169          </xsl:choose>
170        </xsl:when>
171        <xsl:otherwise>
172          <xsl:message>
173            <xsl:text>No bibliography entry: </xsl:text>
174            <xsl:value-of select="$id"/>
175            <xsl:text> found in </xsl:text>
176            <xsl:value-of select="$bibliography.collection"/>
177          </xsl:message>
178          <fo:block id="{$id}" xsl:use-attribute-sets="normal.para.spacing">
179            <xsl:text>Error: no bibliography entry: </xsl:text>
180            <xsl:value-of select="$id"/>
181            <xsl:text> found in </xsl:text>
182            <xsl:value-of select="$bibliography.collection"/>
183          </fo:block>
184        </xsl:otherwise>
185      </xsl:choose>
186    </xsl:when>
187    <xsl:otherwise>
188      <fo:block id="{$id}" xsl:use-attribute-sets="biblioentry.properties">
189        <xsl:copy-of select="$label"/>
190        <xsl:choose>
191          <xsl:when test="$bibliography.style = 'iso690'">
192            <xsl:call-template name="iso690.makecitation"/>
193          </xsl:when>
194          <xsl:otherwise>
195            <xsl:apply-templates mode="bibliography.mode"/>
196          </xsl:otherwise>
197        </xsl:choose>
198      </fo:block>
199    </xsl:otherwise>
200  </xsl:choose>
201</xsl:template>
202
203<xsl:template match="bibliomixed">
204  <xsl:param name="label">
205    <xsl:call-template name="biblioentry.label"/>
206  </xsl:param>
207
208  <xsl:variable name="id">
209    <xsl:call-template name="object.id"/>
210  </xsl:variable>
211
212  <xsl:choose>
213    <xsl:when test="string(.) = ''">
214      <xsl:variable name="bib" select="document($bibliography.collection,.)"/>
215      <xsl:variable name="entry" select="$bib/bibliography/
216                                         *[@id=$id or @xml:id=$id][1]"/>
217      <xsl:choose>
218        <xsl:when test="$entry">
219          <xsl:choose>
220            <xsl:when test="$bibliography.numbered != 0">
221              <xsl:apply-templates select="$entry">
222                <xsl:with-param name="label" select="$label"/>
223              </xsl:apply-templates>
224            </xsl:when>
225            <xsl:otherwise>
226              <xsl:apply-templates select="$entry"/>
227            </xsl:otherwise>
228          </xsl:choose>
229        </xsl:when>
230        <xsl:otherwise>
231          <xsl:message>
232            <xsl:text>No bibliography entry: </xsl:text>
233            <xsl:value-of select="$id"/>
234            <xsl:text> found in </xsl:text>
235            <xsl:value-of select="$bibliography.collection"/>
236          </xsl:message>
237          <fo:block id="{$id}" xsl:use-attribute-sets="normal.para.spacing">
238            <xsl:text>Error: no bibliography entry: </xsl:text>
239            <xsl:value-of select="$id"/>
240            <xsl:text> found in </xsl:text>
241            <xsl:value-of select="$bibliography.collection"/>
242          </fo:block>
243        </xsl:otherwise>
244      </xsl:choose>
245    </xsl:when>
246    <xsl:otherwise>
247      <fo:block id="{$id}" xsl:use-attribute-sets="biblioentry.properties">
248        <xsl:copy-of select="$label"/>
249        <xsl:apply-templates mode="bibliomixed.mode"/>
250      </fo:block>
251    </xsl:otherwise>
252  </xsl:choose>
253</xsl:template>
254
255<xsl:template name="biblioentry.label">
256  <xsl:param name="node" select="."/>
257
258  <xsl:choose>
259    <xsl:when test="$bibliography.numbered != 0">
260      <xsl:text>[</xsl:text>
261      <xsl:number from="bibliography" count="biblioentry|bibliomixed"
262                  level="any" format="1"/>
263      <xsl:text>] </xsl:text>
264    </xsl:when>
265    <xsl:when test="local-name($node/child::*[1]) = 'abbrev'">
266      <xsl:text>[</xsl:text>
267      <xsl:apply-templates select="$node/abbrev[1]"/>
268      <xsl:text>] </xsl:text>
269    </xsl:when>
270    <xsl:when test="$node/@xreflabel">
271      <xsl:text>[</xsl:text>
272      <xsl:value-of select="$node/@xreflabel"/>
273      <xsl:text>] </xsl:text>
274    </xsl:when>
275    <xsl:when test="$node/@id or $node/@xml:id">
276      <xsl:text>[</xsl:text>
277      <xsl:value-of select="($node/@id|$node/@xml:id)[1]"/>
278      <xsl:text>] </xsl:text>
279    </xsl:when>
280    <xsl:otherwise><!-- nop --></xsl:otherwise>
281  </xsl:choose>
282</xsl:template>
283
284<!-- ==================================================================== -->
285
286<xsl:template match="*" mode="bibliography.mode">
287  <xsl:apply-templates select="."/><!-- try the default mode -->
288</xsl:template>
289
290<xsl:template match="abbrev" mode="bibliography.mode">
291  <xsl:if test="preceding-sibling::*">
292    <fo:inline>
293      <xsl:apply-templates mode="bibliography.mode"/>
294    </fo:inline>
295  </xsl:if>
296</xsl:template>
297
298<xsl:template match="abstract" mode="bibliography.mode">
299  <!-- suppressed -->
300</xsl:template>
301
302<xsl:template match="address" mode="bibliography.mode">
303  <fo:inline>
304    <xsl:apply-templates mode="bibliography.mode"/>
305    <xsl:value-of select="$biblioentry.item.separator"/>
306  </fo:inline>
307</xsl:template>
308
309<xsl:template match="affiliation" mode="bibliography.mode">
310  <fo:inline>
311    <xsl:apply-templates mode="bibliography.mode"/>
312    <xsl:value-of select="$biblioentry.item.separator"/>
313  </fo:inline>
314</xsl:template>
315
316<xsl:template match="shortaffil" mode="bibliography.mode">
317  <fo:inline>
318    <xsl:apply-templates mode="bibliography.mode"/>
319    <xsl:value-of select="$biblioentry.item.separator"/>
320  </fo:inline>
321</xsl:template>
322
323<xsl:template match="jobtitle" mode="bibliography.mode">
324  <fo:inline>
325    <xsl:apply-templates mode="bibliography.mode"/>
326    <xsl:value-of select="$biblioentry.item.separator"/>
327  </fo:inline>
328</xsl:template>
329
330<xsl:template match="artheader|articleinfo|article/info" 
331              mode="bibliography.mode">
332  <fo:inline>
333    <xsl:apply-templates mode="bibliography.mode"/>
334    <xsl:value-of select="$biblioentry.item.separator"/>
335  </fo:inline>
336</xsl:template>
337
338<xsl:template match="artpagenums" mode="bibliography.mode">
339  <fo:inline>
340    <xsl:apply-templates mode="bibliography.mode"/>
341    <xsl:value-of select="$biblioentry.item.separator"/>
342  </fo:inline>
343</xsl:template>
344
345<xsl:template match="author" mode="bibliography.mode">
346  <fo:inline>
347    <xsl:call-template name="person.name"/>
348    <xsl:value-of select="$biblioentry.item.separator"/>
349  </fo:inline>
350</xsl:template>
351
352<xsl:template match="authorblurb|personblurb" mode="bibliography.mode">
353  <fo:inline>
354    <xsl:apply-templates mode="bibliography.mode"/>
355    <xsl:value-of select="$biblioentry.item.separator"/>
356  </fo:inline>
357</xsl:template>
358
359<xsl:template match="authorgroup" mode="bibliography.mode">
360  <fo:inline>
361    <xsl:call-template name="person.name.list"/>
362    <xsl:value-of select="$biblioentry.item.separator"/>
363  </fo:inline>
364</xsl:template>
365
366<xsl:template match="authorinitials" mode="bibliography.mode">
367  <fo:inline>
368    <xsl:apply-templates mode="bibliography.mode"/>
369    <xsl:value-of select="$biblioentry.item.separator"/>
370  </fo:inline>
371</xsl:template>
372
373<xsl:template match="bibliomisc" mode="bibliography.mode">
374  <fo:inline>
375    <xsl:apply-templates mode="bibliography.mode"/>
376    <xsl:value-of select="$biblioentry.item.separator"/>
377  </fo:inline>
378</xsl:template>
379
380<xsl:template match="bibliomset" mode="bibliography.mode">
381  <fo:inline>
382    <xsl:apply-templates mode="bibliography.mode"/>
383    <xsl:value-of select="$biblioentry.item.separator"/>
384  </fo:inline>
385</xsl:template>
386
387<!-- ================================================== -->
388
389<xsl:template match="biblioset" mode="bibliography.mode">
390  <fo:inline>
391    <xsl:apply-templates mode="bibliography.mode"/>
392  </fo:inline>
393</xsl:template>
394
395<xsl:template match="biblioset/title|biblioset/citetitle" 
396              mode="bibliography.mode">
397  <xsl:variable name="relation" select="../@relation"/>
398  <xsl:choose>
399    <xsl:when test="$relation='article' or @pubwork='article'">
400      <xsl:call-template name="gentext.startquote"/>
401      <xsl:apply-templates mode="bibliography.mode"/>
402      <xsl:call-template name="gentext.endquote"/>
403    </xsl:when>
404    <xsl:otherwise>
405      <fo:inline font-style="italic">
406        <xsl:apply-templates/>
407      </fo:inline>
408    </xsl:otherwise>
409  </xsl:choose>
410  <xsl:value-of select="$biblioentry.item.separator"/>
411</xsl:template>
412
413<!-- ================================================== -->
414
415<xsl:template match="bookbiblio" mode="bibliography.mode">
416  <fo:inline>
417    <xsl:apply-templates mode="bibliography.mode"/>
418    <xsl:value-of select="$biblioentry.item.separator"/>
419  </fo:inline>
420</xsl:template>
421
422<xsl:template match="citetitle" mode="bibliography.mode">
423  <fo:inline>
424    <xsl:choose>
425      <xsl:when test="@pubwork = 'article'">
426        <xsl:call-template name="gentext.startquote"/>
427        <xsl:apply-templates mode="bibliography.mode"/>
428        <xsl:call-template name="gentext.endquote"/>
429      </xsl:when>
430      <xsl:otherwise>
431        <fo:inline font-style="italic">
432          <xsl:apply-templates mode="bibliography.mode"/>
433        </fo:inline>
434      </xsl:otherwise>
435    </xsl:choose>
436    <xsl:value-of select="$biblioentry.item.separator"/>
437  </fo:inline>
438</xsl:template>
439
440<xsl:template match="collab" mode="bibliography.mode">
441  <fo:inline>
442    <xsl:apply-templates mode="bibliography.mode"/>
443    <xsl:value-of select="$biblioentry.item.separator"/>
444  </fo:inline>
445</xsl:template>
446
447<xsl:template match="confgroup" mode="bibliography.mode">
448  <fo:inline>
449    <xsl:apply-templates mode="bibliography.mode"/>
450    <xsl:value-of select="$biblioentry.item.separator"/>
451  </fo:inline>
452</xsl:template>
453
454<xsl:template match="contractnum" mode="bibliography.mode">
455  <fo:inline>
456    <xsl:apply-templates mode="bibliography.mode"/>
457    <xsl:value-of select="$biblioentry.item.separator"/>
458  </fo:inline>
459</xsl:template>
460
461<xsl:template match="contractsponsor" mode="bibliography.mode">
462  <fo:inline>
463    <xsl:apply-templates mode="bibliography.mode"/>
464    <xsl:value-of select="$biblioentry.item.separator"/>
465  </fo:inline>
466</xsl:template>
467
468<xsl:template match="contrib" mode="bibliography.mode">
469  <fo:inline>
470    <xsl:apply-templates mode="bibliography.mode"/>
471    <xsl:value-of select="$biblioentry.item.separator"/>
472  </fo:inline>
473</xsl:template>
474
475<!-- ================================================== -->
476
477<xsl:template match="copyright" mode="bibliography.mode">
478  <fo:inline>
479    <xsl:call-template name="gentext">
480      <xsl:with-param name="key" select="'Copyright'"/>
481    </xsl:call-template>
482    <xsl:call-template name="gentext.space"/>
483    <xsl:call-template name="dingbat">
484      <xsl:with-param name="dingbat">copyright</xsl:with-param>
485    </xsl:call-template>
486    <xsl:call-template name="gentext.space"/>
487    <xsl:apply-templates select="year" mode="bibliography.mode"/>
488    <xsl:if test="holder">
489      <xsl:call-template name="gentext.space"/>
490      <xsl:apply-templates select="holder" mode="bibliography.mode"/>
491    </xsl:if>
492    <xsl:value-of select="$biblioentry.item.separator"/>
493  </fo:inline>
494</xsl:template>
495
496<xsl:template match="year" mode="bibliography.mode">
497  <xsl:apply-templates/><xsl:text>, </xsl:text>
498</xsl:template>
499
500<xsl:template match="year[position()=last()]" mode="bibliography.mode">
501  <xsl:apply-templates/>
502</xsl:template>
503
504<xsl:template match="holder" mode="bibliography.mode">
505  <xsl:apply-templates/>
506</xsl:template>
507
508<!-- ================================================== -->
509
510<xsl:template match="corpauthor" mode="bibliography.mode">
511  <fo:inline>
512    <xsl:apply-templates mode="bibliography.mode"/>
513    <xsl:value-of select="$biblioentry.item.separator"/>
514  </fo:inline>
515</xsl:template>
516
517<xsl:template match="corpcredit" mode="bibliography.mode">
518  <fo:inline>
519    <xsl:apply-templates mode="bibliography.mode"/>
520    <xsl:value-of select="$biblioentry.item.separator"/>
521  </fo:inline>
522</xsl:template>
523
524<xsl:template match="corpname" mode="bibliography.mode">
525  <fo:inline>
526    <xsl:apply-templates mode="bibliography.mode"/>
527    <xsl:value-of select="$biblioentry.item.separator"/>
528  </fo:inline>
529</xsl:template>
530
531<xsl:template match="date" mode="bibliography.mode">
532  <fo:inline>
533    <xsl:apply-templates mode="bibliography.mode"/>
534    <xsl:value-of select="$biblioentry.item.separator"/>
535  </fo:inline>
536</xsl:template>
537
538<xsl:template match="edition" mode="bibliography.mode">
539  <fo:inline>
540    <xsl:apply-templates mode="bibliography.mode"/>
541    <xsl:value-of select="$biblioentry.item.separator"/>
542  </fo:inline>
543</xsl:template>
544
545<xsl:template match="editor" mode="bibliography.mode">
546  <fo:inline>
547    <xsl:call-template name="person.name"/>
548    <xsl:value-of select="$biblioentry.item.separator"/>
549  </fo:inline>
550</xsl:template>
551
552<xsl:template match="firstname" mode="bibliography.mode">
553  <fo:inline>
554    <xsl:apply-templates mode="bibliography.mode"/>
555    <xsl:value-of select="$biblioentry.item.separator"/>
556  </fo:inline>
557</xsl:template>
558
559<xsl:template match="honorific" mode="bibliography.mode">
560  <fo:inline>
561    <xsl:apply-templates mode="bibliography.mode"/>
562    <xsl:value-of select="$biblioentry.item.separator"/>
563  </fo:inline>
564</xsl:template>
565
566<xsl:template match="indexterm" mode="bibliography.mode">
567  <xsl:apply-templates select="."/> 
568</xsl:template>
569
570<xsl:template match="invpartnumber" mode="bibliography.mode">
571  <fo:inline>
572    <xsl:apply-templates mode="bibliography.mode"/>
573    <xsl:value-of select="$biblioentry.item.separator"/>
574  </fo:inline>
575</xsl:template>
576
577<xsl:template match="isbn" mode="bibliography.mode">
578  <fo:inline>
579    <xsl:apply-templates mode="bibliography.mode"/>
580    <xsl:value-of select="$biblioentry.item.separator"/>
581  </fo:inline>
582</xsl:template>
583
584<xsl:template match="issn" mode="bibliography.mode">
585  <fo:inline>
586    <xsl:apply-templates mode="bibliography.mode"/>
587    <xsl:value-of select="$biblioentry.item.separator"/>
588  </fo:inline>
589</xsl:template>
590
591<xsl:template match="issuenum" mode="bibliography.mode">
592  <fo:inline>
593    <xsl:apply-templates mode="bibliography.mode"/>
594    <xsl:value-of select="$biblioentry.item.separator"/>
595  </fo:inline>
596</xsl:template>
597
598<xsl:template match="lineage" mode="bibliography.mode">
599  <fo:inline>
600    <xsl:apply-templates mode="bibliography.mode"/>
601    <xsl:value-of select="$biblioentry.item.separator"/>
602  </fo:inline>
603</xsl:template>
604
605<xsl:template match="orgname" mode="bibliography.mode">
606  <fo:inline>
607    <xsl:apply-templates mode="bibliography.mode"/>
608    <xsl:value-of select="$biblioentry.item.separator"/>
609  </fo:inline>
610</xsl:template>
611
612<xsl:template match="othercredit" mode="bibliography.mode">
613  <fo:inline>
614    <xsl:apply-templates mode="bibliography.mode"/>
615    <xsl:value-of select="$biblioentry.item.separator"/>
616  </fo:inline>
617</xsl:template>
618
619<xsl:template match="othername" mode="bibliography.mode">
620  <fo:inline>
621    <xsl:apply-templates mode="bibliography.mode"/>
622    <xsl:value-of select="$biblioentry.item.separator"/>
623  </fo:inline>
624</xsl:template>
625
626<xsl:template match="pagenums" mode="bibliography.mode">
627  <fo:inline>
628    <xsl:apply-templates mode="bibliography.mode"/>
629    <xsl:value-of select="$biblioentry.item.separator"/>
630  </fo:inline>
631</xsl:template>
632
633<xsl:template match="printhistory" mode="bibliography.mode">
634  <fo:inline>
635    <xsl:apply-templates mode="bibliography.mode"/>
636    <xsl:value-of select="$biblioentry.item.separator"/>
637  </fo:inline>
638</xsl:template>
639
640<xsl:template match="productname" mode="bibliography.mode">
641  <fo:inline>
642    <xsl:apply-templates mode="bibliography.mode"/>
643    <xsl:value-of select="$biblioentry.item.separator"/>
644  </fo:inline>
645</xsl:template>
646
647<xsl:template match="productnumber" mode="bibliography.mode">
648  <fo:inline>
649    <xsl:apply-templates mode="bibliography.mode"/>
650    <xsl:value-of select="$biblioentry.item.separator"/>
651  </fo:inline>
652</xsl:template>
653
654<xsl:template match="pubdate" mode="bibliography.mode">
655  <fo:inline>
656    <xsl:apply-templates mode="bibliography.mode"/>
657    <xsl:value-of select="$biblioentry.item.separator"/>
658  </fo:inline>
659</xsl:template>
660
661<xsl:template match="publisher" mode="bibliography.mode">
662  <fo:inline>
663    <xsl:apply-templates mode="bibliography.mode"/>
664  </fo:inline>
665</xsl:template>
666
667<xsl:template match="publishername" mode="bibliography.mode">
668  <fo:inline>
669    <xsl:apply-templates mode="bibliography.mode"/>
670    <xsl:value-of select="$biblioentry.item.separator"/>
671  </fo:inline>
672</xsl:template>
673
674<xsl:template match="pubsnumber" mode="bibliography.mode">
675  <fo:inline>
676    <xsl:apply-templates mode="bibliography.mode"/>
677    <xsl:value-of select="$biblioentry.item.separator"/>
678  </fo:inline>
679</xsl:template>
680
681<xsl:template match="releaseinfo" mode="bibliography.mode">
682  <fo:inline>
683    <xsl:apply-templates mode="bibliography.mode"/>
684    <xsl:value-of select="$biblioentry.item.separator"/>
685  </fo:inline>
686</xsl:template>
687
688<xsl:template match="revhistory" mode="bibliography.mode">
689  <fo:block>
690    <xsl:apply-templates select="."/> <!-- use normal mode -->
691  </fo:block>
692</xsl:template>
693
694<xsl:template match="seriesinfo" mode="bibliography.mode">
695  <fo:inline>
696    <xsl:apply-templates mode="bibliography.mode"/>
697  </fo:inline>
698</xsl:template>
699
700<xsl:template match="seriesvolnums" mode="bibliography.mode">
701  <fo:inline>
702    <xsl:apply-templates mode="bibliography.mode"/>
703    <xsl:value-of select="$biblioentry.item.separator"/>
704  </fo:inline>
705</xsl:template>
706
707<xsl:template match="subtitle" mode="bibliography.mode">
708  <fo:inline>
709    <xsl:apply-templates mode="bibliography.mode"/>
710    <xsl:value-of select="$biblioentry.item.separator"/>
711  </fo:inline>
712</xsl:template>
713
714<xsl:template match="surname" mode="bibliography.mode">
715  <fo:inline>
716    <xsl:apply-templates mode="bibliography.mode"/>
717    <xsl:value-of select="$biblioentry.item.separator"/>
718  </fo:inline>
719</xsl:template>
720
721<xsl:template match="title" mode="bibliography.mode">
722  <fo:inline>
723    <fo:inline font-style="italic">
724      <xsl:apply-templates mode="bibliography.mode"/>
725    </fo:inline>
726    <xsl:value-of select="$biblioentry.item.separator"/>
727  </fo:inline>
728</xsl:template>
729
730<xsl:template match="titleabbrev" mode="bibliography.mode">
731  <fo:inline>
732    <xsl:apply-templates mode="bibliography.mode"/>
733    <xsl:value-of select="$biblioentry.item.separator"/>
734  </fo:inline>
735</xsl:template>
736
737<xsl:template match="volumenum" mode="bibliography.mode">
738  <fo:inline>
739    <xsl:apply-templates mode="bibliography.mode"/>
740    <xsl:value-of select="$biblioentry.item.separator"/>
741  </fo:inline>
742</xsl:template>
743
744<xsl:template match="orgdiv" mode="bibliography.mode">
745  <fo:inline>
746    <xsl:apply-templates mode="bibliography.mode"/>
747    <xsl:value-of select="$biblioentry.item.separator"/>
748  </fo:inline>
749</xsl:template>
750
751<xsl:template match="collabname" mode="bibliography.mode">
752  <fo:inline>
753    <xsl:apply-templates mode="bibliography.mode"/>
754    <xsl:value-of select="$biblioentry.item.separator"/>
755  </fo:inline>
756</xsl:template>
757
758<xsl:template match="confdates" mode="bibliography.mode">
759  <fo:inline>
760    <xsl:apply-templates mode="bibliography.mode"/>
761    <xsl:value-of select="$biblioentry.item.separator"/>
762  </fo:inline>
763</xsl:template>
764
765<xsl:template match="conftitle" mode="bibliography.mode">
766  <fo:inline>
767    <xsl:apply-templates mode="bibliography.mode"/>
768    <xsl:value-of select="$biblioentry.item.separator"/>
769  </fo:inline>
770</xsl:template>
771
772<xsl:template match="confnum" mode="bibliography.mode">
773  <fo:inline>
774    <xsl:apply-templates mode="bibliography.mode"/>
775    <xsl:value-of select="$biblioentry.item.separator"/>
776  </fo:inline>
777</xsl:template>
778
779<xsl:template match="confsponsor" mode="bibliography.mode">
780  <fo:inline>
781    <xsl:apply-templates mode="bibliography.mode"/>
782    <xsl:value-of select="$biblioentry.item.separator"/>
783  </fo:inline>
784</xsl:template>
785
786<xsl:template match="bibliocoverage|biblioid|bibliorelation|bibliosource"
787              mode="bibliography.mode">
788  <fo:inline>
789    <xsl:apply-templates mode="bibliography.mode"/>
790    <xsl:value-of select="$biblioentry.item.separator"/>
791  </fo:inline>
792</xsl:template>
793
794<!-- ==================================================================== -->
795
796<xsl:template match="*" mode="bibliomixed.mode">
797  <xsl:apply-templates select="."/><!-- try the default mode -->
798</xsl:template>
799
800<xsl:template match="abbrev" mode="bibliomixed.mode">
801  <xsl:if test="preceding-sibling::*">
802    <fo:inline>
803      <xsl:apply-templates mode="bibliomixed.mode"/>
804    </fo:inline>
805  </xsl:if>
806</xsl:template>
807
808<xsl:template match="abstract" mode="bibliomixed.mode">
809  <fo:block start-indent="1in">
810    <xsl:apply-templates mode="bibliomixed.mode"/>
811  </fo:block>
812</xsl:template>
813
814<xsl:template match="para" mode="bibliomixed.mode">
815  <fo:block>
816    <xsl:apply-templates mode="bibliomixed.mode"/>
817  </fo:block>
818</xsl:template>
819
820<xsl:template match="address" mode="bibliomixed.mode">
821  <fo:inline>
822    <xsl:apply-templates mode="bibliomixed.mode"/>
823  </fo:inline>
824</xsl:template>
825
826<xsl:template match="affiliation" mode="bibliomixed.mode">
827  <fo:inline>
828    <xsl:apply-templates mode="bibliomixed.mode"/>
829  </fo:inline>
830</xsl:template>
831
832<xsl:template match="shortaffil" mode="bibliomixed.mode">
833  <fo:inline>
834    <xsl:apply-templates mode="bibliography.mode"/>
835  </fo:inline>
836</xsl:template>
837
838<xsl:template match="jobtitle" mode="bibliomixed.mode">
839  <fo:inline>
840    <xsl:apply-templates mode="bibliography.mode"/>
841  </fo:inline>
842</xsl:template>
843
844<xsl:template match="artpagenums" mode="bibliomixed.mode">
845  <fo:inline>
846    <xsl:apply-templates mode="bibliomixed.mode"/>
847  </fo:inline>
848</xsl:template>
849
850<xsl:template match="author" mode="bibliomixed.mode">
851  <fo:inline>
852    <xsl:call-template name="person.name"/>
853  </fo:inline>
854</xsl:template>
855
856<xsl:template match="authorblurb|personblurb" mode="bibliomixed.mode">
857  <fo:inline>
858    <xsl:apply-templates mode="bibliomixed.mode"/>
859  </fo:inline>
860</xsl:template>
861
862<xsl:template match="authorgroup" mode="bibliomixed.mode">
863  <fo:inline>
864    <xsl:apply-templates mode="bibliomixed.mode"/>
865  </fo:inline>
866</xsl:template>
867
868<xsl:template match="authorinitials" mode="bibliomixed.mode">
869  <fo:inline>
870    <xsl:apply-templates mode="bibliomixed.mode"/>
871  </fo:inline>
872</xsl:template>
873
874<xsl:template match="bibliomisc" mode="bibliomixed.mode">
875  <fo:inline>
876    <xsl:apply-templates mode="bibliomixed.mode"/>
877  </fo:inline>
878</xsl:template>
879
880<!-- ================================================== -->
881
882<xsl:template match="bibliomset" mode="bibliomixed.mode">
883  <fo:inline>
884    <xsl:apply-templates mode="bibliomixed.mode"/>
885  </fo:inline>
886</xsl:template>
887
888<xsl:template match="bibliomset/title|bibliomset/citetitle" 
889              mode="bibliomixed.mode">
890  <xsl:variable name="relation" select="../@relation"/>
891  <xsl:choose>
892    <xsl:when test="$relation='article' or @pubwork='article'">
893      <xsl:call-template name="gentext.startquote"/>
894      <xsl:apply-templates mode="bibliomixed.mode"/>
895      <xsl:call-template name="gentext.endquote"/>
896    </xsl:when>
897    <xsl:otherwise>
898      <fo:inline font-style="italic">
899        <xsl:apply-templates/>
900      </fo:inline>
901    </xsl:otherwise>
902  </xsl:choose>
903</xsl:template>
904
905<!-- ================================================== -->
906
907<xsl:template match="biblioset" mode="bibliomixed.mode">
908  <fo:inline>
909    <xsl:apply-templates mode="bibliomixed.mode"/>
910  </fo:inline>
911</xsl:template>
912
913<xsl:template match="citetitle" mode="bibliomixed.mode">
914  <xsl:choose>
915    <xsl:when test="@pubwork = 'article'">
916      <xsl:call-template name="gentext.startquote"/>
917      <xsl:apply-templates mode="bibliomixed.mode"/>
918      <xsl:call-template name="gentext.endquote"/>
919    </xsl:when>
920    <xsl:otherwise>
921      <fo:inline font-style="italic">
922        <xsl:apply-templates mode="bibliography.mode"/>
923      </fo:inline>
924    </xsl:otherwise>
925  </xsl:choose>
926</xsl:template>
927
928<xsl:template match="collab" mode="bibliomixed.mode">
929  <fo:inline>
930    <xsl:apply-templates mode="bibliomixed.mode"/>
931  </fo:inline>
932</xsl:template>
933
934<xsl:template match="confgroup" mode="bibliomixed.mode">
935  <fo:inline>
936    <xsl:apply-templates mode="bibliomixed.mode"/>
937  </fo:inline>
938</xsl:template>
939
940<xsl:template match="contractnum" mode="bibliomixed.mode">
941  <fo:inline>
942    <xsl:apply-templates mode="bibliomixed.mode"/>
943  </fo:inline>
944</xsl:template>
945
946<xsl:template match="contractsponsor" mode="bibliomixed.mode">
947  <fo:inline>
948    <xsl:apply-templates mode="bibliomixed.mode"/>
949  </fo:inline>
950</xsl:template>
951
952<xsl:template match="contrib" mode="bibliomixed.mode">
953  <fo:inline>
954    <xsl:apply-templates mode="bibliomixed.mode"/>
955  </fo:inline>
956</xsl:template>
957
958<xsl:template match="copyright" mode="bibliomixed.mode">
959  <fo:inline>
960    <xsl:apply-templates mode="bibliomixed.mode"/>
961  </fo:inline>
962</xsl:template>
963
964<xsl:template match="corpauthor" mode="bibliomixed.mode">
965  <fo:inline>
966    <xsl:apply-templates mode="bibliomixed.mode"/>
967  </fo:inline>
968</xsl:template>
969
970<xsl:template match="corpcredit" mode="bibliomixed.mode">
971  <fo:inline>
972    <xsl:apply-templates mode="bibliomixed.mode"/>
973  </fo:inline>
974</xsl:template>
975
976<xsl:template match="corpname" mode="bibliomixed.mode">
977  <fo:inline>
978    <xsl:apply-templates mode="bibliomixed.mode"/>
979  </fo:inline>
980</xsl:template>
981
982<xsl:template match="date" mode="bibliomixed.mode">
983  <fo:inline>
984    <xsl:apply-templates mode="bibliomixed.mode"/>
985  </fo:inline>
986</xsl:template>
987
988<xsl:template match="edition" mode="bibliomixed.mode">
989  <fo:inline>
990    <xsl:apply-templates mode="bibliomixed.mode"/>
991  </fo:inline>
992</xsl:template>
993
994<xsl:template match="editor" mode="bibliomixed.mode">
995  <fo:inline>
996    <xsl:apply-templates mode="bibliomixed.mode"/>
997  </fo:inline>
998</xsl:template>
999
1000<xsl:template match="firstname" mode="bibliomixed.mode">
1001  <fo:inline>
1002    <xsl:apply-templates mode="bibliomixed.mode"/>
1003  </fo:inline>
1004</xsl:template>
1005
1006<xsl:template match="honorific" mode="bibliomixed.mode">
1007  <fo:inline>
1008    <xsl:apply-templates mode="bibliomixed.mode"/>
1009  </fo:inline>
1010</xsl:template>
1011
1012<xsl:template match="indexterm" mode="bibliomixed.mode">
1013  <xsl:apply-templates select="."/> 
1014</xsl:template>
1015
1016<xsl:template match="invpartnumber" mode="bibliomixed.mode">
1017  <fo:inline>
1018    <xsl:apply-templates mode="bibliomixed.mode"/>
1019  </fo:inline>
1020</xsl:template>
1021
1022<xsl:template match="isbn" mode="bibliomixed.mode">
1023  <fo:inline>
1024    <xsl:apply-templates mode="bibliomixed.mode"/>
1025  </fo:inline>
1026</xsl:template>
1027
1028<xsl:template match="issn" mode="bibliomixed.mode">
1029  <fo:inline>
1030    <xsl:apply-templates mode="bibliomixed.mode"/>
1031  </fo:inline>
1032</xsl:template>
1033
1034<xsl:template match="issuenum" mode="bibliomixed.mode">
1035  <fo:inline>
1036    <xsl:apply-templates mode="bibliomixed.mode"/>
1037  </fo:inline>
1038</xsl:template>
1039
1040<xsl:template match="lineage" mode="bibliomixed.mode">
1041  <fo:inline>
1042    <xsl:apply-templates mode="bibliomixed.mode"/>
1043  </fo:inline>
1044</xsl:template>
1045
1046<xsl:template match="orgname" mode="bibliomixed.mode">
1047  <fo:inline>
1048    <xsl:apply-templates mode="bibliomixed.mode"/>
1049  </fo:inline>
1050</xsl:template>
1051
1052<xsl:template match="othercredit" mode="bibliomixed.mode">
1053  <fo:inline>
1054    <xsl:apply-templates mode="bibliomixed.mode"/>
1055  </fo:inline>
1056</xsl:template>
1057
1058<xsl:template match="othername" mode="bibliomixed.mode">
1059  <fo:inline>
1060    <xsl:apply-templates mode="bibliomixed.mode"/>
1061  </fo:inline>
1062</xsl:template>
1063
1064<xsl:template match="pagenums" mode="bibliomixed.mode">
1065  <fo:inline>
1066    <xsl:apply-templates mode="bibliomixed.mode"/>
1067  </fo:inline>
1068</xsl:template>
1069
1070<xsl:template match="printhistory" mode="bibliomixed.mode">
1071  <fo:inline>
1072    <xsl:apply-templates mode="bibliomixed.mode"/>
1073  </fo:inline>
1074</xsl:template>
1075
1076<xsl:template match="productname" mode="bibliomixed.mode">
1077  <fo:inline>
1078    <xsl:apply-templates mode="bibliomixed.mode"/>
1079  </fo:inline>
1080</xsl:template>
1081
1082<xsl:template match="productnumber" mode="bibliomixed.mode">
1083  <fo:inline>
1084    <xsl:apply-templates mode="bibliomixed.mode"/>
1085  </fo:inline>
1086</xsl:template>
1087
1088<xsl:template match="pubdate" mode="bibliomixed.mode">
1089  <fo:inline>
1090    <xsl:apply-templates mode="bibliomixed.mode"/>
1091  </fo:inline>
1092</xsl:template>
1093
1094<xsl:template match="publisher" mode="bibliomixed.mode">
1095  <fo:inline>
1096    <xsl:apply-templates mode="bibliomixed.mode"/>
1097  </fo:inline>
1098</xsl:template>
1099
1100<xsl:template match="publishername" mode="bibliomixed.mode">
1101  <fo:inline>
1102    <xsl:apply-templates mode="bibliomixed.mode"/>
1103  </fo:inline>
1104</xsl:template>
1105
1106<xsl:template match="pubsnumber" mode="bibliomixed.mode">
1107  <fo:inline>
1108    <xsl:apply-templates mode="bibliomixed.mode"/>
1109  </fo:inline>
1110</xsl:template>
1111
1112<xsl:template match="releaseinfo" mode="bibliomixed.mode">
1113  <fo:inline>
1114    <xsl:apply-templates mode="bibliomixed.mode"/>
1115  </fo:inline>
1116</xsl:template>
1117
1118<xsl:template match="revhistory" mode="bibliomixed.mode">
1119  <fo:inline>
1120    <xsl:apply-templates mode="bibliomixed.mode"/>
1121  </fo:inline>
1122</xsl:template>
1123
1124<xsl:template match="seriesvolnums" mode="bibliomixed.mode">
1125  <fo:inline>
1126    <xsl:apply-templates mode="bibliomixed.mode"/>
1127  </fo:inline>
1128</xsl:template>
1129
1130<xsl:template match="subtitle" mode="bibliomixed.mode">
1131  <fo:inline>
1132    <xsl:apply-templates mode="bibliomixed.mode"/>
1133  </fo:inline>
1134</xsl:template>
1135
1136<xsl:template match="surname" mode="bibliomixed.mode">
1137  <fo:inline>
1138    <xsl:apply-templates mode="bibliomixed.mode"/>
1139  </fo:inline>
1140</xsl:template>
1141
1142<xsl:template match="title" mode="bibliomixed.mode">
1143  <fo:inline>
1144    <xsl:apply-templates mode="bibliomixed.mode"/>
1145  </fo:inline>
1146</xsl:template>
1147
1148<xsl:template match="titleabbrev" mode="bibliomixed.mode">
1149  <fo:inline>
1150    <xsl:apply-templates mode="bibliomixed.mode"/>
1151  </fo:inline>
1152</xsl:template>
1153
1154<xsl:template match="volumenum" mode="bibliomixed.mode">
1155  <fo:inline>
1156    <xsl:apply-templates mode="bibliomixed.mode"/>
1157  </fo:inline>
1158</xsl:template>
1159
1160<xsl:template match="bibliocoverage|biblioid|bibliorelation|bibliosource"
1161              mode="bibliomixed.mode">
1162  <fo:inline>
1163    <xsl:apply-templates mode="bibliomixed.mode"/>
1164  </fo:inline>
1165</xsl:template>
1166
1167<!-- ==================================================================== -->
1168
1169</xsl:stylesheet>
Note: See TracBrowser for help on using the repository browser.