]> git.evergreen-ils.org Git - working/Evergreen.git/blob - stylesheets/evergreen_docbook_files/docbook-xsl-1.75.2/html/titlepage.xsl
Add stylesheets for our evergreen docbook site.
[working/Evergreen.git] / stylesheets / evergreen_docbook_files / docbook-xsl-1.75.2 / html / titlepage.xsl
1 <?xml version='1.0'?>
2 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3                 version='1.0'>
4
5 <!-- ********************************************************************
6      $Id: titlepage.xsl 8491 2009-07-19 10:02:57Z mzjn $
7      ********************************************************************
8
9      This file is part of the XSL DocBook Stylesheet distribution.
10      See ../README or http://docbook.sf.net/release/xsl/current/ for
11      copyright and other information.
12
13      ******************************************************************** -->
14
15 <!-- ==================================================================== -->
16
17 <xsl:attribute-set name="book.titlepage.recto.style"/>
18 <xsl:attribute-set name="book.titlepage.verso.style"/>
19
20 <xsl:attribute-set name="article.titlepage.recto.style"/>
21 <xsl:attribute-set name="article.titlepage.verso.style"/>
22
23 <xsl:attribute-set name="set.titlepage.recto.style"/>
24 <xsl:attribute-set name="set.titlepage.verso.style"/>
25
26 <xsl:attribute-set name="part.titlepage.recto.style"/>
27 <xsl:attribute-set name="part.titlepage.verso.style"/>
28
29 <xsl:attribute-set name="partintro.titlepage.recto.style"/>
30 <xsl:attribute-set name="partintro.titlepage.verso.style"/>
31
32 <xsl:attribute-set name="reference.titlepage.recto.style"/>
33 <xsl:attribute-set name="reference.titlepage.verso.style"/>
34
35 <xsl:attribute-set name="refentry.titlepage.recto.style"/>
36 <xsl:attribute-set name="refentry.titlepage.verso.style"/>
37
38 <xsl:attribute-set name="dedication.titlepage.recto.style"/>
39 <xsl:attribute-set name="dedication.titlepage.verso.style"/>
40
41 <xsl:attribute-set name="acknowledgements.titlepage.recto.style"/>
42 <xsl:attribute-set name="acknowledgements.titlepage.verso.style"/>
43
44 <xsl:attribute-set name="preface.titlepage.recto.style"/>
45 <xsl:attribute-set name="preface.titlepage.verso.style"/>
46
47 <xsl:attribute-set name="chapter.titlepage.recto.style"/>
48 <xsl:attribute-set name="chapter.titlepage.verso.style"/>
49
50 <xsl:attribute-set name="appendix.titlepage.recto.style"/>
51 <xsl:attribute-set name="appendix.titlepage.verso.style"/>
52
53 <xsl:attribute-set name="bibliography.titlepage.recto.style"/>
54 <xsl:attribute-set name="bibliography.titlepage.verso.style"/>
55
56 <xsl:attribute-set name="glossary.titlepage.recto.style"/>
57 <xsl:attribute-set name="glossary.titlepage.verso.style"/>
58
59 <xsl:attribute-set name="index.titlepage.recto.style"/>
60 <xsl:attribute-set name="index.titlepage.verso.style"/>
61
62 <xsl:attribute-set name="setindex.titlepage.recto.style"/>
63 <xsl:attribute-set name="setindex.titlepage.verso.style"/>
64
65 <xsl:attribute-set name="section.titlepage.recto.style"/>
66 <xsl:attribute-set name="section.titlepage.verso.style"/>
67
68 <xsl:attribute-set name="sect1.titlepage.recto.style"
69                    use-attribute-sets="section.titlepage.recto.style"/>
70 <xsl:attribute-set name="sect1.titlepage.verso.style"
71                    use-attribute-sets="section.titlepage.verso.style"/>
72
73 <xsl:attribute-set name="sect2.titlepage.recto.style"
74                    use-attribute-sets="section.titlepage.recto.style"/>
75 <xsl:attribute-set name="sect2.titlepage.verso.style"
76                    use-attribute-sets="section.titlepage.verso.style"/>
77
78 <xsl:attribute-set name="sect3.titlepage.recto.style"
79                    use-attribute-sets="section.titlepage.recto.style"/>
80 <xsl:attribute-set name="sect3.titlepage.verso.style"
81                    use-attribute-sets="section.titlepage.verso.style"/>
82
83 <xsl:attribute-set name="sect4.titlepage.recto.style"
84                    use-attribute-sets="section.titlepage.recto.style"/>
85 <xsl:attribute-set name="sect4.titlepage.verso.style"
86                    use-attribute-sets="section.titlepage.verso.style"/>
87
88 <xsl:attribute-set name="sect5.titlepage.recto.style"
89                    use-attribute-sets="section.titlepage.recto.style"/>
90 <xsl:attribute-set name="sect5.titlepage.verso.style"
91                    use-attribute-sets="section.titlepage.verso.style"/>
92
93 <xsl:attribute-set name="simplesect.titlepage.recto.style"
94                    use-attribute-sets="section.titlepage.recto.style"/>
95 <xsl:attribute-set name="simplesect.titlepage.verso.style"
96                    use-attribute-sets="section.titlepage.verso.style"/>
97
98 <xsl:attribute-set name="table.of.contents.titlepage.recto.style"/>
99 <xsl:attribute-set name="table.of.contents.titlepage.verso.style"/>
100
101 <xsl:attribute-set name="list.of.tables.titlepage.recto.style"/>
102 <xsl:attribute-set name="list.of.tables.contents.titlepage.verso.style"/>
103
104 <xsl:attribute-set name="list.of.figures.titlepage.recto.style"/>
105 <xsl:attribute-set name="list.of.figures.contents.titlepage.verso.style"/>
106
107 <xsl:attribute-set name="list.of.equations.titlepage.recto.style"/>
108 <xsl:attribute-set name="list.of.equations.contents.titlepage.verso.style"/>
109
110 <xsl:attribute-set name="list.of.examples.titlepage.recto.style"/>
111 <xsl:attribute-set name="list.of.examples.contents.titlepage.verso.style"/>
112
113 <xsl:attribute-set name="list.of.unknowns.titlepage.recto.style"/>
114 <xsl:attribute-set name="list.of.unknowns.contents.titlepage.verso.style"/>
115
116 <!-- ==================================================================== -->
117
118 <xsl:template match="*" mode="titlepage.mode">
119   <!-- if an element isn't found in this mode, try the default mode -->
120   <xsl:apply-templates select="."/>
121 </xsl:template>
122
123 <xsl:template match="abbrev" mode="titlepage.mode">
124   <span>
125     <xsl:apply-templates select="." mode="common.html.attributes"/>
126     <xsl:apply-templates mode="titlepage.mode"/>
127     <br/>
128   </span>
129 </xsl:template>
130
131 <xsl:template match="abstract" mode="titlepage.mode">
132   <div>
133     <xsl:apply-templates select="." mode="common.html.attributes"/>
134     <xsl:call-template name="anchor"/>
135     <xsl:if test="$abstract.notitle.enabled = 0">
136       <xsl:call-template name="formal.object.heading">
137         <xsl:with-param name="title">
138           <xsl:apply-templates select="." mode="title.markup"/>
139         </xsl:with-param>
140       </xsl:call-template>
141     </xsl:if>
142     <xsl:apply-templates mode="titlepage.mode"/>
143     <xsl:call-template name="process.footnotes"/>
144   </div>
145 </xsl:template>
146
147 <xsl:template match="abstract/title" mode="titlepage.mode">
148 </xsl:template>
149
150 <xsl:template match="address" mode="titlepage.mode">
151   <xsl:param name="suppress-numbers" select="'0'"/>
152
153   <xsl:variable name="rtf">
154     <xsl:apply-templates mode="titlepage.mode"/>
155   </xsl:variable>
156
157   <xsl:choose>
158     <xsl:when test="$suppress-numbers = '0'
159                     and @linenumbering = 'numbered'
160                     and $use.extensions != '0'
161                     and $linenumbering.extension != '0'">
162       <div>
163         <xsl:apply-templates select="." mode="common.html.attributes"/>
164         <xsl:call-template name="paragraph">
165           <xsl:with-param name="content">
166             <xsl:call-template name="number.rtf.lines">
167               <xsl:with-param name="rtf" select="$rtf"/>
168             </xsl:call-template>
169           </xsl:with-param>
170         </xsl:call-template>
171       </div>
172     </xsl:when>
173
174     <xsl:otherwise>
175       <div>
176         <xsl:apply-templates select="." mode="common.html.attributes"/>
177         <xsl:call-template name="paragraph">
178           <xsl:with-param name="content">
179             <xsl:call-template name="make-verbatim">
180               <xsl:with-param name="rtf" select="$rtf"/>
181             </xsl:call-template>
182           </xsl:with-param>
183         </xsl:call-template>
184       </div>
185     </xsl:otherwise>
186   </xsl:choose>
187 </xsl:template>
188
189 <xsl:template match="affiliation" mode="titlepage.mode">
190   <div>
191     <xsl:apply-templates select="." mode="common.html.attributes"/>
192     <xsl:apply-templates mode="titlepage.mode"/>
193   </div>
194 </xsl:template>
195
196 <xsl:template match="artpagenums" mode="titlepage.mode">
197   <span>
198     <xsl:apply-templates select="." mode="common.html.attributes"/>
199     <xsl:apply-templates mode="titlepage.mode"/>
200     <br/>
201   </span>
202 </xsl:template>
203
204 <xsl:template match="author|editor" mode="titlepage.mode">
205   <xsl:call-template name="credits.div"/>
206 </xsl:template>
207
208 <xsl:template name="credits.div">
209   <div>
210     <xsl:apply-templates select="." mode="common.html.attributes"/>
211     <xsl:if test="self::editor[position()=1] and not($editedby.enabled = 0)">
212       <h4 class="editedby"><xsl:call-template name="gentext.edited.by"/></h4>
213     </xsl:if>
214     <h3>
215       <xsl:apply-templates select="." mode="common.html.attributes"/>
216       <xsl:choose>
217         <xsl:when test="orgname">
218           <xsl:apply-templates/>
219         </xsl:when>
220         <xsl:otherwise>
221           <xsl:call-template name="person.name"/>
222         </xsl:otherwise>
223       </xsl:choose>
224     </h3>
225     <xsl:if test="not($contrib.inline.enabled = 0)">
226       <xsl:apply-templates mode="titlepage.mode" select="contrib"/>
227     </xsl:if>
228     <xsl:apply-templates mode="titlepage.mode" select="affiliation"/>
229     <xsl:apply-templates mode="titlepage.mode" select="email"/>
230     <xsl:if test="not($blurb.on.titlepage.enabled = 0)">
231       <xsl:choose>
232         <xsl:when test="$contrib.inline.enabled = 0">
233           <xsl:apply-templates mode="titlepage.mode"
234                                select="contrib|authorblurb|personblurb"/>
235         </xsl:when>
236         <xsl:otherwise>
237           <xsl:apply-templates mode="titlepage.mode"
238                                select="authorblurb|personblurb"/>
239         </xsl:otherwise>
240       </xsl:choose>
241     </xsl:if>
242   </div>
243 </xsl:template>
244
245 <xsl:template match="authorblurb|personblurb" mode="titlepage.mode">
246   <div>
247     <xsl:apply-templates select="." mode="common.html.attributes"/>
248     <xsl:apply-templates mode="titlepage.mode"/>
249   </div>
250 </xsl:template>
251
252 <xsl:template match="authorgroup" mode="titlepage.mode">
253   <div>
254     <xsl:apply-templates select="." mode="common.html.attributes"/>
255     <xsl:if test="parent::refentryinfo">
256       <h2>Authors</h2>
257     </xsl:if>
258       
259     <xsl:call-template name="anchor"/>
260     <xsl:apply-templates mode="titlepage.mode"/>
261   </div>
262 </xsl:template>
263
264 <xsl:template match="authorinitials" mode="titlepage.mode">
265   <span>
266     <xsl:apply-templates select="." mode="common.html.attributes"/>
267     <xsl:apply-templates mode="titlepage.mode"/>
268     <br/>
269   </span>
270 </xsl:template>
271
272 <xsl:template match="bibliomisc" mode="titlepage.mode">
273   <xsl:apply-templates mode="titlepage.mode"/>
274 </xsl:template>
275
276 <xsl:template match="bibliomset" mode="titlepage.mode">
277   <xsl:apply-templates mode="titlepage.mode"/>
278 </xsl:template>
279
280 <xsl:template match="collab" mode="titlepage.mode">
281   <span>
282     <xsl:apply-templates select="." mode="common.html.attributes"/>
283     <xsl:apply-templates mode="titlepage.mode"/>
284     <br/>
285   </span>
286 </xsl:template>
287
288 <xsl:template match="collabname" mode="titlepage.mode">
289   <span>
290     <xsl:apply-templates select="." mode="common.html.attributes"/>
291     <xsl:apply-templates mode="titlepage.mode"/>
292   </span>
293 </xsl:template>
294
295 <xsl:template match="confgroup" mode="titlepage.mode">
296   <div>
297     <xsl:apply-templates select="." mode="common.html.attributes"/>
298     <xsl:apply-templates mode="titlepage.mode"/>
299   </div>
300 </xsl:template>
301
302 <xsl:template match="confdates" mode="titlepage.mode">
303   <span>
304     <xsl:apply-templates select="." mode="common.html.attributes"/>
305     <xsl:apply-templates mode="titlepage.mode"/>
306     <br/>
307   </span>
308 </xsl:template>
309
310 <xsl:template match="confsponsor" mode="titlepage.mode">
311   <span>
312     <xsl:apply-templates select="." mode="common.html.attributes"/>
313     <xsl:apply-templates mode="titlepage.mode"/>
314     <br/>
315   </span>
316 </xsl:template>
317
318 <xsl:template match="conftitle" mode="titlepage.mode">
319   <span>
320     <xsl:apply-templates select="." mode="common.html.attributes"/>
321     <xsl:apply-templates mode="titlepage.mode"/>
322     <br/>
323   </span>
324 </xsl:template>
325
326 <xsl:template match="confnum" mode="titlepage.mode">
327   <!-- suppress -->
328 </xsl:template>
329
330 <xsl:template match="contractnum" mode="titlepage.mode">
331   <span>
332     <xsl:apply-templates select="." mode="common.html.attributes"/>
333     <xsl:apply-templates mode="titlepage.mode"/>
334     <br/>
335   </span>
336 </xsl:template>
337
338 <xsl:template match="contractsponsor" mode="titlepage.mode">
339   <span>
340     <xsl:apply-templates select="." mode="common.html.attributes"/>
341     <xsl:apply-templates mode="titlepage.mode"/>
342     <br/>
343   </span>
344 </xsl:template>
345
346 <xsl:template match="contrib" mode="titlepage.mode">
347   <xsl:choose>
348     <xsl:when test="not($contrib.inline.enabled = 0)">
349       <span>
350         <xsl:apply-templates select="." mode="common.html.attributes"/>
351         <xsl:apply-templates mode="titlepage.mode"/>
352       </span><xsl:text>&#160;</xsl:text>
353     </xsl:when>
354     <xsl:otherwise>
355       <div>
356         <xsl:apply-templates select="." mode="common.html.attributes"/>
357         <p><xsl:apply-templates mode="titlepage.mode"/></p>
358       </div>
359     </xsl:otherwise>
360   </xsl:choose>
361 </xsl:template>
362
363 <xsl:template match="copyright" mode="titlepage.mode">
364
365   <xsl:if test="generate-id() = generate-id(//refentryinfo/copyright[1])
366       and ($stylesheet.result.type = 'html' or $stylesheet.result.type = 'xhtml')">
367     <h2>Copyright</h2>
368   </xsl:if>
369
370   <p>
371     <xsl:apply-templates select="." mode="common.html.attributes"/>
372     <xsl:call-template name="gentext">
373       <xsl:with-param name="key" select="'Copyright'"/>
374     </xsl:call-template>
375     <xsl:call-template name="gentext.space"/>
376     <xsl:call-template name="dingbat">
377       <xsl:with-param name="dingbat">copyright</xsl:with-param>
378     </xsl:call-template>
379     <xsl:call-template name="gentext.space"/>
380     <xsl:call-template name="copyright.years">
381       <xsl:with-param name="years" select="year"/>
382       <xsl:with-param name="print.ranges" select="$make.year.ranges"/>
383       <xsl:with-param name="single.year.ranges"
384                       select="$make.single.year.ranges"/>
385     </xsl:call-template>
386     <xsl:call-template name="gentext.space"/>
387     <xsl:apply-templates select="holder" mode="titlepage.mode"/>
388   </p>
389 </xsl:template>
390
391 <xsl:template match="year" mode="titlepage.mode">
392   <xsl:choose>
393     <xsl:when test="$show.revisionflag != 0 and @revisionflag">
394       <span class="{@revisionflag}">
395         <xsl:apply-templates mode="titlepage.mode"/>
396       </span>
397     </xsl:when>
398     <xsl:otherwise>
399       <xsl:apply-templates mode="titlepage.mode"/>
400     </xsl:otherwise>
401   </xsl:choose>
402 </xsl:template>
403
404 <xsl:template match="holder" mode="titlepage.mode">
405   <xsl:choose>
406     <xsl:when test="$show.revisionflag != 0 and @revisionflag">
407       <span class="{@revisionflag}">
408         <xsl:apply-templates mode="titlepage.mode"/>
409       </span>
410     </xsl:when>
411     <xsl:otherwise>
412       <xsl:apply-templates mode="titlepage.mode"/>
413     </xsl:otherwise>
414   </xsl:choose>
415   <xsl:if test="position() &lt; last()">
416     <xsl:text>, </xsl:text>
417   </xsl:if>
418 </xsl:template>
419
420 <xsl:template match="corpauthor" mode="titlepage.mode">
421   <h3>
422     <xsl:apply-templates select="." mode="common.html.attributes"/>
423     <xsl:apply-templates mode="titlepage.mode"/>
424   </h3>
425 </xsl:template>
426
427 <xsl:template match="corpcredit" mode="titlepage.mode">
428   <span>
429     <xsl:apply-templates select="." mode="common.html.attributes"/>
430     <xsl:apply-templates mode="titlepage.mode"/>
431     <br/>
432   </span>
433 </xsl:template>
434
435 <xsl:template match="corpname" mode="titlepage.mode">
436   <span>
437     <xsl:apply-templates select="." mode="common.html.attributes"/>
438     <xsl:apply-templates mode="titlepage.mode"/>
439     <br/>
440   </span>
441 </xsl:template>
442
443 <xsl:template match="date" mode="titlepage.mode">
444   <span>
445     <xsl:apply-templates select="." mode="common.html.attributes"/>
446     <xsl:apply-templates mode="titlepage.mode"/>
447     <br/>
448   </span>
449 </xsl:template>
450
451 <xsl:template match="edition" mode="titlepage.mode">
452   <p>
453     <xsl:apply-templates select="." mode="common.html.attributes"/>
454     <xsl:apply-templates mode="titlepage.mode"/>
455     <xsl:call-template name="gentext.space"/>
456     <xsl:call-template name="gentext">
457       <xsl:with-param name="key" select="'Edition'"/>
458     </xsl:call-template>
459   </p>
460 </xsl:template>
461
462 <xsl:template match="email" mode="titlepage.mode">
463   <!-- use the normal e-mail handling code -->
464   <xsl:apply-templates select="."/>
465 </xsl:template>
466
467 <xsl:template match="firstname" mode="titlepage.mode">
468   <span>
469     <xsl:apply-templates select="." mode="common.html.attributes"/>
470     <xsl:apply-templates mode="titlepage.mode"/>
471     <br/>
472   </span>
473 </xsl:template>
474
475 <xsl:template match="graphic" mode="titlepage.mode">
476   <!-- use the normal graphic handling code -->
477   <xsl:apply-templates select="."/>
478 </xsl:template>
479
480 <xsl:template match="honorific" mode="titlepage.mode">
481   <span>
482     <xsl:apply-templates select="." mode="common.html.attributes"/>
483     <xsl:apply-templates mode="titlepage.mode"/>
484     <br/>
485   </span>
486 </xsl:template>
487
488 <xsl:template match="isbn" mode="titlepage.mode">
489   <span>
490     <xsl:apply-templates select="." mode="common.html.attributes"/>
491     <xsl:apply-templates mode="titlepage.mode"/>
492     <br/>
493   </span>
494 </xsl:template>
495
496 <xsl:template match="issn" mode="titlepage.mode">
497   <span>
498     <xsl:apply-templates select="." mode="common.html.attributes"/>
499     <xsl:apply-templates mode="titlepage.mode"/>
500     <br/>
501   </span>
502 </xsl:template>
503
504 <xsl:template match="biblioid" mode="titlepage.mode">
505   <span>
506     <xsl:apply-templates select="." mode="common.html.attributes"/>
507     <xsl:apply-templates mode="titlepage.mode"/>
508     <br/>
509   </span>
510 </xsl:template>
511
512 <xsl:template match="itermset" mode="titlepage.mode">
513 </xsl:template>
514
515 <xsl:template match="invpartnumber" mode="titlepage.mode">
516   <span>
517     <xsl:apply-templates select="." mode="common.html.attributes"/>
518     <xsl:apply-templates mode="titlepage.mode"/>
519     <br/>
520   </span>
521 </xsl:template>
522
523 <xsl:template match="issuenum" mode="titlepage.mode">
524   <span>
525     <xsl:apply-templates select="." mode="common.html.attributes"/>
526     <xsl:apply-templates mode="titlepage.mode"/>
527     <br/>
528   </span>
529 </xsl:template>
530
531 <xsl:template match="jobtitle" mode="titlepage.mode">
532   <span>
533     <xsl:apply-templates select="." mode="common.html.attributes"/>
534     <xsl:apply-templates mode="titlepage.mode"/>
535     <br/>
536   </span>
537 </xsl:template>
538
539 <xsl:template match="keywordset" mode="titlepage.mode">
540 </xsl:template>
541
542 <xsl:template match="legalnotice" mode="titlepage.mode">
543   <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable>
544
545   <xsl:choose>
546     <xsl:when test="$generate.legalnotice.link != 0">
547       
548       <!-- Compute name of legalnotice file -->
549       <xsl:variable name="file">
550         <xsl:call-template name="ln.or.rh.filename"/>
551       </xsl:variable>
552
553       <xsl:variable name="filename">
554         <xsl:call-template name="make-relative-filename">
555           <xsl:with-param name="base.dir" select="$base.dir"/>
556           <xsl:with-param name="base.name" select="$file"/>
557         </xsl:call-template>
558       </xsl:variable>
559
560       <xsl:variable name="title">
561         <xsl:apply-templates select="." mode="title.markup"/>
562       </xsl:variable>
563
564       <a href="{$file}">
565         <xsl:copy-of select="$title"/>
566       </a>
567
568       <xsl:call-template name="write.chunk">
569         <xsl:with-param name="filename" select="$filename"/>
570         <xsl:with-param name="quiet" select="$chunk.quietly"/>
571         <xsl:with-param name="content">
572         <xsl:call-template name="user.preroot"/>
573           <html>
574             <head>
575               <xsl:call-template name="system.head.content"/>
576               <xsl:call-template name="head.content"/>
577               <xsl:call-template name="user.head.content"/>
578             </head>
579             <body>
580               <xsl:call-template name="body.attributes"/>
581               <div>
582                 <xsl:apply-templates select="." mode="common.html.attributes"/>
583                 <xsl:apply-templates mode="titlepage.mode"/>
584               </div>
585             </body>
586           </html>
587           <xsl:value-of select="$chunk.append"/>
588         </xsl:with-param>
589       </xsl:call-template>
590     </xsl:when>
591     <xsl:otherwise>
592       <div>
593         <xsl:apply-templates select="." mode="common.html.attributes"/>
594         <a name="{$id}"/>
595         <xsl:apply-templates mode="titlepage.mode"/>
596       </div>
597     </xsl:otherwise>
598   </xsl:choose>
599 </xsl:template>
600
601 <xsl:template match="legalnotice/title" mode="titlepage.mode">
602   <p class="legalnotice-title"><b><xsl:apply-templates/></b></p>
603 </xsl:template>
604
605 <xsl:template match="lineage" mode="titlepage.mode">
606   <span>
607     <xsl:apply-templates select="." mode="common.html.attributes"/>
608     <xsl:apply-templates mode="titlepage.mode"/>
609     <br/>
610   </span>
611 </xsl:template>
612
613 <xsl:template match="modespec" mode="titlepage.mode">
614 </xsl:template>
615
616 <xsl:template match="orgdiv" mode="titlepage.mode">
617   <xsl:if test="preceding-sibling::*[1][self::orgname]">
618     <xsl:text> </xsl:text>
619   </xsl:if>
620   <span>
621     <xsl:apply-templates select="." mode="common.html.attributes"/>
622     <xsl:apply-templates mode="titlepage.mode"/>
623     <br/>
624   </span>
625 </xsl:template>
626
627 <xsl:template match="orgname" mode="titlepage.mode">
628   <span>
629     <xsl:apply-templates select="." mode="common.html.attributes"/>
630     <xsl:apply-templates mode="titlepage.mode"/>
631     <br/>
632   </span>
633 </xsl:template>
634
635 <xsl:template match="othercredit" mode="titlepage.mode">
636 <xsl:choose>
637   <xsl:when test="not($othercredit.like.author.enabled = 0)">
638   <xsl:variable name="contrib" select="string(contrib)"/>
639   <xsl:choose>
640     <xsl:when test="contrib">
641       <xsl:if test="not(preceding-sibling::othercredit[string(contrib)=$contrib])">
642         <xsl:call-template name="paragraph">
643           <xsl:with-param name="class" select="local-name(.)"/>
644           <xsl:with-param name="content">
645             <xsl:apply-templates mode="titlepage.mode" select="contrib"/>
646             <xsl:text>: </xsl:text>
647             <xsl:call-template name="person.name"/>
648             <xsl:apply-templates mode="titlepage.mode" select="affiliation"/>
649             <xsl:apply-templates select="following-sibling::othercredit[string(contrib)=$contrib]" mode="titlepage.othercredits"/>
650           </xsl:with-param>
651         </xsl:call-template>
652       </xsl:if>
653     </xsl:when>
654     <xsl:otherwise>
655       <xsl:call-template name="paragraph">
656         <xsl:with-param name="class" select="local-name(.)"/>
657         <xsl:with-param name="content">
658           <xsl:call-template name="person.name"/>
659         </xsl:with-param>
660       </xsl:call-template>
661       <xsl:apply-templates mode="titlepage.mode" select="affiliation"/>
662     </xsl:otherwise>
663   </xsl:choose>
664   </xsl:when>
665   <xsl:otherwise>
666     <xsl:call-template name="credits.div"/>
667   </xsl:otherwise>
668 </xsl:choose>
669 </xsl:template>
670
671 <xsl:template match="othercredit" mode="titlepage.othercredits">
672   <xsl:text>, </xsl:text>
673   <xsl:call-template name="person.name"/>
674 </xsl:template>
675
676 <xsl:template match="othername" mode="titlepage.mode">
677   <span>
678     <xsl:apply-templates select="." mode="common.html.attributes"/>
679     <xsl:apply-templates mode="titlepage.mode"/>
680     <br/>
681   </span>
682 </xsl:template>
683
684 <xsl:template match="pagenums" mode="titlepage.mode">
685   <span>
686     <xsl:apply-templates select="." mode="common.html.attributes"/>
687     <xsl:apply-templates mode="titlepage.mode"/>
688     <br/>
689   </span>
690 </xsl:template>
691
692 <xsl:template match="printhistory" mode="titlepage.mode">
693   <div>
694     <xsl:apply-templates select="." mode="common.html.attributes"/>
695     <xsl:apply-templates mode="titlepage.mode"/>
696   </div>
697 </xsl:template>
698
699 <xsl:template match="productname" mode="titlepage.mode">
700   <span>
701     <xsl:apply-templates select="." mode="common.html.attributes"/>
702     <xsl:apply-templates mode="titlepage.mode"/>
703     <br/>
704   </span>
705 </xsl:template>
706
707 <xsl:template match="productnumber" mode="titlepage.mode">
708   <span>
709     <xsl:apply-templates select="." mode="common.html.attributes"/>
710     <xsl:apply-templates mode="titlepage.mode"/>
711     <br/>
712   </span>
713 </xsl:template>
714
715 <xsl:template match="pubdate" mode="titlepage.mode">
716   <xsl:call-template name="paragraph">
717     <xsl:with-param name="class" select="local-name(.)"/>
718     <xsl:with-param name="content">
719       <xsl:apply-templates mode="titlepage.mode"/>
720     </xsl:with-param>
721   </xsl:call-template>
722 </xsl:template>
723
724 <xsl:template match="publisher" mode="titlepage.mode">
725   <xsl:call-template name="paragraph">
726     <xsl:with-param name="class" select="local-name(.)"/>
727     <xsl:with-param name="content">
728       <xsl:apply-templates mode="titlepage.mode"/>
729     </xsl:with-param>
730   </xsl:call-template>
731 </xsl:template>
732
733 <xsl:template match="publishername" mode="titlepage.mode">
734   <span>
735     <xsl:apply-templates select="." mode="common.html.attributes"/>
736     <xsl:apply-templates mode="titlepage.mode"/>
737     <br/>
738   </span>
739 </xsl:template>
740
741 <xsl:template match="pubsnumber" mode="titlepage.mode">
742   <span>
743     <xsl:apply-templates select="." mode="common.html.attributes"/>
744     <xsl:apply-templates mode="titlepage.mode"/>
745     <br/>
746   </span>
747 </xsl:template>
748
749 <xsl:template match="releaseinfo" mode="titlepage.mode">
750   <xsl:call-template name="paragraph">
751     <xsl:with-param name="class" select="local-name(.)"/>
752     <xsl:with-param name="content">
753       <xsl:apply-templates mode="titlepage.mode"/>
754     </xsl:with-param>
755   </xsl:call-template>
756 </xsl:template>
757
758 <xsl:template match="revhistory" mode="titlepage.mode">
759   <xsl:variable name="numcols">
760     <xsl:choose>
761       <xsl:when test=".//authorinitials|.//author">3</xsl:when>
762       <xsl:otherwise>2</xsl:otherwise>
763     </xsl:choose>
764   </xsl:variable>
765
766   <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable>
767
768   <xsl:variable name="title">
769     <xsl:call-template name="gentext">
770       <xsl:with-param name="key">RevHistory</xsl:with-param>
771     </xsl:call-template>
772   </xsl:variable>
773
774   <xsl:variable name="contents">
775     <div>
776       <xsl:apply-templates select="." mode="common.html.attributes"/>
777       <table border="1" width="100%" summary="Revision history">
778         <tr>
779           <th align="{$direction.align.start}" valign="top" colspan="{$numcols}">
780             <b>
781               <xsl:call-template name="gentext">
782                 <xsl:with-param name="key" select="'RevHistory'"/>
783               </xsl:call-template>
784             </b>
785           </th>
786         </tr>
787         <xsl:apply-templates mode="titlepage.mode">
788           <xsl:with-param name="numcols" select="$numcols"/>
789         </xsl:apply-templates>
790       </table>
791     </div>
792   </xsl:variable>
793   
794   <xsl:choose>
795     <xsl:when test="$generate.revhistory.link != 0">
796       
797       <!-- Compute name of revhistory file -->
798       <xsl:variable name="file">
799         <xsl:call-template name="ln.or.rh.filename">
800           <xsl:with-param name="is.ln" select="false()"/>
801         </xsl:call-template>
802       </xsl:variable>
803
804       <xsl:variable name="filename">
805         <xsl:call-template name="make-relative-filename">
806           <xsl:with-param name="base.dir" select="$base.dir"/>
807           <xsl:with-param name="base.name" select="$file"/>
808         </xsl:call-template>
809       </xsl:variable>
810
811       <a href="{$file}">
812         <xsl:copy-of select="$title"/>
813       </a>
814
815       <xsl:call-template name="write.chunk">
816         <xsl:with-param name="filename" select="$filename"/>
817         <xsl:with-param name="quiet" select="$chunk.quietly"/>
818         <xsl:with-param name="content">
819         <xsl:call-template name="user.preroot"/>
820           <html>
821             <head>
822               <xsl:call-template name="system.head.content"/>
823               <xsl:call-template name="head.content">
824                 <xsl:with-param name="title">
825                     <xsl:value-of select="$title"/>
826                     <xsl:if test="../../title">
827                         <xsl:value-of select="concat(' (', ../../title, ')')"/>
828                     </xsl:if>
829                 </xsl:with-param>
830               </xsl:call-template>
831               <xsl:call-template name="user.head.content"/>
832             </head>
833             <body>
834               <xsl:call-template name="body.attributes"/>
835               <xsl:copy-of select="$contents"/>
836             </body>
837           </html>
838           <xsl:text>&#x0a;</xsl:text>
839         </xsl:with-param>
840       </xsl:call-template>
841     </xsl:when>
842     <xsl:otherwise>
843       <xsl:copy-of select="$contents"/>
844     </xsl:otherwise>
845   </xsl:choose>
846 </xsl:template>
847
848 <xsl:template match="revhistory/revision" mode="titlepage.mode">
849   <xsl:param name="numcols" select="'3'"/>
850   <xsl:variable name="revnumber" select="revnumber"/>
851   <xsl:variable name="revdate"   select="date"/>
852   <xsl:variable name="revauthor" select="authorinitials|author"/>
853   <xsl:variable name="revremark" select="revremark|revdescription"/>
854   <tr>
855     <td align="{$direction.align.start}">
856       <xsl:if test="$revnumber">
857         <xsl:call-template name="gentext">
858           <xsl:with-param name="key" select="'Revision'"/>
859         </xsl:call-template>
860         <xsl:call-template name="gentext.space"/>
861         <xsl:apply-templates select="$revnumber[1]" mode="titlepage.mode"/>
862       </xsl:if>
863     </td>
864     <td align="{$direction.align.start}">
865       <xsl:apply-templates select="$revdate[1]" mode="titlepage.mode"/>
866     </td>
867     <xsl:choose>
868       <xsl:when test="$revauthor">
869         <td align="{$direction.align.start}">
870           <xsl:for-each select="$revauthor">
871             <xsl:apply-templates select="." mode="titlepage.mode"/>
872             <xsl:if test="position() != last()">
873               <xsl:text>, </xsl:text>
874             </xsl:if>
875           </xsl:for-each>
876         </td>
877       </xsl:when>
878       <xsl:when test="$numcols &gt; 2">
879         <td>&#160;</td>
880       </xsl:when>
881       <xsl:otherwise></xsl:otherwise>
882     </xsl:choose>
883   </tr>
884   <xsl:if test="$revremark">
885     <tr>
886       <td align="{$direction.align.start}" colspan="{$numcols}">
887         <xsl:apply-templates select="$revremark[1]" mode="titlepage.mode"/>
888       </td>
889     </tr>
890   </xsl:if>
891 </xsl:template>
892
893 <xsl:template match="revision/revnumber" mode="titlepage.mode">
894   <xsl:apply-templates mode="titlepage.mode"/>
895 </xsl:template>
896
897 <xsl:template match="revision/date" mode="titlepage.mode">
898   <xsl:apply-templates mode="titlepage.mode"/>
899 </xsl:template>
900
901 <xsl:template match="revision/authorinitials" mode="titlepage.mode">
902   <xsl:apply-templates mode="titlepage.mode"/>
903 </xsl:template>
904
905 <xsl:template match="revision/author" mode="titlepage.mode">
906   <xsl:apply-templates mode="titlepage.mode"/>
907 </xsl:template>
908
909 <xsl:template match="revision/revremark" mode="titlepage.mode">
910   <xsl:apply-templates mode="titlepage.mode"/>
911 </xsl:template>
912
913 <xsl:template match="revision/revdescription" mode="titlepage.mode">
914   <xsl:apply-templates mode="titlepage.mode"/>
915 </xsl:template>
916
917 <xsl:template match="seriesvolnums" mode="titlepage.mode">
918   <span>
919     <xsl:apply-templates select="." mode="common.html.attributes"/>
920     <xsl:apply-templates mode="titlepage.mode"/>
921     <br/>
922   </span>
923 </xsl:template>
924
925 <xsl:template match="shortaffil" mode="titlepage.mode">
926   <span>
927     <xsl:apply-templates select="." mode="common.html.attributes"/>
928     <xsl:apply-templates mode="titlepage.mode"/>
929     <br/>
930   </span>
931 </xsl:template>
932
933 <xsl:template match="subjectset" mode="titlepage.mode">
934 </xsl:template>
935
936 <xsl:template match="subtitle" mode="titlepage.mode">
937   <h2>
938     <xsl:apply-templates select="." mode="common.html.attributes"/>
939     <xsl:apply-templates mode="titlepage.mode"/>
940   </h2>
941 </xsl:template>
942
943 <xsl:template match="surname" mode="titlepage.mode">
944   <span>
945     <xsl:apply-templates select="." mode="common.html.attributes"/>
946     <xsl:apply-templates mode="titlepage.mode"/>
947     <br/>
948   </span>
949 </xsl:template>
950
951 <xsl:template match="title" mode="titlepage.mode">
952   <xsl:variable name="id">
953     <xsl:choose>
954       <!-- if title is in an *info wrapper, get the grandparent -->
955       <xsl:when test="contains(local-name(..), 'info')">
956         <xsl:call-template name="object.id">
957           <xsl:with-param name="object" select="../.."/>
958         </xsl:call-template>
959       </xsl:when>
960       <xsl:otherwise>
961         <xsl:call-template name="object.id">
962           <xsl:with-param name="object" select=".."/>
963         </xsl:call-template>
964       </xsl:otherwise>
965     </xsl:choose>
966   </xsl:variable>
967
968   <h1>
969     <xsl:apply-templates select="." mode="common.html.attributes"/>
970     <xsl:if test="$generate.id.attributes = 0">
971       <a name="{$id}"/>
972     </xsl:if>
973     <xsl:choose>
974       <xsl:when test="$show.revisionflag != 0 and @revisionflag">
975         <span class="{@revisionflag}">
976           <xsl:apply-templates mode="titlepage.mode"/>
977         </span>
978       </xsl:when>
979       <xsl:otherwise>
980         <xsl:apply-templates mode="titlepage.mode"/>
981       </xsl:otherwise>
982     </xsl:choose>
983   </h1>
984 </xsl:template>
985
986 <xsl:template match="titleabbrev" mode="titlepage.mode">
987   <!-- nop; title abbreviations don't belong on the title page! -->
988 </xsl:template>
989
990 <xsl:template match="volumenum" mode="titlepage.mode">
991   <span>
992     <xsl:apply-templates select="." mode="common.html.attributes"/>
993     <xsl:apply-templates mode="titlepage.mode"/>
994     <br/>
995   </span>
996 </xsl:template>
997
998 <!-- This template computes the filename for legalnotice and revhistory chunks -->
999 <xsl:template name="ln.or.rh.filename">
1000   <xsl:param name="node" select="."/>
1001   <xsl:param name="is.ln" select="true()"/>
1002
1003   <xsl:variable name="dbhtml-filename">
1004     <xsl:call-template name="pi.dbhtml_filename">
1005       <xsl:with-param name="node" select="$node"/>
1006     </xsl:call-template>
1007   </xsl:variable>
1008  
1009   <xsl:choose>
1010     <!--  1. If there is a dbhtml_filename PI, use that -->
1011     <xsl:when test="$dbhtml-filename != ''">
1012       <xsl:value-of select="$dbhtml-filename"/>
1013     </xsl:when>
1014     <xsl:when test="($node/@id or $node/@xml:id) and not($use.id.as.filename = 0)">
1015       <!-- * 2. If this legalnotice/revhistory has an ID, then go ahead and use -->
1016       <!-- * just the value of that ID as the basename for the file -->
1017       <!-- * (that is, without prepending an "ln-" or "rh-" to it) -->
1018       <xsl:value-of select="($node/@id|$node/@xml:id)[1]"/>
1019       <xsl:value-of select="$html.ext"/>
1020     </xsl:when>
1021     <xsl:when test="not ($node/@id or $node/@xml:id) or $use.id.as.filename = 0">
1022       <!-- * 3. Otherwise, if this legalnotice/revhistory does not have an ID, or -->
1023       <!-- * if $use.id.as.filename = 0 -->
1024       <!-- * then we generate an ID... -->
1025       <xsl:variable name="id">
1026         <xsl:value-of select="generate-id($node)"/>
1027       </xsl:variable>
1028       <!-- * ...and then we take that generated ID, prepend a -->
1029       <!-- * prefix to it, and use that as the basename for the file -->
1030       <xsl:choose>
1031         <xsl:when test="$is.ln">
1032           <xsl:value-of select="concat('ln-',$id,$html.ext)"/>
1033         </xsl:when>
1034         <xsl:otherwise>
1035           <xsl:value-of select="concat('rh-',$id,$html.ext)"/>
1036         </xsl:otherwise>
1037       </xsl:choose>
1038     </xsl:when>
1039   </xsl:choose>
1040 </xsl:template>
1041     
1042 <!-- ==================================================================== -->
1043
1044 </xsl:stylesheet>