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

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

Added the new lfs-xsl stylesheets.

  • Property mode set to 100644
File size: 245.7 KB
Line 
1<?xml version="1.0"?>
2
3<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:exsl="http://exslt.org/common" version="1.0" exclude-result-prefixes="exsl">
4
5<!-- This stylesheet was created by template/titlepage.xsl-->
6
7<xsl:template name="article.titlepage.recto">
8  <xsl:choose>
9    <xsl:when test="articleinfo/title">
10      <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/title"/>
11    </xsl:when>
12    <xsl:when test="artheader/title">
13      <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/title"/>
14    </xsl:when>
15    <xsl:when test="info/title">
16      <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/title"/>
17    </xsl:when>
18    <xsl:when test="title">
19      <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="title"/>
20    </xsl:when>
21  </xsl:choose>
22
23  <xsl:choose>
24    <xsl:when test="articleinfo/subtitle">
25      <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/subtitle"/>
26    </xsl:when>
27    <xsl:when test="artheader/subtitle">
28      <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/subtitle"/>
29    </xsl:when>
30    <xsl:when test="info/subtitle">
31      <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/subtitle"/>
32    </xsl:when>
33    <xsl:when test="subtitle">
34      <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="subtitle"/>
35    </xsl:when>
36  </xsl:choose>
37
38  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/corpauthor"/>
39  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/corpauthor"/>
40  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/corpauthor"/>
41  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/authorgroup"/>
42  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/authorgroup"/>
43  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/authorgroup"/>
44  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/author"/>
45  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/author"/>
46  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/author"/>
47  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/othercredit"/>
48  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/othercredit"/>
49  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/othercredit"/>
50  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/releaseinfo"/>
51  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/releaseinfo"/>
52  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/releaseinfo"/>
53  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/copyright"/>
54  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/copyright"/>
55  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/copyright"/>
56  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/legalnotice"/>
57  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/legalnotice"/>
58  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/legalnotice"/>
59  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/pubdate"/>
60  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/pubdate"/>
61  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/pubdate"/>
62  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/revision"/>
63  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/revision"/>
64  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/revision"/>
65  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/revhistory"/>
66  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/revhistory"/>
67  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/revhistory"/>
68  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/abstract"/>
69  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/abstract"/>
70  <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/abstract"/>
71</xsl:template>
72
73<xsl:template name="article.titlepage.verso">
74</xsl:template>
75
76<xsl:template name="article.titlepage.separator">
77</xsl:template>
78
79<xsl:template name="article.titlepage.before.recto">
80</xsl:template>
81
82<xsl:template name="article.titlepage.before.verso">
83</xsl:template>
84
85<xsl:template name="article.titlepage">
86  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="{$title.fontset}">
87    <xsl:variable name="recto.content">
88      <xsl:call-template name="article.titlepage.before.recto"/>
89      <xsl:call-template name="article.titlepage.recto"/>
90    </xsl:variable>
91    <xsl:variable name="recto.elements.count">
92      <xsl:choose>
93        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
94        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
95          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
96        <xsl:otherwise>1</xsl:otherwise>
97      </xsl:choose>
98    </xsl:variable>
99    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
100      <fo:block start-indent="0pt" text-align="center"><xsl:copy-of select="$recto.content"/></fo:block>
101    </xsl:if>
102    <xsl:variable name="verso.content">
103      <xsl:call-template name="article.titlepage.before.verso"/>
104      <xsl:call-template name="article.titlepage.verso"/>
105    </xsl:variable>
106    <xsl:variable name="verso.elements.count">
107      <xsl:choose>
108        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
109        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
110          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
111        <xsl:otherwise>1</xsl:otherwise>
112      </xsl:choose>
113    </xsl:variable>
114    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
115      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
116    </xsl:if>
117    <xsl:call-template name="article.titlepage.separator"/>
118  </fo:block>
119</xsl:template>
120
121<xsl:template match="*" mode="article.titlepage.recto.mode">
122  <!-- if an element isn't found in this mode, -->
123  <!-- try the generic titlepage.mode -->
124  <xsl:apply-templates select="." mode="titlepage.mode"/>
125</xsl:template>
126
127<xsl:template match="*" mode="article.titlepage.verso.mode">
128  <!-- if an element isn't found in this mode, -->
129  <!-- try the generic titlepage.mode -->
130  <xsl:apply-templates select="." mode="titlepage.mode"/>
131</xsl:template>
132
133<xsl:template match="title" mode="article.titlepage.recto.auto.mode">
134<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" keep-with-next.within-column="always" font-size="24.8832pt" font-weight="bold">
135<xsl:call-template name="component.title">
136<xsl:with-param name="node" select="ancestor-or-self::article[1]"/>
137</xsl:call-template>
138</fo:block>
139</xsl:template>
140
141<xsl:template match="subtitle" mode="article.titlepage.recto.auto.mode">
142<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style">
143<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
144</fo:block>
145</xsl:template>
146
147<xsl:template match="corpauthor" mode="article.titlepage.recto.auto.mode">
148<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em" font-size="14.4pt">
149<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
150</fo:block>
151</xsl:template>
152
153<xsl:template match="authorgroup" mode="article.titlepage.recto.auto.mode">
154<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em" font-size="14.4pt">
155<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
156</fo:block>
157</xsl:template>
158
159<xsl:template match="author" mode="article.titlepage.recto.auto.mode">
160<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em" font-size="14.4pt">
161<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
162</fo:block>
163</xsl:template>
164
165<xsl:template match="othercredit" mode="article.titlepage.recto.auto.mode">
166<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em">
167<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
168</fo:block>
169</xsl:template>
170
171<xsl:template match="releaseinfo" mode="article.titlepage.recto.auto.mode">
172<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em">
173<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
174</fo:block>
175</xsl:template>
176
177<xsl:template match="copyright" mode="article.titlepage.recto.auto.mode">
178<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em">
179<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
180</fo:block>
181</xsl:template>
182
183<xsl:template match="legalnotice" mode="article.titlepage.recto.auto.mode">
184<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" text-align="start" margin-left="0.5in" margin-right="0.5in" font-family="{$body.fontset}">
185<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
186</fo:block>
187</xsl:template>
188
189<xsl:template match="pubdate" mode="article.titlepage.recto.auto.mode">
190<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em">
191<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
192</fo:block>
193</xsl:template>
194
195<xsl:template match="revision" mode="article.titlepage.recto.auto.mode">
196<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em">
197<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
198</fo:block>
199</xsl:template>
200
201<xsl:template match="revhistory" mode="article.titlepage.recto.auto.mode">
202<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em">
203<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
204</fo:block>
205</xsl:template>
206
207<xsl:template match="abstract" mode="article.titlepage.recto.auto.mode">
208<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em" text-align="start" margin-left="0.5in" margin-right="0.5in" font-family="{$body.fontset}">
209<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/>
210</fo:block>
211</xsl:template>
212
213<xsl:template name="set.titlepage.recto">
214  <xsl:choose>
215    <xsl:when test="setinfo/title">
216      <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/title"/>
217    </xsl:when>
218    <xsl:when test="info/title">
219      <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/title"/>
220    </xsl:when>
221    <xsl:when test="title">
222      <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="title"/>
223    </xsl:when>
224  </xsl:choose>
225
226  <xsl:choose>
227    <xsl:when test="setinfo/subtitle">
228      <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/subtitle"/>
229    </xsl:when>
230    <xsl:when test="info/subtitle">
231      <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/subtitle"/>
232    </xsl:when>
233    <xsl:when test="subtitle">
234      <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="subtitle"/>
235    </xsl:when>
236  </xsl:choose>
237
238  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/corpauthor"/>
239  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/corpauthor"/>
240  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/authorgroup"/>
241  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/authorgroup"/>
242  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/author"/>
243  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/author"/>
244  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/othercredit"/>
245  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/othercredit"/>
246  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/releaseinfo"/>
247  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/releaseinfo"/>
248  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/copyright"/>
249  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/copyright"/>
250  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/legalnotice"/>
251  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/legalnotice"/>
252  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/pubdate"/>
253  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/pubdate"/>
254  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/revision"/>
255  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/revision"/>
256  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/revhistory"/>
257  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/revhistory"/>
258  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/abstract"/>
259  <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/abstract"/>
260</xsl:template>
261
262<xsl:template name="set.titlepage.verso">
263</xsl:template>
264
265<xsl:template name="set.titlepage.separator">
266</xsl:template>
267
268<xsl:template name="set.titlepage.before.recto">
269</xsl:template>
270
271<xsl:template name="set.titlepage.before.verso">
272</xsl:template>
273
274<xsl:template name="set.titlepage">
275  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
276    <xsl:variable name="recto.content">
277      <xsl:call-template name="set.titlepage.before.recto"/>
278      <xsl:call-template name="set.titlepage.recto"/>
279    </xsl:variable>
280    <xsl:variable name="recto.elements.count">
281      <xsl:choose>
282        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
283        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
284          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
285        <xsl:otherwise>1</xsl:otherwise>
286      </xsl:choose>
287    </xsl:variable>
288    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
289      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
290    </xsl:if>
291    <xsl:variable name="verso.content">
292      <xsl:call-template name="set.titlepage.before.verso"/>
293      <xsl:call-template name="set.titlepage.verso"/>
294    </xsl:variable>
295    <xsl:variable name="verso.elements.count">
296      <xsl:choose>
297        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
298        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
299          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
300        <xsl:otherwise>1</xsl:otherwise>
301      </xsl:choose>
302    </xsl:variable>
303    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
304      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
305    </xsl:if>
306    <xsl:call-template name="set.titlepage.separator"/>
307  </fo:block>
308</xsl:template>
309
310<xsl:template match="*" mode="set.titlepage.recto.mode">
311  <!-- if an element isn't found in this mode, -->
312  <!-- try the generic titlepage.mode -->
313  <xsl:apply-templates select="." mode="titlepage.mode"/>
314</xsl:template>
315
316<xsl:template match="*" mode="set.titlepage.verso.mode">
317  <!-- if an element isn't found in this mode, -->
318  <!-- try the generic titlepage.mode -->
319  <xsl:apply-templates select="." mode="titlepage.mode"/>
320</xsl:template>
321
322<xsl:template match="title" mode="set.titlepage.recto.auto.mode">
323<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style" text-align="center" font-size="24.8832pt" space-before="18.6624pt" font-weight="bold" font-family="{$title.fontset}">
324<xsl:call-template name="division.title">
325<xsl:with-param name="node" select="ancestor-or-self::set[1]"/>
326</xsl:call-template>
327</fo:block>
328</xsl:template>
329
330<xsl:template match="subtitle" mode="set.titlepage.recto.auto.mode">
331<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style" font-family="{$title.fontset}" text-align="center">
332<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
333</fo:block>
334</xsl:template>
335
336<xsl:template match="corpauthor" mode="set.titlepage.recto.auto.mode">
337<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style">
338<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
339</fo:block>
340</xsl:template>
341
342<xsl:template match="authorgroup" mode="set.titlepage.recto.auto.mode">
343<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style">
344<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
345</fo:block>
346</xsl:template>
347
348<xsl:template match="author" mode="set.titlepage.recto.auto.mode">
349<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style">
350<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
351</fo:block>
352</xsl:template>
353
354<xsl:template match="othercredit" mode="set.titlepage.recto.auto.mode">
355<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style">
356<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
357</fo:block>
358</xsl:template>
359
360<xsl:template match="releaseinfo" mode="set.titlepage.recto.auto.mode">
361<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style">
362<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
363</fo:block>
364</xsl:template>
365
366<xsl:template match="copyright" mode="set.titlepage.recto.auto.mode">
367<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style">
368<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
369</fo:block>
370</xsl:template>
371
372<xsl:template match="legalnotice" mode="set.titlepage.recto.auto.mode">
373<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style">
374<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
375</fo:block>
376</xsl:template>
377
378<xsl:template match="pubdate" mode="set.titlepage.recto.auto.mode">
379<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style">
380<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
381</fo:block>
382</xsl:template>
383
384<xsl:template match="revision" mode="set.titlepage.recto.auto.mode">
385<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style">
386<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
387</fo:block>
388</xsl:template>
389
390<xsl:template match="revhistory" mode="set.titlepage.recto.auto.mode">
391<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style">
392<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
393</fo:block>
394</xsl:template>
395
396<xsl:template match="abstract" mode="set.titlepage.recto.auto.mode">
397<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style">
398<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/>
399</fo:block>
400</xsl:template>
401
402<xsl:template name="book.titlepage.recto">
403  <xsl:choose>
404    <xsl:when test="bookinfo/title">
405      <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/title"/>
406    </xsl:when>
407    <xsl:when test="info/title">
408      <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/title"/>
409    </xsl:when>
410    <xsl:when test="title">
411      <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="title"/>
412    </xsl:when>
413  </xsl:choose>
414
415  <xsl:choose>
416    <xsl:when test="bookinfo/subtitle">
417      <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/subtitle"/>
418    </xsl:when>
419    <xsl:when test="info/subtitle">
420      <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/subtitle"/>
421    </xsl:when>
422    <xsl:when test="subtitle">
423      <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="subtitle"/>
424    </xsl:when>
425  </xsl:choose>
426
427  <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/corpauthor"/>
428  <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/corpauthor"/>
429  <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/authorgroup"/>
430  <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/authorgroup"/>
431  <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/author"/>
432  <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/author"/>
433</xsl:template>
434
435<xsl:template name="book.titlepage.verso">
436  <xsl:choose>
437    <xsl:when test="bookinfo/title">
438      <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/title"/>
439    </xsl:when>
440    <xsl:when test="info/title">
441      <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/title"/>
442    </xsl:when>
443    <xsl:when test="title">
444      <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="title"/>
445    </xsl:when>
446  </xsl:choose>
447
448  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/corpauthor"/>
449  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/corpauthor"/>
450  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/authorgroup"/>
451  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/authorgroup"/>
452  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/author"/>
453  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/author"/>
454  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/othercredit"/>
455  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/othercredit"/>
456  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/releaseinfo"/>
457  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/releaseinfo"/>
458  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/pubdate"/>
459  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/pubdate"/>
460  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/copyright"/>
461  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/copyright"/>
462  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/abstract"/>
463  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/abstract"/>
464  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/legalnotice"/>
465  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/legalnotice"/>
466</xsl:template>
467
468<xsl:template name="book.titlepage.separator"><fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" break-after="page"/>
469</xsl:template>
470
471<xsl:template name="book.titlepage.before.recto">
472</xsl:template>
473
474<xsl:template name="book.titlepage.before.verso"><fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" break-after="page"/>
475</xsl:template>
476
477<xsl:template name="book.titlepage">
478  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
479    <xsl:variable name="recto.content">
480      <xsl:call-template name="book.titlepage.before.recto"/>
481      <xsl:call-template name="book.titlepage.recto"/>
482    </xsl:variable>
483    <xsl:variable name="recto.elements.count">
484      <xsl:choose>
485        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
486        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
487          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
488        <xsl:otherwise>1</xsl:otherwise>
489      </xsl:choose>
490    </xsl:variable>
491    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
492      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
493    </xsl:if>
494    <xsl:variable name="verso.content">
495      <xsl:call-template name="book.titlepage.before.verso"/>
496      <xsl:call-template name="book.titlepage.verso"/>
497    </xsl:variable>
498    <xsl:variable name="verso.elements.count">
499      <xsl:choose>
500        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
501        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
502          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
503        <xsl:otherwise>1</xsl:otherwise>
504      </xsl:choose>
505    </xsl:variable>
506    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
507      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
508    </xsl:if>
509    <xsl:call-template name="book.titlepage.separator"/>
510  </fo:block>
511</xsl:template>
512
513<xsl:template match="*" mode="book.titlepage.recto.mode">
514  <!-- if an element isn't found in this mode, -->
515  <!-- try the generic titlepage.mode -->
516  <xsl:apply-templates select="." mode="titlepage.mode"/>
517</xsl:template>
518
519<xsl:template match="*" mode="book.titlepage.verso.mode">
520  <!-- if an element isn't found in this mode, -->
521  <!-- try the generic titlepage.mode -->
522  <xsl:apply-templates select="." mode="titlepage.mode"/>
523</xsl:template>
524
525<xsl:template match="title" mode="book.titlepage.recto.auto.mode">
526<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.recto.style" text-align="center" font-size="24.8832pt" space-before="18.6624pt" font-weight="bold" font-family="{$title.fontset}">
527<xsl:call-template name="division.title">
528<xsl:with-param name="node" select="ancestor-or-self::book[1]"/>
529</xsl:call-template>
530</fo:block>
531</xsl:template>
532
533<xsl:template match="subtitle" mode="book.titlepage.recto.auto.mode">
534<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.recto.style" text-align="center" font-size="20.736pt" space-before="15.552pt" font-family="{$title.fontset}">
535<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/>
536</fo:block>
537</xsl:template>
538
539<xsl:template match="corpauthor" mode="book.titlepage.recto.auto.mode">
540<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.recto.style" font-size="17.28pt" keep-with-next.within-column="always" space-before="2in">
541<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/>
542</fo:block>
543</xsl:template>
544
545<xsl:template match="authorgroup" mode="book.titlepage.recto.auto.mode">
546<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.recto.style" space-before="2in">
547<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/>
548</fo:block>
549</xsl:template>
550
551<xsl:template match="author" mode="book.titlepage.recto.auto.mode">
552<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.recto.style" font-size="17.28pt" space-before="10.8pt" keep-with-next.within-column="always">
553<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/>
554</fo:block>
555</xsl:template>
556
557<xsl:template match="title" mode="book.titlepage.verso.auto.mode">
558<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style" font-size="14.4pt" font-weight="bold" font-family="{$title.fontset}">
559<xsl:call-template name="book.verso.title">
560</xsl:call-template>
561</fo:block>
562</xsl:template>
563
564<xsl:template match="corpauthor" mode="book.titlepage.verso.auto.mode">
565<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style">
566<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/>
567</fo:block>
568</xsl:template>
569
570<xsl:template match="authorgroup" mode="book.titlepage.verso.auto.mode">
571<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style">
572<xsl:call-template name="verso.authorgroup">
573</xsl:call-template>
574</fo:block>
575</xsl:template>
576
577<xsl:template match="author" mode="book.titlepage.verso.auto.mode">
578<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style">
579<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/>
580</fo:block>
581</xsl:template>
582
583<xsl:template match="othercredit" mode="book.titlepage.verso.auto.mode">
584<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style">
585<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/>
586</fo:block>
587</xsl:template>
588
589<xsl:template match="releaseinfo" mode="book.titlepage.verso.auto.mode">
590<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style" space-before="0.5em">
591<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/>
592</fo:block>
593</xsl:template>
594
595<xsl:template match="pubdate" mode="book.titlepage.verso.auto.mode">
596<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style" space-before="1em">
597<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/>
598</fo:block>
599</xsl:template>
600
601<xsl:template match="copyright" mode="book.titlepage.verso.auto.mode">
602<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style">
603<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/>
604</fo:block>
605</xsl:template>
606
607<xsl:template match="abstract" mode="book.titlepage.verso.auto.mode">
608<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style">
609<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/>
610</fo:block>
611</xsl:template>
612
613<xsl:template match="legalnotice" mode="book.titlepage.verso.auto.mode">
614<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style" font-size="8pt">
615<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/>
616</fo:block>
617</xsl:template>
618
619<xsl:template name="part.titlepage.recto">
620  <xsl:choose>
621    <xsl:when test="partinfo/title">
622      <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/title"/>
623    </xsl:when>
624    <xsl:when test="docinfo/title">
625      <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/title"/>
626    </xsl:when>
627    <xsl:when test="info/title">
628      <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/title"/>
629    </xsl:when>
630    <xsl:when test="title">
631      <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="title"/>
632    </xsl:when>
633  </xsl:choose>
634
635  <xsl:choose>
636    <xsl:when test="partinfo/subtitle">
637      <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/subtitle"/>
638    </xsl:when>
639    <xsl:when test="docinfo/subtitle">
640      <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
641    </xsl:when>
642    <xsl:when test="info/subtitle">
643      <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/subtitle"/>
644    </xsl:when>
645    <xsl:when test="subtitle">
646      <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="subtitle"/>
647    </xsl:when>
648  </xsl:choose>
649
650</xsl:template>
651
652<xsl:template name="part.titlepage.verso">
653</xsl:template>
654
655<xsl:template name="part.titlepage.separator">
656</xsl:template>
657
658<xsl:template name="part.titlepage.before.recto">
659</xsl:template>
660
661<xsl:template name="part.titlepage.before.verso">
662</xsl:template>
663
664<xsl:template name="part.titlepage">
665  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
666    <xsl:variable name="recto.content">
667      <xsl:call-template name="part.titlepage.before.recto"/>
668      <xsl:call-template name="part.titlepage.recto"/>
669    </xsl:variable>
670    <xsl:variable name="recto.elements.count">
671      <xsl:choose>
672        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
673        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
674          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
675        <xsl:otherwise>1</xsl:otherwise>
676      </xsl:choose>
677    </xsl:variable>
678    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
679      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
680    </xsl:if>
681    <xsl:variable name="verso.content">
682      <xsl:call-template name="part.titlepage.before.verso"/>
683      <xsl:call-template name="part.titlepage.verso"/>
684    </xsl:variable>
685    <xsl:variable name="verso.elements.count">
686      <xsl:choose>
687        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
688        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
689          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
690        <xsl:otherwise>1</xsl:otherwise>
691      </xsl:choose>
692    </xsl:variable>
693    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
694      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
695    </xsl:if>
696    <xsl:call-template name="part.titlepage.separator"/>
697  </fo:block>
698</xsl:template>
699
700<xsl:template match="*" mode="part.titlepage.recto.mode">
701  <!-- if an element isn't found in this mode, -->
702  <!-- try the generic titlepage.mode -->
703  <xsl:apply-templates select="." mode="titlepage.mode"/>
704</xsl:template>
705
706<xsl:template match="*" mode="part.titlepage.verso.mode">
707  <!-- if an element isn't found in this mode, -->
708  <!-- try the generic titlepage.mode -->
709  <xsl:apply-templates select="." mode="titlepage.mode"/>
710</xsl:template>
711
712<xsl:template match="title" mode="part.titlepage.recto.auto.mode">
713<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="part.titlepage.recto.style" text-align="center" font-size="24.8832pt" space-before="18.6624pt" font-weight="bold" font-family="{$title.fontset}">
714<xsl:call-template name="division.title">
715<xsl:with-param name="node" select="ancestor-or-self::part[1]"/>
716</xsl:call-template>
717</fo:block>
718</xsl:template>
719
720<xsl:template match="subtitle" mode="part.titlepage.recto.auto.mode">
721<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="part.titlepage.recto.style" text-align="center" font-size="20.736pt" space-before="15.552pt" font-weight="bold" font-style="italic" font-family="{$title.fontset}">
722<xsl:apply-templates select="." mode="part.titlepage.recto.mode"/>
723</fo:block>
724</xsl:template>
725
726<xsl:template name="partintro.titlepage.recto">
727  <xsl:choose>
728    <xsl:when test="partintroinfo/title">
729      <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/title"/>
730    </xsl:when>
731    <xsl:when test="docinfo/title">
732      <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/title"/>
733    </xsl:when>
734    <xsl:when test="info/title">
735      <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/title"/>
736    </xsl:when>
737    <xsl:when test="title">
738      <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="title"/>
739    </xsl:when>
740  </xsl:choose>
741
742  <xsl:choose>
743    <xsl:when test="partintroinfo/subtitle">
744      <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/subtitle"/>
745    </xsl:when>
746    <xsl:when test="docinfo/subtitle">
747      <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
748    </xsl:when>
749    <xsl:when test="info/subtitle">
750      <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/subtitle"/>
751    </xsl:when>
752    <xsl:when test="subtitle">
753      <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="subtitle"/>
754    </xsl:when>
755  </xsl:choose>
756
757  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/corpauthor"/>
758  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/corpauthor"/>
759  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/corpauthor"/>
760  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/authorgroup"/>
761  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/authorgroup"/>
762  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/authorgroup"/>
763  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/author"/>
764  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/author"/>
765  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/author"/>
766  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/othercredit"/>
767  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/othercredit"/>
768  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/othercredit"/>
769  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/releaseinfo"/>
770  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/>
771  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/releaseinfo"/>
772  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/copyright"/>
773  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/copyright"/>
774  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/copyright"/>
775  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/legalnotice"/>
776  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/legalnotice"/>
777  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/legalnotice"/>
778  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/pubdate"/>
779  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/pubdate"/>
780  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/pubdate"/>
781  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/revision"/>
782  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/revision"/>
783  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/revision"/>
784  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/revhistory"/>
785  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/revhistory"/>
786  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/revhistory"/>
787  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/abstract"/>
788  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/abstract"/>
789  <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/abstract"/>
790</xsl:template>
791
792<xsl:template name="partintro.titlepage.verso">
793</xsl:template>
794
795<xsl:template name="partintro.titlepage.separator">
796</xsl:template>
797
798<xsl:template name="partintro.titlepage.before.recto">
799</xsl:template>
800
801<xsl:template name="partintro.titlepage.before.verso">
802</xsl:template>
803
804<xsl:template name="partintro.titlepage">
805  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
806    <xsl:variable name="recto.content">
807      <xsl:call-template name="partintro.titlepage.before.recto"/>
808      <xsl:call-template name="partintro.titlepage.recto"/>
809    </xsl:variable>
810    <xsl:variable name="recto.elements.count">
811      <xsl:choose>
812        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
813        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
814          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
815        <xsl:otherwise>1</xsl:otherwise>
816      </xsl:choose>
817    </xsl:variable>
818    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
819      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
820    </xsl:if>
821    <xsl:variable name="verso.content">
822      <xsl:call-template name="partintro.titlepage.before.verso"/>
823      <xsl:call-template name="partintro.titlepage.verso"/>
824    </xsl:variable>
825    <xsl:variable name="verso.elements.count">
826      <xsl:choose>
827        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
828        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
829          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
830        <xsl:otherwise>1</xsl:otherwise>
831      </xsl:choose>
832    </xsl:variable>
833    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
834      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
835    </xsl:if>
836    <xsl:call-template name="partintro.titlepage.separator"/>
837  </fo:block>
838</xsl:template>
839
840<xsl:template match="*" mode="partintro.titlepage.recto.mode">
841  <!-- if an element isn't found in this mode, -->
842  <!-- try the generic titlepage.mode -->
843  <xsl:apply-templates select="." mode="titlepage.mode"/>
844</xsl:template>
845
846<xsl:template match="*" mode="partintro.titlepage.verso.mode">
847  <!-- if an element isn't found in this mode, -->
848  <!-- try the generic titlepage.mode -->
849  <xsl:apply-templates select="." mode="titlepage.mode"/>
850</xsl:template>
851
852<xsl:template match="title" mode="partintro.titlepage.recto.auto.mode">
853<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style" text-align="center" font-size="24.8832pt" font-weight="bold" space-before="1em" font-family="{$title.fontset}">
854<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
855</fo:block>
856</xsl:template>
857
858<xsl:template match="subtitle" mode="partintro.titlepage.recto.auto.mode">
859<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style" text-align="center" font-size="14.4pt" font-weight="bold" font-style="italic" font-family="{$title.fontset}">
860<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
861</fo:block>
862</xsl:template>
863
864<xsl:template match="corpauthor" mode="partintro.titlepage.recto.auto.mode">
865<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style">
866<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
867</fo:block>
868</xsl:template>
869
870<xsl:template match="authorgroup" mode="partintro.titlepage.recto.auto.mode">
871<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style">
872<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
873</fo:block>
874</xsl:template>
875
876<xsl:template match="author" mode="partintro.titlepage.recto.auto.mode">
877<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style">
878<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
879</fo:block>
880</xsl:template>
881
882<xsl:template match="othercredit" mode="partintro.titlepage.recto.auto.mode">
883<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style">
884<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
885</fo:block>
886</xsl:template>
887
888<xsl:template match="releaseinfo" mode="partintro.titlepage.recto.auto.mode">
889<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style">
890<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
891</fo:block>
892</xsl:template>
893
894<xsl:template match="copyright" mode="partintro.titlepage.recto.auto.mode">
895<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style">
896<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
897</fo:block>
898</xsl:template>
899
900<xsl:template match="legalnotice" mode="partintro.titlepage.recto.auto.mode">
901<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style">
902<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
903</fo:block>
904</xsl:template>
905
906<xsl:template match="pubdate" mode="partintro.titlepage.recto.auto.mode">
907<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style">
908<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
909</fo:block>
910</xsl:template>
911
912<xsl:template match="revision" mode="partintro.titlepage.recto.auto.mode">
913<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style">
914<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
915</fo:block>
916</xsl:template>
917
918<xsl:template match="revhistory" mode="partintro.titlepage.recto.auto.mode">
919<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style">
920<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
921</fo:block>
922</xsl:template>
923
924<xsl:template match="abstract" mode="partintro.titlepage.recto.auto.mode">
925<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style">
926<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/>
927</fo:block>
928</xsl:template>
929
930<xsl:template name="reference.titlepage.recto">
931  <xsl:choose>
932    <xsl:when test="referenceinfo/title">
933      <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/title"/>
934    </xsl:when>
935    <xsl:when test="docinfo/title">
936      <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/title"/>
937    </xsl:when>
938    <xsl:when test="info/title">
939      <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/title"/>
940    </xsl:when>
941    <xsl:when test="title">
942      <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="title"/>
943    </xsl:when>
944  </xsl:choose>
945
946  <xsl:choose>
947    <xsl:when test="referenceinfo/subtitle">
948      <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/subtitle"/>
949    </xsl:when>
950    <xsl:when test="docinfo/subtitle">
951      <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
952    </xsl:when>
953    <xsl:when test="info/subtitle">
954      <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/subtitle"/>
955    </xsl:when>
956    <xsl:when test="subtitle">
957      <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="subtitle"/>
958    </xsl:when>
959  </xsl:choose>
960
961  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/corpauthor"/>
962  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/corpauthor"/>
963  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/corpauthor"/>
964  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/authorgroup"/>
965  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/authorgroup"/>
966  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/authorgroup"/>
967  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/author"/>
968  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/author"/>
969  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/author"/>
970  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/othercredit"/>
971  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/othercredit"/>
972  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/othercredit"/>
973  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/releaseinfo"/>
974  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/>
975  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/releaseinfo"/>
976  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/copyright"/>
977  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/copyright"/>
978  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/copyright"/>
979  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/legalnotice"/>
980  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/legalnotice"/>
981  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/legalnotice"/>
982  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/pubdate"/>
983  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/pubdate"/>
984  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/pubdate"/>
985  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/revision"/>
986  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/revision"/>
987  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/revision"/>
988  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/revhistory"/>
989  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/revhistory"/>
990  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/revhistory"/>
991  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/abstract"/>
992  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/abstract"/>
993  <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/abstract"/>
994</xsl:template>
995
996<xsl:template name="reference.titlepage.verso">
997</xsl:template>
998
999<xsl:template name="reference.titlepage.separator">
1000</xsl:template>
1001
1002<xsl:template name="reference.titlepage.before.recto">
1003</xsl:template>
1004
1005<xsl:template name="reference.titlepage.before.verso">
1006</xsl:template>
1007
1008<xsl:template name="reference.titlepage">
1009  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
1010    <xsl:variable name="recto.content">
1011      <xsl:call-template name="reference.titlepage.before.recto"/>
1012      <xsl:call-template name="reference.titlepage.recto"/>
1013    </xsl:variable>
1014    <xsl:variable name="recto.elements.count">
1015      <xsl:choose>
1016        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1017        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1018          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1019        <xsl:otherwise>1</xsl:otherwise>
1020      </xsl:choose>
1021    </xsl:variable>
1022    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
1023      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
1024    </xsl:if>
1025    <xsl:variable name="verso.content">
1026      <xsl:call-template name="reference.titlepage.before.verso"/>
1027      <xsl:call-template name="reference.titlepage.verso"/>
1028    </xsl:variable>
1029    <xsl:variable name="verso.elements.count">
1030      <xsl:choose>
1031        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1032        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1033          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1034        <xsl:otherwise>1</xsl:otherwise>
1035      </xsl:choose>
1036    </xsl:variable>
1037    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
1038      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
1039    </xsl:if>
1040    <xsl:call-template name="reference.titlepage.separator"/>
1041  </fo:block>
1042</xsl:template>
1043
1044<xsl:template match="*" mode="reference.titlepage.recto.mode">
1045  <!-- if an element isn't found in this mode, -->
1046  <!-- try the generic titlepage.mode -->
1047  <xsl:apply-templates select="." mode="titlepage.mode"/>
1048</xsl:template>
1049
1050<xsl:template match="*" mode="reference.titlepage.verso.mode">
1051  <!-- if an element isn't found in this mode, -->
1052  <!-- try the generic titlepage.mode -->
1053  <xsl:apply-templates select="." mode="titlepage.mode"/>
1054</xsl:template>
1055
1056<xsl:template match="title" mode="reference.titlepage.recto.auto.mode">
1057<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style" text-align="center" font-size="24.8832pt" space-before="18.6624pt" font-weight="bold" font-family="{$title.fontset}">
1058<xsl:call-template name="division.title">
1059<xsl:with-param name="node" select="ancestor-or-self::reference[1]"/>
1060</xsl:call-template>
1061</fo:block>
1062</xsl:template>
1063
1064<xsl:template match="subtitle" mode="reference.titlepage.recto.auto.mode">
1065<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style" font-family="{$title.fontset}" text-align="center">
1066<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/>
1067</fo:block>
1068</xsl:template>
1069
1070<xsl:template match="corpauthor" mode="reference.titlepage.recto.auto.mode">
1071<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style">
1072<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/>
1073</fo:block>
1074</xsl:template>
1075
1076<xsl:template match="authorgroup" mode="reference.titlepage.recto.auto.mode">
1077<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style">
1078<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/>
1079</fo:block>
1080</xsl:template>
1081
1082<xsl:template match="author" mode="reference.titlepage.recto.auto.mode">
1083<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style">
1084<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/>
1085</fo:block>
1086</xsl:template>
1087
1088<xsl:template match="othercredit" mode="reference.titlepage.recto.auto.mode">
1089<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style">
1090<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/>
1091</fo:block>
1092</xsl:template>
1093
1094<xsl:template match="releaseinfo" mode="reference.titlepage.recto.auto.mode">
1095<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style">
1096<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/>
1097</fo:block>
1098</xsl:template>
1099
1100<xsl:template match="copyright" mode="reference.titlepage.recto.auto.mode">
1101<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style">
1102<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/>
1103</fo:block>
1104</xsl:template>
1105
1106<xsl:template match="legalnotice" mode="reference.titlepage.recto.auto.mode">
1107<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style">
1108<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/>
1109</fo:block>
1110</xsl:template>
1111
1112<xsl:template match="pubdate" mode="reference.titlepage.recto.auto.mode">
1113<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style">
1114<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/>
1115</fo:block>
1116</xsl:template>
1117
1118<xsl:template match="revision" mode="reference.titlepage.recto.auto.mode">
1119<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style">
1120<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/>
1121</fo:block>
1122</xsl:template>
1123
1124<xsl:template match="revhistory" mode="reference.titlepage.recto.auto.mode">
1125<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style">
1126<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/>
1127</fo:block>
1128</xsl:template>
1129
1130<xsl:template match="abstract" mode="reference.titlepage.recto.auto.mode">
1131<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style">
1132<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/>
1133</fo:block>
1134</xsl:template>
1135
1136<xsl:template name="refsynopsisdiv.titlepage.recto">
1137  <xsl:choose>
1138    <xsl:when test="refsynopsisdivinfo/title">
1139      <xsl:apply-templates mode="refsynopsisdiv.titlepage.recto.auto.mode" select="refsynopsisdivinfo/title"/>
1140    </xsl:when>
1141    <xsl:when test="docinfo/title">
1142      <xsl:apply-templates mode="refsynopsisdiv.titlepage.recto.auto.mode" select="docinfo/title"/>
1143    </xsl:when>
1144    <xsl:when test="info/title">
1145      <xsl:apply-templates mode="refsynopsisdiv.titlepage.recto.auto.mode" select="info/title"/>
1146    </xsl:when>
1147    <xsl:when test="title">
1148      <xsl:apply-templates mode="refsynopsisdiv.titlepage.recto.auto.mode" select="title"/>
1149    </xsl:when>
1150  </xsl:choose>
1151
1152</xsl:template>
1153
1154<xsl:template name="refsynopsisdiv.titlepage.verso">
1155</xsl:template>
1156
1157<xsl:template name="refsynopsisdiv.titlepage.separator">
1158</xsl:template>
1159
1160<xsl:template name="refsynopsisdiv.titlepage.before.recto">
1161</xsl:template>
1162
1163<xsl:template name="refsynopsisdiv.titlepage.before.verso">
1164</xsl:template>
1165
1166<xsl:template name="refsynopsisdiv.titlepage">
1167  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
1168    <xsl:variable name="recto.content">
1169      <xsl:call-template name="refsynopsisdiv.titlepage.before.recto"/>
1170      <xsl:call-template name="refsynopsisdiv.titlepage.recto"/>
1171    </xsl:variable>
1172    <xsl:variable name="recto.elements.count">
1173      <xsl:choose>
1174        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1175        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1176          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1177        <xsl:otherwise>1</xsl:otherwise>
1178      </xsl:choose>
1179    </xsl:variable>
1180    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
1181      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
1182    </xsl:if>
1183    <xsl:variable name="verso.content">
1184      <xsl:call-template name="refsynopsisdiv.titlepage.before.verso"/>
1185      <xsl:call-template name="refsynopsisdiv.titlepage.verso"/>
1186    </xsl:variable>
1187    <xsl:variable name="verso.elements.count">
1188      <xsl:choose>
1189        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1190        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1191          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1192        <xsl:otherwise>1</xsl:otherwise>
1193      </xsl:choose>
1194    </xsl:variable>
1195    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
1196      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
1197    </xsl:if>
1198    <xsl:call-template name="refsynopsisdiv.titlepage.separator"/>
1199  </fo:block>
1200</xsl:template>
1201
1202<xsl:template match="*" mode="refsynopsisdiv.titlepage.recto.mode">
1203  <!-- if an element isn't found in this mode, -->
1204  <!-- try the generic titlepage.mode -->
1205  <xsl:apply-templates select="." mode="titlepage.mode"/>
1206</xsl:template>
1207
1208<xsl:template match="*" mode="refsynopsisdiv.titlepage.verso.mode">
1209  <!-- if an element isn't found in this mode, -->
1210  <!-- try the generic titlepage.mode -->
1211  <xsl:apply-templates select="." mode="titlepage.mode"/>
1212</xsl:template>
1213
1214<xsl:template match="title" mode="refsynopsisdiv.titlepage.recto.auto.mode">
1215<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="refsynopsisdiv.titlepage.recto.style" font-family="{$title.fontset}">
1216<xsl:apply-templates select="." mode="refsynopsisdiv.titlepage.recto.mode"/>
1217</fo:block>
1218</xsl:template>
1219
1220<xsl:template name="refsection.titlepage.recto">
1221  <xsl:choose>
1222    <xsl:when test="refsectioninfo/title">
1223      <xsl:apply-templates mode="refsection.titlepage.recto.auto.mode" select="refsectioninfo/title"/>
1224    </xsl:when>
1225    <xsl:when test="docinfo/title">
1226      <xsl:apply-templates mode="refsection.titlepage.recto.auto.mode" select="docinfo/title"/>
1227    </xsl:when>
1228    <xsl:when test="info/title">
1229      <xsl:apply-templates mode="refsection.titlepage.recto.auto.mode" select="info/title"/>
1230    </xsl:when>
1231    <xsl:when test="title">
1232      <xsl:apply-templates mode="refsection.titlepage.recto.auto.mode" select="title"/>
1233    </xsl:when>
1234  </xsl:choose>
1235
1236</xsl:template>
1237
1238<xsl:template name="refsection.titlepage.verso">
1239</xsl:template>
1240
1241<xsl:template name="refsection.titlepage.separator">
1242</xsl:template>
1243
1244<xsl:template name="refsection.titlepage.before.recto">
1245</xsl:template>
1246
1247<xsl:template name="refsection.titlepage.before.verso">
1248</xsl:template>
1249
1250<xsl:template name="refsection.titlepage">
1251  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
1252    <xsl:variable name="recto.content">
1253      <xsl:call-template name="refsection.titlepage.before.recto"/>
1254      <xsl:call-template name="refsection.titlepage.recto"/>
1255    </xsl:variable>
1256    <xsl:variable name="recto.elements.count">
1257      <xsl:choose>
1258        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1259        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1260          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1261        <xsl:otherwise>1</xsl:otherwise>
1262      </xsl:choose>
1263    </xsl:variable>
1264    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
1265      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
1266    </xsl:if>
1267    <xsl:variable name="verso.content">
1268      <xsl:call-template name="refsection.titlepage.before.verso"/>
1269      <xsl:call-template name="refsection.titlepage.verso"/>
1270    </xsl:variable>
1271    <xsl:variable name="verso.elements.count">
1272      <xsl:choose>
1273        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1274        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1275          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1276        <xsl:otherwise>1</xsl:otherwise>
1277      </xsl:choose>
1278    </xsl:variable>
1279    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
1280      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
1281    </xsl:if>
1282    <xsl:call-template name="refsection.titlepage.separator"/>
1283  </fo:block>
1284</xsl:template>
1285
1286<xsl:template match="*" mode="refsection.titlepage.recto.mode">
1287  <!-- if an element isn't found in this mode, -->
1288  <!-- try the generic titlepage.mode -->
1289  <xsl:apply-templates select="." mode="titlepage.mode"/>
1290</xsl:template>
1291
1292<xsl:template match="*" mode="refsection.titlepage.verso.mode">
1293  <!-- if an element isn't found in this mode, -->
1294  <!-- try the generic titlepage.mode -->
1295  <xsl:apply-templates select="." mode="titlepage.mode"/>
1296</xsl:template>
1297
1298<xsl:template match="title" mode="refsection.titlepage.recto.auto.mode">
1299<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="refsection.titlepage.recto.style" font-family="{$title.fontset}">
1300<xsl:apply-templates select="." mode="refsection.titlepage.recto.mode"/>
1301</fo:block>
1302</xsl:template>
1303
1304<xsl:template name="refsect1.titlepage.recto">
1305  <xsl:choose>
1306    <xsl:when test="refsect1info/title">
1307      <xsl:apply-templates mode="refsect1.titlepage.recto.auto.mode" select="refsect1info/title"/>
1308    </xsl:when>
1309    <xsl:when test="docinfo/title">
1310      <xsl:apply-templates mode="refsect1.titlepage.recto.auto.mode" select="docinfo/title"/>
1311    </xsl:when>
1312    <xsl:when test="info/title">
1313      <xsl:apply-templates mode="refsect1.titlepage.recto.auto.mode" select="info/title"/>
1314    </xsl:when>
1315    <xsl:when test="title">
1316      <xsl:apply-templates mode="refsect1.titlepage.recto.auto.mode" select="title"/>
1317    </xsl:when>
1318  </xsl:choose>
1319
1320</xsl:template>
1321
1322<xsl:template name="refsect1.titlepage.verso">
1323</xsl:template>
1324
1325<xsl:template name="refsect1.titlepage.separator">
1326</xsl:template>
1327
1328<xsl:template name="refsect1.titlepage.before.recto">
1329</xsl:template>
1330
1331<xsl:template name="refsect1.titlepage.before.verso">
1332</xsl:template>
1333
1334<xsl:template name="refsect1.titlepage">
1335  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
1336    <xsl:variable name="recto.content">
1337      <xsl:call-template name="refsect1.titlepage.before.recto"/>
1338      <xsl:call-template name="refsect1.titlepage.recto"/>
1339    </xsl:variable>
1340    <xsl:variable name="recto.elements.count">
1341      <xsl:choose>
1342        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1343        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1344          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1345        <xsl:otherwise>1</xsl:otherwise>
1346      </xsl:choose>
1347    </xsl:variable>
1348    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
1349      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
1350    </xsl:if>
1351    <xsl:variable name="verso.content">
1352      <xsl:call-template name="refsect1.titlepage.before.verso"/>
1353      <xsl:call-template name="refsect1.titlepage.verso"/>
1354    </xsl:variable>
1355    <xsl:variable name="verso.elements.count">
1356      <xsl:choose>
1357        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1358        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1359          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1360        <xsl:otherwise>1</xsl:otherwise>
1361      </xsl:choose>
1362    </xsl:variable>
1363    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
1364      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
1365    </xsl:if>
1366    <xsl:call-template name="refsect1.titlepage.separator"/>
1367  </fo:block>
1368</xsl:template>
1369
1370<xsl:template match="*" mode="refsect1.titlepage.recto.mode">
1371  <!-- if an element isn't found in this mode, -->
1372  <!-- try the generic titlepage.mode -->
1373  <xsl:apply-templates select="." mode="titlepage.mode"/>
1374</xsl:template>
1375
1376<xsl:template match="*" mode="refsect1.titlepage.verso.mode">
1377  <!-- if an element isn't found in this mode, -->
1378  <!-- try the generic titlepage.mode -->
1379  <xsl:apply-templates select="." mode="titlepage.mode"/>
1380</xsl:template>
1381
1382<xsl:template match="title" mode="refsect1.titlepage.recto.auto.mode">
1383<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="refsect1.titlepage.recto.style" font-family="{$title.fontset}">
1384<xsl:apply-templates select="." mode="refsect1.titlepage.recto.mode"/>
1385</fo:block>
1386</xsl:template>
1387
1388<xsl:template name="refsect2.titlepage.recto">
1389  <xsl:choose>
1390    <xsl:when test="refsect2info/title">
1391      <xsl:apply-templates mode="refsect2.titlepage.recto.auto.mode" select="refsect2info/title"/>
1392    </xsl:when>
1393    <xsl:when test="docinfo/title">
1394      <xsl:apply-templates mode="refsect2.titlepage.recto.auto.mode" select="docinfo/title"/>
1395    </xsl:when>
1396    <xsl:when test="info/title">
1397      <xsl:apply-templates mode="refsect2.titlepage.recto.auto.mode" select="info/title"/>
1398    </xsl:when>
1399    <xsl:when test="title">
1400      <xsl:apply-templates mode="refsect2.titlepage.recto.auto.mode" select="title"/>
1401    </xsl:when>
1402  </xsl:choose>
1403
1404</xsl:template>
1405
1406<xsl:template name="refsect2.titlepage.verso">
1407</xsl:template>
1408
1409<xsl:template name="refsect2.titlepage.separator">
1410</xsl:template>
1411
1412<xsl:template name="refsect2.titlepage.before.recto">
1413</xsl:template>
1414
1415<xsl:template name="refsect2.titlepage.before.verso">
1416</xsl:template>
1417
1418<xsl:template name="refsect2.titlepage">
1419  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
1420    <xsl:variable name="recto.content">
1421      <xsl:call-template name="refsect2.titlepage.before.recto"/>
1422      <xsl:call-template name="refsect2.titlepage.recto"/>
1423    </xsl:variable>
1424    <xsl:variable name="recto.elements.count">
1425      <xsl:choose>
1426        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1427        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1428          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1429        <xsl:otherwise>1</xsl:otherwise>
1430      </xsl:choose>
1431    </xsl:variable>
1432    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
1433      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
1434    </xsl:if>
1435    <xsl:variable name="verso.content">
1436      <xsl:call-template name="refsect2.titlepage.before.verso"/>
1437      <xsl:call-template name="refsect2.titlepage.verso"/>
1438    </xsl:variable>
1439    <xsl:variable name="verso.elements.count">
1440      <xsl:choose>
1441        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1442        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1443          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1444        <xsl:otherwise>1</xsl:otherwise>
1445      </xsl:choose>
1446    </xsl:variable>
1447    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
1448      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
1449    </xsl:if>
1450    <xsl:call-template name="refsect2.titlepage.separator"/>
1451  </fo:block>
1452</xsl:template>
1453
1454<xsl:template match="*" mode="refsect2.titlepage.recto.mode">
1455  <!-- if an element isn't found in this mode, -->
1456  <!-- try the generic titlepage.mode -->
1457  <xsl:apply-templates select="." mode="titlepage.mode"/>
1458</xsl:template>
1459
1460<xsl:template match="*" mode="refsect2.titlepage.verso.mode">
1461  <!-- if an element isn't found in this mode, -->
1462  <!-- try the generic titlepage.mode -->
1463  <xsl:apply-templates select="." mode="titlepage.mode"/>
1464</xsl:template>
1465
1466<xsl:template match="title" mode="refsect2.titlepage.recto.auto.mode">
1467<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="refsect2.titlepage.recto.style" font-family="{$title.fontset}">
1468<xsl:apply-templates select="." mode="refsect2.titlepage.recto.mode"/>
1469</fo:block>
1470</xsl:template>
1471
1472<xsl:template name="refsect3.titlepage.recto">
1473  <xsl:choose>
1474    <xsl:when test="refsect3info/title">
1475      <xsl:apply-templates mode="refsect3.titlepage.recto.auto.mode" select="refsect3info/title"/>
1476    </xsl:when>
1477    <xsl:when test="docinfo/title">
1478      <xsl:apply-templates mode="refsect3.titlepage.recto.auto.mode" select="docinfo/title"/>
1479    </xsl:when>
1480    <xsl:when test="info/title">
1481      <xsl:apply-templates mode="refsect3.titlepage.recto.auto.mode" select="info/title"/>
1482    </xsl:when>
1483    <xsl:when test="title">
1484      <xsl:apply-templates mode="refsect3.titlepage.recto.auto.mode" select="title"/>
1485    </xsl:when>
1486  </xsl:choose>
1487
1488</xsl:template>
1489
1490<xsl:template name="refsect3.titlepage.verso">
1491</xsl:template>
1492
1493<xsl:template name="refsect3.titlepage.separator">
1494</xsl:template>
1495
1496<xsl:template name="refsect3.titlepage.before.recto">
1497</xsl:template>
1498
1499<xsl:template name="refsect3.titlepage.before.verso">
1500</xsl:template>
1501
1502<xsl:template name="refsect3.titlepage">
1503  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
1504    <xsl:variable name="recto.content">
1505      <xsl:call-template name="refsect3.titlepage.before.recto"/>
1506      <xsl:call-template name="refsect3.titlepage.recto"/>
1507    </xsl:variable>
1508    <xsl:variable name="recto.elements.count">
1509      <xsl:choose>
1510        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1511        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1512          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1513        <xsl:otherwise>1</xsl:otherwise>
1514      </xsl:choose>
1515    </xsl:variable>
1516    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
1517      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
1518    </xsl:if>
1519    <xsl:variable name="verso.content">
1520      <xsl:call-template name="refsect3.titlepage.before.verso"/>
1521      <xsl:call-template name="refsect3.titlepage.verso"/>
1522    </xsl:variable>
1523    <xsl:variable name="verso.elements.count">
1524      <xsl:choose>
1525        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1526        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1527          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1528        <xsl:otherwise>1</xsl:otherwise>
1529      </xsl:choose>
1530    </xsl:variable>
1531    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
1532      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
1533    </xsl:if>
1534    <xsl:call-template name="refsect3.titlepage.separator"/>
1535  </fo:block>
1536</xsl:template>
1537
1538<xsl:template match="*" mode="refsect3.titlepage.recto.mode">
1539  <!-- if an element isn't found in this mode, -->
1540  <!-- try the generic titlepage.mode -->
1541  <xsl:apply-templates select="." mode="titlepage.mode"/>
1542</xsl:template>
1543
1544<xsl:template match="*" mode="refsect3.titlepage.verso.mode">
1545  <!-- if an element isn't found in this mode, -->
1546  <!-- try the generic titlepage.mode -->
1547  <xsl:apply-templates select="." mode="titlepage.mode"/>
1548</xsl:template>
1549
1550<xsl:template match="title" mode="refsect3.titlepage.recto.auto.mode">
1551<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="refsect3.titlepage.recto.style" font-family="{$title.fontset}">
1552<xsl:apply-templates select="." mode="refsect3.titlepage.recto.mode"/>
1553</fo:block>
1554</xsl:template>
1555
1556<xsl:template name="dedication.titlepage.recto">
1557  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="dedication.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="24.8832pt" font-family="{$title.fontset}" font-weight="bold">
1558<xsl:call-template name="component.title">
1559<xsl:with-param name="node" select="ancestor-or-self::dedication[1]"/>
1560</xsl:call-template></fo:block>
1561  <xsl:choose>
1562    <xsl:when test="dedicationinfo/subtitle">
1563      <xsl:apply-templates mode="dedication.titlepage.recto.auto.mode" select="dedicationinfo/subtitle"/>
1564    </xsl:when>
1565    <xsl:when test="docinfo/subtitle">
1566      <xsl:apply-templates mode="dedication.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
1567    </xsl:when>
1568    <xsl:when test="info/subtitle">
1569      <xsl:apply-templates mode="dedication.titlepage.recto.auto.mode" select="info/subtitle"/>
1570    </xsl:when>
1571    <xsl:when test="subtitle">
1572      <xsl:apply-templates mode="dedication.titlepage.recto.auto.mode" select="subtitle"/>
1573    </xsl:when>
1574  </xsl:choose>
1575
1576</xsl:template>
1577
1578<xsl:template name="dedication.titlepage.verso">
1579</xsl:template>
1580
1581<xsl:template name="dedication.titlepage.separator">
1582</xsl:template>
1583
1584<xsl:template name="dedication.titlepage.before.recto">
1585</xsl:template>
1586
1587<xsl:template name="dedication.titlepage.before.verso">
1588</xsl:template>
1589
1590<xsl:template name="dedication.titlepage">
1591  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
1592    <xsl:variable name="recto.content">
1593      <xsl:call-template name="dedication.titlepage.before.recto"/>
1594      <xsl:call-template name="dedication.titlepage.recto"/>
1595    </xsl:variable>
1596    <xsl:variable name="recto.elements.count">
1597      <xsl:choose>
1598        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1599        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1600          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1601        <xsl:otherwise>1</xsl:otherwise>
1602      </xsl:choose>
1603    </xsl:variable>
1604    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
1605      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
1606    </xsl:if>
1607    <xsl:variable name="verso.content">
1608      <xsl:call-template name="dedication.titlepage.before.verso"/>
1609      <xsl:call-template name="dedication.titlepage.verso"/>
1610    </xsl:variable>
1611    <xsl:variable name="verso.elements.count">
1612      <xsl:choose>
1613        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1614        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1615          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1616        <xsl:otherwise>1</xsl:otherwise>
1617      </xsl:choose>
1618    </xsl:variable>
1619    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
1620      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
1621    </xsl:if>
1622    <xsl:call-template name="dedication.titlepage.separator"/>
1623  </fo:block>
1624</xsl:template>
1625
1626<xsl:template match="*" mode="dedication.titlepage.recto.mode">
1627  <!-- if an element isn't found in this mode, -->
1628  <!-- try the generic titlepage.mode -->
1629  <xsl:apply-templates select="." mode="titlepage.mode"/>
1630</xsl:template>
1631
1632<xsl:template match="*" mode="dedication.titlepage.verso.mode">
1633  <!-- if an element isn't found in this mode, -->
1634  <!-- try the generic titlepage.mode -->
1635  <xsl:apply-templates select="." mode="titlepage.mode"/>
1636</xsl:template>
1637
1638<xsl:template match="subtitle" mode="dedication.titlepage.recto.auto.mode">
1639<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="dedication.titlepage.recto.style" font-family="{$title.fontset}">
1640<xsl:apply-templates select="." mode="dedication.titlepage.recto.mode"/>
1641</fo:block>
1642</xsl:template>
1643
1644<xsl:template name="preface.titlepage.recto">
1645  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="24.8832pt" font-family="{$title.fontset}" font-weight="bold">
1646<xsl:call-template name="component.title">
1647<xsl:with-param name="node" select="ancestor-or-self::preface[1]"/>
1648</xsl:call-template></fo:block>
1649  <xsl:choose>
1650    <xsl:when test="prefaceinfo/subtitle">
1651      <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/subtitle"/>
1652    </xsl:when>
1653    <xsl:when test="docinfo/subtitle">
1654      <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
1655    </xsl:when>
1656    <xsl:when test="info/subtitle">
1657      <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/subtitle"/>
1658    </xsl:when>
1659    <xsl:when test="subtitle">
1660      <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="subtitle"/>
1661    </xsl:when>
1662  </xsl:choose>
1663
1664  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/corpauthor"/>
1665  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/corpauthor"/>
1666  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/corpauthor"/>
1667  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/authorgroup"/>
1668  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/authorgroup"/>
1669  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/authorgroup"/>
1670  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/author"/>
1671  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/author"/>
1672  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/author"/>
1673  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/othercredit"/>
1674  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/othercredit"/>
1675  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/othercredit"/>
1676  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/releaseinfo"/>
1677  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/>
1678  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/releaseinfo"/>
1679  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/copyright"/>
1680  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/copyright"/>
1681  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/copyright"/>
1682  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/legalnotice"/>
1683  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/legalnotice"/>
1684  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/legalnotice"/>
1685  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/pubdate"/>
1686  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/pubdate"/>
1687  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/pubdate"/>
1688  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/revision"/>
1689  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/revision"/>
1690  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/revision"/>
1691  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/revhistory"/>
1692  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/revhistory"/>
1693  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/revhistory"/>
1694  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/abstract"/>
1695  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/abstract"/>
1696  <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/abstract"/>
1697</xsl:template>
1698
1699<xsl:template name="preface.titlepage.verso">
1700</xsl:template>
1701
1702<xsl:template name="preface.titlepage.separator">
1703</xsl:template>
1704
1705<xsl:template name="preface.titlepage.before.recto">
1706</xsl:template>
1707
1708<xsl:template name="preface.titlepage.before.verso">
1709</xsl:template>
1710
1711<xsl:template name="preface.titlepage">
1712  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
1713    <xsl:variable name="recto.content">
1714      <xsl:call-template name="preface.titlepage.before.recto"/>
1715      <xsl:call-template name="preface.titlepage.recto"/>
1716    </xsl:variable>
1717    <xsl:variable name="recto.elements.count">
1718      <xsl:choose>
1719        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1720        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1721          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1722        <xsl:otherwise>1</xsl:otherwise>
1723      </xsl:choose>
1724    </xsl:variable>
1725    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
1726      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
1727    </xsl:if>
1728    <xsl:variable name="verso.content">
1729      <xsl:call-template name="preface.titlepage.before.verso"/>
1730      <xsl:call-template name="preface.titlepage.verso"/>
1731    </xsl:variable>
1732    <xsl:variable name="verso.elements.count">
1733      <xsl:choose>
1734        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1735        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1736          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1737        <xsl:otherwise>1</xsl:otherwise>
1738      </xsl:choose>
1739    </xsl:variable>
1740    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
1741      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
1742    </xsl:if>
1743    <xsl:call-template name="preface.titlepage.separator"/>
1744  </fo:block>
1745</xsl:template>
1746
1747<xsl:template match="*" mode="preface.titlepage.recto.mode">
1748  <!-- if an element isn't found in this mode, -->
1749  <!-- try the generic titlepage.mode -->
1750  <xsl:apply-templates select="." mode="titlepage.mode"/>
1751</xsl:template>
1752
1753<xsl:template match="*" mode="preface.titlepage.verso.mode">
1754  <!-- if an element isn't found in this mode, -->
1755  <!-- try the generic titlepage.mode -->
1756  <xsl:apply-templates select="." mode="titlepage.mode"/>
1757</xsl:template>
1758
1759<xsl:template match="subtitle" mode="preface.titlepage.recto.auto.mode">
1760<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style" font-family="{$title.fontset}">
1761<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
1762</fo:block>
1763</xsl:template>
1764
1765<xsl:template match="corpauthor" mode="preface.titlepage.recto.auto.mode">
1766<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style">
1767<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
1768</fo:block>
1769</xsl:template>
1770
1771<xsl:template match="authorgroup" mode="preface.titlepage.recto.auto.mode">
1772<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style">
1773<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
1774</fo:block>
1775</xsl:template>
1776
1777<xsl:template match="author" mode="preface.titlepage.recto.auto.mode">
1778<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style">
1779<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
1780</fo:block>
1781</xsl:template>
1782
1783<xsl:template match="othercredit" mode="preface.titlepage.recto.auto.mode">
1784<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style">
1785<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
1786</fo:block>
1787</xsl:template>
1788
1789<xsl:template match="releaseinfo" mode="preface.titlepage.recto.auto.mode">
1790<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style">
1791<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
1792</fo:block>
1793</xsl:template>
1794
1795<xsl:template match="copyright" mode="preface.titlepage.recto.auto.mode">
1796<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style">
1797<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
1798</fo:block>
1799</xsl:template>
1800
1801<xsl:template match="legalnotice" mode="preface.titlepage.recto.auto.mode">
1802<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style">
1803<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
1804</fo:block>
1805</xsl:template>
1806
1807<xsl:template match="pubdate" mode="preface.titlepage.recto.auto.mode">
1808<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style">
1809<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
1810</fo:block>
1811</xsl:template>
1812
1813<xsl:template match="revision" mode="preface.titlepage.recto.auto.mode">
1814<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style">
1815<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
1816</fo:block>
1817</xsl:template>
1818
1819<xsl:template match="revhistory" mode="preface.titlepage.recto.auto.mode">
1820<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style">
1821<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
1822</fo:block>
1823</xsl:template>
1824
1825<xsl:template match="abstract" mode="preface.titlepage.recto.auto.mode">
1826<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style">
1827<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/>
1828</fo:block>
1829</xsl:template>
1830
1831<xsl:template name="chapter.titlepage.recto">
1832  <xsl:choose>
1833    <xsl:when test="chapterinfo/title">
1834      <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/title"/>
1835    </xsl:when>
1836    <xsl:when test="docinfo/title">
1837      <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/title"/>
1838    </xsl:when>
1839    <xsl:when test="info/title">
1840      <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/title"/>
1841    </xsl:when>
1842    <xsl:when test="title">
1843      <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="title"/>
1844    </xsl:when>
1845  </xsl:choose>
1846
1847  <xsl:choose>
1848    <xsl:when test="chapterinfo/subtitle">
1849      <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/subtitle"/>
1850    </xsl:when>
1851    <xsl:when test="docinfo/subtitle">
1852      <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
1853    </xsl:when>
1854    <xsl:when test="info/subtitle">
1855      <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/subtitle"/>
1856    </xsl:when>
1857    <xsl:when test="subtitle">
1858      <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="subtitle"/>
1859    </xsl:when>
1860  </xsl:choose>
1861
1862  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/corpauthor"/>
1863  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/corpauthor"/>
1864  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/corpauthor"/>
1865  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/authorgroup"/>
1866  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/authorgroup"/>
1867  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/authorgroup"/>
1868  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/author"/>
1869  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/author"/>
1870  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/author"/>
1871  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/othercredit"/>
1872  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/othercredit"/>
1873  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/othercredit"/>
1874  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/releaseinfo"/>
1875  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/>
1876  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/releaseinfo"/>
1877  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/copyright"/>
1878  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/copyright"/>
1879  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/copyright"/>
1880  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/legalnotice"/>
1881  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/legalnotice"/>
1882  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/legalnotice"/>
1883  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/pubdate"/>
1884  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/pubdate"/>
1885  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/pubdate"/>
1886  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/revision"/>
1887  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/revision"/>
1888  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/revision"/>
1889  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/revhistory"/>
1890  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/revhistory"/>
1891  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/revhistory"/>
1892  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/abstract"/>
1893  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/abstract"/>
1894  <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/abstract"/>
1895</xsl:template>
1896
1897<xsl:template name="chapter.titlepage.verso">
1898</xsl:template>
1899
1900<xsl:template name="chapter.titlepage.separator">
1901</xsl:template>
1902
1903<xsl:template name="chapter.titlepage.before.recto">
1904</xsl:template>
1905
1906<xsl:template name="chapter.titlepage.before.verso">
1907</xsl:template>
1908
1909<xsl:template name="chapter.titlepage">
1910  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="{$title.fontset}">
1911    <xsl:variable name="recto.content">
1912      <xsl:call-template name="chapter.titlepage.before.recto"/>
1913      <xsl:call-template name="chapter.titlepage.recto"/>
1914    </xsl:variable>
1915    <xsl:variable name="recto.elements.count">
1916      <xsl:choose>
1917        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1918        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1919          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
1920        <xsl:otherwise>1</xsl:otherwise>
1921      </xsl:choose>
1922    </xsl:variable>
1923    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
1924      <fo:block margin-left="{$title.margin.left}"><xsl:copy-of select="$recto.content"/></fo:block>
1925    </xsl:if>
1926    <xsl:variable name="verso.content">
1927      <xsl:call-template name="chapter.titlepage.before.verso"/>
1928      <xsl:call-template name="chapter.titlepage.verso"/>
1929    </xsl:variable>
1930    <xsl:variable name="verso.elements.count">
1931      <xsl:choose>
1932        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1933        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
1934          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
1935        <xsl:otherwise>1</xsl:otherwise>
1936      </xsl:choose>
1937    </xsl:variable>
1938    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
1939      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
1940    </xsl:if>
1941    <xsl:call-template name="chapter.titlepage.separator"/>
1942  </fo:block>
1943</xsl:template>
1944
1945<xsl:template match="*" mode="chapter.titlepage.recto.mode">
1946  <!-- if an element isn't found in this mode, -->
1947  <!-- try the generic titlepage.mode -->
1948  <xsl:apply-templates select="." mode="titlepage.mode"/>
1949</xsl:template>
1950
1951<xsl:template match="*" mode="chapter.titlepage.verso.mode">
1952  <!-- if an element isn't found in this mode, -->
1953  <!-- try the generic titlepage.mode -->
1954  <xsl:apply-templates select="." mode="titlepage.mode"/>
1955</xsl:template>
1956
1957<xsl:template match="title" mode="chapter.titlepage.recto.auto.mode">
1958<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="chapter.titlepage.recto.style" font-size="24.8832pt" font-weight="bold">
1959<xsl:call-template name="component.title">
1960<xsl:with-param name="node" select="ancestor-or-self::chapter[1]"/>
1961</xsl:call-template>
1962</fo:block>
1963</xsl:template>
1964
1965<xsl:template match="subtitle" mode="chapter.titlepage.recto.auto.mode">
1966<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="chapter.titlepage.recto.style" space-before="0.5em" font-style="italic" font-size="14.4pt" font-weight="bold">
1967<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
1968</fo:block>
1969</xsl:template>
1970
1971<xsl:template match="corpauthor" mode="chapter.titlepage.recto.auto.mode">
1972<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="chapter.titlepage.recto.style" space-before="0.5em" space-after="0.5em" font-size="14.4pt">
1973<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
1974</fo:block>
1975</xsl:template>
1976
1977<xsl:template match="authorgroup" mode="chapter.titlepage.recto.auto.mode">
1978<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="chapter.titlepage.recto.style" space-before="0.5em" space-after="0.5em" font-size="14.4pt">
1979<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
1980</fo:block>
1981</xsl:template>
1982
1983<xsl:template match="author" mode="chapter.titlepage.recto.auto.mode">
1984<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="chapter.titlepage.recto.style" space-before="0.5em" space-after="0.5em" font-size="14.4pt">
1985<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
1986</fo:block>
1987</xsl:template>
1988
1989<xsl:template match="othercredit" mode="chapter.titlepage.recto.auto.mode">
1990<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="chapter.titlepage.recto.style">
1991<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
1992</fo:block>
1993</xsl:template>
1994
1995<xsl:template match="releaseinfo" mode="chapter.titlepage.recto.auto.mode">
1996<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="chapter.titlepage.recto.style">
1997<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
1998</fo:block>
1999</xsl:template>
2000
2001<xsl:template match="copyright" mode="chapter.titlepage.recto.auto.mode">
2002<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="chapter.titlepage.recto.style">
2003<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
2004</fo:block>
2005</xsl:template>
2006
2007<xsl:template match="legalnotice" mode="chapter.titlepage.recto.auto.mode">
2008<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="chapter.titlepage.recto.style">
2009<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
2010</fo:block>
2011</xsl:template>
2012
2013<xsl:template match="pubdate" mode="chapter.titlepage.recto.auto.mode">
2014<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="chapter.titlepage.recto.style">
2015<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
2016</fo:block>
2017</xsl:template>
2018
2019<xsl:template match="revision" mode="chapter.titlepage.recto.auto.mode">
2020<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="chapter.titlepage.recto.style">
2021<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
2022</fo:block>
2023</xsl:template>
2024
2025<xsl:template match="revhistory" mode="chapter.titlepage.recto.auto.mode">
2026<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="chapter.titlepage.recto.style">
2027<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
2028</fo:block>
2029</xsl:template>
2030
2031<xsl:template match="abstract" mode="chapter.titlepage.recto.auto.mode">
2032<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="chapter.titlepage.recto.style">
2033<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/>
2034</fo:block>
2035</xsl:template>
2036
2037<xsl:template name="appendix.titlepage.recto">
2038  <xsl:choose>
2039    <xsl:when test="appendixinfo/title">
2040      <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/title"/>
2041    </xsl:when>
2042    <xsl:when test="docinfo/title">
2043      <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/title"/>
2044    </xsl:when>
2045    <xsl:when test="info/title">
2046      <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/title"/>
2047    </xsl:when>
2048    <xsl:when test="title">
2049      <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="title"/>
2050    </xsl:when>
2051  </xsl:choose>
2052
2053  <xsl:choose>
2054    <xsl:when test="appendixinfo/subtitle">
2055      <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/subtitle"/>
2056    </xsl:when>
2057    <xsl:when test="docinfo/subtitle">
2058      <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
2059    </xsl:when>
2060    <xsl:when test="info/subtitle">
2061      <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/subtitle"/>
2062    </xsl:when>
2063    <xsl:when test="subtitle">
2064      <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="subtitle"/>
2065    </xsl:when>
2066  </xsl:choose>
2067
2068  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/corpauthor"/>
2069  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/corpauthor"/>
2070  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/corpauthor"/>
2071  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/authorgroup"/>
2072  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/authorgroup"/>
2073  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/authorgroup"/>
2074  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/author"/>
2075  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/author"/>
2076  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/author"/>
2077  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/othercredit"/>
2078  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/othercredit"/>
2079  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/othercredit"/>
2080  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/releaseinfo"/>
2081  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/>
2082  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/releaseinfo"/>
2083  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/copyright"/>
2084  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/copyright"/>
2085  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/copyright"/>
2086  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/legalnotice"/>
2087  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/legalnotice"/>
2088  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/legalnotice"/>
2089  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/pubdate"/>
2090  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/pubdate"/>
2091  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/pubdate"/>
2092  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/revision"/>
2093  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/revision"/>
2094  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/revision"/>
2095  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/revhistory"/>
2096  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/revhistory"/>
2097  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/revhistory"/>
2098  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/abstract"/>
2099  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/abstract"/>
2100  <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/abstract"/>
2101</xsl:template>
2102
2103<xsl:template name="appendix.titlepage.verso">
2104</xsl:template>
2105
2106<xsl:template name="appendix.titlepage.separator">
2107</xsl:template>
2108
2109<xsl:template name="appendix.titlepage.before.recto">
2110</xsl:template>
2111
2112<xsl:template name="appendix.titlepage.before.verso">
2113</xsl:template>
2114
2115<xsl:template name="appendix.titlepage">
2116  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
2117    <xsl:variable name="recto.content">
2118      <xsl:call-template name="appendix.titlepage.before.recto"/>
2119      <xsl:call-template name="appendix.titlepage.recto"/>
2120    </xsl:variable>
2121    <xsl:variable name="recto.elements.count">
2122      <xsl:choose>
2123        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
2124        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
2125          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
2126        <xsl:otherwise>1</xsl:otherwise>
2127      </xsl:choose>
2128    </xsl:variable>
2129    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
2130      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
2131    </xsl:if>
2132    <xsl:variable name="verso.content">
2133      <xsl:call-template name="appendix.titlepage.before.verso"/>
2134      <xsl:call-template name="appendix.titlepage.verso"/>
2135    </xsl:variable>
2136    <xsl:variable name="verso.elements.count">
2137      <xsl:choose>
2138        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
2139        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
2140          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
2141        <xsl:otherwise>1</xsl:otherwise>
2142      </xsl:choose>
2143    </xsl:variable>
2144    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
2145      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
2146    </xsl:if>
2147    <xsl:call-template name="appendix.titlepage.separator"/>
2148  </fo:block>
2149</xsl:template>
2150
2151<xsl:template match="*" mode="appendix.titlepage.recto.mode">
2152  <!-- if an element isn't found in this mode, -->
2153  <!-- try the generic titlepage.mode -->
2154  <xsl:apply-templates select="." mode="titlepage.mode"/>
2155</xsl:template>
2156
2157<xsl:template match="*" mode="appendix.titlepage.verso.mode">
2158  <!-- if an element isn't found in this mode, -->
2159  <!-- try the generic titlepage.mode -->
2160  <xsl:apply-templates select="." mode="titlepage.mode"/>
2161</xsl:template>
2162
2163<xsl:template match="title" mode="appendix.titlepage.recto.auto.mode">
2164<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="24.8832pt" font-weight="bold" font-family="{$title.fontset}">
2165<xsl:call-template name="component.title">
2166<xsl:with-param name="node" select="ancestor-or-self::appendix[1]"/>
2167</xsl:call-template>
2168</fo:block>
2169</xsl:template>
2170
2171<xsl:template match="subtitle" mode="appendix.titlepage.recto.auto.mode">
2172<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style" font-family="{$title.fontset}">
2173<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
2174</fo:block>
2175</xsl:template>
2176
2177<xsl:template match="corpauthor" mode="appendix.titlepage.recto.auto.mode">
2178<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style">
2179<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
2180</fo:block>
2181</xsl:template>
2182
2183<xsl:template match="authorgroup" mode="appendix.titlepage.recto.auto.mode">
2184<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style">
2185<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
2186</fo:block>
2187</xsl:template>
2188
2189<xsl:template match="author" mode="appendix.titlepage.recto.auto.mode">
2190<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style">
2191<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
2192</fo:block>
2193</xsl:template>
2194
2195<xsl:template match="othercredit" mode="appendix.titlepage.recto.auto.mode">
2196<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style">
2197<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
2198</fo:block>
2199</xsl:template>
2200
2201<xsl:template match="releaseinfo" mode="appendix.titlepage.recto.auto.mode">
2202<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style">
2203<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
2204</fo:block>
2205</xsl:template>
2206
2207<xsl:template match="copyright" mode="appendix.titlepage.recto.auto.mode">
2208<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style">
2209<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
2210</fo:block>
2211</xsl:template>
2212
2213<xsl:template match="legalnotice" mode="appendix.titlepage.recto.auto.mode">
2214<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style">
2215<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
2216</fo:block>
2217</xsl:template>
2218
2219<xsl:template match="pubdate" mode="appendix.titlepage.recto.auto.mode">
2220<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style">
2221<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
2222</fo:block>
2223</xsl:template>
2224
2225<xsl:template match="revision" mode="appendix.titlepage.recto.auto.mode">
2226<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style">
2227<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
2228</fo:block>
2229</xsl:template>
2230
2231<xsl:template match="revhistory" mode="appendix.titlepage.recto.auto.mode">
2232<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style">
2233<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
2234</fo:block>
2235</xsl:template>
2236
2237<xsl:template match="abstract" mode="appendix.titlepage.recto.auto.mode">
2238<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style">
2239<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/>
2240</fo:block>
2241</xsl:template>
2242
2243<xsl:template name="section.titlepage.recto">
2244  <xsl:choose>
2245    <xsl:when test="sectioninfo/title">
2246      <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/title"/>
2247    </xsl:when>
2248    <xsl:when test="info/title">
2249      <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/title"/>
2250    </xsl:when>
2251    <xsl:when test="title">
2252      <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="title"/>
2253    </xsl:when>
2254  </xsl:choose>
2255
2256  <xsl:choose>
2257    <xsl:when test="sectioninfo/subtitle">
2258      <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/subtitle"/>
2259    </xsl:when>
2260    <xsl:when test="info/subtitle">
2261      <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/subtitle"/>
2262    </xsl:when>
2263    <xsl:when test="subtitle">
2264      <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="subtitle"/>
2265    </xsl:when>
2266  </xsl:choose>
2267
2268  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/corpauthor"/>
2269  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/corpauthor"/>
2270  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/authorgroup"/>
2271  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/authorgroup"/>
2272  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/author"/>
2273  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/author"/>
2274  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/othercredit"/>
2275  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/othercredit"/>
2276  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/releaseinfo"/>
2277  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/releaseinfo"/>
2278  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/copyright"/>
2279  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/copyright"/>
2280  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/legalnotice"/>
2281  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/legalnotice"/>
2282  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/pubdate"/>
2283  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/pubdate"/>
2284  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/revision"/>
2285  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/revision"/>
2286  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/revhistory"/>
2287  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/revhistory"/>
2288  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/abstract"/>
2289  <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/abstract"/>
2290</xsl:template>
2291
2292<xsl:template name="section.titlepage.verso">
2293</xsl:template>
2294
2295<xsl:template name="section.titlepage.separator">
2296</xsl:template>
2297
2298<xsl:template name="section.titlepage.before.recto">
2299</xsl:template>
2300
2301<xsl:template name="section.titlepage.before.verso">
2302</xsl:template>
2303
2304<xsl:template name="section.titlepage">
2305  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
2306    <xsl:variable name="recto.content">
2307      <xsl:call-template name="section.titlepage.before.recto"/>
2308      <xsl:call-template name="section.titlepage.recto"/>
2309    </xsl:variable>
2310    <xsl:variable name="recto.elements.count">
2311      <xsl:choose>
2312        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
2313        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
2314          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
2315        <xsl:otherwise>1</xsl:otherwise>
2316      </xsl:choose>
2317    </xsl:variable>
2318    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
2319      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
2320    </xsl:if>
2321    <xsl:variable name="verso.content">
2322      <xsl:call-template name="section.titlepage.before.verso"/>
2323      <xsl:call-template name="section.titlepage.verso"/>
2324    </xsl:variable>
2325    <xsl:variable name="verso.elements.count">
2326      <xsl:choose>
2327        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
2328        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
2329          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
2330        <xsl:otherwise>1</xsl:otherwise>
2331      </xsl:choose>
2332    </xsl:variable>
2333    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
2334      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
2335    </xsl:if>
2336    <xsl:call-template name="section.titlepage.separator"/>
2337  </fo:block>
2338</xsl:template>
2339
2340<xsl:template match="*" mode="section.titlepage.recto.mode">
2341  <!-- if an element isn't found in this mode, -->
2342  <!-- try the generic titlepage.mode -->
2343  <xsl:apply-templates select="." mode="titlepage.mode"/>
2344</xsl:template>
2345
2346<xsl:template match="*" mode="section.titlepage.verso.mode">
2347  <!-- if an element isn't found in this mode, -->
2348  <!-- try the generic titlepage.mode -->
2349  <xsl:apply-templates select="." mode="titlepage.mode"/>
2350</xsl:template>
2351
2352<xsl:template match="title" mode="section.titlepage.recto.auto.mode">
2353<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style" margin-left="{$title.margin.left}" font-family="{$title.fontset}">
2354<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
2355</fo:block>
2356</xsl:template>
2357
2358<xsl:template match="subtitle" mode="section.titlepage.recto.auto.mode">
2359<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style" font-family="{$title.fontset}">
2360<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
2361</fo:block>
2362</xsl:template>
2363
2364<xsl:template match="corpauthor" mode="section.titlepage.recto.auto.mode">
2365<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style">
2366<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
2367</fo:block>
2368</xsl:template>
2369
2370<xsl:template match="authorgroup" mode="section.titlepage.recto.auto.mode">
2371<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style">
2372<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
2373</fo:block>
2374</xsl:template>
2375
2376<xsl:template match="author" mode="section.titlepage.recto.auto.mode">
2377<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style">
2378<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
2379</fo:block>
2380</xsl:template>
2381
2382<xsl:template match="othercredit" mode="section.titlepage.recto.auto.mode">
2383<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style">
2384<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
2385</fo:block>
2386</xsl:template>
2387
2388<xsl:template match="releaseinfo" mode="section.titlepage.recto.auto.mode">
2389<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style">
2390<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
2391</fo:block>
2392</xsl:template>
2393
2394<xsl:template match="copyright" mode="section.titlepage.recto.auto.mode">
2395<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style">
2396<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
2397</fo:block>
2398</xsl:template>
2399
2400<xsl:template match="legalnotice" mode="section.titlepage.recto.auto.mode">
2401<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style">
2402<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
2403</fo:block>
2404</xsl:template>
2405
2406<xsl:template match="pubdate" mode="section.titlepage.recto.auto.mode">
2407<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style">
2408<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
2409</fo:block>
2410</xsl:template>
2411
2412<xsl:template match="revision" mode="section.titlepage.recto.auto.mode">
2413<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style">
2414<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
2415</fo:block>
2416</xsl:template>
2417
2418<xsl:template match="revhistory" mode="section.titlepage.recto.auto.mode">
2419<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style">
2420<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
2421</fo:block>
2422</xsl:template>
2423
2424<xsl:template match="abstract" mode="section.titlepage.recto.auto.mode">
2425<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style">
2426<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/>
2427</fo:block>
2428</xsl:template>
2429
2430<xsl:template name="sect1.titlepage.recto">
2431  <xsl:choose>
2432    <xsl:when test="sect1info/title">
2433      <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/title"/>
2434    </xsl:when>
2435    <xsl:when test="info/title">
2436      <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/title"/>
2437    </xsl:when>
2438    <xsl:when test="title">
2439      <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="title"/>
2440    </xsl:when>
2441  </xsl:choose>
2442
2443  <xsl:choose>
2444    <xsl:when test="sect1info/subtitle">
2445      <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/subtitle"/>
2446    </xsl:when>
2447    <xsl:when test="info/subtitle">
2448      <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/subtitle"/>
2449    </xsl:when>
2450    <xsl:when test="subtitle">
2451      <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="subtitle"/>
2452    </xsl:when>
2453  </xsl:choose>
2454
2455  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/corpauthor"/>
2456  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/corpauthor"/>
2457  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/authorgroup"/>
2458  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/authorgroup"/>
2459  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/author"/>
2460  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/author"/>
2461  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/othercredit"/>
2462  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/othercredit"/>
2463  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/releaseinfo"/>
2464  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/releaseinfo"/>
2465  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/copyright"/>
2466  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/copyright"/>
2467  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/legalnotice"/>
2468  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/legalnotice"/>
2469  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/pubdate"/>
2470  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/pubdate"/>
2471  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/revision"/>
2472  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/revision"/>
2473  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/revhistory"/>
2474  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/revhistory"/>
2475  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/abstract"/>
2476  <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/abstract"/>
2477</xsl:template>
2478
2479<xsl:template name="sect1.titlepage.verso">
2480</xsl:template>
2481
2482<xsl:template name="sect1.titlepage.separator">
2483</xsl:template>
2484
2485<xsl:template name="sect1.titlepage.before.recto">
2486</xsl:template>
2487
2488<xsl:template name="sect1.titlepage.before.verso">
2489</xsl:template>
2490
2491<xsl:template name="sect1.titlepage">
2492  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
2493    <xsl:variable name="recto.content">
2494      <xsl:call-template name="sect1.titlepage.before.recto"/>
2495      <xsl:call-template name="sect1.titlepage.recto"/>
2496    </xsl:variable>
2497    <xsl:variable name="recto.elements.count">
2498      <xsl:choose>
2499        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
2500        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
2501          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
2502        <xsl:otherwise>1</xsl:otherwise>
2503      </xsl:choose>
2504    </xsl:variable>
2505    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
2506      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
2507    </xsl:if>
2508    <xsl:variable name="verso.content">
2509      <xsl:call-template name="sect1.titlepage.before.verso"/>
2510      <xsl:call-template name="sect1.titlepage.verso"/>
2511    </xsl:variable>
2512    <xsl:variable name="verso.elements.count">
2513      <xsl:choose>
2514        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
2515        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
2516          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
2517        <xsl:otherwise>1</xsl:otherwise>
2518      </xsl:choose>
2519    </xsl:variable>
2520    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
2521      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
2522    </xsl:if>
2523    <xsl:call-template name="sect1.titlepage.separator"/>
2524  </fo:block>
2525</xsl:template>
2526
2527<xsl:template match="*" mode="sect1.titlepage.recto.mode">
2528  <!-- if an element isn't found in this mode, -->
2529  <!-- try the generic titlepage.mode -->
2530  <xsl:apply-templates select="." mode="titlepage.mode"/>
2531</xsl:template>
2532
2533<xsl:template match="*" mode="sect1.titlepage.verso.mode">
2534  <!-- if an element isn't found in this mode, -->
2535  <!-- try the generic titlepage.mode -->
2536  <xsl:apply-templates select="." mode="titlepage.mode"/>
2537</xsl:template>
2538
2539<xsl:template match="title" mode="sect1.titlepage.recto.auto.mode">
2540<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style" margin-left="{$title.margin.left}" font-family="{$title.fontset}">
2541<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/>
2542</fo:block>
2543</xsl:template>
2544
2545<xsl:template match="subtitle" mode="sect1.titlepage.recto.auto.mode">
2546<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style" font-family="{$title.fontset}">
2547<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/>
2548</fo:block>
2549</xsl:template>
2550
2551<xsl:template match="corpauthor" mode="sect1.titlepage.recto.auto.mode">
2552<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style">
2553<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/>
2554</fo:block>
2555</xsl:template>
2556
2557<xsl:template match="authorgroup" mode="sect1.titlepage.recto.auto.mode">
2558<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style">
2559<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/>
2560</fo:block>
2561</xsl:template>
2562
2563<xsl:template match="author" mode="sect1.titlepage.recto.auto.mode">
2564<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style">
2565<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/>
2566</fo:block>
2567</xsl:template>
2568
2569<xsl:template match="othercredit" mode="sect1.titlepage.recto.auto.mode">
2570<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style">
2571<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/>
2572</fo:block>
2573</xsl:template>
2574
2575<xsl:template match="releaseinfo" mode="sect1.titlepage.recto.auto.mode">
2576<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style">
2577<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/>
2578</fo:block>
2579</xsl:template>
2580
2581<xsl:template match="copyright" mode="sect1.titlepage.recto.auto.mode">
2582<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style">
2583<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/>
2584</fo:block>
2585</xsl:template>
2586
2587<xsl:template match="legalnotice" mode="sect1.titlepage.recto.auto.mode">
2588<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style">
2589<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/>
2590</fo:block>
2591</xsl:template>
2592
2593<xsl:template match="pubdate" mode="sect1.titlepage.recto.auto.mode">
2594<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style">
2595<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/>
2596</fo:block>
2597</xsl:template>
2598
2599<xsl:template match="revision" mode="sect1.titlepage.recto.auto.mode">
2600<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style">
2601<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/>
2602</fo:block>
2603</xsl:template>
2604
2605<xsl:template match="revhistory" mode="sect1.titlepage.recto.auto.mode">
2606<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style">
2607<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/>
2608</fo:block>
2609</xsl:template>
2610
2611<xsl:template match="abstract" mode="sect1.titlepage.recto.auto.mode">
2612<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style">
2613<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/>
2614</fo:block>
2615</xsl:template>
2616
2617<xsl:template name="sect2.titlepage.recto">
2618  <xsl:choose>
2619    <xsl:when test="sect2info/title">
2620      <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/title"/>
2621    </xsl:when>
2622    <xsl:when test="info/title">
2623      <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/title"/>
2624    </xsl:when>
2625    <xsl:when test="title">
2626      <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="title"/>
2627    </xsl:when>
2628  </xsl:choose>
2629
2630  <xsl:choose>
2631    <xsl:when test="sect2info/subtitle">
2632      <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/subtitle"/>
2633    </xsl:when>
2634    <xsl:when test="info/subtitle">
2635      <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/subtitle"/>
2636    </xsl:when>
2637    <xsl:when test="subtitle">
2638      <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="subtitle"/>
2639    </xsl:when>
2640  </xsl:choose>
2641
2642  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/corpauthor"/>
2643  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/corpauthor"/>
2644  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/authorgroup"/>
2645  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/authorgroup"/>
2646  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/author"/>
2647  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/author"/>
2648  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/othercredit"/>
2649  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/othercredit"/>
2650  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/releaseinfo"/>
2651  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/releaseinfo"/>
2652  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/copyright"/>
2653  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/copyright"/>
2654  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/legalnotice"/>
2655  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/legalnotice"/>
2656  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/pubdate"/>
2657  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/pubdate"/>
2658  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/revision"/>
2659  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/revision"/>
2660  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/revhistory"/>
2661  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/revhistory"/>
2662  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/abstract"/>
2663  <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/abstract"/>
2664</xsl:template>
2665
2666<xsl:template name="sect2.titlepage.verso">
2667</xsl:template>
2668
2669<xsl:template name="sect2.titlepage.separator">
2670</xsl:template>
2671
2672<xsl:template name="sect2.titlepage.before.recto">
2673</xsl:template>
2674
2675<xsl:template name="sect2.titlepage.before.verso">
2676</xsl:template>
2677
2678<xsl:template name="sect2.titlepage">
2679  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
2680    <xsl:variable name="recto.content">
2681      <xsl:call-template name="sect2.titlepage.before.recto"/>
2682      <xsl:call-template name="sect2.titlepage.recto"/>
2683    </xsl:variable>
2684    <xsl:variable name="recto.elements.count">
2685      <xsl:choose>
2686        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
2687        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
2688          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
2689        <xsl:otherwise>1</xsl:otherwise>
2690      </xsl:choose>
2691    </xsl:variable>
2692    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
2693      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
2694    </xsl:if>
2695    <xsl:variable name="verso.content">
2696      <xsl:call-template name="sect2.titlepage.before.verso"/>
2697      <xsl:call-template name="sect2.titlepage.verso"/>
2698    </xsl:variable>
2699    <xsl:variable name="verso.elements.count">
2700      <xsl:choose>
2701        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
2702        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
2703          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
2704        <xsl:otherwise>1</xsl:otherwise>
2705      </xsl:choose>
2706    </xsl:variable>
2707    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
2708      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
2709    </xsl:if>
2710    <xsl:call-template name="sect2.titlepage.separator"/>
2711  </fo:block>
2712</xsl:template>
2713
2714<xsl:template match="*" mode="sect2.titlepage.recto.mode">
2715  <!-- if an element isn't found in this mode, -->
2716  <!-- try the generic titlepage.mode -->
2717  <xsl:apply-templates select="." mode="titlepage.mode"/>
2718</xsl:template>
2719
2720<xsl:template match="*" mode="sect2.titlepage.verso.mode">
2721  <!-- if an element isn't found in this mode, -->
2722  <!-- try the generic titlepage.mode -->
2723  <xsl:apply-templates select="." mode="titlepage.mode"/>
2724</xsl:template>
2725
2726<xsl:template match="title" mode="sect2.titlepage.recto.auto.mode">
2727<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style" margin-left="{$title.margin.left}" font-family="{$title.fontset}">
2728<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/>
2729</fo:block>
2730</xsl:template>
2731
2732<xsl:template match="subtitle" mode="sect2.titlepage.recto.auto.mode">
2733<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style" font-family="{$title.fontset}">
2734<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/>
2735</fo:block>
2736</xsl:template>
2737
2738<xsl:template match="corpauthor" mode="sect2.titlepage.recto.auto.mode">
2739<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style">
2740<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/>
2741</fo:block>
2742</xsl:template>
2743
2744<xsl:template match="authorgroup" mode="sect2.titlepage.recto.auto.mode">
2745<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style">
2746<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/>
2747</fo:block>
2748</xsl:template>
2749
2750<xsl:template match="author" mode="sect2.titlepage.recto.auto.mode">
2751<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style">
2752<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/>
2753</fo:block>
2754</xsl:template>
2755
2756<xsl:template match="othercredit" mode="sect2.titlepage.recto.auto.mode">
2757<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style">
2758<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/>
2759</fo:block>
2760</xsl:template>
2761
2762<xsl:template match="releaseinfo" mode="sect2.titlepage.recto.auto.mode">
2763<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style">
2764<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/>
2765</fo:block>
2766</xsl:template>
2767
2768<xsl:template match="copyright" mode="sect2.titlepage.recto.auto.mode">
2769<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style">
2770<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/>
2771</fo:block>
2772</xsl:template>
2773
2774<xsl:template match="legalnotice" mode="sect2.titlepage.recto.auto.mode">
2775<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style">
2776<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/>
2777</fo:block>
2778</xsl:template>
2779
2780<xsl:template match="pubdate" mode="sect2.titlepage.recto.auto.mode">
2781<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style">
2782<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/>
2783</fo:block>
2784</xsl:template>
2785
2786<xsl:template match="revision" mode="sect2.titlepage.recto.auto.mode">
2787<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style">
2788<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/>
2789</fo:block>
2790</xsl:template>
2791
2792<xsl:template match="revhistory" mode="sect2.titlepage.recto.auto.mode">
2793<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style">
2794<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/>
2795</fo:block>
2796</xsl:template>
2797
2798<xsl:template match="abstract" mode="sect2.titlepage.recto.auto.mode">
2799<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style">
2800<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/>
2801</fo:block>
2802</xsl:template>
2803
2804<xsl:template name="sect3.titlepage.recto">
2805  <xsl:choose>
2806    <xsl:when test="sect3info/title">
2807      <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/title"/>
2808    </xsl:when>
2809    <xsl:when test="info/title">
2810      <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/title"/>
2811    </xsl:when>
2812    <xsl:when test="title">
2813      <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="title"/>
2814    </xsl:when>
2815  </xsl:choose>
2816
2817  <xsl:choose>
2818    <xsl:when test="sect3info/subtitle">
2819      <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/subtitle"/>
2820    </xsl:when>
2821    <xsl:when test="info/subtitle">
2822      <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/subtitle"/>
2823    </xsl:when>
2824    <xsl:when test="subtitle">
2825      <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="subtitle"/>
2826    </xsl:when>
2827  </xsl:choose>
2828
2829  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/corpauthor"/>
2830  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/corpauthor"/>
2831  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/authorgroup"/>
2832  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/authorgroup"/>
2833  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/author"/>
2834  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/author"/>
2835  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/othercredit"/>
2836  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/othercredit"/>
2837  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/releaseinfo"/>
2838  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/releaseinfo"/>
2839  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/copyright"/>
2840  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/copyright"/>
2841  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/legalnotice"/>
2842  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/legalnotice"/>
2843  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/pubdate"/>
2844  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/pubdate"/>
2845  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/revision"/>
2846  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/revision"/>
2847  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/revhistory"/>
2848  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/revhistory"/>
2849  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/abstract"/>
2850  <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/abstract"/>
2851</xsl:template>
2852
2853<xsl:template name="sect3.titlepage.verso">
2854</xsl:template>
2855
2856<xsl:template name="sect3.titlepage.separator">
2857</xsl:template>
2858
2859<xsl:template name="sect3.titlepage.before.recto">
2860</xsl:template>
2861
2862<xsl:template name="sect3.titlepage.before.verso">
2863</xsl:template>
2864
2865<xsl:template name="sect3.titlepage">
2866  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
2867    <xsl:variable name="recto.content">
2868      <xsl:call-template name="sect3.titlepage.before.recto"/>
2869      <xsl:call-template name="sect3.titlepage.recto"/>
2870    </xsl:variable>
2871    <xsl:variable name="recto.elements.count">
2872      <xsl:choose>
2873        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
2874        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
2875          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
2876        <xsl:otherwise>1</xsl:otherwise>
2877      </xsl:choose>
2878    </xsl:variable>
2879    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
2880      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
2881    </xsl:if>
2882    <xsl:variable name="verso.content">
2883      <xsl:call-template name="sect3.titlepage.before.verso"/>
2884      <xsl:call-template name="sect3.titlepage.verso"/>
2885    </xsl:variable>
2886    <xsl:variable name="verso.elements.count">
2887      <xsl:choose>
2888        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
2889        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
2890          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
2891        <xsl:otherwise>1</xsl:otherwise>
2892      </xsl:choose>
2893    </xsl:variable>
2894    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
2895      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
2896    </xsl:if>
2897    <xsl:call-template name="sect3.titlepage.separator"/>
2898  </fo:block>
2899</xsl:template>
2900
2901<xsl:template match="*" mode="sect3.titlepage.recto.mode">
2902  <!-- if an element isn't found in this mode, -->
2903  <!-- try the generic titlepage.mode -->
2904  <xsl:apply-templates select="." mode="titlepage.mode"/>
2905</xsl:template>
2906
2907<xsl:template match="*" mode="sect3.titlepage.verso.mode">
2908  <!-- if an element isn't found in this mode, -->
2909  <!-- try the generic titlepage.mode -->
2910  <xsl:apply-templates select="." mode="titlepage.mode"/>
2911</xsl:template>
2912
2913<xsl:template match="title" mode="sect3.titlepage.recto.auto.mode">
2914<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style" margin-left="{$title.margin.left}" font-family="{$title.fontset}">
2915<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/>
2916</fo:block>
2917</xsl:template>
2918
2919<xsl:template match="subtitle" mode="sect3.titlepage.recto.auto.mode">
2920<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style" font-family="{$title.fontset}">
2921<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/>
2922</fo:block>
2923</xsl:template>
2924
2925<xsl:template match="corpauthor" mode="sect3.titlepage.recto.auto.mode">
2926<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style">
2927<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/>
2928</fo:block>
2929</xsl:template>
2930
2931<xsl:template match="authorgroup" mode="sect3.titlepage.recto.auto.mode">
2932<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style">
2933<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/>
2934</fo:block>
2935</xsl:template>
2936
2937<xsl:template match="author" mode="sect3.titlepage.recto.auto.mode">
2938<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style">
2939<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/>
2940</fo:block>
2941</xsl:template>
2942
2943<xsl:template match="othercredit" mode="sect3.titlepage.recto.auto.mode">
2944<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style">
2945<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/>
2946</fo:block>
2947</xsl:template>
2948
2949<xsl:template match="releaseinfo" mode="sect3.titlepage.recto.auto.mode">
2950<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style">
2951<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/>
2952</fo:block>
2953</xsl:template>
2954
2955<xsl:template match="copyright" mode="sect3.titlepage.recto.auto.mode">
2956<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style">
2957<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/>
2958</fo:block>
2959</xsl:template>
2960
2961<xsl:template match="legalnotice" mode="sect3.titlepage.recto.auto.mode">
2962<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style">
2963<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/>
2964</fo:block>
2965</xsl:template>
2966
2967<xsl:template match="pubdate" mode="sect3.titlepage.recto.auto.mode">
2968<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style">
2969<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/>
2970</fo:block>
2971</xsl:template>
2972
2973<xsl:template match="revision" mode="sect3.titlepage.recto.auto.mode">
2974<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style">
2975<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/>
2976</fo:block>
2977</xsl:template>
2978
2979<xsl:template match="revhistory" mode="sect3.titlepage.recto.auto.mode">
2980<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style">
2981<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/>
2982</fo:block>
2983</xsl:template>
2984
2985<xsl:template match="abstract" mode="sect3.titlepage.recto.auto.mode">
2986<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style">
2987<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/>
2988</fo:block>
2989</xsl:template>
2990
2991<xsl:template name="sect4.titlepage.recto">
2992  <xsl:choose>
2993    <xsl:when test="sect4info/title">
2994      <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/title"/>
2995    </xsl:when>
2996    <xsl:when test="info/title">
2997      <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/title"/>
2998    </xsl:when>
2999    <xsl:when test="title">
3000      <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="title"/>
3001    </xsl:when>
3002  </xsl:choose>
3003
3004  <xsl:choose>
3005    <xsl:when test="sect4info/subtitle">
3006      <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/subtitle"/>
3007    </xsl:when>
3008    <xsl:when test="info/subtitle">
3009      <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/subtitle"/>
3010    </xsl:when>
3011    <xsl:when test="subtitle">
3012      <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="subtitle"/>
3013    </xsl:when>
3014  </xsl:choose>
3015
3016  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/corpauthor"/>
3017  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/corpauthor"/>
3018  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/authorgroup"/>
3019  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/authorgroup"/>
3020  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/author"/>
3021  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/author"/>
3022  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/othercredit"/>
3023  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/othercredit"/>
3024  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/releaseinfo"/>
3025  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/releaseinfo"/>
3026  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/copyright"/>
3027  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/copyright"/>
3028  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/legalnotice"/>
3029  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/legalnotice"/>
3030  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/pubdate"/>
3031  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/pubdate"/>
3032  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/revision"/>
3033  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/revision"/>
3034  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/revhistory"/>
3035  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/revhistory"/>
3036  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/abstract"/>
3037  <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/abstract"/>
3038</xsl:template>
3039
3040<xsl:template name="sect4.titlepage.verso">
3041</xsl:template>
3042
3043<xsl:template name="sect4.titlepage.separator">
3044</xsl:template>
3045
3046<xsl:template name="sect4.titlepage.before.recto">
3047</xsl:template>
3048
3049<xsl:template name="sect4.titlepage.before.verso">
3050</xsl:template>
3051
3052<xsl:template name="sect4.titlepage">
3053  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
3054    <xsl:variable name="recto.content">
3055      <xsl:call-template name="sect4.titlepage.before.recto"/>
3056      <xsl:call-template name="sect4.titlepage.recto"/>
3057    </xsl:variable>
3058    <xsl:variable name="recto.elements.count">
3059      <xsl:choose>
3060        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
3061        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
3062          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
3063        <xsl:otherwise>1</xsl:otherwise>
3064      </xsl:choose>
3065    </xsl:variable>
3066    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
3067      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
3068    </xsl:if>
3069    <xsl:variable name="verso.content">
3070      <xsl:call-template name="sect4.titlepage.before.verso"/>
3071      <xsl:call-template name="sect4.titlepage.verso"/>
3072    </xsl:variable>
3073    <xsl:variable name="verso.elements.count">
3074      <xsl:choose>
3075        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
3076        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
3077          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
3078        <xsl:otherwise>1</xsl:otherwise>
3079      </xsl:choose>
3080    </xsl:variable>
3081    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
3082      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
3083    </xsl:if>
3084    <xsl:call-template name="sect4.titlepage.separator"/>
3085  </fo:block>
3086</xsl:template>
3087
3088<xsl:template match="*" mode="sect4.titlepage.recto.mode">
3089  <!-- if an element isn't found in this mode, -->
3090  <!-- try the generic titlepage.mode -->
3091  <xsl:apply-templates select="." mode="titlepage.mode"/>
3092</xsl:template>
3093
3094<xsl:template match="*" mode="sect4.titlepage.verso.mode">
3095  <!-- if an element isn't found in this mode, -->
3096  <!-- try the generic titlepage.mode -->
3097  <xsl:apply-templates select="." mode="titlepage.mode"/>
3098</xsl:template>
3099
3100<xsl:template match="title" mode="sect4.titlepage.recto.auto.mode">
3101<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style" margin-left="{$title.margin.left}" font-family="{$title.fontset}">
3102<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/>
3103</fo:block>
3104</xsl:template>
3105
3106<xsl:template match="subtitle" mode="sect4.titlepage.recto.auto.mode">
3107<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style" font-family="{$title.fontset}">
3108<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/>
3109</fo:block>
3110</xsl:template>
3111
3112<xsl:template match="corpauthor" mode="sect4.titlepage.recto.auto.mode">
3113<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style">
3114<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/>
3115</fo:block>
3116</xsl:template>
3117
3118<xsl:template match="authorgroup" mode="sect4.titlepage.recto.auto.mode">
3119<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style">
3120<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/>
3121</fo:block>
3122</xsl:template>
3123
3124<xsl:template match="author" mode="sect4.titlepage.recto.auto.mode">
3125<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style">
3126<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/>
3127</fo:block>
3128</xsl:template>
3129
3130<xsl:template match="othercredit" mode="sect4.titlepage.recto.auto.mode">
3131<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style">
3132<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/>
3133</fo:block>
3134</xsl:template>
3135
3136<xsl:template match="releaseinfo" mode="sect4.titlepage.recto.auto.mode">
3137<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style">
3138<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/>
3139</fo:block>
3140</xsl:template>
3141
3142<xsl:template match="copyright" mode="sect4.titlepage.recto.auto.mode">
3143<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style">
3144<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/>
3145</fo:block>
3146</xsl:template>
3147
3148<xsl:template match="legalnotice" mode="sect4.titlepage.recto.auto.mode">
3149<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style">
3150<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/>
3151</fo:block>
3152</xsl:template>
3153
3154<xsl:template match="pubdate" mode="sect4.titlepage.recto.auto.mode">
3155<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style">
3156<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/>
3157</fo:block>
3158</xsl:template>
3159
3160<xsl:template match="revision" mode="sect4.titlepage.recto.auto.mode">
3161<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style">
3162<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/>
3163</fo:block>
3164</xsl:template>
3165
3166<xsl:template match="revhistory" mode="sect4.titlepage.recto.auto.mode">
3167<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style">
3168<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/>
3169</fo:block>
3170</xsl:template>
3171
3172<xsl:template match="abstract" mode="sect4.titlepage.recto.auto.mode">
3173<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style">
3174<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/>
3175</fo:block>
3176</xsl:template>
3177
3178<xsl:template name="sect5.titlepage.recto">
3179  <xsl:choose>
3180    <xsl:when test="sect5info/title">
3181      <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/title"/>
3182    </xsl:when>
3183    <xsl:when test="info/title">
3184      <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/title"/>
3185    </xsl:when>
3186    <xsl:when test="title">
3187      <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="title"/>
3188    </xsl:when>
3189  </xsl:choose>
3190
3191  <xsl:choose>
3192    <xsl:when test="sect5info/subtitle">
3193      <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/subtitle"/>
3194    </xsl:when>
3195    <xsl:when test="info/subtitle">
3196      <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/subtitle"/>
3197    </xsl:when>
3198    <xsl:when test="subtitle">
3199      <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="subtitle"/>
3200    </xsl:when>
3201  </xsl:choose>
3202
3203  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/corpauthor"/>
3204  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/corpauthor"/>
3205  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/authorgroup"/>
3206  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/authorgroup"/>
3207  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/author"/>
3208  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/author"/>
3209  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/othercredit"/>
3210  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/othercredit"/>
3211  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/releaseinfo"/>
3212  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/releaseinfo"/>
3213  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/copyright"/>
3214  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/copyright"/>
3215  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/legalnotice"/>
3216  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/legalnotice"/>
3217  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/pubdate"/>
3218  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/pubdate"/>
3219  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/revision"/>
3220  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/revision"/>
3221  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/revhistory"/>
3222  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/revhistory"/>
3223  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/abstract"/>
3224  <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/abstract"/>
3225</xsl:template>
3226
3227<xsl:template name="sect5.titlepage.verso">
3228</xsl:template>
3229
3230<xsl:template name="sect5.titlepage.separator">
3231</xsl:template>
3232
3233<xsl:template name="sect5.titlepage.before.recto">
3234</xsl:template>
3235
3236<xsl:template name="sect5.titlepage.before.verso">
3237</xsl:template>
3238
3239<xsl:template name="sect5.titlepage">
3240  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
3241    <xsl:variable name="recto.content">
3242      <xsl:call-template name="sect5.titlepage.before.recto"/>
3243      <xsl:call-template name="sect5.titlepage.recto"/>
3244    </xsl:variable>
3245    <xsl:variable name="recto.elements.count">
3246      <xsl:choose>
3247        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
3248        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
3249          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
3250        <xsl:otherwise>1</xsl:otherwise>
3251      </xsl:choose>
3252    </xsl:variable>
3253    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
3254      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
3255    </xsl:if>
3256    <xsl:variable name="verso.content">
3257      <xsl:call-template name="sect5.titlepage.before.verso"/>
3258      <xsl:call-template name="sect5.titlepage.verso"/>
3259    </xsl:variable>
3260    <xsl:variable name="verso.elements.count">
3261      <xsl:choose>
3262        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
3263        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
3264          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
3265        <xsl:otherwise>1</xsl:otherwise>
3266      </xsl:choose>
3267    </xsl:variable>
3268    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
3269      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
3270    </xsl:if>
3271    <xsl:call-template name="sect5.titlepage.separator"/>
3272  </fo:block>
3273</xsl:template>
3274
3275<xsl:template match="*" mode="sect5.titlepage.recto.mode">
3276  <!-- if an element isn't found in this mode, -->
3277  <!-- try the generic titlepage.mode -->
3278  <xsl:apply-templates select="." mode="titlepage.mode"/>
3279</xsl:template>
3280
3281<xsl:template match="*" mode="sect5.titlepage.verso.mode">
3282  <!-- if an element isn't found in this mode, -->
3283  <!-- try the generic titlepage.mode -->
3284  <xsl:apply-templates select="." mode="titlepage.mode"/>
3285</xsl:template>
3286
3287<xsl:template match="title" mode="sect5.titlepage.recto.auto.mode">
3288<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style" margin-left="{$title.margin.left}" font-family="{$title.fontset}">
3289<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/>
3290</fo:block>
3291</xsl:template>
3292
3293<xsl:template match="subtitle" mode="sect5.titlepage.recto.auto.mode">
3294<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style" font-family="{$title.fontset}">
3295<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/>
3296</fo:block>
3297</xsl:template>
3298
3299<xsl:template match="corpauthor" mode="sect5.titlepage.recto.auto.mode">
3300<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style">
3301<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/>
3302</fo:block>
3303</xsl:template>
3304
3305<xsl:template match="authorgroup" mode="sect5.titlepage.recto.auto.mode">
3306<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style">
3307<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/>
3308</fo:block>
3309</xsl:template>
3310
3311<xsl:template match="author" mode="sect5.titlepage.recto.auto.mode">
3312<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style">
3313<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/>
3314</fo:block>
3315</xsl:template>
3316
3317<xsl:template match="othercredit" mode="sect5.titlepage.recto.auto.mode">
3318<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style">
3319<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/>
3320</fo:block>
3321</xsl:template>
3322
3323<xsl:template match="releaseinfo" mode="sect5.titlepage.recto.auto.mode">
3324<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style">
3325<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/>
3326</fo:block>
3327</xsl:template>
3328
3329<xsl:template match="copyright" mode="sect5.titlepage.recto.auto.mode">
3330<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style">
3331<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/>
3332</fo:block>
3333</xsl:template>
3334
3335<xsl:template match="legalnotice" mode="sect5.titlepage.recto.auto.mode">
3336<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style">
3337<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/>
3338</fo:block>
3339</xsl:template>
3340
3341<xsl:template match="pubdate" mode="sect5.titlepage.recto.auto.mode">
3342<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style">
3343<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/>
3344</fo:block>
3345</xsl:template>
3346
3347<xsl:template match="revision" mode="sect5.titlepage.recto.auto.mode">
3348<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style">
3349<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/>
3350</fo:block>
3351</xsl:template>
3352
3353<xsl:template match="revhistory" mode="sect5.titlepage.recto.auto.mode">
3354<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style">
3355<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/>
3356</fo:block>
3357</xsl:template>
3358
3359<xsl:template match="abstract" mode="sect5.titlepage.recto.auto.mode">
3360<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style">
3361<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/>
3362</fo:block>
3363</xsl:template>
3364
3365<xsl:template name="simplesect.titlepage.recto">
3366  <xsl:choose>
3367    <xsl:when test="simplesectinfo/title">
3368      <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/title"/>
3369    </xsl:when>
3370    <xsl:when test="docinfo/title">
3371      <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/title"/>
3372    </xsl:when>
3373    <xsl:when test="info/title">
3374      <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/title"/>
3375    </xsl:when>
3376    <xsl:when test="title">
3377      <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="title"/>
3378    </xsl:when>
3379  </xsl:choose>
3380
3381  <xsl:choose>
3382    <xsl:when test="simplesectinfo/subtitle">
3383      <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/subtitle"/>
3384    </xsl:when>
3385    <xsl:when test="docinfo/subtitle">
3386      <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
3387    </xsl:when>
3388    <xsl:when test="info/subtitle">
3389      <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/subtitle"/>
3390    </xsl:when>
3391    <xsl:when test="subtitle">
3392      <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="subtitle"/>
3393    </xsl:when>
3394  </xsl:choose>
3395
3396  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/corpauthor"/>
3397  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/corpauthor"/>
3398  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/corpauthor"/>
3399  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/authorgroup"/>
3400  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/authorgroup"/>
3401  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/authorgroup"/>
3402  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/author"/>
3403  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/author"/>
3404  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/author"/>
3405  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/othercredit"/>
3406  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/othercredit"/>
3407  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/othercredit"/>
3408  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/releaseinfo"/>
3409  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/>
3410  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/releaseinfo"/>
3411  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/copyright"/>
3412  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/copyright"/>
3413  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/copyright"/>
3414  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/legalnotice"/>
3415  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/legalnotice"/>
3416  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/legalnotice"/>
3417  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/pubdate"/>
3418  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/pubdate"/>
3419  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/pubdate"/>
3420  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/revision"/>
3421  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/revision"/>
3422  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/revision"/>
3423  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/revhistory"/>
3424  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/revhistory"/>
3425  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/revhistory"/>
3426  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/abstract"/>
3427  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/abstract"/>
3428  <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/abstract"/>
3429</xsl:template>
3430
3431<xsl:template name="simplesect.titlepage.verso">
3432</xsl:template>
3433
3434<xsl:template name="simplesect.titlepage.separator">
3435</xsl:template>
3436
3437<xsl:template name="simplesect.titlepage.before.recto">
3438</xsl:template>
3439
3440<xsl:template name="simplesect.titlepage.before.verso">
3441</xsl:template>
3442
3443<xsl:template name="simplesect.titlepage">
3444  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
3445    <xsl:variable name="recto.content">
3446      <xsl:call-template name="simplesect.titlepage.before.recto"/>
3447      <xsl:call-template name="simplesect.titlepage.recto"/>
3448    </xsl:variable>
3449    <xsl:variable name="recto.elements.count">
3450      <xsl:choose>
3451        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
3452        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
3453          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
3454        <xsl:otherwise>1</xsl:otherwise>
3455      </xsl:choose>
3456    </xsl:variable>
3457    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
3458      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
3459    </xsl:if>
3460    <xsl:variable name="verso.content">
3461      <xsl:call-template name="simplesect.titlepage.before.verso"/>
3462      <xsl:call-template name="simplesect.titlepage.verso"/>
3463    </xsl:variable>
3464    <xsl:variable name="verso.elements.count">
3465      <xsl:choose>
3466        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
3467        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
3468          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
3469        <xsl:otherwise>1</xsl:otherwise>
3470      </xsl:choose>
3471    </xsl:variable>
3472    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
3473      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
3474    </xsl:if>
3475    <xsl:call-template name="simplesect.titlepage.separator"/>
3476  </fo:block>
3477</xsl:template>
3478
3479<xsl:template match="*" mode="simplesect.titlepage.recto.mode">
3480  <!-- if an element isn't found in this mode, -->
3481  <!-- try the generic titlepage.mode -->
3482  <xsl:apply-templates select="." mode="titlepage.mode"/>
3483</xsl:template>
3484
3485<xsl:template match="*" mode="simplesect.titlepage.verso.mode">
3486  <!-- if an element isn't found in this mode, -->
3487  <!-- try the generic titlepage.mode -->
3488  <xsl:apply-templates select="." mode="titlepage.mode"/>
3489</xsl:template>
3490
3491<xsl:template match="title" mode="simplesect.titlepage.recto.auto.mode">
3492<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style" margin-left="{$title.margin.left}" font-family="{$title.fontset}">
3493<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
3494</fo:block>
3495</xsl:template>
3496
3497<xsl:template match="subtitle" mode="simplesect.titlepage.recto.auto.mode">
3498<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style" font-family="{$title.fontset}">
3499<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
3500</fo:block>
3501</xsl:template>
3502
3503<xsl:template match="corpauthor" mode="simplesect.titlepage.recto.auto.mode">
3504<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style">
3505<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
3506</fo:block>
3507</xsl:template>
3508
3509<xsl:template match="authorgroup" mode="simplesect.titlepage.recto.auto.mode">
3510<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style">
3511<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
3512</fo:block>
3513</xsl:template>
3514
3515<xsl:template match="author" mode="simplesect.titlepage.recto.auto.mode">
3516<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style">
3517<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
3518</fo:block>
3519</xsl:template>
3520
3521<xsl:template match="othercredit" mode="simplesect.titlepage.recto.auto.mode">
3522<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style">
3523<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
3524</fo:block>
3525</xsl:template>
3526
3527<xsl:template match="releaseinfo" mode="simplesect.titlepage.recto.auto.mode">
3528<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style">
3529<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
3530</fo:block>
3531</xsl:template>
3532
3533<xsl:template match="copyright" mode="simplesect.titlepage.recto.auto.mode">
3534<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style">
3535<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
3536</fo:block>
3537</xsl:template>
3538
3539<xsl:template match="legalnotice" mode="simplesect.titlepage.recto.auto.mode">
3540<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style">
3541<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
3542</fo:block>
3543</xsl:template>
3544
3545<xsl:template match="pubdate" mode="simplesect.titlepage.recto.auto.mode">
3546<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style">
3547<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
3548</fo:block>
3549</xsl:template>
3550
3551<xsl:template match="revision" mode="simplesect.titlepage.recto.auto.mode">
3552<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style">
3553<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
3554</fo:block>
3555</xsl:template>
3556
3557<xsl:template match="revhistory" mode="simplesect.titlepage.recto.auto.mode">
3558<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style">
3559<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
3560</fo:block>
3561</xsl:template>
3562
3563<xsl:template match="abstract" mode="simplesect.titlepage.recto.auto.mode">
3564<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style">
3565<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/>
3566</fo:block>
3567</xsl:template>
3568
3569<xsl:template name="bibliography.titlepage.recto">
3570  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="bibliography.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="24.8832pt" font-family="{$title.fontset}" font-weight="bold">
3571<xsl:call-template name="component.title">
3572<xsl:with-param name="node" select="ancestor-or-self::bibliography[1]"/>
3573</xsl:call-template></fo:block>
3574  <xsl:choose>
3575    <xsl:when test="bibliographyinfo/subtitle">
3576      <xsl:apply-templates mode="bibliography.titlepage.recto.auto.mode" select="bibliographyinfo/subtitle"/>
3577    </xsl:when>
3578    <xsl:when test="docinfo/subtitle">
3579      <xsl:apply-templates mode="bibliography.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
3580    </xsl:when>
3581    <xsl:when test="info/subtitle">
3582      <xsl:apply-templates mode="bibliography.titlepage.recto.auto.mode" select="info/subtitle"/>
3583    </xsl:when>
3584    <xsl:when test="subtitle">
3585      <xsl:apply-templates mode="bibliography.titlepage.recto.auto.mode" select="subtitle"/>
3586    </xsl:when>
3587  </xsl:choose>
3588
3589</xsl:template>
3590
3591<xsl:template name="bibliography.titlepage.verso">
3592</xsl:template>
3593
3594<xsl:template name="bibliography.titlepage.separator">
3595</xsl:template>
3596
3597<xsl:template name="bibliography.titlepage.before.recto">
3598</xsl:template>
3599
3600<xsl:template name="bibliography.titlepage.before.verso">
3601</xsl:template>
3602
3603<xsl:template name="bibliography.titlepage">
3604  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
3605    <xsl:variable name="recto.content">
3606      <xsl:call-template name="bibliography.titlepage.before.recto"/>
3607      <xsl:call-template name="bibliography.titlepage.recto"/>
3608    </xsl:variable>
3609    <xsl:variable name="recto.elements.count">
3610      <xsl:choose>
3611        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
3612        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
3613          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
3614        <xsl:otherwise>1</xsl:otherwise>
3615      </xsl:choose>
3616    </xsl:variable>
3617    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
3618      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
3619    </xsl:if>
3620    <xsl:variable name="verso.content">
3621      <xsl:call-template name="bibliography.titlepage.before.verso"/>
3622      <xsl:call-template name="bibliography.titlepage.verso"/>
3623    </xsl:variable>
3624    <xsl:variable name="verso.elements.count">
3625      <xsl:choose>
3626        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
3627        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
3628          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
3629        <xsl:otherwise>1</xsl:otherwise>
3630      </xsl:choose>
3631    </xsl:variable>
3632    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
3633      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
3634    </xsl:if>
3635    <xsl:call-template name="bibliography.titlepage.separator"/>
3636  </fo:block>
3637</xsl:template>
3638
3639<xsl:template match="*" mode="bibliography.titlepage.recto.mode">
3640  <!-- if an element isn't found in this mode, -->
3641  <!-- try the generic titlepage.mode -->
3642  <xsl:apply-templates select="." mode="titlepage.mode"/>
3643</xsl:template>
3644
3645<xsl:template match="*" mode="bibliography.titlepage.verso.mode">
3646  <!-- if an element isn't found in this mode, -->
3647  <!-- try the generic titlepage.mode -->
3648  <xsl:apply-templates select="." mode="titlepage.mode"/>
3649</xsl:template>
3650
3651<xsl:template match="subtitle" mode="bibliography.titlepage.recto.auto.mode">
3652<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="bibliography.titlepage.recto.style" font-family="{$title.fontset}">
3653<xsl:apply-templates select="." mode="bibliography.titlepage.recto.mode"/>
3654</fo:block>
3655</xsl:template>
3656
3657<xsl:template name="bibliodiv.titlepage.recto">
3658  <xsl:choose>
3659    <xsl:when test="bibliodivinfo/title">
3660      <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="bibliodivinfo/title"/>
3661    </xsl:when>
3662    <xsl:when test="docinfo/title">
3663      <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="docinfo/title"/>
3664    </xsl:when>
3665    <xsl:when test="info/title">
3666      <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="info/title"/>
3667    </xsl:when>
3668    <xsl:when test="title">
3669      <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="title"/>
3670    </xsl:when>
3671  </xsl:choose>
3672
3673  <xsl:choose>
3674    <xsl:when test="bibliodivinfo/subtitle">
3675      <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="bibliodivinfo/subtitle"/>
3676    </xsl:when>
3677    <xsl:when test="docinfo/subtitle">
3678      <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
3679    </xsl:when>
3680    <xsl:when test="info/subtitle">
3681      <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="info/subtitle"/>
3682    </xsl:when>
3683    <xsl:when test="subtitle">
3684      <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="subtitle"/>
3685    </xsl:when>
3686  </xsl:choose>
3687
3688</xsl:template>
3689
3690<xsl:template name="bibliodiv.titlepage.verso">
3691</xsl:template>
3692
3693<xsl:template name="bibliodiv.titlepage.separator">
3694</xsl:template>
3695
3696<xsl:template name="bibliodiv.titlepage.before.recto">
3697</xsl:template>
3698
3699<xsl:template name="bibliodiv.titlepage.before.verso">
3700</xsl:template>
3701
3702<xsl:template name="bibliodiv.titlepage">
3703  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
3704    <xsl:variable name="recto.content">
3705      <xsl:call-template name="bibliodiv.titlepage.before.recto"/>
3706      <xsl:call-template name="bibliodiv.titlepage.recto"/>
3707    </xsl:variable>
3708    <xsl:variable name="recto.elements.count">
3709      <xsl:choose>
3710        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
3711        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
3712          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
3713        <xsl:otherwise>1</xsl:otherwise>
3714      </xsl:choose>
3715    </xsl:variable>
3716    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
3717      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
3718    </xsl:if>
3719    <xsl:variable name="verso.content">
3720      <xsl:call-template name="bibliodiv.titlepage.before.verso"/>
3721      <xsl:call-template name="bibliodiv.titlepage.verso"/>
3722    </xsl:variable>
3723    <xsl:variable name="verso.elements.count">
3724      <xsl:choose>
3725        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
3726        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
3727          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
3728        <xsl:otherwise>1</xsl:otherwise>
3729      </xsl:choose>
3730    </xsl:variable>
3731    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
3732      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
3733    </xsl:if>
3734    <xsl:call-template name="bibliodiv.titlepage.separator"/>
3735  </fo:block>
3736</xsl:template>
3737
3738<xsl:template match="*" mode="bibliodiv.titlepage.recto.mode">
3739  <!-- if an element isn't found in this mode, -->
3740  <!-- try the generic titlepage.mode -->
3741  <xsl:apply-templates select="." mode="titlepage.mode"/>
3742</xsl:template>
3743
3744<xsl:template match="*" mode="bibliodiv.titlepage.verso.mode">
3745  <!-- if an element isn't found in this mode, -->
3746  <!-- try the generic titlepage.mode -->
3747  <xsl:apply-templates select="." mode="titlepage.mode"/>
3748</xsl:template>
3749
3750<xsl:template match="title" mode="bibliodiv.titlepage.recto.auto.mode">
3751<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="bibliodiv.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="20.736pt" font-family="{$title.fontset}" font-weight="bold">
3752<xsl:call-template name="component.title">
3753<xsl:with-param name="node" select="ancestor-or-self::bibliodiv[1]"/>
3754</xsl:call-template>
3755</fo:block>
3756</xsl:template>
3757
3758<xsl:template match="subtitle" mode="bibliodiv.titlepage.recto.auto.mode">
3759<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="bibliodiv.titlepage.recto.style" font-family="{$title.fontset}">
3760<xsl:apply-templates select="." mode="bibliodiv.titlepage.recto.mode"/>
3761</fo:block>
3762</xsl:template>
3763
3764<xsl:template name="glossary.titlepage.recto">
3765  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="glossary.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="24.8832pt" font-family="{$title.fontset}" font-weight="bold">
3766<xsl:call-template name="component.title">
3767<xsl:with-param name="node" select="ancestor-or-self::glossary[1]"/>
3768</xsl:call-template></fo:block>
3769  <xsl:choose>
3770    <xsl:when test="glossaryinfo/subtitle">
3771      <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="glossaryinfo/subtitle"/>
3772    </xsl:when>
3773    <xsl:when test="docinfo/subtitle">
3774      <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
3775    </xsl:when>
3776    <xsl:when test="info/subtitle">
3777      <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="info/subtitle"/>
3778    </xsl:when>
3779    <xsl:when test="subtitle">
3780      <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="subtitle"/>
3781    </xsl:when>
3782  </xsl:choose>
3783
3784</xsl:template>
3785
3786<xsl:template name="glossary.titlepage.verso">
3787</xsl:template>
3788
3789<xsl:template name="glossary.titlepage.separator">
3790</xsl:template>
3791
3792<xsl:template name="glossary.titlepage.before.recto">
3793</xsl:template>
3794
3795<xsl:template name="glossary.titlepage.before.verso">
3796</xsl:template>
3797
3798<xsl:template name="glossary.titlepage">
3799  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
3800    <xsl:variable name="recto.content">
3801      <xsl:call-template name="glossary.titlepage.before.recto"/>
3802      <xsl:call-template name="glossary.titlepage.recto"/>
3803    </xsl:variable>
3804    <xsl:variable name="recto.elements.count">
3805      <xsl:choose>
3806        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
3807        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
3808          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
3809        <xsl:otherwise>1</xsl:otherwise>
3810      </xsl:choose>
3811    </xsl:variable>
3812    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
3813      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
3814    </xsl:if>
3815    <xsl:variable name="verso.content">
3816      <xsl:call-template name="glossary.titlepage.before.verso"/>
3817      <xsl:call-template name="glossary.titlepage.verso"/>
3818    </xsl:variable>
3819    <xsl:variable name="verso.elements.count">
3820      <xsl:choose>
3821        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
3822        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
3823          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
3824        <xsl:otherwise>1</xsl:otherwise>
3825      </xsl:choose>
3826    </xsl:variable>
3827    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
3828      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
3829    </xsl:if>
3830    <xsl:call-template name="glossary.titlepage.separator"/>
3831  </fo:block>
3832</xsl:template>
3833
3834<xsl:template match="*" mode="glossary.titlepage.recto.mode">
3835  <!-- if an element isn't found in this mode, -->
3836  <!-- try the generic titlepage.mode -->
3837  <xsl:apply-templates select="." mode="titlepage.mode"/>
3838</xsl:template>
3839
3840<xsl:template match="*" mode="glossary.titlepage.verso.mode">
3841  <!-- if an element isn't found in this mode, -->
3842  <!-- try the generic titlepage.mode -->
3843  <xsl:apply-templates select="." mode="titlepage.mode"/>
3844</xsl:template>
3845
3846<xsl:template match="subtitle" mode="glossary.titlepage.recto.auto.mode">
3847<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="glossary.titlepage.recto.style" font-family="{$title.fontset}">
3848<xsl:apply-templates select="." mode="glossary.titlepage.recto.mode"/>
3849</fo:block>
3850</xsl:template>
3851
3852<xsl:template name="glossdiv.titlepage.recto">
3853  <xsl:choose>
3854    <xsl:when test="glossdivinfo/title">
3855      <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="glossdivinfo/title"/>
3856    </xsl:when>
3857    <xsl:when test="docinfo/title">
3858      <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="docinfo/title"/>
3859    </xsl:when>
3860    <xsl:when test="info/title">
3861      <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="info/title"/>
3862    </xsl:when>
3863    <xsl:when test="title">
3864      <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="title"/>
3865    </xsl:when>
3866  </xsl:choose>
3867
3868  <xsl:choose>
3869    <xsl:when test="glossdivinfo/subtitle">
3870      <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="glossdivinfo/subtitle"/>
3871    </xsl:when>
3872    <xsl:when test="docinfo/subtitle">
3873      <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
3874    </xsl:when>
3875    <xsl:when test="info/subtitle">
3876      <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="info/subtitle"/>
3877    </xsl:when>
3878    <xsl:when test="subtitle">
3879      <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="subtitle"/>
3880    </xsl:when>
3881  </xsl:choose>
3882
3883</xsl:template>
3884
3885<xsl:template name="glossdiv.titlepage.verso">
3886</xsl:template>
3887
3888<xsl:template name="glossdiv.titlepage.separator">
3889</xsl:template>
3890
3891<xsl:template name="glossdiv.titlepage.before.recto">
3892</xsl:template>
3893
3894<xsl:template name="glossdiv.titlepage.before.verso">
3895</xsl:template>
3896
3897<xsl:template name="glossdiv.titlepage">
3898  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
3899    <xsl:variable name="recto.content">
3900      <xsl:call-template name="glossdiv.titlepage.before.recto"/>
3901      <xsl:call-template name="glossdiv.titlepage.recto"/>
3902    </xsl:variable>
3903    <xsl:variable name="recto.elements.count">
3904      <xsl:choose>
3905        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
3906        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
3907          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
3908        <xsl:otherwise>1</xsl:otherwise>
3909      </xsl:choose>
3910    </xsl:variable>
3911    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
3912      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
3913    </xsl:if>
3914    <xsl:variable name="verso.content">
3915      <xsl:call-template name="glossdiv.titlepage.before.verso"/>
3916      <xsl:call-template name="glossdiv.titlepage.verso"/>
3917    </xsl:variable>
3918    <xsl:variable name="verso.elements.count">
3919      <xsl:choose>
3920        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
3921        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
3922          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
3923        <xsl:otherwise>1</xsl:otherwise>
3924      </xsl:choose>
3925    </xsl:variable>
3926    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
3927      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
3928    </xsl:if>
3929    <xsl:call-template name="glossdiv.titlepage.separator"/>
3930  </fo:block>
3931</xsl:template>
3932
3933<xsl:template match="*" mode="glossdiv.titlepage.recto.mode">
3934  <!-- if an element isn't found in this mode, -->
3935  <!-- try the generic titlepage.mode -->
3936  <xsl:apply-templates select="." mode="titlepage.mode"/>
3937</xsl:template>
3938
3939<xsl:template match="*" mode="glossdiv.titlepage.verso.mode">
3940  <!-- if an element isn't found in this mode, -->
3941  <!-- try the generic titlepage.mode -->
3942  <xsl:apply-templates select="." mode="titlepage.mode"/>
3943</xsl:template>
3944
3945<xsl:template match="title" mode="glossdiv.titlepage.recto.auto.mode">
3946<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="glossdiv.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="20.736pt" font-family="{$title.fontset}" font-weight="bold">
3947<xsl:call-template name="component.title">
3948<xsl:with-param name="node" select="ancestor-or-self::glossdiv[1]"/>
3949</xsl:call-template>
3950</fo:block>
3951</xsl:template>
3952
3953<xsl:template match="subtitle" mode="glossdiv.titlepage.recto.auto.mode">
3954<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="glossdiv.titlepage.recto.style" font-family="{$title.fontset}">
3955<xsl:apply-templates select="." mode="glossdiv.titlepage.recto.mode"/>
3956</fo:block>
3957</xsl:template>
3958
3959<xsl:template name="index.titlepage.recto">
3960  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="index.titlepage.recto.style" margin-left="0pt" font-size="24.8832pt" font-family="{$title.fontset}" font-weight="bold">
3961<xsl:call-template name="component.title">
3962<xsl:with-param name="node" select="ancestor-or-self::index[1]"/>
3963<xsl:with-param name="pagewide" select="1"/>
3964</xsl:call-template></fo:block>
3965  <xsl:choose>
3966    <xsl:when test="indexinfo/subtitle">
3967      <xsl:apply-templates mode="index.titlepage.recto.auto.mode" select="indexinfo/subtitle"/>
3968    </xsl:when>
3969    <xsl:when test="docinfo/subtitle">
3970      <xsl:apply-templates mode="index.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
3971    </xsl:when>
3972    <xsl:when test="info/subtitle">
3973      <xsl:apply-templates mode="index.titlepage.recto.auto.mode" select="info/subtitle"/>
3974    </xsl:when>
3975    <xsl:when test="subtitle">
3976      <xsl:apply-templates mode="index.titlepage.recto.auto.mode" select="subtitle"/>
3977    </xsl:when>
3978  </xsl:choose>
3979
3980</xsl:template>
3981
3982<xsl:template name="index.titlepage.verso">
3983</xsl:template>
3984
3985<xsl:template name="index.titlepage.separator">
3986</xsl:template>
3987
3988<xsl:template name="index.titlepage.before.recto">
3989</xsl:template>
3990
3991<xsl:template name="index.titlepage.before.verso">
3992</xsl:template>
3993
3994<xsl:template name="index.titlepage">
3995  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
3996    <xsl:variable name="recto.content">
3997      <xsl:call-template name="index.titlepage.before.recto"/>
3998      <xsl:call-template name="index.titlepage.recto"/>
3999    </xsl:variable>
4000    <xsl:variable name="recto.elements.count">
4001      <xsl:choose>
4002        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4003        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4004          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4005        <xsl:otherwise>1</xsl:otherwise>
4006      </xsl:choose>
4007    </xsl:variable>
4008    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
4009      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
4010    </xsl:if>
4011    <xsl:variable name="verso.content">
4012      <xsl:call-template name="index.titlepage.before.verso"/>
4013      <xsl:call-template name="index.titlepage.verso"/>
4014    </xsl:variable>
4015    <xsl:variable name="verso.elements.count">
4016      <xsl:choose>
4017        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4018        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4019          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4020        <xsl:otherwise>1</xsl:otherwise>
4021      </xsl:choose>
4022    </xsl:variable>
4023    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
4024      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
4025    </xsl:if>
4026    <xsl:call-template name="index.titlepage.separator"/>
4027  </fo:block>
4028</xsl:template>
4029
4030<xsl:template match="*" mode="index.titlepage.recto.mode">
4031  <!-- if an element isn't found in this mode, -->
4032  <!-- try the generic titlepage.mode -->
4033  <xsl:apply-templates select="." mode="titlepage.mode"/>
4034</xsl:template>
4035
4036<xsl:template match="*" mode="index.titlepage.verso.mode">
4037  <!-- if an element isn't found in this mode, -->
4038  <!-- try the generic titlepage.mode -->
4039  <xsl:apply-templates select="." mode="titlepage.mode"/>
4040</xsl:template>
4041
4042<xsl:template match="subtitle" mode="index.titlepage.recto.auto.mode">
4043<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="index.titlepage.recto.style" font-family="{$title.fontset}">
4044<xsl:apply-templates select="." mode="index.titlepage.recto.mode"/>
4045</fo:block>
4046</xsl:template>
4047
4048<xsl:template name="indexdiv.titlepage.recto">
4049  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="indexdiv.titlepage.recto.style">
4050<xsl:call-template name="indexdiv.title">
4051<xsl:with-param name="title" select="title"/>
4052</xsl:call-template></fo:block>
4053  <xsl:choose>
4054    <xsl:when test="indexdivinfo/subtitle">
4055      <xsl:apply-templates mode="indexdiv.titlepage.recto.auto.mode" select="indexdivinfo/subtitle"/>
4056    </xsl:when>
4057    <xsl:when test="docinfo/subtitle">
4058      <xsl:apply-templates mode="indexdiv.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
4059    </xsl:when>
4060    <xsl:when test="info/subtitle">
4061      <xsl:apply-templates mode="indexdiv.titlepage.recto.auto.mode" select="info/subtitle"/>
4062    </xsl:when>
4063    <xsl:when test="subtitle">
4064      <xsl:apply-templates mode="indexdiv.titlepage.recto.auto.mode" select="subtitle"/>
4065    </xsl:when>
4066  </xsl:choose>
4067
4068</xsl:template>
4069
4070<xsl:template name="indexdiv.titlepage.verso">
4071</xsl:template>
4072
4073<xsl:template name="indexdiv.titlepage.separator">
4074</xsl:template>
4075
4076<xsl:template name="indexdiv.titlepage.before.recto">
4077</xsl:template>
4078
4079<xsl:template name="indexdiv.titlepage.before.verso">
4080</xsl:template>
4081
4082<xsl:template name="indexdiv.titlepage">
4083  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
4084    <xsl:variable name="recto.content">
4085      <xsl:call-template name="indexdiv.titlepage.before.recto"/>
4086      <xsl:call-template name="indexdiv.titlepage.recto"/>
4087    </xsl:variable>
4088    <xsl:variable name="recto.elements.count">
4089      <xsl:choose>
4090        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4091        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4092          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4093        <xsl:otherwise>1</xsl:otherwise>
4094      </xsl:choose>
4095    </xsl:variable>
4096    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
4097      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
4098    </xsl:if>
4099    <xsl:variable name="verso.content">
4100      <xsl:call-template name="indexdiv.titlepage.before.verso"/>
4101      <xsl:call-template name="indexdiv.titlepage.verso"/>
4102    </xsl:variable>
4103    <xsl:variable name="verso.elements.count">
4104      <xsl:choose>
4105        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4106        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4107          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4108        <xsl:otherwise>1</xsl:otherwise>
4109      </xsl:choose>
4110    </xsl:variable>
4111    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
4112      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
4113    </xsl:if>
4114    <xsl:call-template name="indexdiv.titlepage.separator"/>
4115  </fo:block>
4116</xsl:template>
4117
4118<xsl:template match="*" mode="indexdiv.titlepage.recto.mode">
4119  <!-- if an element isn't found in this mode, -->
4120  <!-- try the generic titlepage.mode -->
4121  <xsl:apply-templates select="." mode="titlepage.mode"/>
4122</xsl:template>
4123
4124<xsl:template match="*" mode="indexdiv.titlepage.verso.mode">
4125  <!-- if an element isn't found in this mode, -->
4126  <!-- try the generic titlepage.mode -->
4127  <xsl:apply-templates select="." mode="titlepage.mode"/>
4128</xsl:template>
4129
4130<xsl:template match="subtitle" mode="indexdiv.titlepage.recto.auto.mode">
4131<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="indexdiv.titlepage.recto.style" font-family="{$title.fontset}">
4132<xsl:apply-templates select="." mode="indexdiv.titlepage.recto.mode"/>
4133</fo:block>
4134</xsl:template>
4135
4136<xsl:template name="setindex.titlepage.recto">
4137  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="setindex.titlepage.recto.style" margin-left="0pt" font-size="24.8832pt" font-family="{$title.fontset}" font-weight="bold">
4138<xsl:call-template name="component.title">
4139<xsl:with-param name="node" select="ancestor-or-self::setindex[1]"/>
4140<xsl:with-param name="pagewide" select="1"/>
4141</xsl:call-template></fo:block>
4142  <xsl:choose>
4143    <xsl:when test="setindexinfo/subtitle">
4144      <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="setindexinfo/subtitle"/>
4145    </xsl:when>
4146    <xsl:when test="docinfo/subtitle">
4147      <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
4148    </xsl:when>
4149    <xsl:when test="info/subtitle">
4150      <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="info/subtitle"/>
4151    </xsl:when>
4152    <xsl:when test="subtitle">
4153      <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="subtitle"/>
4154    </xsl:when>
4155  </xsl:choose>
4156
4157</xsl:template>
4158
4159<xsl:template name="setindex.titlepage.verso">
4160</xsl:template>
4161
4162<xsl:template name="setindex.titlepage.separator">
4163</xsl:template>
4164
4165<xsl:template name="setindex.titlepage.before.recto">
4166</xsl:template>
4167
4168<xsl:template name="setindex.titlepage.before.verso">
4169</xsl:template>
4170
4171<xsl:template name="setindex.titlepage">
4172  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
4173    <xsl:variable name="recto.content">
4174      <xsl:call-template name="setindex.titlepage.before.recto"/>
4175      <xsl:call-template name="setindex.titlepage.recto"/>
4176    </xsl:variable>
4177    <xsl:variable name="recto.elements.count">
4178      <xsl:choose>
4179        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4180        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4181          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4182        <xsl:otherwise>1</xsl:otherwise>
4183      </xsl:choose>
4184    </xsl:variable>
4185    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
4186      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
4187    </xsl:if>
4188    <xsl:variable name="verso.content">
4189      <xsl:call-template name="setindex.titlepage.before.verso"/>
4190      <xsl:call-template name="setindex.titlepage.verso"/>
4191    </xsl:variable>
4192    <xsl:variable name="verso.elements.count">
4193      <xsl:choose>
4194        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4195        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4196          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4197        <xsl:otherwise>1</xsl:otherwise>
4198      </xsl:choose>
4199    </xsl:variable>
4200    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
4201      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
4202    </xsl:if>
4203    <xsl:call-template name="setindex.titlepage.separator"/>
4204  </fo:block>
4205</xsl:template>
4206
4207<xsl:template match="*" mode="setindex.titlepage.recto.mode">
4208  <!-- if an element isn't found in this mode, -->
4209  <!-- try the generic titlepage.mode -->
4210  <xsl:apply-templates select="." mode="titlepage.mode"/>
4211</xsl:template>
4212
4213<xsl:template match="*" mode="setindex.titlepage.verso.mode">
4214  <!-- if an element isn't found in this mode, -->
4215  <!-- try the generic titlepage.mode -->
4216  <xsl:apply-templates select="." mode="titlepage.mode"/>
4217</xsl:template>
4218
4219<xsl:template match="subtitle" mode="setindex.titlepage.recto.auto.mode">
4220<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="setindex.titlepage.recto.style" font-family="{$title.fontset}">
4221<xsl:apply-templates select="." mode="setindex.titlepage.recto.mode"/>
4222</fo:block>
4223</xsl:template>
4224
4225<xsl:template name="colophon.titlepage.recto">
4226  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="colophon.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="24.8832pt" font-family="{$title.fontset}" font-weight="bold">
4227<xsl:call-template name="component.title">
4228<xsl:with-param name="node" select="ancestor-or-self::colophon[1]"/>
4229</xsl:call-template></fo:block>
4230  <xsl:choose>
4231    <xsl:when test="colophoninfo/subtitle">
4232      <xsl:apply-templates mode="colophon.titlepage.recto.auto.mode" select="colophoninfo/subtitle"/>
4233    </xsl:when>
4234    <xsl:when test="docinfo/subtitle">
4235      <xsl:apply-templates mode="colophon.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
4236    </xsl:when>
4237    <xsl:when test="info/subtitle">
4238      <xsl:apply-templates mode="colophon.titlepage.recto.auto.mode" select="info/subtitle"/>
4239    </xsl:when>
4240    <xsl:when test="subtitle">
4241      <xsl:apply-templates mode="colophon.titlepage.recto.auto.mode" select="subtitle"/>
4242    </xsl:when>
4243  </xsl:choose>
4244
4245</xsl:template>
4246
4247<xsl:template name="colophon.titlepage.verso">
4248</xsl:template>
4249
4250<xsl:template name="colophon.titlepage.separator">
4251</xsl:template>
4252
4253<xsl:template name="colophon.titlepage.before.recto">
4254</xsl:template>
4255
4256<xsl:template name="colophon.titlepage.before.verso">
4257</xsl:template>
4258
4259<xsl:template name="colophon.titlepage">
4260  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
4261    <xsl:variable name="recto.content">
4262      <xsl:call-template name="colophon.titlepage.before.recto"/>
4263      <xsl:call-template name="colophon.titlepage.recto"/>
4264    </xsl:variable>
4265    <xsl:variable name="recto.elements.count">
4266      <xsl:choose>
4267        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4268        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4269          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4270        <xsl:otherwise>1</xsl:otherwise>
4271      </xsl:choose>
4272    </xsl:variable>
4273    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
4274      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
4275    </xsl:if>
4276    <xsl:variable name="verso.content">
4277      <xsl:call-template name="colophon.titlepage.before.verso"/>
4278      <xsl:call-template name="colophon.titlepage.verso"/>
4279    </xsl:variable>
4280    <xsl:variable name="verso.elements.count">
4281      <xsl:choose>
4282        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4283        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4284          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4285        <xsl:otherwise>1</xsl:otherwise>
4286      </xsl:choose>
4287    </xsl:variable>
4288    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
4289      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
4290    </xsl:if>
4291    <xsl:call-template name="colophon.titlepage.separator"/>
4292  </fo:block>
4293</xsl:template>
4294
4295<xsl:template match="*" mode="colophon.titlepage.recto.mode">
4296  <!-- if an element isn't found in this mode, -->
4297  <!-- try the generic titlepage.mode -->
4298  <xsl:apply-templates select="." mode="titlepage.mode"/>
4299</xsl:template>
4300
4301<xsl:template match="*" mode="colophon.titlepage.verso.mode">
4302  <!-- if an element isn't found in this mode, -->
4303  <!-- try the generic titlepage.mode -->
4304  <xsl:apply-templates select="." mode="titlepage.mode"/>
4305</xsl:template>
4306
4307<xsl:template match="subtitle" mode="colophon.titlepage.recto.auto.mode">
4308<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="colophon.titlepage.recto.style" font-family="{$title.fontset}">
4309<xsl:apply-templates select="." mode="colophon.titlepage.recto.mode"/>
4310</fo:block>
4311</xsl:template>
4312
4313<xsl:template name="sidebar.titlepage.recto">
4314  <xsl:choose>
4315    <xsl:when test="sidebarinfo/title">
4316      <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="sidebarinfo/title"/>
4317    </xsl:when>
4318    <xsl:when test="docinfo/title">
4319      <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="docinfo/title"/>
4320    </xsl:when>
4321    <xsl:when test="info/title">
4322      <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="info/title"/>
4323    </xsl:when>
4324    <xsl:when test="title">
4325      <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="title"/>
4326    </xsl:when>
4327  </xsl:choose>
4328
4329  <xsl:choose>
4330    <xsl:when test="sidebarinfo/subtitle">
4331      <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="sidebarinfo/subtitle"/>
4332    </xsl:when>
4333    <xsl:when test="docinfo/subtitle">
4334      <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
4335    </xsl:when>
4336    <xsl:when test="info/subtitle">
4337      <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="info/subtitle"/>
4338    </xsl:when>
4339    <xsl:when test="subtitle">
4340      <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="subtitle"/>
4341    </xsl:when>
4342  </xsl:choose>
4343
4344</xsl:template>
4345
4346<xsl:template name="sidebar.titlepage.verso">
4347</xsl:template>
4348
4349<xsl:template name="sidebar.titlepage.separator">
4350</xsl:template>
4351
4352<xsl:template name="sidebar.titlepage.before.recto">
4353</xsl:template>
4354
4355<xsl:template name="sidebar.titlepage.before.verso">
4356</xsl:template>
4357
4358<xsl:template name="sidebar.titlepage">
4359  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
4360    <xsl:variable name="recto.content">
4361      <xsl:call-template name="sidebar.titlepage.before.recto"/>
4362      <xsl:call-template name="sidebar.titlepage.recto"/>
4363    </xsl:variable>
4364    <xsl:variable name="recto.elements.count">
4365      <xsl:choose>
4366        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4367        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4368          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4369        <xsl:otherwise>1</xsl:otherwise>
4370      </xsl:choose>
4371    </xsl:variable>
4372    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
4373      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
4374    </xsl:if>
4375    <xsl:variable name="verso.content">
4376      <xsl:call-template name="sidebar.titlepage.before.verso"/>
4377      <xsl:call-template name="sidebar.titlepage.verso"/>
4378    </xsl:variable>
4379    <xsl:variable name="verso.elements.count">
4380      <xsl:choose>
4381        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4382        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4383          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4384        <xsl:otherwise>1</xsl:otherwise>
4385      </xsl:choose>
4386    </xsl:variable>
4387    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
4388      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
4389    </xsl:if>
4390    <xsl:call-template name="sidebar.titlepage.separator"/>
4391  </fo:block>
4392</xsl:template>
4393
4394<xsl:template match="*" mode="sidebar.titlepage.recto.mode">
4395  <!-- if an element isn't found in this mode, -->
4396  <!-- try the generic titlepage.mode -->
4397  <xsl:apply-templates select="." mode="titlepage.mode"/>
4398</xsl:template>
4399
4400<xsl:template match="*" mode="sidebar.titlepage.verso.mode">
4401  <!-- if an element isn't found in this mode, -->
4402  <!-- try the generic titlepage.mode -->
4403  <xsl:apply-templates select="." mode="titlepage.mode"/>
4404</xsl:template>
4405
4406<xsl:template match="title" mode="sidebar.titlepage.recto.auto.mode">
4407<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sidebar.titlepage.recto.style" font-family="{$title.fontset}" font-weight="bold">
4408<xsl:apply-templates select="." mode="sidebar.titlepage.recto.mode"/>
4409</fo:block>
4410</xsl:template>
4411
4412<xsl:template match="subtitle" mode="sidebar.titlepage.recto.auto.mode">
4413<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sidebar.titlepage.recto.style" font-family="{$title.fontset}">
4414<xsl:apply-templates select="." mode="sidebar.titlepage.recto.mode"/>
4415</fo:block>
4416</xsl:template>
4417
4418<xsl:template name="qandaset.titlepage.recto">
4419  <xsl:choose>
4420    <xsl:when test="qandasetinfo/title">
4421      <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/title"/>
4422    </xsl:when>
4423    <xsl:when test="blockinfo/title">
4424      <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/title"/>
4425    </xsl:when>
4426    <xsl:when test="info/title">
4427      <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/title"/>
4428    </xsl:when>
4429    <xsl:when test="title">
4430      <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="title"/>
4431    </xsl:when>
4432  </xsl:choose>
4433
4434  <xsl:choose>
4435    <xsl:when test="qandasetinfo/subtitle">
4436      <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/subtitle"/>
4437    </xsl:when>
4438    <xsl:when test="blockinfo/subtitle">
4439      <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/subtitle"/>
4440    </xsl:when>
4441    <xsl:when test="info/subtitle">
4442      <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/subtitle"/>
4443    </xsl:when>
4444    <xsl:when test="subtitle">
4445      <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="subtitle"/>
4446    </xsl:when>
4447  </xsl:choose>
4448
4449  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/corpauthor"/>
4450  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/corpauthor"/>
4451  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/corpauthor"/>
4452  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/authorgroup"/>
4453  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/authorgroup"/>
4454  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/authorgroup"/>
4455  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/author"/>
4456  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/author"/>
4457  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/author"/>
4458  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/othercredit"/>
4459  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/othercredit"/>
4460  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/othercredit"/>
4461  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/releaseinfo"/>
4462  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/releaseinfo"/>
4463  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/releaseinfo"/>
4464  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/copyright"/>
4465  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/copyright"/>
4466  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/copyright"/>
4467  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/legalnotice"/>
4468  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/legalnotice"/>
4469  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/legalnotice"/>
4470  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/pubdate"/>
4471  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/pubdate"/>
4472  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/pubdate"/>
4473  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/revision"/>
4474  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/revision"/>
4475  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/revision"/>
4476  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/revhistory"/>
4477  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/revhistory"/>
4478  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/revhistory"/>
4479  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/abstract"/>
4480  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/abstract"/>
4481  <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/abstract"/>
4482</xsl:template>
4483
4484<xsl:template name="qandaset.titlepage.verso">
4485</xsl:template>
4486
4487<xsl:template name="qandaset.titlepage.separator">
4488</xsl:template>
4489
4490<xsl:template name="qandaset.titlepage.before.recto">
4491</xsl:template>
4492
4493<xsl:template name="qandaset.titlepage.before.verso">
4494</xsl:template>
4495
4496<xsl:template name="qandaset.titlepage">
4497  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="{$title.fontset}">
4498    <xsl:variable name="recto.content">
4499      <xsl:call-template name="qandaset.titlepage.before.recto"/>
4500      <xsl:call-template name="qandaset.titlepage.recto"/>
4501    </xsl:variable>
4502    <xsl:variable name="recto.elements.count">
4503      <xsl:choose>
4504        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4505        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4506          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4507        <xsl:otherwise>1</xsl:otherwise>
4508      </xsl:choose>
4509    </xsl:variable>
4510    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
4511      <fo:block start-indent="0pt" text-align="center"><xsl:copy-of select="$recto.content"/></fo:block>
4512    </xsl:if>
4513    <xsl:variable name="verso.content">
4514      <xsl:call-template name="qandaset.titlepage.before.verso"/>
4515      <xsl:call-template name="qandaset.titlepage.verso"/>
4516    </xsl:variable>
4517    <xsl:variable name="verso.elements.count">
4518      <xsl:choose>
4519        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4520        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4521          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4522        <xsl:otherwise>1</xsl:otherwise>
4523      </xsl:choose>
4524    </xsl:variable>
4525    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
4526      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
4527    </xsl:if>
4528    <xsl:call-template name="qandaset.titlepage.separator"/>
4529  </fo:block>
4530</xsl:template>
4531
4532<xsl:template match="*" mode="qandaset.titlepage.recto.mode">
4533  <!-- if an element isn't found in this mode, -->
4534  <!-- try the generic titlepage.mode -->
4535  <xsl:apply-templates select="." mode="titlepage.mode"/>
4536</xsl:template>
4537
4538<xsl:template match="*" mode="qandaset.titlepage.verso.mode">
4539  <!-- if an element isn't found in this mode, -->
4540  <!-- try the generic titlepage.mode -->
4541  <xsl:apply-templates select="." mode="titlepage.mode"/>
4542</xsl:template>
4543
4544<xsl:template match="title" mode="qandaset.titlepage.recto.auto.mode">
4545<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" keep-with-next.within-column="always" font-size="24.8832pt" font-weight="bold">
4546<xsl:call-template name="component.title">
4547<xsl:with-param name="node" select="ancestor-or-self::qandaset[1]"/>
4548</xsl:call-template>
4549</fo:block>
4550</xsl:template>
4551
4552<xsl:template match="subtitle" mode="qandaset.titlepage.recto.auto.mode">
4553<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style">
4554<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/>
4555</fo:block>
4556</xsl:template>
4557
4558<xsl:template match="corpauthor" mode="qandaset.titlepage.recto.auto.mode">
4559<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em" font-size="14.4pt">
4560<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/>
4561</fo:block>
4562</xsl:template>
4563
4564<xsl:template match="authorgroup" mode="qandaset.titlepage.recto.auto.mode">
4565<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em" font-size="14.4pt">
4566<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/>
4567</fo:block>
4568</xsl:template>
4569
4570<xsl:template match="author" mode="qandaset.titlepage.recto.auto.mode">
4571<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em" font-size="14.4pt">
4572<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/>
4573</fo:block>
4574</xsl:template>
4575
4576<xsl:template match="othercredit" mode="qandaset.titlepage.recto.auto.mode">
4577<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em">
4578<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/>
4579</fo:block>
4580</xsl:template>
4581
4582<xsl:template match="releaseinfo" mode="qandaset.titlepage.recto.auto.mode">
4583<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em">
4584<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/>
4585</fo:block>
4586</xsl:template>
4587
4588<xsl:template match="copyright" mode="qandaset.titlepage.recto.auto.mode">
4589<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em">
4590<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/>
4591</fo:block>
4592</xsl:template>
4593
4594<xsl:template match="legalnotice" mode="qandaset.titlepage.recto.auto.mode">
4595<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" text-align="start" margin-left="0.5in" margin-right="0.5in" font-family="{$body.fontset}">
4596<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/>
4597</fo:block>
4598</xsl:template>
4599
4600<xsl:template match="pubdate" mode="qandaset.titlepage.recto.auto.mode">
4601<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em">
4602<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/>
4603</fo:block>
4604</xsl:template>
4605
4606<xsl:template match="revision" mode="qandaset.titlepage.recto.auto.mode">
4607<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em">
4608<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/>
4609</fo:block>
4610</xsl:template>
4611
4612<xsl:template match="revhistory" mode="qandaset.titlepage.recto.auto.mode">
4613<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em">
4614<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/>
4615</fo:block>
4616</xsl:template>
4617
4618<xsl:template match="abstract" mode="qandaset.titlepage.recto.auto.mode">
4619<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em" text-align="start" margin-left="0.5in" margin-right="0.5in" font-family="{$body.fontset}">
4620<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/>
4621</fo:block>
4622</xsl:template>
4623
4624<xsl:template name="table.of.contents.titlepage.recto">
4625  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="table.of.contents.titlepage.recto.style" space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="{$title.margin.left}" start-indent="0pt" font-size="17.28pt" font-weight="bold" font-family="{$title.fontset}">
4626<xsl:call-template name="gentext">
4627<xsl:with-param name="key" select="'TableofContents'"/>
4628</xsl:call-template></fo:block>
4629</xsl:template>
4630
4631<xsl:template name="table.of.contents.titlepage.verso">
4632</xsl:template>
4633
4634<xsl:template name="table.of.contents.titlepage.separator">
4635</xsl:template>
4636
4637<xsl:template name="table.of.contents.titlepage.before.recto">
4638</xsl:template>
4639
4640<xsl:template name="table.of.contents.titlepage.before.verso">
4641</xsl:template>
4642
4643<xsl:template name="table.of.contents.titlepage">
4644  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
4645    <xsl:variable name="recto.content">
4646      <xsl:call-template name="table.of.contents.titlepage.before.recto"/>
4647      <xsl:call-template name="table.of.contents.titlepage.recto"/>
4648    </xsl:variable>
4649    <xsl:variable name="recto.elements.count">
4650      <xsl:choose>
4651        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4652        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4653          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4654        <xsl:otherwise>1</xsl:otherwise>
4655      </xsl:choose>
4656    </xsl:variable>
4657    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
4658      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
4659    </xsl:if>
4660    <xsl:variable name="verso.content">
4661      <xsl:call-template name="table.of.contents.titlepage.before.verso"/>
4662      <xsl:call-template name="table.of.contents.titlepage.verso"/>
4663    </xsl:variable>
4664    <xsl:variable name="verso.elements.count">
4665      <xsl:choose>
4666        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4667        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4668          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4669        <xsl:otherwise>1</xsl:otherwise>
4670      </xsl:choose>
4671    </xsl:variable>
4672    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
4673      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
4674    </xsl:if>
4675    <xsl:call-template name="table.of.contents.titlepage.separator"/>
4676  </fo:block>
4677</xsl:template>
4678
4679<xsl:template match="*" mode="table.of.contents.titlepage.recto.mode">
4680  <!-- if an element isn't found in this mode, -->
4681  <!-- try the generic titlepage.mode -->
4682  <xsl:apply-templates select="." mode="titlepage.mode"/>
4683</xsl:template>
4684
4685<xsl:template match="*" mode="table.of.contents.titlepage.verso.mode">
4686  <!-- if an element isn't found in this mode, -->
4687  <!-- try the generic titlepage.mode -->
4688  <xsl:apply-templates select="." mode="titlepage.mode"/>
4689</xsl:template>
4690
4691<xsl:template name="list.of.tables.titlepage.recto">
4692  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="list.of.tables.titlepage.recto.style" space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="{$title.margin.left}" start-indent="0pt" font-size="17.28pt" font-weight="bold" font-family="{$title.fontset}">
4693<xsl:call-template name="gentext">
4694<xsl:with-param name="key" select="'ListofTables'"/>
4695</xsl:call-template></fo:block>
4696</xsl:template>
4697
4698<xsl:template name="list.of.tables.titlepage.verso">
4699</xsl:template>
4700
4701<xsl:template name="list.of.tables.titlepage.separator">
4702</xsl:template>
4703
4704<xsl:template name="list.of.tables.titlepage.before.recto">
4705</xsl:template>
4706
4707<xsl:template name="list.of.tables.titlepage.before.verso">
4708</xsl:template>
4709
4710<xsl:template name="list.of.tables.titlepage">
4711  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
4712    <xsl:variable name="recto.content">
4713      <xsl:call-template name="list.of.tables.titlepage.before.recto"/>
4714      <xsl:call-template name="list.of.tables.titlepage.recto"/>
4715    </xsl:variable>
4716    <xsl:variable name="recto.elements.count">
4717      <xsl:choose>
4718        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4719        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4720          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4721        <xsl:otherwise>1</xsl:otherwise>
4722      </xsl:choose>
4723    </xsl:variable>
4724    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
4725      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
4726    </xsl:if>
4727    <xsl:variable name="verso.content">
4728      <xsl:call-template name="list.of.tables.titlepage.before.verso"/>
4729      <xsl:call-template name="list.of.tables.titlepage.verso"/>
4730    </xsl:variable>
4731    <xsl:variable name="verso.elements.count">
4732      <xsl:choose>
4733        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4734        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4735          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4736        <xsl:otherwise>1</xsl:otherwise>
4737      </xsl:choose>
4738    </xsl:variable>
4739    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
4740      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
4741    </xsl:if>
4742    <xsl:call-template name="list.of.tables.titlepage.separator"/>
4743  </fo:block>
4744</xsl:template>
4745
4746<xsl:template match="*" mode="list.of.tables.titlepage.recto.mode">
4747  <!-- if an element isn't found in this mode, -->
4748  <!-- try the generic titlepage.mode -->
4749  <xsl:apply-templates select="." mode="titlepage.mode"/>
4750</xsl:template>
4751
4752<xsl:template match="*" mode="list.of.tables.titlepage.verso.mode">
4753  <!-- if an element isn't found in this mode, -->
4754  <!-- try the generic titlepage.mode -->
4755  <xsl:apply-templates select="." mode="titlepage.mode"/>
4756</xsl:template>
4757
4758<xsl:template name="list.of.figures.titlepage.recto">
4759  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="list.of.figures.titlepage.recto.style" space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="{$title.margin.left}" start-indent="0pt" font-size="17.28pt" font-weight="bold" font-family="{$title.fontset}">
4760<xsl:call-template name="gentext">
4761<xsl:with-param name="key" select="'ListofFigures'"/>
4762</xsl:call-template></fo:block>
4763</xsl:template>
4764
4765<xsl:template name="list.of.figures.titlepage.verso">
4766</xsl:template>
4767
4768<xsl:template name="list.of.figures.titlepage.separator">
4769</xsl:template>
4770
4771<xsl:template name="list.of.figures.titlepage.before.recto">
4772</xsl:template>
4773
4774<xsl:template name="list.of.figures.titlepage.before.verso">
4775</xsl:template>
4776
4777<xsl:template name="list.of.figures.titlepage">
4778  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
4779    <xsl:variable name="recto.content">
4780      <xsl:call-template name="list.of.figures.titlepage.before.recto"/>
4781      <xsl:call-template name="list.of.figures.titlepage.recto"/>
4782    </xsl:variable>
4783    <xsl:variable name="recto.elements.count">
4784      <xsl:choose>
4785        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4786        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4787          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4788        <xsl:otherwise>1</xsl:otherwise>
4789      </xsl:choose>
4790    </xsl:variable>
4791    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
4792      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
4793    </xsl:if>
4794    <xsl:variable name="verso.content">
4795      <xsl:call-template name="list.of.figures.titlepage.before.verso"/>
4796      <xsl:call-template name="list.of.figures.titlepage.verso"/>
4797    </xsl:variable>
4798    <xsl:variable name="verso.elements.count">
4799      <xsl:choose>
4800        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4801        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4802          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4803        <xsl:otherwise>1</xsl:otherwise>
4804      </xsl:choose>
4805    </xsl:variable>
4806    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
4807      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
4808    </xsl:if>
4809    <xsl:call-template name="list.of.figures.titlepage.separator"/>
4810  </fo:block>
4811</xsl:template>
4812
4813<xsl:template match="*" mode="list.of.figures.titlepage.recto.mode">
4814  <!-- if an element isn't found in this mode, -->
4815  <!-- try the generic titlepage.mode -->
4816  <xsl:apply-templates select="." mode="titlepage.mode"/>
4817</xsl:template>
4818
4819<xsl:template match="*" mode="list.of.figures.titlepage.verso.mode">
4820  <!-- if an element isn't found in this mode, -->
4821  <!-- try the generic titlepage.mode -->
4822  <xsl:apply-templates select="." mode="titlepage.mode"/>
4823</xsl:template>
4824
4825<xsl:template name="list.of.examples.titlepage.recto">
4826  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="list.of.examples.titlepage.recto.style" space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="{$title.margin.left}" start-indent="0pt" font-size="17.28pt" font-weight="bold" font-family="{$title.fontset}">
4827<xsl:call-template name="gentext">
4828<xsl:with-param name="key" select="'ListofExamples'"/>
4829</xsl:call-template></fo:block>
4830</xsl:template>
4831
4832<xsl:template name="list.of.examples.titlepage.verso">
4833</xsl:template>
4834
4835<xsl:template name="list.of.examples.titlepage.separator">
4836</xsl:template>
4837
4838<xsl:template name="list.of.examples.titlepage.before.recto">
4839</xsl:template>
4840
4841<xsl:template name="list.of.examples.titlepage.before.verso">
4842</xsl:template>
4843
4844<xsl:template name="list.of.examples.titlepage">
4845  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
4846    <xsl:variable name="recto.content">
4847      <xsl:call-template name="list.of.examples.titlepage.before.recto"/>
4848      <xsl:call-template name="list.of.examples.titlepage.recto"/>
4849    </xsl:variable>
4850    <xsl:variable name="recto.elements.count">
4851      <xsl:choose>
4852        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4853        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4854          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4855        <xsl:otherwise>1</xsl:otherwise>
4856      </xsl:choose>
4857    </xsl:variable>
4858    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
4859      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
4860    </xsl:if>
4861    <xsl:variable name="verso.content">
4862      <xsl:call-template name="list.of.examples.titlepage.before.verso"/>
4863      <xsl:call-template name="list.of.examples.titlepage.verso"/>
4864    </xsl:variable>
4865    <xsl:variable name="verso.elements.count">
4866      <xsl:choose>
4867        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4868        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4869          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4870        <xsl:otherwise>1</xsl:otherwise>
4871      </xsl:choose>
4872    </xsl:variable>
4873    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
4874      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
4875    </xsl:if>
4876    <xsl:call-template name="list.of.examples.titlepage.separator"/>
4877  </fo:block>
4878</xsl:template>
4879
4880<xsl:template match="*" mode="list.of.examples.titlepage.recto.mode">
4881  <!-- if an element isn't found in this mode, -->
4882  <!-- try the generic titlepage.mode -->
4883  <xsl:apply-templates select="." mode="titlepage.mode"/>
4884</xsl:template>
4885
4886<xsl:template match="*" mode="list.of.examples.titlepage.verso.mode">
4887  <!-- if an element isn't found in this mode, -->
4888  <!-- try the generic titlepage.mode -->
4889  <xsl:apply-templates select="." mode="titlepage.mode"/>
4890</xsl:template>
4891
4892<xsl:template name="list.of.equations.titlepage.recto">
4893  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="list.of.equations.titlepage.recto.style" space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="{$title.margin.left}" start-indent="0pt" font-size="17.28pt" font-weight="bold" font-family="{$title.fontset}">
4894<xsl:call-template name="gentext">
4895<xsl:with-param name="key" select="'ListofEquations'"/>
4896</xsl:call-template></fo:block>
4897</xsl:template>
4898
4899<xsl:template name="list.of.equations.titlepage.verso">
4900</xsl:template>
4901
4902<xsl:template name="list.of.equations.titlepage.separator">
4903</xsl:template>
4904
4905<xsl:template name="list.of.equations.titlepage.before.recto">
4906</xsl:template>
4907
4908<xsl:template name="list.of.equations.titlepage.before.verso">
4909</xsl:template>
4910
4911<xsl:template name="list.of.equations.titlepage">
4912  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
4913    <xsl:variable name="recto.content">
4914      <xsl:call-template name="list.of.equations.titlepage.before.recto"/>
4915      <xsl:call-template name="list.of.equations.titlepage.recto"/>
4916    </xsl:variable>
4917    <xsl:variable name="recto.elements.count">
4918      <xsl:choose>
4919        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4920        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4921          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4922        <xsl:otherwise>1</xsl:otherwise>
4923      </xsl:choose>
4924    </xsl:variable>
4925    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
4926      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
4927    </xsl:if>
4928    <xsl:variable name="verso.content">
4929      <xsl:call-template name="list.of.equations.titlepage.before.verso"/>
4930      <xsl:call-template name="list.of.equations.titlepage.verso"/>
4931    </xsl:variable>
4932    <xsl:variable name="verso.elements.count">
4933      <xsl:choose>
4934        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4935        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4936          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
4937        <xsl:otherwise>1</xsl:otherwise>
4938      </xsl:choose>
4939    </xsl:variable>
4940    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
4941      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
4942    </xsl:if>
4943    <xsl:call-template name="list.of.equations.titlepage.separator"/>
4944  </fo:block>
4945</xsl:template>
4946
4947<xsl:template match="*" mode="list.of.equations.titlepage.recto.mode">
4948  <!-- if an element isn't found in this mode, -->
4949  <!-- try the generic titlepage.mode -->
4950  <xsl:apply-templates select="." mode="titlepage.mode"/>
4951</xsl:template>
4952
4953<xsl:template match="*" mode="list.of.equations.titlepage.verso.mode">
4954  <!-- if an element isn't found in this mode, -->
4955  <!-- try the generic titlepage.mode -->
4956  <xsl:apply-templates select="." mode="titlepage.mode"/>
4957</xsl:template>
4958
4959<xsl:template name="list.of.procedures.titlepage.recto">
4960  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="list.of.procedures.titlepage.recto.style" space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="{$title.margin.left}" start-indent="0pt" font-size="17.28pt" font-weight="bold" font-family="{$title.fontset}">
4961<xsl:call-template name="gentext">
4962<xsl:with-param name="key" select="'ListofProcedures'"/>
4963</xsl:call-template></fo:block>
4964</xsl:template>
4965
4966<xsl:template name="list.of.procedures.titlepage.verso">
4967</xsl:template>
4968
4969<xsl:template name="list.of.procedures.titlepage.separator">
4970</xsl:template>
4971
4972<xsl:template name="list.of.procedures.titlepage.before.recto">
4973</xsl:template>
4974
4975<xsl:template name="list.of.procedures.titlepage.before.verso">
4976</xsl:template>
4977
4978<xsl:template name="list.of.procedures.titlepage">
4979  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
4980    <xsl:variable name="recto.content">
4981      <xsl:call-template name="list.of.procedures.titlepage.before.recto"/>
4982      <xsl:call-template name="list.of.procedures.titlepage.recto"/>
4983    </xsl:variable>
4984    <xsl:variable name="recto.elements.count">
4985      <xsl:choose>
4986        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4987        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
4988          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
4989        <xsl:otherwise>1</xsl:otherwise>
4990      </xsl:choose>
4991    </xsl:variable>
4992    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
4993      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
4994    </xsl:if>
4995    <xsl:variable name="verso.content">
4996      <xsl:call-template name="list.of.procedures.titlepage.before.verso"/>
4997      <xsl:call-template name="list.of.procedures.titlepage.verso"/>
4998    </xsl:variable>
4999    <xsl:variable name="verso.elements.count">
5000      <xsl:choose>
5001        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
5002        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
5003          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
5004        <xsl:otherwise>1</xsl:otherwise>
5005      </xsl:choose>
5006    </xsl:variable>
5007    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
5008      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
5009    </xsl:if>
5010    <xsl:call-template name="list.of.procedures.titlepage.separator"/>
5011  </fo:block>
5012</xsl:template>
5013
5014<xsl:template match="*" mode="list.of.procedures.titlepage.recto.mode">
5015  <!-- if an element isn't found in this mode, -->
5016  <!-- try the generic titlepage.mode -->
5017  <xsl:apply-templates select="." mode="titlepage.mode"/>
5018</xsl:template>
5019
5020<xsl:template match="*" mode="list.of.procedures.titlepage.verso.mode">
5021  <!-- if an element isn't found in this mode, -->
5022  <!-- try the generic titlepage.mode -->
5023  <xsl:apply-templates select="." mode="titlepage.mode"/>
5024</xsl:template>
5025
5026<xsl:template name="list.of.unknowns.titlepage.recto">
5027  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="list.of.unknowns.titlepage.recto.style" space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="{$title.margin.left}" start-indent="0pt" font-size="17.28pt" font-weight="bold" font-family="{$title.fontset}">
5028<xsl:call-template name="gentext">
5029<xsl:with-param name="key" select="'ListofUnknown'"/>
5030</xsl:call-template></fo:block>
5031</xsl:template>
5032
5033<xsl:template name="list.of.unknowns.titlepage.verso">
5034</xsl:template>
5035
5036<xsl:template name="list.of.unknowns.titlepage.separator">
5037</xsl:template>
5038
5039<xsl:template name="list.of.unknowns.titlepage.before.recto">
5040</xsl:template>
5041
5042<xsl:template name="list.of.unknowns.titlepage.before.verso">
5043</xsl:template>
5044
5045<xsl:template name="list.of.unknowns.titlepage">
5046  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
5047    <xsl:variable name="recto.content">
5048      <xsl:call-template name="list.of.unknowns.titlepage.before.recto"/>
5049      <xsl:call-template name="list.of.unknowns.titlepage.recto"/>
5050    </xsl:variable>
5051    <xsl:variable name="recto.elements.count">
5052      <xsl:choose>
5053        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
5054        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
5055          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
5056        <xsl:otherwise>1</xsl:otherwise>
5057      </xsl:choose>
5058    </xsl:variable>
5059    <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
5060      <fo:block><xsl:copy-of select="$recto.content"/></fo:block>
5061    </xsl:if>
5062    <xsl:variable name="verso.content">
5063      <xsl:call-template name="list.of.unknowns.titlepage.before.verso"/>
5064      <xsl:call-template name="list.of.unknowns.titlepage.verso"/>
5065    </xsl:variable>
5066    <xsl:variable name="verso.elements.count">
5067      <xsl:choose>
5068        <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
5069        <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
5070          <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
5071        <xsl:otherwise>1</xsl:otherwise>
5072      </xsl:choose>
5073    </xsl:variable>
5074    <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
5075      <fo:block><xsl:copy-of select="$verso.content"/></fo:block>
5076    </xsl:if>
5077    <xsl:call-template name="list.of.unknowns.titlepage.separator"/>
5078  </fo:block>
5079</xsl:template>
5080
5081<xsl:template match="*" mode="list.of.unknowns.titlepage.recto.mode">
5082  <!-- if an element isn't found in this mode, -->
5083  <!-- try the generic titlepage.mode -->
5084  <xsl:apply-templates select="." mode="titlepage.mode"/>
5085</xsl:template>
5086
5087<xsl:template match="*" mode="list.of.unknowns.titlepage.verso.mode">
5088  <!-- if an element isn't found in this mode, -->
5089  <!-- try the generic titlepage.mode -->
5090  <xsl:apply-templates select="." mode="titlepage.mode"/>
5091</xsl:template>
5092
5093</xsl:stylesheet>
5094
Note: See TracBrowser for help on using the repository browser.