source: clfs-embedded/BOOK/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/titlepage.xsl @ 9882b55

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

Added the new lfs-xsl stylesheets.

  • Property mode set to 100644
File size: 25.4 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:attribute-set name="book.titlepage.recto.style">
19  <xsl:attribute name="font-family">
20    <xsl:value-of select="$title.fontset"/>
21  </xsl:attribute>
22  <xsl:attribute name="font-weight">bold</xsl:attribute>
23  <xsl:attribute name="font-size">12pt</xsl:attribute>
24  <xsl:attribute name="text-align">center</xsl:attribute>
25</xsl:attribute-set>
26
27<xsl:attribute-set name="book.titlepage.verso.style">
28  <xsl:attribute name="font-size">10pt</xsl:attribute>
29</xsl:attribute-set>
30
31<xsl:attribute-set name="article.titlepage.recto.style"/>
32<xsl:attribute-set name="article.titlepage.verso.style"/>
33
34<xsl:attribute-set name="set.titlepage.recto.style"/>
35<xsl:attribute-set name="set.titlepage.verso.style"/>
36
37<xsl:attribute-set name="part.titlepage.recto.style">
38  <xsl:attribute name="text-align">center</xsl:attribute>
39</xsl:attribute-set>
40
41<xsl:attribute-set name="part.titlepage.verso.style"/>
42
43<xsl:attribute-set name="partintro.titlepage.recto.style"/>
44<xsl:attribute-set name="partintro.titlepage.verso.style"/>
45
46<xsl:attribute-set name="reference.titlepage.recto.style"/>
47<xsl:attribute-set name="reference.titlepage.verso.style"/>
48
49<xsl:attribute-set name="dedication.titlepage.recto.style"/>
50<xsl:attribute-set name="dedication.titlepage.verso.style"/>
51
52<xsl:attribute-set name="preface.titlepage.recto.style"/>
53<xsl:attribute-set name="preface.titlepage.verso.style"/>
54
55<xsl:attribute-set name="chapter.titlepage.recto.style"/>
56<xsl:attribute-set name="chapter.titlepage.verso.style"/>
57
58<xsl:attribute-set name="appendix.titlepage.recto.style"/>
59<xsl:attribute-set name="appendix.titlepage.verso.style"/>
60
61<xsl:attribute-set name="bibliography.titlepage.recto.style"/>
62<xsl:attribute-set name="bibliography.titlepage.verso.style"/>
63
64<xsl:attribute-set name="bibliodiv.titlepage.recto.style"/>
65<xsl:attribute-set name="bibliodiv.titlepage.verso.style"/>
66
67<xsl:attribute-set name="glossary.titlepage.recto.style"/>
68<xsl:attribute-set name="glossary.titlepage.verso.style"/>
69
70<xsl:attribute-set name="glossdiv.titlepage.recto.style"/>
71<xsl:attribute-set name="glossdiv.titlepage.verso.style"/>
72
73<xsl:attribute-set name="index.titlepage.recto.style"/>
74<xsl:attribute-set name="index.titlepage.verso.style"/>
75
76<xsl:attribute-set name="setindex.titlepage.recto.style"/>
77<xsl:attribute-set name="setindex.titlepage.verso.style"/>
78
79<xsl:attribute-set name="indexdiv.titlepage.recto.style"/>
80<xsl:attribute-set name="indexdiv.titlepage.verso.style"/>
81
82<xsl:attribute-set name="colophon.titlepage.recto.style"/>
83<xsl:attribute-set name="colophon.titlepage.verso.style"/>
84
85<xsl:attribute-set name="sidebar.titlepage.recto.style"/>
86<xsl:attribute-set name="sidebar.titlepage.verso.style"/>
87
88<xsl:attribute-set name="qandaset.titlepage.recto.style"/>
89<xsl:attribute-set name="qandaset.titlepage.verso.style"/>
90
91<xsl:attribute-set name="section.titlepage.recto.style">
92  <xsl:attribute name="keep-together.within-column">always</xsl:attribute>
93</xsl:attribute-set>
94
95<xsl:attribute-set name="section.titlepage.verso.style">
96  <xsl:attribute name="keep-together.within-column">always</xsl:attribute>
97  <xsl:attribute name="keep-with-next.within-column">always</xsl:attribute>
98</xsl:attribute-set>
99
100<xsl:attribute-set name="sect1.titlepage.recto.style"
101                   use-attribute-sets="section.titlepage.recto.style"/>
102<xsl:attribute-set name="sect1.titlepage.verso.style"
103                   use-attribute-sets="section.titlepage.verso.style"/>
104
105<xsl:attribute-set name="sect2.titlepage.recto.style"
106                   use-attribute-sets="section.titlepage.recto.style"/>
107<xsl:attribute-set name="sect2.titlepage.verso.style"
108                   use-attribute-sets="section.titlepage.verso.style"/>
109
110<xsl:attribute-set name="sect3.titlepage.recto.style"
111                   use-attribute-sets="section.titlepage.recto.style"/>
112<xsl:attribute-set name="sect3.titlepage.verso.style"
113                   use-attribute-sets="section.titlepage.verso.style"/>
114
115<xsl:attribute-set name="sect4.titlepage.recto.style"
116                   use-attribute-sets="section.titlepage.recto.style"/>
117<xsl:attribute-set name="sect4.titlepage.verso.style"
118                   use-attribute-sets="section.titlepage.verso.style"/>
119
120<xsl:attribute-set name="sect5.titlepage.recto.style"
121                   use-attribute-sets="section.titlepage.recto.style"/>
122<xsl:attribute-set name="sect5.titlepage.verso.style"
123                   use-attribute-sets="section.titlepage.verso.style"/>
124
125<xsl:attribute-set name="simplesect.titlepage.recto.style"
126                   use-attribute-sets="section.titlepage.recto.style"/>
127<xsl:attribute-set name="simplesect.titlepage.verso.style"
128                   use-attribute-sets="section.titlepage.verso.style"/>
129
130<xsl:attribute-set name="refnamediv.titlepage.recto.style"
131                   use-attribute-sets="section.titlepage.recto.style"/>
132<xsl:attribute-set name="refnamediv.titlepage.verso.style"
133                   use-attribute-sets="section.titlepage.verso.style"/>
134
135<xsl:attribute-set name="refsynopsisdiv.titlepage.recto.style"
136                   use-attribute-sets="section.titlepage.recto.style"/>
137<xsl:attribute-set name="refsynopsisdiv.titlepage.verso.style"
138                   use-attribute-sets="section.titlepage.verso.style"/>
139
140<xsl:attribute-set name="refsection.titlepage.recto.style"
141                   use-attribute-sets="section.titlepage.recto.style"/>
142<xsl:attribute-set name="refsection.titlepage.verso.style"
143                   use-attribute-sets="section.titlepage.verso.style"/>
144
145<xsl:attribute-set name="refsect1.titlepage.recto.style"
146                   use-attribute-sets="section.titlepage.recto.style"/>
147<xsl:attribute-set name="refsect1.titlepage.verso.style"
148                   use-attribute-sets="section.titlepage.verso.style"/>
149
150<xsl:attribute-set name="refsect2.titlepage.recto.style"
151                   use-attribute-sets="section.titlepage.recto.style"/>
152<xsl:attribute-set name="refsect2.titlepage.verso.style"
153                   use-attribute-sets="section.titlepage.verso.style"/>
154
155<xsl:attribute-set name="refsect3.titlepage.recto.style"
156                   use-attribute-sets="section.titlepage.recto.style"/>
157<xsl:attribute-set name="refsect3.titlepage.verso.style"
158                   use-attribute-sets="section.titlepage.verso.style"/>
159
160<xsl:attribute-set name="table.of.contents.titlepage.recto.style"/>
161<xsl:attribute-set name="table.of.contents.titlepage.verso.style"/>
162
163<xsl:attribute-set name="list.of.tables.titlepage.recto.style"/>
164<xsl:attribute-set name="list.of.tables.contents.titlepage.verso.style"/>
165
166<xsl:attribute-set name="list.of.figures.titlepage.recto.style"/>
167<xsl:attribute-set name="list.of.figures.contents.titlepage.verso.style"/>
168
169<xsl:attribute-set name="list.of.equations.titlepage.recto.style"/>
170<xsl:attribute-set name="list.of.equations.contents.titlepage.verso.style"/>
171
172<xsl:attribute-set name="list.of.examples.titlepage.recto.style"/>
173<xsl:attribute-set name="list.of.examples.contents.titlepage.verso.style"/>
174
175<xsl:attribute-set name="list.of.procedures.titlepage.recto.style"/>
176<xsl:attribute-set name="list.of.procedures.contents.titlepage.verso.style"/>
177
178<xsl:attribute-set name="list.of.unknowns.titlepage.recto.style"/>
179<xsl:attribute-set name="list.of.unknowns.contents.titlepage.verso.style"/>
180
181<!-- ==================================================================== -->
182
183<xsl:template match="*" mode="titlepage.mode">
184  <!-- if an element isn't found in this mode, try the default mode -->
185  <xsl:apply-templates select="."/>
186</xsl:template>
187
188<xsl:template match="abbrev" mode="titlepage.mode">
189  <xsl:apply-templates mode="titlepage.mode"/>
190</xsl:template>
191
192<xsl:template match="abstract" mode="titlepage.mode">
193  <fo:block>
194    <xsl:call-template name="formal.object.heading">
195      <xsl:with-param name="title">
196        <xsl:apply-templates select="." mode="title.markup"/>
197      </xsl:with-param>
198    </xsl:call-template>
199    <xsl:apply-templates mode="titlepage.mode"/>
200  </fo:block>
201</xsl:template>
202
203<xsl:template match="abstract/title" mode="titlepage.mode"/>
204
205<xsl:template match="abstract/title" mode="titlepage.abstract.title.mode">
206  <xsl:apply-templates mode="titlepage.mode"/>
207</xsl:template>
208
209<xsl:template match="address" mode="titlepage.mode">
210  <!-- use the normal address handling code -->
211  <xsl:apply-templates select="."/>
212</xsl:template>
213
214<xsl:template match="affiliation" mode="titlepage.mode">
215  <fo:block>
216    <xsl:apply-templates mode="titlepage.mode"/>
217  </fo:block>
218</xsl:template>
219
220<xsl:template match="artpagenums" mode="titlepage.mode">
221  <xsl:apply-templates mode="titlepage.mode"/>
222</xsl:template>
223
224<xsl:template match="author" mode="titlepage.mode">
225  <fo:block>
226    <xsl:call-template name="anchor"/>
227    <xsl:call-template name="person.name"/>
228    <xsl:if test="affiliation/orgname">
229      <xsl:text>, </xsl:text>
230      <xsl:apply-templates select="affiliation/orgname" mode="titlepage.mode"/>
231    </xsl:if>
232    <xsl:if test="email|affiliation/address/email">
233      <xsl:text> </xsl:text>
234      <xsl:apply-templates select="(email|affiliation/address/email)[1]"/>
235    </xsl:if>
236  </fo:block>
237</xsl:template>
238
239<xsl:template match="authorblurb" mode="titlepage.mode">
240  <xsl:apply-templates mode="titlepage.mode"/>
241</xsl:template>
242
243<xsl:template match="authorgroup" mode="titlepage.mode">
244  <fo:wrapper>
245    <xsl:call-template name="anchor"/>
246    <xsl:apply-templates mode="titlepage.mode"/>
247  </fo:wrapper>
248</xsl:template>
249
250<xsl:template match="authorinitials" mode="titlepage.mode">
251  <xsl:apply-templates mode="titlepage.mode"/>
252</xsl:template>
253
254<xsl:template match="bibliomisc" mode="titlepage.mode">
255  <xsl:apply-templates mode="titlepage.mode"/>
256</xsl:template>
257
258<xsl:template match="bibliomset" mode="titlepage.mode">
259  <xsl:apply-templates mode="titlepage.mode"/>
260</xsl:template>
261
262<xsl:template match="collab" mode="titlepage.mode">
263  <xsl:apply-templates mode="titlepage.mode"/>
264</xsl:template>
265
266<xsl:template match="confgroup" mode="titlepage.mode">
267  <fo:block>
268    <xsl:apply-templates mode="titlepage.mode"/>
269  </fo:block>
270</xsl:template>
271
272<xsl:template match="confdates" mode="titlepage.mode">
273  <fo:block>
274    <xsl:apply-templates mode="titlepage.mode"/>
275  </fo:block>
276</xsl:template>
277
278<xsl:template match="conftitle" mode="titlepage.mode">
279  <fo:block>
280    <xsl:apply-templates mode="titlepage.mode"/>
281  </fo:block>
282</xsl:template>
283
284<xsl:template match="confnum" mode="titlepage.mode">
285  <!-- suppress -->
286</xsl:template>
287
288<xsl:template match="contractnum" mode="titlepage.mode">
289  <xsl:apply-templates mode="titlepage.mode"/>
290</xsl:template>
291
292<xsl:template match="contractsponsor" mode="titlepage.mode">
293  <xsl:apply-templates mode="titlepage.mode"/>
294</xsl:template>
295
296<xsl:template match="contrib" mode="titlepage.mode">
297  <xsl:apply-templates mode="titlepage.mode"/>
298</xsl:template>
299
300<xsl:template match="copyright" mode="titlepage.mode">
301  <xsl:call-template name="gentext">
302    <xsl:with-param name="key" select="'Copyright'"/>
303  </xsl:call-template>
304  <xsl:call-template name="gentext.space"/>
305  <xsl:call-template name="dingbat">
306    <xsl:with-param name="dingbat">copyright</xsl:with-param>
307  </xsl:call-template>
308  <xsl:call-template name="gentext.space"/>
309  <xsl:call-template name="copyright.years">
310    <xsl:with-param name="years" select="year"/>
311    <xsl:with-param name="print.ranges" select="$make.year.ranges"/>
312    <xsl:with-param name="single.year.ranges"
313                    select="$make.single.year.ranges"/>
314  </xsl:call-template>
315  <xsl:call-template name="gentext.space"/>
316  <xsl:apply-templates select="holder" mode="titlepage.mode"/>
317</xsl:template>
318
319<xsl:template match="year" mode="titlepage.mode">
320  <xsl:apply-templates/>
321</xsl:template>
322
323<xsl:template match="holder" mode="titlepage.mode">
324  <xsl:apply-templates/>
325</xsl:template>
326
327<xsl:template match="corpauthor" mode="titlepage.mode">
328  <xsl:apply-templates mode="titlepage.mode"/>
329</xsl:template>
330
331<xsl:template match="corpcredit" mode="titlepage.mode">
332  <xsl:apply-templates mode="titlepage.mode"/>
333</xsl:template>
334
335<xsl:template match="corpname" mode="titlepage.mode">
336  <xsl:apply-templates mode="titlepage.mode"/>
337</xsl:template>
338
339<xsl:template match="date" mode="titlepage.mode">
340  <xsl:apply-templates mode="titlepage.mode"/>
341</xsl:template>
342
343<xsl:template match="edition" mode="titlepage.mode">
344  <xsl:apply-templates mode="titlepage.mode"/>
345  <xsl:call-template name="gentext.space"/>
346  <xsl:call-template name="gentext">
347    <xsl:with-param name="key" select="'Edition'"/>
348  </xsl:call-template>
349</xsl:template>
350
351<xsl:template match="editor" mode="titlepage.mode">
352  <!-- The first editor is dealt with in the following template,
353       which in turn displays all editors of the same mode. -->
354</xsl:template>
355
356<xsl:template match="editor[1]" priority="2" mode="titlepage.mode">
357  <xsl:call-template name="gentext.edited.by"/>
358  <xsl:call-template name="gentext.space"/>
359  <xsl:call-template name="person.name.list">
360    <xsl:with-param name="person.list" select="../editor"/>
361  </xsl:call-template>
362</xsl:template>
363
364<xsl:template match="firstname" mode="titlepage.mode">
365  <xsl:apply-templates mode="titlepage.mode"/>
366</xsl:template>
367
368<xsl:template match="graphic" mode="titlepage.mode">
369  <!-- use the normal graphic handling code -->
370  <xsl:apply-templates select="."/>
371</xsl:template>
372
373<xsl:template match="honorific" mode="titlepage.mode">
374  <xsl:apply-templates mode="titlepage.mode"/>
375</xsl:template>
376
377<xsl:template match="isbn" mode="titlepage.mode">
378  <xsl:apply-templates mode="titlepage.mode"/>
379</xsl:template>
380
381<xsl:template match="issn" mode="titlepage.mode">
382  <xsl:apply-templates mode="titlepage.mode"/>
383</xsl:template>
384
385<xsl:template match="biblioid" mode="titlepage.mode">
386  <xsl:apply-templates mode="titlepage.mode"/>
387</xsl:template>
388
389<xsl:template match="itermset" mode="titlepage.mode">
390  <!-- discard -->
391</xsl:template>
392
393<xsl:template match="invpartnumber" mode="titlepage.mode">
394  <xsl:apply-templates mode="titlepage.mode"/>
395</xsl:template>
396
397<xsl:template match="issuenum" mode="titlepage.mode">
398  <xsl:apply-templates mode="titlepage.mode"/>
399</xsl:template>
400
401<xsl:template match="jobtitle" mode="titlepage.mode">
402  <fo:block>
403    <xsl:apply-templates mode="titlepage.mode"/>
404  </fo:block>
405</xsl:template>
406
407<xsl:template match="keywordset" mode="titlepage.mode">
408</xsl:template>
409
410<xsl:template match="legalnotice" mode="titlepage.mode">
411
412  <xsl:variable name="id">
413    <xsl:call-template name="object.id"/>
414  </xsl:variable>
415
416  <fo:block id="{$id}">
417    <xsl:if test="title"> <!-- FIXME: add param for using default title? -->
418      <xsl:call-template name="formal.object.heading"/>
419    </xsl:if>
420    <xsl:apply-templates mode="titlepage.mode"/>
421  </fo:block>
422</xsl:template>
423
424<xsl:template match="legalnotice/title" mode="titlepage.mode">
425</xsl:template>
426
427<xsl:template match="lineage" mode="titlepage.mode">
428  <xsl:apply-templates mode="titlepage.mode"/>
429</xsl:template>
430
431<xsl:template match="modespec" mode="titlepage.mode">
432  <!-- discard -->
433</xsl:template>
434
435<xsl:template match="orgdiv" mode="titlepage.mode">
436  <xsl:if test="preceding-sibling::*[1][self::orgname]">
437    <xsl:text> </xsl:text>
438  </xsl:if>
439  <xsl:apply-templates mode="titlepage.mode"/>
440</xsl:template>
441
442<xsl:template match="orgname" mode="titlepage.mode">
443  <xsl:apply-templates mode="titlepage.mode"/>
444</xsl:template>
445
446<xsl:template match="othercredit" mode="titlepage.mode">
447  <xsl:variable name="contrib" select="string(contrib)"/>
448  <xsl:choose>
449    <xsl:when test="contrib">
450      <xsl:if test="not(preceding-sibling::othercredit[string(contrib)=$contrib])">
451        <fo:block>
452          <xsl:apply-templates mode="titlepage.mode" select="contrib"/>
453          <xsl:text>: </xsl:text>
454          <xsl:call-template name="person.name"/>
455          <xsl:apply-templates mode="titlepage.mode" select="affiliation"/>
456          <xsl:apply-templates select="following-sibling::othercredit[string(contrib)=$contrib]" mode="titlepage.othercredits"/>
457        </fo:block>
458      </xsl:if>
459    </xsl:when>
460    <xsl:otherwise>
461      <fo:block><xsl:call-template name="person.name"/></fo:block>
462      <xsl:apply-templates mode="titlepage.mode" select="./affiliation"/>
463    </xsl:otherwise>
464  </xsl:choose>
465</xsl:template>
466
467<xsl:template match="othercredit" mode="titlepage.othercredits">
468  <xsl:text>, </xsl:text>
469  <xsl:call-template name="person.name"/>
470</xsl:template>
471
472<xsl:template match="othername" mode="titlepage.mode">
473  <xsl:apply-templates mode="titlepage.mode"/>
474</xsl:template>
475
476<xsl:template match="pagenums" mode="titlepage.mode">
477  <xsl:apply-templates mode="titlepage.mode"/>
478</xsl:template>
479
480<xsl:template match="printhistory" mode="titlepage.mode">
481  <xsl:apply-templates mode="titlepage.mode"/>
482</xsl:template>
483
484<xsl:template match="productname" mode="titlepage.mode">
485  <xsl:apply-templates mode="titlepage.mode"/>
486</xsl:template>
487
488<xsl:template match="productnumber" mode="titlepage.mode">
489  <xsl:apply-templates mode="titlepage.mode"/>
490</xsl:template>
491
492<xsl:template match="pubdate" mode="titlepage.mode">
493  <xsl:apply-templates mode="titlepage.mode"/>
494</xsl:template>
495
496<xsl:template match="publisher" mode="titlepage.mode">
497  <fo:block>
498    <xsl:apply-templates mode="titlepage.mode"/>
499  </fo:block>
500</xsl:template>
501
502<xsl:template match="publishername" mode="titlepage.mode">
503  <xsl:apply-templates mode="titlepage.mode"/>
504</xsl:template>
505
506<xsl:template match="pubsnumber" mode="titlepage.mode">
507  <xsl:apply-templates mode="titlepage.mode"/>
508</xsl:template>
509
510<xsl:template match="releaseinfo" mode="titlepage.mode">
511  <xsl:apply-templates mode="titlepage.mode"/>
512</xsl:template>
513
514<xsl:template match="revhistory" mode="titlepage.mode">
515
516  <xsl:variable name="explicit.table.width">
517    <xsl:call-template name="pi.dbfo_table-width"/>
518  </xsl:variable>
519
520  <xsl:variable name="table.width">
521    <xsl:choose>
522      <xsl:when test="$explicit.table.width != ''">
523        <xsl:value-of select="$explicit.table.width"/>
524      </xsl:when>
525      <xsl:when test="$default.table.width = ''">
526        <xsl:text>100%</xsl:text>
527      </xsl:when>
528      <xsl:otherwise>
529        <xsl:value-of select="$default.table.width"/>
530      </xsl:otherwise>
531    </xsl:choose>
532  </xsl:variable>
533
534  <fo:table table-layout="fixed" width="{$table.width}" xsl:use-attribute-sets="revhistory.table.properties">
535    <fo:table-column column-number="1" column-width="proportional-column-width(1)"/>
536    <fo:table-column column-number="2" column-width="proportional-column-width(1)"/>
537    <fo:table-column column-number="3" column-width="proportional-column-width(1)"/>
538    <fo:table-body start-indent="0pt" end-indent="0pt">
539      <fo:table-row>
540        <fo:table-cell number-columns-spanned="3" xsl:use-attribute-sets="revhistory.table.cell.properties">
541          <fo:block xsl:use-attribute-sets="revhistory.title.properties">
542            <xsl:call-template name="gentext">
543              <xsl:with-param name="key" select="'RevHistory'"/>
544            </xsl:call-template>
545          </fo:block>
546        </fo:table-cell>
547      </fo:table-row>
548      <xsl:apply-templates mode="titlepage.mode"/>
549    </fo:table-body>
550  </fo:table>
551</xsl:template>
552
553<xsl:template match="revhistory/revision" mode="titlepage.mode">
554  <xsl:variable name="revnumber" select="revnumber"/>
555  <xsl:variable name="revdate"   select="date"/>
556  <xsl:variable name="revauthor" select="authorinitials|author"/>
557  <xsl:variable name="revremark" select="revremark|revdescription"/>
558  <fo:table-row>
559    <fo:table-cell xsl:use-attribute-sets="revhistory.table.cell.properties">
560      <fo:block>
561        <xsl:if test="$revnumber">
562          <xsl:call-template name="gentext">
563            <xsl:with-param name="key" select="'Revision'"/>
564          </xsl:call-template>
565          <xsl:call-template name="gentext.space"/>
566          <xsl:apply-templates select="$revnumber[1]" mode="titlepage.mode"/>
567        </xsl:if>
568      </fo:block>
569    </fo:table-cell>
570    <fo:table-cell xsl:use-attribute-sets="revhistory.table.cell.properties">
571      <fo:block>
572        <xsl:apply-templates select="$revdate[1]" mode="titlepage.mode"/>
573      </fo:block>
574    </fo:table-cell>
575    <fo:table-cell xsl:use-attribute-sets="revhistory.table.cell.properties">
576      <fo:block>
577        <xsl:for-each select="$revauthor">
578          <xsl:apply-templates select="." mode="titlepage.mode"/>
579          <xsl:if test="position() != last()">
580            <xsl:text>, </xsl:text>
581          </xsl:if>
582        </xsl:for-each>
583      </fo:block>
584    </fo:table-cell>
585  </fo:table-row>
586  <xsl:if test="$revremark">
587    <fo:table-row>
588      <fo:table-cell number-columns-spanned="3" xsl:use-attribute-sets="revhistory.table.cell.properties">
589        <fo:block>
590          <xsl:apply-templates select="$revremark[1]" mode="titlepage.mode"/>
591        </fo:block>
592      </fo:table-cell>
593    </fo:table-row>
594  </xsl:if>
595</xsl:template>
596
597<xsl:template match="revision/revnumber" mode="titlepage.mode">
598  <xsl:apply-templates mode="titlepage.mode"/>
599</xsl:template>
600
601<xsl:template match="revision/date" mode="titlepage.mode">
602  <xsl:apply-templates mode="titlepage.mode"/>
603</xsl:template>
604
605<xsl:template match="revision/authorinitials" mode="titlepage.mode">
606  <xsl:apply-templates mode="titlepage.mode"/>
607</xsl:template>
608
609<xsl:template match="revision/author" mode="titlepage.mode">
610  <xsl:apply-templates mode="titlepage.mode"/>
611</xsl:template>
612
613<xsl:template match="revision/revremark" mode="titlepage.mode">
614  <xsl:apply-templates mode="titlepage.mode"/>
615</xsl:template>
616
617<xsl:template match="revision/revdescription" mode="titlepage.mode">
618  <xsl:apply-templates mode="titlepage.mode"/>
619</xsl:template>
620
621<xsl:template match="seriesvolnums" mode="titlepage.mode">
622  <xsl:apply-templates mode="titlepage.mode"/>
623</xsl:template>
624
625<xsl:template match="shortaffil" mode="titlepage.mode">
626  <xsl:apply-templates mode="titlepage.mode"/>
627</xsl:template>
628
629<xsl:template match="subjectset" mode="titlepage.mode">
630  <!-- discard -->
631</xsl:template>
632
633<xsl:template match="subtitle" mode="titlepage.mode">
634  <xsl:apply-templates mode="titlepage.mode"/>
635</xsl:template>
636
637<xsl:template match="surname" mode="titlepage.mode">
638  <xsl:apply-templates mode="titlepage.mode"/>
639</xsl:template>
640
641<xsl:template match="title" mode="titlepage.mode">
642  <xsl:apply-templates mode="titlepage.mode"/>
643</xsl:template>
644
645<xsl:template match="titleabbrev" mode="titlepage.mode">
646  <xsl:apply-templates mode="titlepage.mode"/>
647</xsl:template>
648
649<xsl:template match="volumenum" mode="titlepage.mode">
650  <xsl:apply-templates mode="titlepage.mode"/>
651</xsl:template>
652
653<!-- ==================================================================== -->
654<!-- Book templates -->
655
656<!-- Note: these templates cannot use *.titlepage.recto.mode or
657     *.titlepage.verso.mode. If they do then subsequent use of a custom
658     titlepage.templates.xml file will not work correctly. -->
659
660<!-- book recto -->
661
662<xsl:template match="bookinfo/authorgroup|info/authorgroup"
663              mode="titlepage.mode" priority="2">
664  <fo:block>
665    <xsl:call-template name="anchor"/>
666    <xsl:apply-templates mode="titlepage.mode"/>
667  </fo:block>
668</xsl:template>
669
670<!-- book verso -->
671
672<xsl:template name="book.verso.title">
673  <fo:block>
674    <xsl:apply-templates mode="titlepage.mode"/>
675
676    <xsl:if test="following-sibling::subtitle
677                  |following-sibling::info/subtitle
678                  |following-sibling::bookinfo/subtitle">
679      <xsl:text>: </xsl:text>
680
681      <xsl:apply-templates select="(following-sibling::subtitle
682                                   |following-sibling::info/subtitle
683                                   |following-sibling::bookinfo/subtitle)[1]"
684                           mode="book.verso.subtitle.mode"/>
685    </xsl:if>
686  </fo:block>
687</xsl:template>
688
689<xsl:template match="subtitle" mode="book.verso.subtitle.mode">
690  <xsl:apply-templates mode="titlepage.mode"/>
691  <xsl:if test="following-sibling::subtitle">
692    <xsl:text>: </xsl:text>
693    <xsl:apply-templates select="following-sibling::subtitle[1]"
694                         mode="book.verso.subtitle.mode"/>
695  </xsl:if>
696</xsl:template>
697
698<xsl:template name="verso.authorgroup">
699  <fo:block>
700    <xsl:call-template name="gentext">
701      <xsl:with-param name="key" select="'by'"/>
702    </xsl:call-template>
703    <xsl:text> </xsl:text>
704    <xsl:call-template name="person.name.list">
705      <xsl:with-param name="person.list" select="author|corpauthor|editor"/>
706    </xsl:call-template>
707  </fo:block>
708  <xsl:apply-templates select="othercredit" mode="titlepage.mode"/>
709</xsl:template>
710
711<xsl:template match="bookinfo/author|info/author"
712              mode="titlepage.mode" priority="2">
713  <fo:block>
714    <xsl:call-template name="person.name"/>
715  </fo:block>
716</xsl:template>
717
718<xsl:template match="bookinfo/corpauthor|info/corpauthor"
719              mode="titlepage.mode" priority="2">
720  <fo:block>
721    <xsl:apply-templates/>
722  </fo:block>
723</xsl:template>
724
725<xsl:template match="bookinfo/pubdate|info/pubdate"
726              mode="titlepage.mode" priority="2">
727  <fo:block>
728    <xsl:call-template name="gentext">
729      <xsl:with-param name="key" select="'published'"/>
730    </xsl:call-template>
731    <xsl:text> </xsl:text>
732    <xsl:apply-templates mode="titlepage.mode"/>
733  </fo:block>
734</xsl:template>
735
736<!-- ==================================================================== -->
737
738</xsl:stylesheet>
Note: See TracBrowser for help on using the repository browser.