2 <xsl:stylesheet xmlns:
xsl=
"http://www.w3.org/1999/XSL/Transform"
5 <!-- ********************************************************************
6 $Id: titlepage.xsl,v 1.1 2007/03/10 05:15:13 scott Exp $
7 ********************************************************************
9 This file is part of the XSL DocBook Stylesheet distribution.
10 See ../README or http://nwalsh.com/docbook/xsl/ for copyright
11 and other information.
13 ******************************************************************** -->
15 <!-- ==================================================================== -->
17 <xsl:attribute-set name=
"book.titlepage.recto.style"/>
18 <xsl:attribute-set name=
"book.titlepage.verso.style"/>
20 <xsl:attribute-set name=
"article.titlepage.recto.style"/>
21 <xsl:attribute-set name=
"article.titlepage.verso.style"/>
23 <xsl:attribute-set name=
"set.titlepage.recto.style"/>
24 <xsl:attribute-set name=
"set.titlepage.verso.style"/>
26 <xsl:attribute-set name=
"part.titlepage.recto.style"/>
27 <xsl:attribute-set name=
"part.titlepage.verso.style"/>
29 <xsl:attribute-set name=
"partintro.titlepage.recto.style"/>
30 <xsl:attribute-set name=
"partintro.titlepage.verso.style"/>
32 <xsl:attribute-set name=
"reference.titlepage.recto.style"/>
33 <xsl:attribute-set name=
"reference.titlepage.verso.style"/>
35 <xsl:attribute-set name=
"refentry.titlepage.recto.style"/>
36 <xsl:attribute-set name=
"refentry.titlepage.verso.style"/>
38 <xsl:attribute-set name=
"dedication.titlepage.recto.style"/>
39 <xsl:attribute-set name=
"dedication.titlepage.verso.style"/>
41 <xsl:attribute-set name=
"preface.titlepage.recto.style"/>
42 <xsl:attribute-set name=
"preface.titlepage.verso.style"/>
44 <xsl:attribute-set name=
"chapter.titlepage.recto.style"/>
45 <xsl:attribute-set name=
"chapter.titlepage.verso.style"/>
47 <xsl:attribute-set name=
"appendix.titlepage.recto.style"/>
48 <xsl:attribute-set name=
"appendix.titlepage.verso.style"/>
50 <xsl:attribute-set name=
"bibliography.titlepage.recto.style"/>
51 <xsl:attribute-set name=
"bibliography.titlepage.verso.style"/>
53 <xsl:attribute-set name=
"glossary.titlepage.recto.style"/>
54 <xsl:attribute-set name=
"glossary.titlepage.verso.style"/>
56 <xsl:attribute-set name=
"index.titlepage.recto.style"/>
57 <xsl:attribute-set name=
"index.titlepage.verso.style"/>
59 <xsl:attribute-set name=
"setindex.titlepage.recto.style"/>
60 <xsl:attribute-set name=
"setindex.titlepage.verso.style"/>
62 <xsl:attribute-set name=
"section.titlepage.recto.style"/>
63 <xsl:attribute-set name=
"section.titlepage.verso.style"/>
65 <xsl:attribute-set name=
"sect1.titlepage.recto.style"
66 use-attribute-sets=
"section.titlepage.recto.style"/>
67 <xsl:attribute-set name=
"sect1.titlepage.verso.style"
68 use-attribute-sets=
"section.titlepage.verso.style"/>
70 <xsl:attribute-set name=
"sect2.titlepage.recto.style"
71 use-attribute-sets=
"section.titlepage.recto.style"/>
72 <xsl:attribute-set name=
"sect2.titlepage.verso.style"
73 use-attribute-sets=
"section.titlepage.verso.style"/>
75 <xsl:attribute-set name=
"sect3.titlepage.recto.style"
76 use-attribute-sets=
"section.titlepage.recto.style"/>
77 <xsl:attribute-set name=
"sect3.titlepage.verso.style"
78 use-attribute-sets=
"section.titlepage.verso.style"/>
80 <xsl:attribute-set name=
"sect4.titlepage.recto.style"
81 use-attribute-sets=
"section.titlepage.recto.style"/>
82 <xsl:attribute-set name=
"sect4.titlepage.verso.style"
83 use-attribute-sets=
"section.titlepage.verso.style"/>
85 <xsl:attribute-set name=
"sect5.titlepage.recto.style"
86 use-attribute-sets=
"section.titlepage.recto.style"/>
87 <xsl:attribute-set name=
"sect5.titlepage.verso.style"
88 use-attribute-sets=
"section.titlepage.verso.style"/>
90 <xsl:attribute-set name=
"simplesect.titlepage.recto.style"
91 use-attribute-sets=
"section.titlepage.recto.style"/>
92 <xsl:attribute-set name=
"simplesect.titlepage.verso.style"
93 use-attribute-sets=
"section.titlepage.verso.style"/>
95 <xsl:attribute-set name=
"table.of.contents.titlepage.recto.style"/>
96 <xsl:attribute-set name=
"table.of.contents.titlepage.verso.style"/>
98 <xsl:attribute-set name=
"list.of.tables.titlepage.recto.style"/>
99 <xsl:attribute-set name=
"list.of.tables.contents.titlepage.verso.style"/>
101 <xsl:attribute-set name=
"list.of.figures.titlepage.recto.style"/>
102 <xsl:attribute-set name=
"list.of.figures.contents.titlepage.verso.style"/>
104 <xsl:attribute-set name=
"list.of.equations.titlepage.recto.style"/>
105 <xsl:attribute-set name=
"list.of.equations.contents.titlepage.verso.style"/>
107 <xsl:attribute-set name=
"list.of.examples.titlepage.recto.style"/>
108 <xsl:attribute-set name=
"list.of.examples.contents.titlepage.verso.style"/>
110 <xsl:attribute-set name=
"list.of.unknowns.titlepage.recto.style"/>
111 <xsl:attribute-set name=
"list.of.unknowns.contents.titlepage.verso.style"/>
113 <!-- ==================================================================== -->
115 <xsl:template match=
"*" mode=
"titlepage.mode">
116 <!-- if an element isn't found in this mode, try the default mode -->
117 <xsl:apply-templates select=
"."/>
120 <xsl:template match=
"abbrev" mode=
"titlepage.mode">
122 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
123 <xsl:apply-templates mode=
"titlepage.mode"/>
128 <xsl:template match=
"abstract" mode=
"titlepage.mode">
130 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
131 <xsl:call-template name=
"anchor"/>
132 <xsl:call-template name=
"formal.object.heading">
133 <xsl:with-param name=
"title">
134 <xsl:apply-templates select=
"." mode=
"title.markup"/>
137 <xsl:apply-templates mode=
"titlepage.mode"/>
141 <xsl:template match=
"abstract/title" mode=
"titlepage.mode">
144 <xsl:template match=
"address" mode=
"titlepage.mode">
145 <xsl:param name=
"suppress-numbers" select=
"'0'"/>
147 <xsl:variable name=
"rtf">
148 <xsl:apply-templates mode=
"titlepage.mode"/>
152 <xsl:when test=
"$suppress-numbers = '0'
153 and @linenumbering = 'numbered'
154 and $use.extensions != '0'
155 and $linenumbering.extension != '0'">
157 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
158 <xsl:call-template name=
"paragraph">
159 <xsl:with-param name=
"content">
160 <xsl:call-template name=
"number.rtf.lines">
161 <xsl:with-param name=
"rtf" select=
"$rtf"/>
170 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
171 <xsl:call-template name=
"paragraph">
172 <xsl:with-param name=
"content">
173 <xsl:call-template name=
"make-verbatim">
174 <xsl:with-param name=
"rtf" select=
"$rtf"/>
183 <xsl:template match=
"affiliation" mode=
"titlepage.mode">
185 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
186 <xsl:apply-templates mode=
"titlepage.mode"/>
190 <xsl:template match=
"artpagenums" mode=
"titlepage.mode">
192 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
193 <xsl:apply-templates mode=
"titlepage.mode"/>
198 <xsl:template match=
"author|editor" mode=
"titlepage.mode">
199 <xsl:call-template name=
"credits.div"/>
202 <xsl:template name=
"credits.div">
204 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
205 <xsl:if test=
"self::editor[position()=1] and not($editedby.enabled = 0)">
206 <h4 class=
"editedby"><xsl:call-template name=
"gentext.edited.by"/></h4>
209 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
210 <xsl:call-template name=
"person.name"/>
212 <xsl:if test=
"not($contrib.inline.enabled = 0)">
213 <xsl:apply-templates mode=
"titlepage.mode" select=
"./contrib"/>
215 <xsl:apply-templates mode=
"titlepage.mode" select=
"./affiliation"/>
216 <xsl:apply-templates mode=
"titlepage.mode" select=
"./email"/>
217 <xsl:if test=
"not($blurb.on.titlepage.enabled = 0)">
219 <xsl:when test=
"$contrib.inline.enabled = 0">
220 <xsl:apply-templates mode=
"titlepage.mode"
221 select=
"./contrib|./authorblurb|./personblurb"/>
224 <xsl:apply-templates mode=
"titlepage.mode"
225 select=
"./authorblurb|./personblurb"/>
232 <xsl:template match=
"authorblurb|personblurb" mode=
"titlepage.mode">
234 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
235 <xsl:apply-templates mode=
"titlepage.mode"/>
239 <xsl:template match=
"authorgroup" mode=
"titlepage.mode">
241 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
242 <xsl:call-template name=
"anchor"/>
243 <xsl:apply-templates mode=
"titlepage.mode"/>
247 <xsl:template match=
"authorinitials" mode=
"titlepage.mode">
249 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
250 <xsl:apply-templates mode=
"titlepage.mode"/>
255 <xsl:template match=
"bibliomisc" mode=
"titlepage.mode">
256 <xsl:apply-templates mode=
"titlepage.mode"/>
259 <xsl:template match=
"bibliomset" mode=
"titlepage.mode">
260 <xsl:apply-templates mode=
"titlepage.mode"/>
263 <xsl:template match=
"collab" mode=
"titlepage.mode">
265 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
266 <xsl:apply-templates mode=
"titlepage.mode"/>
271 <xsl:template match=
"collabname" mode=
"titlepage.mode">
273 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
274 <xsl:apply-templates mode=
"titlepage.mode"/>
278 <xsl:template match=
"confgroup" mode=
"titlepage.mode">
280 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
281 <xsl:apply-templates mode=
"titlepage.mode"/>
285 <xsl:template match=
"confdates" mode=
"titlepage.mode">
287 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
288 <xsl:apply-templates mode=
"titlepage.mode"/>
293 <xsl:template match=
"confsponsor" mode=
"titlepage.mode">
295 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
296 <xsl:apply-templates mode=
"titlepage.mode"/>
301 <xsl:template match=
"conftitle" mode=
"titlepage.mode">
303 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
304 <xsl:apply-templates mode=
"titlepage.mode"/>
309 <xsl:template match=
"confnum" mode=
"titlepage.mode">
313 <xsl:template match=
"contractnum" mode=
"titlepage.mode">
315 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
316 <xsl:apply-templates mode=
"titlepage.mode"/>
321 <xsl:template match=
"contractsponsor" mode=
"titlepage.mode">
323 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
324 <xsl:apply-templates mode=
"titlepage.mode"/>
329 <xsl:template match=
"contrib" mode=
"titlepage.mode">
331 <xsl:when test=
"not($contrib.inline.enabled = 0)">
333 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
334 <xsl:apply-templates mode=
"titlepage.mode"/>
339 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
340 <p><xsl:apply-templates mode=
"titlepage.mode"/></p>
346 <xsl:template match=
"copyright" mode=
"titlepage.mode">
348 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
349 <xsl:call-template name=
"gentext">
350 <xsl:with-param name=
"key" select=
"'Copyright'"/>
352 <xsl:call-template name=
"gentext.space"/>
353 <xsl:call-template name=
"dingbat">
354 <xsl:with-param name=
"dingbat">copyright
</xsl:with-param>
356 <xsl:call-template name=
"gentext.space"/>
357 <xsl:call-template name=
"copyright.years">
358 <xsl:with-param name=
"years" select=
"year"/>
359 <xsl:with-param name=
"print.ranges" select=
"$make.year.ranges"/>
360 <xsl:with-param name=
"single.year.ranges"
361 select=
"$make.single.year.ranges"/>
363 <xsl:call-template name=
"gentext.space"/>
364 <xsl:apply-templates select=
"holder" mode=
"titlepage.mode"/>
368 <xsl:template match=
"year" mode=
"titlepage.mode">
370 <xsl:when test=
"$show.revisionflag != 0 and @revisionflag">
371 <span class=
"{@revisionflag}">
372 <xsl:apply-templates mode=
"titlepage.mode"/>
376 <xsl:apply-templates mode=
"titlepage.mode"/>
381 <xsl:template match=
"holder" mode=
"titlepage.mode">
383 <xsl:when test=
"$show.revisionflag != 0 and @revisionflag">
384 <span class=
"{@revisionflag}">
385 <xsl:apply-templates mode=
"titlepage.mode"/>
389 <xsl:apply-templates mode=
"titlepage.mode"/>
392 <xsl:if test=
"position() < last()">
393 <xsl:text>,
</xsl:text>
397 <xsl:template match=
"corpauthor" mode=
"titlepage.mode">
399 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
400 <xsl:apply-templates mode=
"titlepage.mode"/>
404 <xsl:template match=
"corpcredit" mode=
"titlepage.mode">
406 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
407 <xsl:apply-templates mode=
"titlepage.mode"/>
412 <xsl:template match=
"corpname" mode=
"titlepage.mode">
414 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
415 <xsl:apply-templates mode=
"titlepage.mode"/>
420 <xsl:template match=
"date" mode=
"titlepage.mode">
422 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
423 <xsl:apply-templates mode=
"titlepage.mode"/>
428 <xsl:template match=
"edition" mode=
"titlepage.mode">
430 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
431 <xsl:apply-templates mode=
"titlepage.mode"/>
432 <xsl:call-template name=
"gentext.space"/>
433 <xsl:call-template name=
"gentext">
434 <xsl:with-param name=
"key" select=
"'Edition'"/>
439 <xsl:template match=
"email" mode=
"titlepage.mode">
440 <!-- use the normal e-mail handling code -->
441 <xsl:apply-templates select=
"."/>
444 <xsl:template match=
"firstname" mode=
"titlepage.mode">
446 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
447 <xsl:apply-templates mode=
"titlepage.mode"/>
452 <xsl:template match=
"graphic" mode=
"titlepage.mode">
453 <!-- use the normal graphic handling code -->
454 <xsl:apply-templates select=
"."/>
457 <xsl:template match=
"honorific" mode=
"titlepage.mode">
459 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
460 <xsl:apply-templates mode=
"titlepage.mode"/>
465 <xsl:template match=
"isbn" mode=
"titlepage.mode">
467 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
468 <xsl:apply-templates mode=
"titlepage.mode"/>
473 <xsl:template match=
"issn" mode=
"titlepage.mode">
475 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
476 <xsl:apply-templates mode=
"titlepage.mode"/>
481 <xsl:template match=
"biblioid" mode=
"titlepage.mode">
483 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
484 <xsl:apply-templates mode=
"titlepage.mode"/>
489 <xsl:template match=
"itermset" mode=
"titlepage.mode">
492 <xsl:template match=
"invpartnumber" mode=
"titlepage.mode">
494 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
495 <xsl:apply-templates mode=
"titlepage.mode"/>
500 <xsl:template match=
"issuenum" mode=
"titlepage.mode">
502 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
503 <xsl:apply-templates mode=
"titlepage.mode"/>
508 <xsl:template match=
"jobtitle" mode=
"titlepage.mode">
510 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
511 <xsl:apply-templates mode=
"titlepage.mode"/>
516 <xsl:template match=
"keywordset" mode=
"titlepage.mode">
519 <xsl:template match=
"legalnotice" mode=
"titlepage.mode">
520 <xsl:variable name=
"id"><xsl:call-template name=
"object.id"/></xsl:variable>
522 <xsl:when test=
"$generate.legalnotice.link != 0">
523 <xsl:variable name=
"filename">
524 <xsl:call-template name=
"make-relative-filename">
525 <xsl:with-param name=
"base.dir" select=
"$base.dir"/>
526 <xsl:with-param name=
"base.name">
527 <xsl:apply-templates mode=
"chunk-filename" select=
"."/>
532 <xsl:variable name=
"title">
533 <xsl:apply-templates select=
"." mode=
"title.markup"/>
536 <xsl:variable name=
"href">
537 <xsl:apply-templates mode=
"chunk-filename" select=
"."/>
541 <xsl:copy-of select=
"$title"/>
544 <xsl:call-template name=
"write.chunk">
545 <xsl:with-param name=
"filename" select=
"$filename"/>
546 <xsl:with-param name=
"quiet" select=
"$chunk.quietly"/>
547 <xsl:with-param name=
"content">
548 <xsl:call-template name=
"user.preroot"/>
551 <xsl:call-template name=
"system.head.content"/>
552 <xsl:call-template name=
"head.content"/>
553 <xsl:call-template name=
"user.head.content"/>
556 <xsl:call-template name=
"body.attributes"/>
558 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
559 <xsl:apply-templates mode=
"titlepage.mode"/>
563 <xsl:value-of select=
"$chunk.append"/>
569 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
571 <xsl:apply-templates mode=
"titlepage.mode"/>
577 <xsl:template match=
"legalnotice/title" mode=
"titlepage.mode">
578 <p class=
"legalnotice-title"><b><xsl:apply-templates/></b></p>
581 <xsl:template match=
"lineage" mode=
"titlepage.mode">
583 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
584 <xsl:apply-templates mode=
"titlepage.mode"/>
589 <xsl:template match=
"modespec" mode=
"titlepage.mode">
592 <xsl:template match=
"orgdiv" mode=
"titlepage.mode">
593 <xsl:if test=
"preceding-sibling::*[1][self::orgname]">
594 <xsl:text> </xsl:text>
597 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
598 <xsl:apply-templates mode=
"titlepage.mode"/>
603 <xsl:template match=
"orgname" mode=
"titlepage.mode">
605 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
606 <xsl:apply-templates mode=
"titlepage.mode"/>
611 <xsl:template match=
"othercredit" mode=
"titlepage.mode">
613 <xsl:when test=
"not($othercredit.like.author.enabled = 0)">
614 <xsl:variable name=
"contrib" select=
"string(contrib)"/>
616 <xsl:when test=
"contrib">
617 <xsl:if test=
"not(preceding-sibling::othercredit[string(contrib)=$contrib])">
618 <xsl:call-template name=
"paragraph">
619 <xsl:with-param name=
"class" select=
"local-name(.)"/>
620 <xsl:with-param name=
"content">
621 <xsl:apply-templates mode=
"titlepage.mode" select=
"contrib"/>
622 <xsl:text>:
</xsl:text>
623 <xsl:call-template name=
"person.name"/>
624 <xsl:apply-templates mode=
"titlepage.mode" select=
"./affiliation"/>
625 <xsl:apply-templates select=
"following-sibling::othercredit[string(contrib)=$contrib]" mode=
"titlepage.othercredits"/>
631 <xsl:call-template name=
"paragraph">
632 <xsl:with-param name=
"class" select=
"local-name(.)"/>
633 <xsl:with-param name=
"content">
634 <xsl:call-template name=
"person.name"/>
637 <xsl:apply-templates mode=
"titlepage.mode" select=
"./affiliation"/>
642 <xsl:call-template name=
"credits.div"/>
647 <xsl:template match=
"othercredit" mode=
"titlepage.othercredits">
648 <xsl:text>,
</xsl:text>
649 <xsl:call-template name=
"person.name"/>
652 <xsl:template match=
"othername" mode=
"titlepage.mode">
654 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
655 <xsl:apply-templates mode=
"titlepage.mode"/>
660 <xsl:template match=
"pagenums" mode=
"titlepage.mode">
662 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
663 <xsl:apply-templates mode=
"titlepage.mode"/>
668 <xsl:template match=
"printhistory" mode=
"titlepage.mode">
670 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
671 <xsl:apply-templates mode=
"titlepage.mode"/>
675 <xsl:template match=
"productname" mode=
"titlepage.mode">
677 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
678 <xsl:apply-templates mode=
"titlepage.mode"/>
683 <xsl:template match=
"productnumber" mode=
"titlepage.mode">
685 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
686 <xsl:apply-templates mode=
"titlepage.mode"/>
691 <xsl:template match=
"pubdate" mode=
"titlepage.mode">
692 <xsl:call-template name=
"paragraph">
693 <xsl:with-param name=
"class" select=
"local-name(.)"/>
694 <xsl:with-param name=
"content">
695 <xsl:apply-templates mode=
"titlepage.mode"/>
700 <xsl:template match=
"publisher" mode=
"titlepage.mode">
701 <xsl:call-template name=
"paragraph">
702 <xsl:with-param name=
"class" select=
"local-name(.)"/>
703 <xsl:with-param name=
"content">
704 <xsl:apply-templates mode=
"titlepage.mode"/>
709 <xsl:template match=
"publishername" mode=
"titlepage.mode">
711 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
712 <xsl:apply-templates mode=
"titlepage.mode"/>
717 <xsl:template match=
"pubsnumber" mode=
"titlepage.mode">
719 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
720 <xsl:apply-templates mode=
"titlepage.mode"/>
725 <xsl:template match=
"releaseinfo" mode=
"titlepage.mode">
726 <xsl:call-template name=
"paragraph">
727 <xsl:with-param name=
"class" select=
"local-name(.)"/>
728 <xsl:with-param name=
"content">
729 <xsl:apply-templates mode=
"titlepage.mode"/>
734 <xsl:template match=
"revhistory" mode=
"titlepage.mode">
735 <xsl:variable name=
"numcols">
737 <xsl:when test=
".//authorinitials|.//author">3</xsl:when>
738 <xsl:otherwise>2</xsl:otherwise>
742 <xsl:variable name=
"id"><xsl:call-template name=
"object.id"/></xsl:variable>
744 <xsl:variable name=
"title">
745 <xsl:call-template name=
"gentext">
746 <xsl:with-param name=
"key">RevHistory
</xsl:with-param>
750 <xsl:variable name=
"contents">
752 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
753 <table border=
"1" width=
"100%" summary=
"Revision history">
755 <th align=
"left" valign=
"top" colspan=
"{$numcols}">
757 <xsl:call-template name=
"gentext">
758 <xsl:with-param name=
"key" select=
"'RevHistory'"/>
763 <xsl:apply-templates mode=
"titlepage.mode">
764 <xsl:with-param name=
"numcols" select=
"$numcols"/>
765 </xsl:apply-templates>
771 <xsl:when test=
"$generate.revhistory.link != 0">
772 <xsl:variable name=
"filename">
773 <xsl:call-template name=
"make-relative-filename">
774 <xsl:with-param name=
"base.dir" select=
"$base.dir"/>
775 <xsl:with-param name=
"base.name" select=
"concat($id,$html.ext)"/>
779 <a href=
"{concat($id,$html.ext)}">
780 <xsl:copy-of select=
"$title"/>
783 <xsl:call-template name=
"write.chunk">
784 <xsl:with-param name=
"filename" select=
"$filename"/>
785 <xsl:with-param name=
"quiet" select=
"$chunk.quietly"/>
786 <xsl:with-param name=
"content">
787 <xsl:call-template name=
"user.preroot"/>
790 <xsl:call-template name=
"system.head.content"/>
791 <xsl:call-template name=
"head.content">
792 <xsl:with-param name=
"title">
793 <xsl:value-of select=
"$title"/>
794 <xsl:if test=
"../../title">
795 <xsl:value-of select=
"concat(' (', ../../title, ')')"/>
799 <xsl:call-template name=
"user.head.content"/>
802 <xsl:call-template name=
"body.attributes"/>
803 <xsl:copy-of select=
"$contents"/>
806 <xsl:text>
</xsl:text>
811 <xsl:copy-of select=
"$contents"/>
816 <xsl:template match=
"revhistory/revision" mode=
"titlepage.mode">
817 <xsl:param name=
"numcols" select=
"'3'"/>
818 <xsl:variable name=
"revnumber" select=
"revnumber"/>
819 <xsl:variable name=
"revdate" select=
"date"/>
820 <xsl:variable name=
"revauthor" select=
"authorinitials|author"/>
821 <xsl:variable name=
"revremark" select=
"revremark|revdescription"/>
824 <xsl:if test=
"$revnumber">
825 <xsl:call-template name=
"gentext">
826 <xsl:with-param name=
"key" select=
"'Revision'"/>
828 <xsl:call-template name=
"gentext.space"/>
829 <xsl:apply-templates select=
"$revnumber[1]" mode=
"titlepage.mode"/>
833 <xsl:apply-templates select=
"$revdate[1]" mode=
"titlepage.mode"/>
836 <xsl:when test=
"$revauthor">
838 <xsl:for-each select=
"$revauthor">
839 <xsl:apply-templates select=
"." mode=
"titlepage.mode"/>
840 <xsl:if test=
"position() != last()">
841 <xsl:text>,
</xsl:text>
846 <xsl:when test=
"$numcols > 2">
849 <xsl:otherwise></xsl:otherwise>
852 <xsl:if test=
"$revremark">
854 <td align=
"left" colspan=
"{$numcols}">
855 <xsl:apply-templates select=
"$revremark[1]" mode=
"titlepage.mode"/>
861 <xsl:template match=
"revision/revnumber" mode=
"titlepage.mode">
862 <xsl:apply-templates mode=
"titlepage.mode"/>
865 <xsl:template match=
"revision/date" mode=
"titlepage.mode">
866 <xsl:apply-templates mode=
"titlepage.mode"/>
869 <xsl:template match=
"revision/authorinitials" mode=
"titlepage.mode">
870 <xsl:apply-templates mode=
"titlepage.mode"/>
873 <xsl:template match=
"revision/author" mode=
"titlepage.mode">
874 <xsl:apply-templates mode=
"titlepage.mode"/>
877 <xsl:template match=
"revision/revremark" mode=
"titlepage.mode">
878 <xsl:apply-templates mode=
"titlepage.mode"/>
881 <xsl:template match=
"revision/revdescription" mode=
"titlepage.mode">
882 <xsl:apply-templates mode=
"titlepage.mode"/>
885 <xsl:template match=
"seriesvolnums" mode=
"titlepage.mode">
887 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
888 <xsl:apply-templates mode=
"titlepage.mode"/>
893 <xsl:template match=
"shortaffil" mode=
"titlepage.mode">
895 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
896 <xsl:apply-templates mode=
"titlepage.mode"/>
901 <xsl:template match=
"subjectset" mode=
"titlepage.mode">
904 <xsl:template match=
"subtitle" mode=
"titlepage.mode">
906 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
907 <xsl:apply-templates mode=
"titlepage.mode"/>
911 <xsl:template match=
"surname" mode=
"titlepage.mode">
913 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
914 <xsl:apply-templates mode=
"titlepage.mode"/>
919 <xsl:template match=
"title" mode=
"titlepage.mode">
920 <xsl:variable name=
"id">
922 <!-- if title is in an *info wrapper, get the grandparent -->
923 <xsl:when test=
"contains(local-name(..), 'info')">
924 <xsl:call-template name=
"object.id">
925 <xsl:with-param name=
"object" select=
"../.."/>
929 <xsl:call-template name=
"object.id">
930 <xsl:with-param name=
"object" select=
".."/>
937 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
940 <xsl:when test=
"$show.revisionflag != 0 and @revisionflag">
941 <span class=
"{@revisionflag}">
942 <xsl:apply-templates mode=
"titlepage.mode"/>
946 <xsl:apply-templates mode=
"titlepage.mode"/>
952 <xsl:template match=
"titleabbrev" mode=
"titlepage.mode">
953 <!-- nop; title abbreviations don't belong on the title page! -->
956 <xsl:template match=
"volumenum" mode=
"titlepage.mode">
958 <xsl:apply-templates select=
"." mode=
"class.attribute"/>
959 <xsl:apply-templates mode=
"titlepage.mode"/>
964 <!-- ==================================================================== -->