Jitterbug no more.
[fvwm.git] / doc / docbook-xsl / html / titlepage.xsl
blobed70de351c9c1eeb17140e6a05a0e5bfde9f7d3d
1 <?xml version='1.0'?>
2 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3 version='1.0'>
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="."/>
118 </xsl:template>
120 <xsl:template match="abbrev" mode="titlepage.mode">
121 <span>
122 <xsl:apply-templates select="." mode="class.attribute"/>
123 <xsl:apply-templates mode="titlepage.mode"/>
124 <br/>
125 </span>
126 </xsl:template>
128 <xsl:template match="abstract" mode="titlepage.mode">
129 <div>
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"/>
135 </xsl:with-param>
136 </xsl:call-template>
137 <xsl:apply-templates mode="titlepage.mode"/>
138 </div>
139 </xsl:template>
141 <xsl:template match="abstract/title" mode="titlepage.mode">
142 </xsl:template>
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"/>
149 </xsl:variable>
151 <xsl:choose>
152 <xsl:when test="$suppress-numbers = '0'
153 and @linenumbering = 'numbered'
154 and $use.extensions != '0'
155 and $linenumbering.extension != '0'">
156 <div>
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"/>
162 </xsl:call-template>
163 </xsl:with-param>
164 </xsl:call-template>
165 </div>
166 </xsl:when>
168 <xsl:otherwise>
169 <div>
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"/>
175 </xsl:call-template>
176 </xsl:with-param>
177 </xsl:call-template>
178 </div>
179 </xsl:otherwise>
180 </xsl:choose>
181 </xsl:template>
183 <xsl:template match="affiliation" mode="titlepage.mode">
184 <div>
185 <xsl:apply-templates select="." mode="class.attribute"/>
186 <xsl:apply-templates mode="titlepage.mode"/>
187 </div>
188 </xsl:template>
190 <xsl:template match="artpagenums" mode="titlepage.mode">
191 <span>
192 <xsl:apply-templates select="." mode="class.attribute"/>
193 <xsl:apply-templates mode="titlepage.mode"/>
194 <br/>
195 </span>
196 </xsl:template>
198 <xsl:template match="author|editor" mode="titlepage.mode">
199 <xsl:call-template name="credits.div"/>
200 </xsl:template>
202 <xsl:template name="credits.div">
203 <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>
207 </xsl:if>
208 <h3>
209 <xsl:apply-templates select="." mode="class.attribute"/>
210 <xsl:call-template name="person.name"/>
211 </h3>
212 <xsl:if test="not($contrib.inline.enabled = 0)">
213 <xsl:apply-templates mode="titlepage.mode" select="./contrib"/>
214 </xsl:if>
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)">
218 <xsl:choose>
219 <xsl:when test="$contrib.inline.enabled = 0">
220 <xsl:apply-templates mode="titlepage.mode"
221 select="./contrib|./authorblurb|./personblurb"/>
222 </xsl:when>
223 <xsl:otherwise>
224 <xsl:apply-templates mode="titlepage.mode"
225 select="./authorblurb|./personblurb"/>
226 </xsl:otherwise>
227 </xsl:choose>
228 </xsl:if>
229 </div>
230 </xsl:template>
232 <xsl:template match="authorblurb|personblurb" mode="titlepage.mode">
233 <div>
234 <xsl:apply-templates select="." mode="class.attribute"/>
235 <xsl:apply-templates mode="titlepage.mode"/>
236 </div>
237 </xsl:template>
239 <xsl:template match="authorgroup" mode="titlepage.mode">
240 <div>
241 <xsl:apply-templates select="." mode="class.attribute"/>
242 <xsl:call-template name="anchor"/>
243 <xsl:apply-templates mode="titlepage.mode"/>
244 </div>
245 </xsl:template>
247 <xsl:template match="authorinitials" mode="titlepage.mode">
248 <span>
249 <xsl:apply-templates select="." mode="class.attribute"/>
250 <xsl:apply-templates mode="titlepage.mode"/>
251 <br/>
252 </span>
253 </xsl:template>
255 <xsl:template match="bibliomisc" mode="titlepage.mode">
256 <xsl:apply-templates mode="titlepage.mode"/>
257 </xsl:template>
259 <xsl:template match="bibliomset" mode="titlepage.mode">
260 <xsl:apply-templates mode="titlepage.mode"/>
261 </xsl:template>
263 <xsl:template match="collab" mode="titlepage.mode">
264 <span>
265 <xsl:apply-templates select="." mode="class.attribute"/>
266 <xsl:apply-templates mode="titlepage.mode"/>
267 <br/>
268 </span>
269 </xsl:template>
271 <xsl:template match="collabname" mode="titlepage.mode">
272 <span>
273 <xsl:apply-templates select="." mode="class.attribute"/>
274 <xsl:apply-templates mode="titlepage.mode"/>
275 </span>
276 </xsl:template>
278 <xsl:template match="confgroup" mode="titlepage.mode">
279 <div>
280 <xsl:apply-templates select="." mode="class.attribute"/>
281 <xsl:apply-templates mode="titlepage.mode"/>
282 </div>
283 </xsl:template>
285 <xsl:template match="confdates" mode="titlepage.mode">
286 <span>
287 <xsl:apply-templates select="." mode="class.attribute"/>
288 <xsl:apply-templates mode="titlepage.mode"/>
289 <br/>
290 </span>
291 </xsl:template>
293 <xsl:template match="confsponsor" mode="titlepage.mode">
294 <span>
295 <xsl:apply-templates select="." mode="class.attribute"/>
296 <xsl:apply-templates mode="titlepage.mode"/>
297 <br/>
298 </span>
299 </xsl:template>
301 <xsl:template match="conftitle" mode="titlepage.mode">
302 <span>
303 <xsl:apply-templates select="." mode="class.attribute"/>
304 <xsl:apply-templates mode="titlepage.mode"/>
305 <br/>
306 </span>
307 </xsl:template>
309 <xsl:template match="confnum" mode="titlepage.mode">
310 <!-- suppress -->
311 </xsl:template>
313 <xsl:template match="contractnum" mode="titlepage.mode">
314 <span>
315 <xsl:apply-templates select="." mode="class.attribute"/>
316 <xsl:apply-templates mode="titlepage.mode"/>
317 <br/>
318 </span>
319 </xsl:template>
321 <xsl:template match="contractsponsor" mode="titlepage.mode">
322 <span>
323 <xsl:apply-templates select="." mode="class.attribute"/>
324 <xsl:apply-templates mode="titlepage.mode"/>
325 <br/>
326 </span>
327 </xsl:template>
329 <xsl:template match="contrib" mode="titlepage.mode">
330 <xsl:choose>
331 <xsl:when test="not($contrib.inline.enabled = 0)">
332 <span>
333 <xsl:apply-templates select="." mode="class.attribute"/>
334 <xsl:apply-templates mode="titlepage.mode"/>
335 </span>
336 </xsl:when>
337 <xsl:otherwise>
338 <div>
339 <xsl:apply-templates select="." mode="class.attribute"/>
340 <p><xsl:apply-templates mode="titlepage.mode"/></p>
341 </div>
342 </xsl:otherwise>
343 </xsl:choose>
344 </xsl:template>
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'"/>
351 </xsl:call-template>
352 <xsl:call-template name="gentext.space"/>
353 <xsl:call-template name="dingbat">
354 <xsl:with-param name="dingbat">copyright</xsl:with-param>
355 </xsl:call-template>
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"/>
362 </xsl:call-template>
363 <xsl:call-template name="gentext.space"/>
364 <xsl:apply-templates select="holder" mode="titlepage.mode"/>
365 </p>
366 </xsl:template>
368 <xsl:template match="year" mode="titlepage.mode">
369 <xsl:choose>
370 <xsl:when test="$show.revisionflag != 0 and @revisionflag">
371 <span class="{@revisionflag}">
372 <xsl:apply-templates mode="titlepage.mode"/>
373 </span>
374 </xsl:when>
375 <xsl:otherwise>
376 <xsl:apply-templates mode="titlepage.mode"/>
377 </xsl:otherwise>
378 </xsl:choose>
379 </xsl:template>
381 <xsl:template match="holder" mode="titlepage.mode">
382 <xsl:choose>
383 <xsl:when test="$show.revisionflag != 0 and @revisionflag">
384 <span class="{@revisionflag}">
385 <xsl:apply-templates mode="titlepage.mode"/>
386 </span>
387 </xsl:when>
388 <xsl:otherwise>
389 <xsl:apply-templates mode="titlepage.mode"/>
390 </xsl:otherwise>
391 </xsl:choose>
392 <xsl:if test="position() &lt; last()">
393 <xsl:text>, </xsl:text>
394 </xsl:if>
395 </xsl:template>
397 <xsl:template match="corpauthor" mode="titlepage.mode">
398 <h3>
399 <xsl:apply-templates select="." mode="class.attribute"/>
400 <xsl:apply-templates mode="titlepage.mode"/>
401 </h3>
402 </xsl:template>
404 <xsl:template match="corpcredit" mode="titlepage.mode">
405 <span>
406 <xsl:apply-templates select="." mode="class.attribute"/>
407 <xsl:apply-templates mode="titlepage.mode"/>
408 <br/>
409 </span>
410 </xsl:template>
412 <xsl:template match="corpname" mode="titlepage.mode">
413 <span>
414 <xsl:apply-templates select="." mode="class.attribute"/>
415 <xsl:apply-templates mode="titlepage.mode"/>
416 <br/>
417 </span>
418 </xsl:template>
420 <xsl:template match="date" mode="titlepage.mode">
421 <span>
422 <xsl:apply-templates select="." mode="class.attribute"/>
423 <xsl:apply-templates mode="titlepage.mode"/>
424 <br/>
425 </span>
426 </xsl:template>
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'"/>
435 </xsl:call-template>
436 </p>
437 </xsl:template>
439 <xsl:template match="email" mode="titlepage.mode">
440 <!-- use the normal e-mail handling code -->
441 <xsl:apply-templates select="."/>
442 </xsl:template>
444 <xsl:template match="firstname" mode="titlepage.mode">
445 <span>
446 <xsl:apply-templates select="." mode="class.attribute"/>
447 <xsl:apply-templates mode="titlepage.mode"/>
448 <br/>
449 </span>
450 </xsl:template>
452 <xsl:template match="graphic" mode="titlepage.mode">
453 <!-- use the normal graphic handling code -->
454 <xsl:apply-templates select="."/>
455 </xsl:template>
457 <xsl:template match="honorific" mode="titlepage.mode">
458 <span>
459 <xsl:apply-templates select="." mode="class.attribute"/>
460 <xsl:apply-templates mode="titlepage.mode"/>
461 <br/>
462 </span>
463 </xsl:template>
465 <xsl:template match="isbn" mode="titlepage.mode">
466 <span>
467 <xsl:apply-templates select="." mode="class.attribute"/>
468 <xsl:apply-templates mode="titlepage.mode"/>
469 <br/>
470 </span>
471 </xsl:template>
473 <xsl:template match="issn" mode="titlepage.mode">
474 <span>
475 <xsl:apply-templates select="." mode="class.attribute"/>
476 <xsl:apply-templates mode="titlepage.mode"/>
477 <br/>
478 </span>
479 </xsl:template>
481 <xsl:template match="biblioid" mode="titlepage.mode">
482 <span>
483 <xsl:apply-templates select="." mode="class.attribute"/>
484 <xsl:apply-templates mode="titlepage.mode"/>
485 <br/>
486 </span>
487 </xsl:template>
489 <xsl:template match="itermset" mode="titlepage.mode">
490 </xsl:template>
492 <xsl:template match="invpartnumber" mode="titlepage.mode">
493 <span>
494 <xsl:apply-templates select="." mode="class.attribute"/>
495 <xsl:apply-templates mode="titlepage.mode"/>
496 <br/>
497 </span>
498 </xsl:template>
500 <xsl:template match="issuenum" mode="titlepage.mode">
501 <span>
502 <xsl:apply-templates select="." mode="class.attribute"/>
503 <xsl:apply-templates mode="titlepage.mode"/>
504 <br/>
505 </span>
506 </xsl:template>
508 <xsl:template match="jobtitle" mode="titlepage.mode">
509 <span>
510 <xsl:apply-templates select="." mode="class.attribute"/>
511 <xsl:apply-templates mode="titlepage.mode"/>
512 <br/>
513 </span>
514 </xsl:template>
516 <xsl:template match="keywordset" mode="titlepage.mode">
517 </xsl:template>
519 <xsl:template match="legalnotice" mode="titlepage.mode">
520 <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable>
521 <xsl:choose>
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="."/>
528 </xsl:with-param>
529 </xsl:call-template>
530 </xsl:variable>
532 <xsl:variable name="title">
533 <xsl:apply-templates select="." mode="title.markup"/>
534 </xsl:variable>
536 <xsl:variable name="href">
537 <xsl:apply-templates mode="chunk-filename" select="."/>
538 </xsl:variable>
540 <a href="{$href}">
541 <xsl:copy-of select="$title"/>
542 </a>
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"/>
549 <html>
550 <head>
551 <xsl:call-template name="system.head.content"/>
552 <xsl:call-template name="head.content"/>
553 <xsl:call-template name="user.head.content"/>
554 </head>
555 <body>
556 <xsl:call-template name="body.attributes"/>
557 <div>
558 <xsl:apply-templates select="." mode="class.attribute"/>
559 <xsl:apply-templates mode="titlepage.mode"/>
560 </div>
561 </body>
562 </html>
563 <xsl:value-of select="$chunk.append"/>
564 </xsl:with-param>
565 </xsl:call-template>
566 </xsl:when>
567 <xsl:otherwise>
568 <div>
569 <xsl:apply-templates select="." mode="class.attribute"/>
570 <a name="{$id}"/>
571 <xsl:apply-templates mode="titlepage.mode"/>
572 </div>
573 </xsl:otherwise>
574 </xsl:choose>
575 </xsl:template>
577 <xsl:template match="legalnotice/title" mode="titlepage.mode">
578 <p class="legalnotice-title"><b><xsl:apply-templates/></b></p>
579 </xsl:template>
581 <xsl:template match="lineage" mode="titlepage.mode">
582 <span>
583 <xsl:apply-templates select="." mode="class.attribute"/>
584 <xsl:apply-templates mode="titlepage.mode"/>
585 <br/>
586 </span>
587 </xsl:template>
589 <xsl:template match="modespec" mode="titlepage.mode">
590 </xsl:template>
592 <xsl:template match="orgdiv" mode="titlepage.mode">
593 <xsl:if test="preceding-sibling::*[1][self::orgname]">
594 <xsl:text> </xsl:text>
595 </xsl:if>
596 <span>
597 <xsl:apply-templates select="." mode="class.attribute"/>
598 <xsl:apply-templates mode="titlepage.mode"/>
599 <br/>
600 </span>
601 </xsl:template>
603 <xsl:template match="orgname" mode="titlepage.mode">
604 <span>
605 <xsl:apply-templates select="." mode="class.attribute"/>
606 <xsl:apply-templates mode="titlepage.mode"/>
607 <br/>
608 </span>
609 </xsl:template>
611 <xsl:template match="othercredit" mode="titlepage.mode">
612 <xsl:choose>
613 <xsl:when test="not($othercredit.like.author.enabled = 0)">
614 <xsl:variable name="contrib" select="string(contrib)"/>
615 <xsl:choose>
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"/>
626 </xsl:with-param>
627 </xsl:call-template>
628 </xsl:if>
629 </xsl:when>
630 <xsl:otherwise>
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"/>
635 </xsl:with-param>
636 </xsl:call-template>
637 <xsl:apply-templates mode="titlepage.mode" select="./affiliation"/>
638 </xsl:otherwise>
639 </xsl:choose>
640 </xsl:when>
641 <xsl:otherwise>
642 <xsl:call-template name="credits.div"/>
643 </xsl:otherwise>
644 </xsl:choose>
645 </xsl:template>
647 <xsl:template match="othercredit" mode="titlepage.othercredits">
648 <xsl:text>, </xsl:text>
649 <xsl:call-template name="person.name"/>
650 </xsl:template>
652 <xsl:template match="othername" mode="titlepage.mode">
653 <span>
654 <xsl:apply-templates select="." mode="class.attribute"/>
655 <xsl:apply-templates mode="titlepage.mode"/>
656 <br/>
657 </span>
658 </xsl:template>
660 <xsl:template match="pagenums" mode="titlepage.mode">
661 <span>
662 <xsl:apply-templates select="." mode="class.attribute"/>
663 <xsl:apply-templates mode="titlepage.mode"/>
664 <br/>
665 </span>
666 </xsl:template>
668 <xsl:template match="printhistory" mode="titlepage.mode">
669 <div>
670 <xsl:apply-templates select="." mode="class.attribute"/>
671 <xsl:apply-templates mode="titlepage.mode"/>
672 </div>
673 </xsl:template>
675 <xsl:template match="productname" mode="titlepage.mode">
676 <span>
677 <xsl:apply-templates select="." mode="class.attribute"/>
678 <xsl:apply-templates mode="titlepage.mode"/>
679 <br/>
680 </span>
681 </xsl:template>
683 <xsl:template match="productnumber" mode="titlepage.mode">
684 <span>
685 <xsl:apply-templates select="." mode="class.attribute"/>
686 <xsl:apply-templates mode="titlepage.mode"/>
687 <br/>
688 </span>
689 </xsl:template>
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"/>
696 </xsl:with-param>
697 </xsl:call-template>
698 </xsl:template>
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"/>
705 </xsl:with-param>
706 </xsl:call-template>
707 </xsl:template>
709 <xsl:template match="publishername" mode="titlepage.mode">
710 <span>
711 <xsl:apply-templates select="." mode="class.attribute"/>
712 <xsl:apply-templates mode="titlepage.mode"/>
713 <br/>
714 </span>
715 </xsl:template>
717 <xsl:template match="pubsnumber" mode="titlepage.mode">
718 <span>
719 <xsl:apply-templates select="." mode="class.attribute"/>
720 <xsl:apply-templates mode="titlepage.mode"/>
721 <br/>
722 </span>
723 </xsl:template>
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"/>
730 </xsl:with-param>
731 </xsl:call-template>
732 </xsl:template>
734 <xsl:template match="revhistory" mode="titlepage.mode">
735 <xsl:variable name="numcols">
736 <xsl:choose>
737 <xsl:when test=".//authorinitials|.//author">3</xsl:when>
738 <xsl:otherwise>2</xsl:otherwise>
739 </xsl:choose>
740 </xsl:variable>
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>
747 </xsl:call-template>
748 </xsl:variable>
750 <xsl:variable name="contents">
751 <div>
752 <xsl:apply-templates select="." mode="class.attribute"/>
753 <table border="1" width="100%" summary="Revision history">
754 <tr>
755 <th align="left" valign="top" colspan="{$numcols}">
757 <xsl:call-template name="gentext">
758 <xsl:with-param name="key" select="'RevHistory'"/>
759 </xsl:call-template>
760 </b>
761 </th>
762 </tr>
763 <xsl:apply-templates mode="titlepage.mode">
764 <xsl:with-param name="numcols" select="$numcols"/>
765 </xsl:apply-templates>
766 </table>
767 </div>
768 </xsl:variable>
770 <xsl:choose>
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)"/>
776 </xsl:call-template>
777 </xsl:variable>
779 <a href="{concat($id,$html.ext)}">
780 <xsl:copy-of select="$title"/>
781 </a>
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"/>
788 <html>
789 <head>
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, ')')"/>
796 </xsl:if>
797 </xsl:with-param>
798 </xsl:call-template>
799 <xsl:call-template name="user.head.content"/>
800 </head>
801 <body>
802 <xsl:call-template name="body.attributes"/>
803 <xsl:copy-of select="$contents"/>
804 </body>
805 </html>
806 <xsl:text>&#x0a;</xsl:text>
807 </xsl:with-param>
808 </xsl:call-template>
809 </xsl:when>
810 <xsl:otherwise>
811 <xsl:copy-of select="$contents"/>
812 </xsl:otherwise>
813 </xsl:choose>
814 </xsl:template>
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"/>
822 <tr>
823 <td align="left">
824 <xsl:if test="$revnumber">
825 <xsl:call-template name="gentext">
826 <xsl:with-param name="key" select="'Revision'"/>
827 </xsl:call-template>
828 <xsl:call-template name="gentext.space"/>
829 <xsl:apply-templates select="$revnumber[1]" mode="titlepage.mode"/>
830 </xsl:if>
831 </td>
832 <td align="left">
833 <xsl:apply-templates select="$revdate[1]" mode="titlepage.mode"/>
834 </td>
835 <xsl:choose>
836 <xsl:when test="$revauthor">
837 <td align="left">
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>
842 </xsl:if>
843 </xsl:for-each>
844 </td>
845 </xsl:when>
846 <xsl:when test="$numcols &gt; 2">
847 <td>&#160;</td>
848 </xsl:when>
849 <xsl:otherwise></xsl:otherwise>
850 </xsl:choose>
851 </tr>
852 <xsl:if test="$revremark">
853 <tr>
854 <td align="left" colspan="{$numcols}">
855 <xsl:apply-templates select="$revremark[1]" mode="titlepage.mode"/>
856 </td>
857 </tr>
858 </xsl:if>
859 </xsl:template>
861 <xsl:template match="revision/revnumber" mode="titlepage.mode">
862 <xsl:apply-templates mode="titlepage.mode"/>
863 </xsl:template>
865 <xsl:template match="revision/date" mode="titlepage.mode">
866 <xsl:apply-templates mode="titlepage.mode"/>
867 </xsl:template>
869 <xsl:template match="revision/authorinitials" mode="titlepage.mode">
870 <xsl:apply-templates mode="titlepage.mode"/>
871 </xsl:template>
873 <xsl:template match="revision/author" mode="titlepage.mode">
874 <xsl:apply-templates mode="titlepage.mode"/>
875 </xsl:template>
877 <xsl:template match="revision/revremark" mode="titlepage.mode">
878 <xsl:apply-templates mode="titlepage.mode"/>
879 </xsl:template>
881 <xsl:template match="revision/revdescription" mode="titlepage.mode">
882 <xsl:apply-templates mode="titlepage.mode"/>
883 </xsl:template>
885 <xsl:template match="seriesvolnums" mode="titlepage.mode">
886 <span>
887 <xsl:apply-templates select="." mode="class.attribute"/>
888 <xsl:apply-templates mode="titlepage.mode"/>
889 <br/>
890 </span>
891 </xsl:template>
893 <xsl:template match="shortaffil" mode="titlepage.mode">
894 <span>
895 <xsl:apply-templates select="." mode="class.attribute"/>
896 <xsl:apply-templates mode="titlepage.mode"/>
897 <br/>
898 </span>
899 </xsl:template>
901 <xsl:template match="subjectset" mode="titlepage.mode">
902 </xsl:template>
904 <xsl:template match="subtitle" mode="titlepage.mode">
905 <h2>
906 <xsl:apply-templates select="." mode="class.attribute"/>
907 <xsl:apply-templates mode="titlepage.mode"/>
908 </h2>
909 </xsl:template>
911 <xsl:template match="surname" mode="titlepage.mode">
912 <span>
913 <xsl:apply-templates select="." mode="class.attribute"/>
914 <xsl:apply-templates mode="titlepage.mode"/>
915 <br/>
916 </span>
917 </xsl:template>
919 <xsl:template match="title" mode="titlepage.mode">
920 <xsl:variable name="id">
921 <xsl:choose>
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="../.."/>
926 </xsl:call-template>
927 </xsl:when>
928 <xsl:otherwise>
929 <xsl:call-template name="object.id">
930 <xsl:with-param name="object" select=".."/>
931 </xsl:call-template>
932 </xsl:otherwise>
933 </xsl:choose>
934 </xsl:variable>
936 <h1>
937 <xsl:apply-templates select="." mode="class.attribute"/>
938 <a name="{$id}"/>
939 <xsl:choose>
940 <xsl:when test="$show.revisionflag != 0 and @revisionflag">
941 <span class="{@revisionflag}">
942 <xsl:apply-templates mode="titlepage.mode"/>
943 </span>
944 </xsl:when>
945 <xsl:otherwise>
946 <xsl:apply-templates mode="titlepage.mode"/>
947 </xsl:otherwise>
948 </xsl:choose>
949 </h1>
950 </xsl:template>
952 <xsl:template match="titleabbrev" mode="titlepage.mode">
953 <!-- nop; title abbreviations don't belong on the title page! -->
954 </xsl:template>
956 <xsl:template match="volumenum" mode="titlepage.mode">
957 <span>
958 <xsl:apply-templates select="." mode="class.attribute"/>
959 <xsl:apply-templates mode="titlepage.mode"/>
960 <br/>
961 </span>
962 </xsl:template>
964 <!-- ==================================================================== -->
966 </xsl:stylesheet>