| Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 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:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/abstract"/> | 
 | 9 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/abstract"/> | 
 | 10 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/abstract"/> | 
 | 11 |   <xsl:choose> | 
 | 12 |     <xsl:when test="articleinfo/title"> | 
 | 13 |       <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/title"/> | 
 | 14 |     </xsl:when> | 
 | 15 |     <xsl:when test="artheader/title"> | 
 | 16 |       <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/title"/> | 
 | 17 |     </xsl:when> | 
 | 18 |     <xsl:when test="info/title"> | 
 | 19 |       <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/title"/> | 
 | 20 |     </xsl:when> | 
 | 21 |     <xsl:when test="title"> | 
 | 22 |       <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="title"/> | 
 | 23 |     </xsl:when> | 
 | 24 |   </xsl:choose> | 
 | 25 |  | 
 | 26 |   <xsl:choose> | 
 | 27 |     <xsl:when test="articleinfo/subtitle"> | 
 | 28 |       <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/subtitle"/> | 
 | 29 |     </xsl:when> | 
 | 30 |     <xsl:when test="artheader/subtitle"> | 
 | 31 |       <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/subtitle"/> | 
 | 32 |     </xsl:when> | 
 | 33 |     <xsl:when test="info/subtitle"> | 
 | 34 |       <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 35 |     </xsl:when> | 
 | 36 |     <xsl:when test="subtitle"> | 
 | 37 |       <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 38 |     </xsl:when> | 
 | 39 |   </xsl:choose> | 
 | 40 |  | 
 | 41 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/corpauthor"/> | 
 | 42 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/corpauthor"/> | 
 | 43 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/corpauthor"/> | 
 | 44 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/authorgroup"/> | 
 | 45 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/authorgroup"/> | 
 | 46 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/authorgroup"/> | 
 | 47 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/author"/> | 
 | 48 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/author"/> | 
 | 49 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/author"/> | 
 | 50 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/othercredit"/> | 
 | 51 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/othercredit"/> | 
 | 52 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/othercredit"/> | 
 | 53 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/releaseinfo"/> | 
 | 54 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/releaseinfo"/> | 
 | 55 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/releaseinfo"/> | 
 | 56 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/copyright"/> | 
 | 57 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/copyright"/> | 
 | 58 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/copyright"/> | 
 | 59 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/legalnotice"/> | 
 | 60 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/legalnotice"/> | 
 | 61 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/legalnotice"/> | 
 | 62 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/pubdate"/> | 
 | 63 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/pubdate"/> | 
 | 64 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/pubdate"/> | 
 | 65 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/revision"/> | 
 | 66 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/revision"/> | 
 | 67 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/revision"/> | 
 | 68 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/revhistory"/> | 
 | 69 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/revhistory"/> | 
 | 70 |   <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/revhistory"/> | 
 | 71 | </xsl:template> | 
 | 72 |  | 
 | 73 | <xsl:template name="article.titlepage.verso"> | 
 | 74 | </xsl:template> | 
 | 75 |  | 
 | 76 | <xsl:template name="article.titlepage.separator"><hr/> | 
 | 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 |   <div class="titlepage"> | 
 | 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 > 0)"> | 
 | 100 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 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 > 0)"> | 
 | 115 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 116 |     </xsl:if> | 
 | 117 |     <xsl:call-template name="article.titlepage.separator"/> | 
 | 118 |   </div> | 
 | 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="abstract" mode="article.titlepage.recto.auto.mode"> | 
 | 134 | <div xsl:use-attribute-sets="article.titlepage.recto.style"> | 
 | 135 |   <xsl:call-template name="anchor"/> | 
 | 136 |   <xsl:apply-templates/> | 
 | 137 | <!-- orignally generated content --> | 
 | 138 | <!-- <xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> --> | 
 | 139 | </div> | 
 | 140 | </xsl:template> | 
 | 141 |  | 
 | 142 | <xsl:template match="title" mode="article.titlepage.recto.auto.mode"> | 
 | 143 | <div xsl:use-attribute-sets="article.titlepage.recto.style"> | 
 | 144 | <xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> | 
 | 145 | </div> | 
 | 146 | </xsl:template> | 
 | 147 |  | 
 | 148 | <xsl:template match="subtitle" mode="article.titlepage.recto.auto.mode"> | 
 | 149 | <div xsl:use-attribute-sets="article.titlepage.recto.style"> | 
 | 150 | <xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> | 
 | 151 | </div> | 
 | 152 | </xsl:template> | 
 | 153 |  | 
 | 154 | <xsl:template match="corpauthor" mode="article.titlepage.recto.auto.mode"> | 
 | 155 | <div xsl:use-attribute-sets="article.titlepage.recto.style"> | 
 | 156 | <xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> | 
 | 157 | </div> | 
 | 158 | </xsl:template> | 
 | 159 |  | 
 | 160 | <xsl:template match="authorgroup" mode="article.titlepage.recto.auto.mode"> | 
 | 161 | <div xsl:use-attribute-sets="article.titlepage.recto.style"> | 
 | 162 | <xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> | 
 | 163 | </div> | 
 | 164 | </xsl:template> | 
 | 165 |  | 
 | 166 | <xsl:template match="author" mode="article.titlepage.recto.auto.mode"> | 
 | 167 | <div xsl:use-attribute-sets="article.titlepage.recto.style"> | 
 | 168 | <xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> | 
 | 169 | </div> | 
 | 170 | </xsl:template> | 
 | 171 |  | 
 | 172 | <xsl:template match="othercredit" mode="article.titlepage.recto.auto.mode"> | 
 | 173 | <div xsl:use-attribute-sets="article.titlepage.recto.style"> | 
 | 174 | <xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> | 
 | 175 | </div> | 
 | 176 | </xsl:template> | 
 | 177 |  | 
 | 178 | <xsl:template match="releaseinfo" mode="article.titlepage.recto.auto.mode"> | 
 | 179 | <div xsl:use-attribute-sets="article.titlepage.recto.style"> | 
 | 180 | <xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> | 
 | 181 | </div> | 
 | 182 | </xsl:template> | 
 | 183 |  | 
 | 184 | <xsl:template match="copyright" mode="article.titlepage.recto.auto.mode"> | 
 | 185 | <div xsl:use-attribute-sets="article.titlepage.recto.style"> | 
 | 186 | <xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> | 
 | 187 | </div> | 
 | 188 | </xsl:template> | 
 | 189 |  | 
 | 190 | <xsl:template match="legalnotice" mode="article.titlepage.recto.auto.mode"> | 
 | 191 | <div xsl:use-attribute-sets="article.titlepage.recto.style"> | 
 | 192 | <xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> | 
 | 193 | </div> | 
 | 194 | </xsl:template> | 
 | 195 |  | 
 | 196 | <xsl:template match="pubdate" mode="article.titlepage.recto.auto.mode"> | 
 | 197 | <div xsl:use-attribute-sets="article.titlepage.recto.style"> | 
 | 198 | <xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> | 
 | 199 | </div> | 
 | 200 | </xsl:template> | 
 | 201 |  | 
 | 202 | <xsl:template match="revision" mode="article.titlepage.recto.auto.mode"> | 
 | 203 | <div xsl:use-attribute-sets="article.titlepage.recto.style"> | 
 | 204 | <xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> | 
 | 205 | </div> | 
 | 206 | </xsl:template> | 
 | 207 |  | 
 | 208 | <xsl:template match="revhistory" mode="article.titlepage.recto.auto.mode"> | 
 | 209 | <div xsl:use-attribute-sets="article.titlepage.recto.style"> | 
 | 210 | <xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> | 
 | 211 | </div> | 
 | 212 | </xsl:template> | 
 | 213 |  | 
 | 214 | <xsl:template name="set.titlepage.recto"> | 
 | 215 |   <xsl:choose> | 
 | 216 |     <xsl:when test="setinfo/title"> | 
 | 217 |       <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/title"/> | 
 | 218 |     </xsl:when> | 
 | 219 |     <xsl:when test="info/title"> | 
 | 220 |       <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/title"/> | 
 | 221 |     </xsl:when> | 
 | 222 |     <xsl:when test="title"> | 
 | 223 |       <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="title"/> | 
 | 224 |     </xsl:when> | 
 | 225 |   </xsl:choose> | 
 | 226 |  | 
 | 227 |   <xsl:choose> | 
 | 228 |     <xsl:when test="setinfo/subtitle"> | 
 | 229 |       <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/subtitle"/> | 
 | 230 |     </xsl:when> | 
 | 231 |     <xsl:when test="info/subtitle"> | 
 | 232 |       <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 233 |     </xsl:when> | 
 | 234 |     <xsl:when test="subtitle"> | 
 | 235 |       <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 236 |     </xsl:when> | 
 | 237 |   </xsl:choose> | 
 | 238 |  | 
 | 239 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/corpauthor"/> | 
 | 240 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/corpauthor"/> | 
 | 241 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/authorgroup"/> | 
 | 242 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/authorgroup"/> | 
 | 243 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/author"/> | 
 | 244 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/author"/> | 
 | 245 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/othercredit"/> | 
 | 246 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/othercredit"/> | 
 | 247 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/releaseinfo"/> | 
 | 248 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/releaseinfo"/> | 
 | 249 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/copyright"/> | 
 | 250 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/copyright"/> | 
 | 251 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/legalnotice"/> | 
 | 252 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/legalnotice"/> | 
 | 253 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/pubdate"/> | 
 | 254 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/pubdate"/> | 
 | 255 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/revision"/> | 
 | 256 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/revision"/> | 
 | 257 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/revhistory"/> | 
 | 258 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/revhistory"/> | 
 | 259 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/abstract"/> | 
 | 260 |   <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/abstract"/> | 
 | 261 | </xsl:template> | 
 | 262 |  | 
 | 263 | <xsl:template name="set.titlepage.verso"> | 
 | 264 | </xsl:template> | 
 | 265 |  | 
 | 266 | <xsl:template name="set.titlepage.separator"><hr/> | 
 | 267 | </xsl:template> | 
 | 268 |  | 
 | 269 | <xsl:template name="set.titlepage.before.recto"> | 
 | 270 | </xsl:template> | 
 | 271 |  | 
 | 272 | <xsl:template name="set.titlepage.before.verso"> | 
 | 273 | </xsl:template> | 
 | 274 |  | 
 | 275 | <xsl:template name="set.titlepage"> | 
 | 276 |   <div class="titlepage"> | 
 | 277 |     <xsl:variable name="recto.content"> | 
 | 278 |       <xsl:call-template name="set.titlepage.before.recto"/> | 
 | 279 |       <xsl:call-template name="set.titlepage.recto"/> | 
 | 280 |     </xsl:variable> | 
 | 281 |     <xsl:variable name="recto.elements.count"> | 
 | 282 |       <xsl:choose> | 
 | 283 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 284 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 285 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 286 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 287 |       </xsl:choose> | 
 | 288 |     </xsl:variable> | 
 | 289 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 290 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 291 |     </xsl:if> | 
 | 292 |     <xsl:variable name="verso.content"> | 
 | 293 |       <xsl:call-template name="set.titlepage.before.verso"/> | 
 | 294 |       <xsl:call-template name="set.titlepage.verso"/> | 
 | 295 |     </xsl:variable> | 
 | 296 |     <xsl:variable name="verso.elements.count"> | 
 | 297 |       <xsl:choose> | 
 | 298 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 299 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 300 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 301 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 302 |       </xsl:choose> | 
 | 303 |     </xsl:variable> | 
 | 304 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 305 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 306 |     </xsl:if> | 
 | 307 |     <xsl:call-template name="set.titlepage.separator"/> | 
 | 308 |   </div> | 
 | 309 | </xsl:template> | 
 | 310 |  | 
 | 311 | <xsl:template match="*" mode="set.titlepage.recto.mode"> | 
 | 312 |   <!-- if an element isn't found in this mode, --> | 
 | 313 |   <!-- try the generic titlepage.mode --> | 
 | 314 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 315 | </xsl:template> | 
 | 316 |  | 
 | 317 | <xsl:template match="*" mode="set.titlepage.verso.mode"> | 
 | 318 |   <!-- if an element isn't found in this mode, --> | 
 | 319 |   <!-- try the generic titlepage.mode --> | 
 | 320 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 321 | </xsl:template> | 
 | 322 |  | 
 | 323 | <xsl:template match="title" mode="set.titlepage.recto.auto.mode"> | 
 | 324 | <div xsl:use-attribute-sets="set.titlepage.recto.style"> | 
 | 325 | <xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> | 
 | 326 | </div> | 
 | 327 | </xsl:template> | 
 | 328 |  | 
 | 329 | <xsl:template match="subtitle" mode="set.titlepage.recto.auto.mode"> | 
 | 330 | <div xsl:use-attribute-sets="set.titlepage.recto.style"> | 
 | 331 | <xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> | 
 | 332 | </div> | 
 | 333 | </xsl:template> | 
 | 334 |  | 
 | 335 | <xsl:template match="corpauthor" mode="set.titlepage.recto.auto.mode"> | 
 | 336 | <div xsl:use-attribute-sets="set.titlepage.recto.style"> | 
 | 337 | <xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> | 
 | 338 | </div> | 
 | 339 | </xsl:template> | 
 | 340 |  | 
 | 341 | <xsl:template match="authorgroup" mode="set.titlepage.recto.auto.mode"> | 
 | 342 | <div xsl:use-attribute-sets="set.titlepage.recto.style"> | 
 | 343 | <xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> | 
 | 344 | </div> | 
 | 345 | </xsl:template> | 
 | 346 |  | 
 | 347 | <xsl:template match="author" mode="set.titlepage.recto.auto.mode"> | 
 | 348 | <div xsl:use-attribute-sets="set.titlepage.recto.style"> | 
 | 349 | <xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> | 
 | 350 | </div> | 
 | 351 | </xsl:template> | 
 | 352 |  | 
 | 353 | <xsl:template match="othercredit" mode="set.titlepage.recto.auto.mode"> | 
 | 354 | <div xsl:use-attribute-sets="set.titlepage.recto.style"> | 
 | 355 | <xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> | 
 | 356 | </div> | 
 | 357 | </xsl:template> | 
 | 358 |  | 
 | 359 | <xsl:template match="releaseinfo" mode="set.titlepage.recto.auto.mode"> | 
 | 360 | <div xsl:use-attribute-sets="set.titlepage.recto.style"> | 
 | 361 | <xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> | 
 | 362 | </div> | 
 | 363 | </xsl:template> | 
 | 364 |  | 
 | 365 | <xsl:template match="copyright" mode="set.titlepage.recto.auto.mode"> | 
 | 366 | <div xsl:use-attribute-sets="set.titlepage.recto.style"> | 
 | 367 | <xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> | 
 | 368 | </div> | 
 | 369 | </xsl:template> | 
 | 370 |  | 
 | 371 | <xsl:template match="legalnotice" mode="set.titlepage.recto.auto.mode"> | 
 | 372 | <div xsl:use-attribute-sets="set.titlepage.recto.style"> | 
 | 373 | <xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> | 
 | 374 | </div> | 
 | 375 | </xsl:template> | 
 | 376 |  | 
 | 377 | <xsl:template match="pubdate" mode="set.titlepage.recto.auto.mode"> | 
 | 378 | <div xsl:use-attribute-sets="set.titlepage.recto.style"> | 
 | 379 | <xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> | 
 | 380 | </div> | 
 | 381 | </xsl:template> | 
 | 382 |  | 
 | 383 | <xsl:template match="revision" mode="set.titlepage.recto.auto.mode"> | 
 | 384 | <div xsl:use-attribute-sets="set.titlepage.recto.style"> | 
 | 385 | <xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> | 
 | 386 | </div> | 
 | 387 | </xsl:template> | 
 | 388 |  | 
 | 389 | <xsl:template match="revhistory" mode="set.titlepage.recto.auto.mode"> | 
 | 390 | <div xsl:use-attribute-sets="set.titlepage.recto.style"> | 
 | 391 | <xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> | 
 | 392 | </div> | 
 | 393 | </xsl:template> | 
 | 394 |  | 
 | 395 | <xsl:template match="abstract" mode="set.titlepage.recto.auto.mode"> | 
 | 396 | <div xsl:use-attribute-sets="set.titlepage.recto.style"> | 
 | 397 | <xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> | 
 | 398 | </div> | 
 | 399 | </xsl:template> | 
 | 400 |  | 
 | 401 | <xsl:template name="book.titlepage.recto"> | 
 | 402 |   <xsl:choose> | 
 | 403 |     <xsl:when test="bookinfo/title"> | 
 | 404 |       <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/title"/> | 
 | 405 |     </xsl:when> | 
 | 406 |     <xsl:when test="info/title"> | 
 | 407 |       <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/title"/> | 
 | 408 |     </xsl:when> | 
 | 409 |     <xsl:when test="title"> | 
 | 410 |       <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="title"/> | 
 | 411 |     </xsl:when> | 
 | 412 |   </xsl:choose> | 
 | 413 |  | 
 | 414 |   <xsl:choose> | 
 | 415 |     <xsl:when test="bookinfo/subtitle"> | 
 | 416 |       <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/subtitle"/> | 
 | 417 |     </xsl:when> | 
 | 418 |     <xsl:when test="info/subtitle"> | 
 | 419 |       <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 420 |     </xsl:when> | 
 | 421 |     <xsl:when test="subtitle"> | 
 | 422 |       <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 423 |     </xsl:when> | 
 | 424 |   </xsl:choose> | 
 | 425 |  | 
 | 426 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/corpauthor"/> | 
 | 427 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/corpauthor"/> | 
 | 428 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/authorgroup"/> | 
 | 429 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/authorgroup"/> | 
 | 430 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/author"/> | 
 | 431 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/author"/> | 
 | 432 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/othercredit"/> | 
 | 433 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/othercredit"/> | 
 | 434 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/releaseinfo"/> | 
 | 435 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/releaseinfo"/> | 
 | 436 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/copyright"/> | 
 | 437 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/copyright"/> | 
 | 438 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/legalnotice"/> | 
 | 439 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/legalnotice"/> | 
 | 440 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/pubdate"/> | 
 | 441 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/pubdate"/> | 
 | 442 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/revision"/> | 
 | 443 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/revision"/> | 
 | 444 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/revhistory"/> | 
 | 445 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/revhistory"/> | 
 | 446 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/abstract"/> | 
 | 447 |   <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/abstract"/> | 
 | 448 | </xsl:template> | 
 | 449 |  | 
 | 450 | <xsl:template name="book.titlepage.verso"> | 
 | 451 | </xsl:template> | 
 | 452 |  | 
 | 453 | <xsl:template name="book.titlepage.separator"><hr/> | 
 | 454 | </xsl:template> | 
 | 455 |  | 
 | 456 | <xsl:template name="book.titlepage.before.recto"> | 
 | 457 | </xsl:template> | 
 | 458 |  | 
 | 459 | <xsl:template name="book.titlepage.before.verso"> | 
 | 460 | </xsl:template> | 
 | 461 |  | 
 | 462 | <xsl:template name="book.titlepage"> | 
 | 463 |   <div class="titlepage"> | 
 | 464 |     <xsl:variable name="recto.content"> | 
 | 465 |       <xsl:call-template name="book.titlepage.before.recto"/> | 
 | 466 |       <xsl:call-template name="book.titlepage.recto"/> | 
 | 467 |     </xsl:variable> | 
 | 468 |     <xsl:variable name="recto.elements.count"> | 
 | 469 |       <xsl:choose> | 
 | 470 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 471 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 472 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 473 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 474 |       </xsl:choose> | 
 | 475 |     </xsl:variable> | 
 | 476 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 477 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 478 |     </xsl:if> | 
 | 479 |     <xsl:variable name="verso.content"> | 
 | 480 |       <xsl:call-template name="book.titlepage.before.verso"/> | 
 | 481 |       <xsl:call-template name="book.titlepage.verso"/> | 
 | 482 |     </xsl:variable> | 
 | 483 |     <xsl:variable name="verso.elements.count"> | 
 | 484 |       <xsl:choose> | 
 | 485 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.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($verso.content)/*)"/></xsl:when> | 
 | 488 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 489 |       </xsl:choose> | 
 | 490 |     </xsl:variable> | 
 | 491 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 492 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 493 |     </xsl:if> | 
 | 494 |     <xsl:call-template name="book.titlepage.separator"/> | 
 | 495 |   </div> | 
 | 496 | </xsl:template> | 
 | 497 |  | 
 | 498 | <xsl:template match="*" mode="book.titlepage.recto.mode"> | 
 | 499 |   <!-- if an element isn't found in this mode, --> | 
 | 500 |   <!-- try the generic titlepage.mode --> | 
 | 501 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 502 | </xsl:template> | 
 | 503 |  | 
 | 504 | <xsl:template match="*" mode="book.titlepage.verso.mode"> | 
 | 505 |   <!-- if an element isn't found in this mode, --> | 
 | 506 |   <!-- try the generic titlepage.mode --> | 
 | 507 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 508 | </xsl:template> | 
 | 509 |  | 
 | 510 | <xsl:template match="title" mode="book.titlepage.recto.auto.mode"> | 
 | 511 | <div xsl:use-attribute-sets="book.titlepage.recto.style"> | 
 | 512 | <xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> | 
 | 513 | </div> | 
 | 514 | </xsl:template> | 
 | 515 |  | 
 | 516 | <xsl:template match="subtitle" mode="book.titlepage.recto.auto.mode"> | 
 | 517 | <div xsl:use-attribute-sets="book.titlepage.recto.style"> | 
 | 518 | <xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> | 
 | 519 | </div> | 
 | 520 | </xsl:template> | 
 | 521 |  | 
 | 522 | <xsl:template match="corpauthor" mode="book.titlepage.recto.auto.mode"> | 
 | 523 | <div xsl:use-attribute-sets="book.titlepage.recto.style"> | 
 | 524 | <xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> | 
 | 525 | </div> | 
 | 526 | </xsl:template> | 
 | 527 |  | 
 | 528 | <xsl:template match="authorgroup" mode="book.titlepage.recto.auto.mode"> | 
 | 529 | <div xsl:use-attribute-sets="book.titlepage.recto.style"> | 
 | 530 | <xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> | 
 | 531 | </div> | 
 | 532 | </xsl:template> | 
 | 533 |  | 
 | 534 | <xsl:template match="author" mode="book.titlepage.recto.auto.mode"> | 
 | 535 | <div xsl:use-attribute-sets="book.titlepage.recto.style"> | 
 | 536 | <xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> | 
 | 537 | </div> | 
 | 538 | </xsl:template> | 
 | 539 |  | 
 | 540 | <xsl:template match="othercredit" mode="book.titlepage.recto.auto.mode"> | 
 | 541 | <div xsl:use-attribute-sets="book.titlepage.recto.style"> | 
 | 542 | <xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> | 
 | 543 | </div> | 
 | 544 | </xsl:template> | 
 | 545 |  | 
 | 546 | <xsl:template match="releaseinfo" mode="book.titlepage.recto.auto.mode"> | 
 | 547 | <div xsl:use-attribute-sets="book.titlepage.recto.style"> | 
 | 548 | <xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> | 
 | 549 | </div> | 
 | 550 | </xsl:template> | 
 | 551 |  | 
 | 552 | <xsl:template match="copyright" mode="book.titlepage.recto.auto.mode"> | 
 | 553 | <div xsl:use-attribute-sets="book.titlepage.recto.style"> | 
 | 554 | <xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> | 
 | 555 | </div> | 
 | 556 | </xsl:template> | 
 | 557 |  | 
 | 558 | <xsl:template match="legalnotice" mode="book.titlepage.recto.auto.mode"> | 
 | 559 | <div xsl:use-attribute-sets="book.titlepage.recto.style"> | 
 | 560 | <xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> | 
 | 561 | </div> | 
 | 562 | </xsl:template> | 
 | 563 |  | 
 | 564 | <xsl:template match="pubdate" mode="book.titlepage.recto.auto.mode"> | 
 | 565 | <div xsl:use-attribute-sets="book.titlepage.recto.style"> | 
 | 566 | <xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> | 
 | 567 | </div> | 
 | 568 | </xsl:template> | 
 | 569 |  | 
 | 570 | <xsl:template match="revision" mode="book.titlepage.recto.auto.mode"> | 
 | 571 | <div xsl:use-attribute-sets="book.titlepage.recto.style"> | 
 | 572 | <xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> | 
 | 573 | </div> | 
 | 574 | </xsl:template> | 
 | 575 |  | 
 | 576 | <xsl:template match="revhistory" mode="book.titlepage.recto.auto.mode"> | 
 | 577 | <div xsl:use-attribute-sets="book.titlepage.recto.style"> | 
 | 578 | <xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> | 
 | 579 | </div> | 
 | 580 | </xsl:template> | 
 | 581 |  | 
 | 582 | <xsl:template match="abstract" mode="book.titlepage.recto.auto.mode"> | 
 | 583 | <div xsl:use-attribute-sets="book.titlepage.recto.style"> | 
 | 584 | <xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> | 
 | 585 | </div> | 
 | 586 | </xsl:template> | 
 | 587 |  | 
 | 588 | <xsl:template name="part.titlepage.recto"> | 
 | 589 |   <div xsl:use-attribute-sets="part.titlepage.recto.style"> | 
 | 590 | <xsl:call-template name="division.title"> | 
 | 591 | <xsl:with-param name="node" select="ancestor-or-self::part[1]"/> | 
 | 592 | </xsl:call-template></div> | 
 | 593 |   <xsl:choose> | 
 | 594 |     <xsl:when test="partinfo/subtitle"> | 
 | 595 |       <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/subtitle"/> | 
 | 596 |     </xsl:when> | 
 | 597 |     <xsl:when test="docinfo/subtitle"> | 
 | 598 |       <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/subtitle"/> | 
 | 599 |     </xsl:when> | 
 | 600 |     <xsl:when test="info/subtitle"> | 
 | 601 |       <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 602 |     </xsl:when> | 
 | 603 |     <xsl:when test="subtitle"> | 
 | 604 |       <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 605 |     </xsl:when> | 
 | 606 |   </xsl:choose> | 
 | 607 |  | 
 | 608 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/corpauthor"/> | 
 | 609 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/corpauthor"/> | 
 | 610 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/corpauthor"/> | 
 | 611 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/authorgroup"/> | 
 | 612 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/authorgroup"/> | 
 | 613 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/authorgroup"/> | 
 | 614 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/author"/> | 
 | 615 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/author"/> | 
 | 616 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/author"/> | 
 | 617 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/othercredit"/> | 
 | 618 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/othercredit"/> | 
 | 619 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/othercredit"/> | 
 | 620 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/releaseinfo"/> | 
 | 621 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/> | 
 | 622 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/releaseinfo"/> | 
 | 623 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/copyright"/> | 
 | 624 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/copyright"/> | 
 | 625 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/copyright"/> | 
 | 626 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/legalnotice"/> | 
 | 627 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/legalnotice"/> | 
 | 628 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/legalnotice"/> | 
 | 629 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/pubdate"/> | 
 | 630 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/pubdate"/> | 
 | 631 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/pubdate"/> | 
 | 632 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/revision"/> | 
 | 633 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/revision"/> | 
 | 634 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/revision"/> | 
 | 635 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/revhistory"/> | 
 | 636 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/revhistory"/> | 
 | 637 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/revhistory"/> | 
 | 638 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/abstract"/> | 
 | 639 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/abstract"/> | 
 | 640 |   <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/abstract"/> | 
 | 641 | </xsl:template> | 
 | 642 |  | 
 | 643 | <xsl:template name="part.titlepage.verso"> | 
 | 644 | </xsl:template> | 
 | 645 |  | 
 | 646 | <xsl:template name="part.titlepage.separator"> | 
 | 647 | </xsl:template> | 
 | 648 |  | 
 | 649 | <xsl:template name="part.titlepage.before.recto"> | 
 | 650 | </xsl:template> | 
 | 651 |  | 
 | 652 | <xsl:template name="part.titlepage.before.verso"> | 
 | 653 | </xsl:template> | 
 | 654 |  | 
 | 655 | <xsl:template name="part.titlepage"> | 
 | 656 |   <div class="titlepage"> | 
 | 657 |     <xsl:variable name="recto.content"> | 
 | 658 |       <xsl:call-template name="part.titlepage.before.recto"/> | 
 | 659 |       <xsl:call-template name="part.titlepage.recto"/> | 
 | 660 |     </xsl:variable> | 
 | 661 |     <xsl:variable name="recto.elements.count"> | 
 | 662 |       <xsl:choose> | 
 | 663 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 664 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 665 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 666 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 667 |       </xsl:choose> | 
 | 668 |     </xsl:variable> | 
 | 669 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 670 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 671 |     </xsl:if> | 
 | 672 |     <xsl:variable name="verso.content"> | 
 | 673 |       <xsl:call-template name="part.titlepage.before.verso"/> | 
 | 674 |       <xsl:call-template name="part.titlepage.verso"/> | 
 | 675 |     </xsl:variable> | 
 | 676 |     <xsl:variable name="verso.elements.count"> | 
 | 677 |       <xsl:choose> | 
 | 678 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 679 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 680 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 681 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 682 |       </xsl:choose> | 
 | 683 |     </xsl:variable> | 
 | 684 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 685 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 686 |     </xsl:if> | 
 | 687 |     <xsl:call-template name="part.titlepage.separator"/> | 
 | 688 |   </div> | 
 | 689 | </xsl:template> | 
 | 690 |  | 
 | 691 | <xsl:template match="*" mode="part.titlepage.recto.mode"> | 
 | 692 |   <!-- if an element isn't found in this mode, --> | 
 | 693 |   <!-- try the generic titlepage.mode --> | 
 | 694 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 695 | </xsl:template> | 
 | 696 |  | 
 | 697 | <xsl:template match="*" mode="part.titlepage.verso.mode"> | 
 | 698 |   <!-- if an element isn't found in this mode, --> | 
 | 699 |   <!-- try the generic titlepage.mode --> | 
 | 700 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 701 | </xsl:template> | 
 | 702 |  | 
 | 703 | <xsl:template match="subtitle" mode="part.titlepage.recto.auto.mode"> | 
 | 704 | <div xsl:use-attribute-sets="part.titlepage.recto.style"> | 
 | 705 | <xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> | 
 | 706 | </div> | 
 | 707 | </xsl:template> | 
 | 708 |  | 
 | 709 | <xsl:template match="corpauthor" mode="part.titlepage.recto.auto.mode"> | 
 | 710 | <div xsl:use-attribute-sets="part.titlepage.recto.style"> | 
 | 711 | <xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> | 
 | 712 | </div> | 
 | 713 | </xsl:template> | 
 | 714 |  | 
 | 715 | <xsl:template match="authorgroup" mode="part.titlepage.recto.auto.mode"> | 
 | 716 | <div xsl:use-attribute-sets="part.titlepage.recto.style"> | 
 | 717 | <xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> | 
 | 718 | </div> | 
 | 719 | </xsl:template> | 
 | 720 |  | 
 | 721 | <xsl:template match="author" mode="part.titlepage.recto.auto.mode"> | 
 | 722 | <div xsl:use-attribute-sets="part.titlepage.recto.style"> | 
 | 723 | <xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> | 
 | 724 | </div> | 
 | 725 | </xsl:template> | 
 | 726 |  | 
 | 727 | <xsl:template match="othercredit" mode="part.titlepage.recto.auto.mode"> | 
 | 728 | <div xsl:use-attribute-sets="part.titlepage.recto.style"> | 
 | 729 | <xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> | 
 | 730 | </div> | 
 | 731 | </xsl:template> | 
 | 732 |  | 
 | 733 | <xsl:template match="releaseinfo" mode="part.titlepage.recto.auto.mode"> | 
 | 734 | <div xsl:use-attribute-sets="part.titlepage.recto.style"> | 
 | 735 | <xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> | 
 | 736 | </div> | 
 | 737 | </xsl:template> | 
 | 738 |  | 
 | 739 | <xsl:template match="copyright" mode="part.titlepage.recto.auto.mode"> | 
 | 740 | <div xsl:use-attribute-sets="part.titlepage.recto.style"> | 
 | 741 | <xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> | 
 | 742 | </div> | 
 | 743 | </xsl:template> | 
 | 744 |  | 
 | 745 | <xsl:template match="legalnotice" mode="part.titlepage.recto.auto.mode"> | 
 | 746 | <div xsl:use-attribute-sets="part.titlepage.recto.style"> | 
 | 747 | <xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> | 
 | 748 | </div> | 
 | 749 | </xsl:template> | 
 | 750 |  | 
 | 751 | <xsl:template match="pubdate" mode="part.titlepage.recto.auto.mode"> | 
 | 752 | <div xsl:use-attribute-sets="part.titlepage.recto.style"> | 
 | 753 | <xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> | 
 | 754 | </div> | 
 | 755 | </xsl:template> | 
 | 756 |  | 
 | 757 | <xsl:template match="revision" mode="part.titlepage.recto.auto.mode"> | 
 | 758 | <div xsl:use-attribute-sets="part.titlepage.recto.style"> | 
 | 759 | <xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> | 
 | 760 | </div> | 
 | 761 | </xsl:template> | 
 | 762 |  | 
 | 763 | <xsl:template match="revhistory" mode="part.titlepage.recto.auto.mode"> | 
 | 764 | <div xsl:use-attribute-sets="part.titlepage.recto.style"> | 
 | 765 | <xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> | 
 | 766 | </div> | 
 | 767 | </xsl:template> | 
 | 768 |  | 
 | 769 | <xsl:template match="abstract" mode="part.titlepage.recto.auto.mode"> | 
 | 770 | <div xsl:use-attribute-sets="part.titlepage.recto.style"> | 
 | 771 | <xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> | 
 | 772 | </div> | 
 | 773 | </xsl:template> | 
 | 774 |  | 
 | 775 | <xsl:template name="partintro.titlepage.recto"> | 
 | 776 |   <xsl:choose> | 
 | 777 |     <xsl:when test="partintroinfo/title"> | 
 | 778 |       <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/title"/> | 
 | 779 |     </xsl:when> | 
 | 780 |     <xsl:when test="docinfo/title"> | 
 | 781 |       <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/title"/> | 
 | 782 |     </xsl:when> | 
 | 783 |     <xsl:when test="info/title"> | 
 | 784 |       <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/title"/> | 
 | 785 |     </xsl:when> | 
 | 786 |     <xsl:when test="title"> | 
 | 787 |       <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="title"/> | 
 | 788 |     </xsl:when> | 
 | 789 |   </xsl:choose> | 
 | 790 |  | 
 | 791 |   <xsl:choose> | 
 | 792 |     <xsl:when test="partintroinfo/subtitle"> | 
 | 793 |       <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/subtitle"/> | 
 | 794 |     </xsl:when> | 
 | 795 |     <xsl:when test="docinfo/subtitle"> | 
 | 796 |       <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/subtitle"/> | 
 | 797 |     </xsl:when> | 
 | 798 |     <xsl:when test="info/subtitle"> | 
 | 799 |       <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 800 |     </xsl:when> | 
 | 801 |     <xsl:when test="subtitle"> | 
 | 802 |       <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 803 |     </xsl:when> | 
 | 804 |   </xsl:choose> | 
 | 805 |  | 
 | 806 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/corpauthor"/> | 
 | 807 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/corpauthor"/> | 
 | 808 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/corpauthor"/> | 
 | 809 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/authorgroup"/> | 
 | 810 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/authorgroup"/> | 
 | 811 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/authorgroup"/> | 
 | 812 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/author"/> | 
 | 813 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/author"/> | 
 | 814 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/author"/> | 
 | 815 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/othercredit"/> | 
 | 816 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/othercredit"/> | 
 | 817 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/othercredit"/> | 
 | 818 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/releaseinfo"/> | 
 | 819 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/> | 
 | 820 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/releaseinfo"/> | 
 | 821 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/copyright"/> | 
 | 822 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/copyright"/> | 
 | 823 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/copyright"/> | 
 | 824 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/legalnotice"/> | 
 | 825 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/legalnotice"/> | 
 | 826 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/legalnotice"/> | 
 | 827 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/pubdate"/> | 
 | 828 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/pubdate"/> | 
 | 829 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/pubdate"/> | 
 | 830 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/revision"/> | 
 | 831 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/revision"/> | 
 | 832 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/revision"/> | 
 | 833 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/revhistory"/> | 
 | 834 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/revhistory"/> | 
 | 835 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/revhistory"/> | 
 | 836 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/abstract"/> | 
 | 837 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/abstract"/> | 
 | 838 |   <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/abstract"/> | 
 | 839 | </xsl:template> | 
 | 840 |  | 
 | 841 | <xsl:template name="partintro.titlepage.verso"> | 
 | 842 | </xsl:template> | 
 | 843 |  | 
 | 844 | <xsl:template name="partintro.titlepage.separator"> | 
 | 845 | </xsl:template> | 
 | 846 |  | 
 | 847 | <xsl:template name="partintro.titlepage.before.recto"> | 
 | 848 | </xsl:template> | 
 | 849 |  | 
 | 850 | <xsl:template name="partintro.titlepage.before.verso"> | 
 | 851 | </xsl:template> | 
 | 852 |  | 
 | 853 | <xsl:template name="partintro.titlepage"> | 
 | 854 |   <div> | 
 | 855 |     <xsl:variable name="recto.content"> | 
 | 856 |       <xsl:call-template name="partintro.titlepage.before.recto"/> | 
 | 857 |       <xsl:call-template name="partintro.titlepage.recto"/> | 
 | 858 |     </xsl:variable> | 
 | 859 |     <xsl:variable name="recto.elements.count"> | 
 | 860 |       <xsl:choose> | 
 | 861 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 862 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 863 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 864 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 865 |       </xsl:choose> | 
 | 866 |     </xsl:variable> | 
 | 867 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 868 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 869 |     </xsl:if> | 
 | 870 |     <xsl:variable name="verso.content"> | 
 | 871 |       <xsl:call-template name="partintro.titlepage.before.verso"/> | 
 | 872 |       <xsl:call-template name="partintro.titlepage.verso"/> | 
 | 873 |     </xsl:variable> | 
 | 874 |     <xsl:variable name="verso.elements.count"> | 
 | 875 |       <xsl:choose> | 
 | 876 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 877 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 878 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 879 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 880 |       </xsl:choose> | 
 | 881 |     </xsl:variable> | 
 | 882 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 883 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 884 |     </xsl:if> | 
 | 885 |     <xsl:call-template name="partintro.titlepage.separator"/> | 
 | 886 |   </div> | 
 | 887 | </xsl:template> | 
 | 888 |  | 
 | 889 | <xsl:template match="*" mode="partintro.titlepage.recto.mode"> | 
 | 890 |   <!-- if an element isn't found in this mode, --> | 
 | 891 |   <!-- try the generic titlepage.mode --> | 
 | 892 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 893 | </xsl:template> | 
 | 894 |  | 
 | 895 | <xsl:template match="*" mode="partintro.titlepage.verso.mode"> | 
 | 896 |   <!-- if an element isn't found in this mode, --> | 
 | 897 |   <!-- try the generic titlepage.mode --> | 
 | 898 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 899 | </xsl:template> | 
 | 900 |  | 
 | 901 | <xsl:template match="title" mode="partintro.titlepage.recto.auto.mode"> | 
 | 902 | <div xsl:use-attribute-sets="partintro.titlepage.recto.style"> | 
 | 903 | <xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> | 
 | 904 | </div> | 
 | 905 | </xsl:template> | 
 | 906 |  | 
 | 907 | <xsl:template match="subtitle" mode="partintro.titlepage.recto.auto.mode"> | 
 | 908 | <div xsl:use-attribute-sets="partintro.titlepage.recto.style"> | 
 | 909 | <xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> | 
 | 910 | </div> | 
 | 911 | </xsl:template> | 
 | 912 |  | 
 | 913 | <xsl:template match="corpauthor" mode="partintro.titlepage.recto.auto.mode"> | 
 | 914 | <div xsl:use-attribute-sets="partintro.titlepage.recto.style"> | 
 | 915 | <xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> | 
 | 916 | </div> | 
 | 917 | </xsl:template> | 
 | 918 |  | 
 | 919 | <xsl:template match="authorgroup" mode="partintro.titlepage.recto.auto.mode"> | 
 | 920 | <div xsl:use-attribute-sets="partintro.titlepage.recto.style"> | 
 | 921 | <xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> | 
 | 922 | </div> | 
 | 923 | </xsl:template> | 
 | 924 |  | 
 | 925 | <xsl:template match="author" mode="partintro.titlepage.recto.auto.mode"> | 
 | 926 | <div xsl:use-attribute-sets="partintro.titlepage.recto.style"> | 
 | 927 | <xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> | 
 | 928 | </div> | 
 | 929 | </xsl:template> | 
 | 930 |  | 
 | 931 | <xsl:template match="othercredit" mode="partintro.titlepage.recto.auto.mode"> | 
 | 932 | <div xsl:use-attribute-sets="partintro.titlepage.recto.style"> | 
 | 933 | <xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> | 
 | 934 | </div> | 
 | 935 | </xsl:template> | 
 | 936 |  | 
 | 937 | <xsl:template match="releaseinfo" mode="partintro.titlepage.recto.auto.mode"> | 
 | 938 | <div xsl:use-attribute-sets="partintro.titlepage.recto.style"> | 
 | 939 | <xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> | 
 | 940 | </div> | 
 | 941 | </xsl:template> | 
 | 942 |  | 
 | 943 | <xsl:template match="copyright" mode="partintro.titlepage.recto.auto.mode"> | 
 | 944 | <div xsl:use-attribute-sets="partintro.titlepage.recto.style"> | 
 | 945 | <xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> | 
 | 946 | </div> | 
 | 947 | </xsl:template> | 
 | 948 |  | 
 | 949 | <xsl:template match="legalnotice" mode="partintro.titlepage.recto.auto.mode"> | 
 | 950 | <div xsl:use-attribute-sets="partintro.titlepage.recto.style"> | 
 | 951 | <xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> | 
 | 952 | </div> | 
 | 953 | </xsl:template> | 
 | 954 |  | 
 | 955 | <xsl:template match="pubdate" mode="partintro.titlepage.recto.auto.mode"> | 
 | 956 | <div xsl:use-attribute-sets="partintro.titlepage.recto.style"> | 
 | 957 | <xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> | 
 | 958 | </div> | 
 | 959 | </xsl:template> | 
 | 960 |  | 
 | 961 | <xsl:template match="revision" mode="partintro.titlepage.recto.auto.mode"> | 
 | 962 | <div xsl:use-attribute-sets="partintro.titlepage.recto.style"> | 
 | 963 | <xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> | 
 | 964 | </div> | 
 | 965 | </xsl:template> | 
 | 966 |  | 
 | 967 | <xsl:template match="revhistory" mode="partintro.titlepage.recto.auto.mode"> | 
 | 968 | <div xsl:use-attribute-sets="partintro.titlepage.recto.style"> | 
 | 969 | <xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> | 
 | 970 | </div> | 
 | 971 | </xsl:template> | 
 | 972 |  | 
 | 973 | <xsl:template match="abstract" mode="partintro.titlepage.recto.auto.mode"> | 
 | 974 | <div xsl:use-attribute-sets="partintro.titlepage.recto.style"> | 
 | 975 | <xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> | 
 | 976 | </div> | 
 | 977 | </xsl:template> | 
 | 978 |  | 
 | 979 | <xsl:template name="reference.titlepage.recto"> | 
 | 980 |   <xsl:choose> | 
 | 981 |     <xsl:when test="referenceinfo/title"> | 
 | 982 |       <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/title"/> | 
 | 983 |     </xsl:when> | 
 | 984 |     <xsl:when test="docinfo/title"> | 
 | 985 |       <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/title"/> | 
 | 986 |     </xsl:when> | 
 | 987 |     <xsl:when test="info/title"> | 
 | 988 |       <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/title"/> | 
 | 989 |     </xsl:when> | 
 | 990 |     <xsl:when test="title"> | 
 | 991 |       <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="title"/> | 
 | 992 |     </xsl:when> | 
 | 993 |   </xsl:choose> | 
 | 994 |  | 
 | 995 |   <xsl:choose> | 
 | 996 |     <xsl:when test="referenceinfo/subtitle"> | 
 | 997 |       <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/subtitle"/> | 
 | 998 |     </xsl:when> | 
 | 999 |     <xsl:when test="docinfo/subtitle"> | 
 | 1000 |       <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/subtitle"/> | 
 | 1001 |     </xsl:when> | 
 | 1002 |     <xsl:when test="info/subtitle"> | 
 | 1003 |       <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 1004 |     </xsl:when> | 
 | 1005 |     <xsl:when test="subtitle"> | 
 | 1006 |       <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 1007 |     </xsl:when> | 
 | 1008 |   </xsl:choose> | 
 | 1009 |  | 
 | 1010 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/corpauthor"/> | 
 | 1011 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/corpauthor"/> | 
 | 1012 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/corpauthor"/> | 
 | 1013 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/authorgroup"/> | 
 | 1014 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/authorgroup"/> | 
 | 1015 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/authorgroup"/> | 
 | 1016 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/author"/> | 
 | 1017 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/author"/> | 
 | 1018 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/author"/> | 
 | 1019 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/othercredit"/> | 
 | 1020 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/othercredit"/> | 
 | 1021 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/othercredit"/> | 
 | 1022 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/releaseinfo"/> | 
 | 1023 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/> | 
 | 1024 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/releaseinfo"/> | 
 | 1025 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/copyright"/> | 
 | 1026 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/copyright"/> | 
 | 1027 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/copyright"/> | 
 | 1028 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/legalnotice"/> | 
 | 1029 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/legalnotice"/> | 
 | 1030 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/legalnotice"/> | 
 | 1031 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/pubdate"/> | 
 | 1032 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/pubdate"/> | 
 | 1033 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/pubdate"/> | 
 | 1034 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/revision"/> | 
 | 1035 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/revision"/> | 
 | 1036 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/revision"/> | 
 | 1037 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/revhistory"/> | 
 | 1038 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/revhistory"/> | 
 | 1039 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/revhistory"/> | 
 | 1040 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/abstract"/> | 
 | 1041 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/abstract"/> | 
 | 1042 |   <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/abstract"/> | 
 | 1043 | </xsl:template> | 
 | 1044 |  | 
 | 1045 | <xsl:template name="reference.titlepage.verso"> | 
 | 1046 | </xsl:template> | 
 | 1047 |  | 
 | 1048 | <xsl:template name="reference.titlepage.separator"><hr/> | 
 | 1049 | </xsl:template> | 
 | 1050 |  | 
 | 1051 | <xsl:template name="reference.titlepage.before.recto"> | 
 | 1052 | </xsl:template> | 
 | 1053 |  | 
 | 1054 | <xsl:template name="reference.titlepage.before.verso"> | 
 | 1055 | </xsl:template> | 
 | 1056 |  | 
 | 1057 | <xsl:template name="reference.titlepage"> | 
 | 1058 |   <div class="titlepage"> | 
 | 1059 |     <xsl:variable name="recto.content"> | 
 | 1060 |       <xsl:call-template name="reference.titlepage.before.recto"/> | 
 | 1061 |       <xsl:call-template name="reference.titlepage.recto"/> | 
 | 1062 |     </xsl:variable> | 
 | 1063 |     <xsl:variable name="recto.elements.count"> | 
 | 1064 |       <xsl:choose> | 
 | 1065 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 1066 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 1067 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 1068 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 1069 |       </xsl:choose> | 
 | 1070 |     </xsl:variable> | 
 | 1071 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 1072 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 1073 |     </xsl:if> | 
 | 1074 |     <xsl:variable name="verso.content"> | 
 | 1075 |       <xsl:call-template name="reference.titlepage.before.verso"/> | 
 | 1076 |       <xsl:call-template name="reference.titlepage.verso"/> | 
 | 1077 |     </xsl:variable> | 
 | 1078 |     <xsl:variable name="verso.elements.count"> | 
 | 1079 |       <xsl:choose> | 
 | 1080 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 1081 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 1082 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 1083 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 1084 |       </xsl:choose> | 
 | 1085 |     </xsl:variable> | 
 | 1086 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 1087 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 1088 |     </xsl:if> | 
 | 1089 |     <xsl:call-template name="reference.titlepage.separator"/> | 
 | 1090 |   </div> | 
 | 1091 | </xsl:template> | 
 | 1092 |  | 
 | 1093 | <xsl:template match="*" mode="reference.titlepage.recto.mode"> | 
 | 1094 |   <!-- if an element isn't found in this mode, --> | 
 | 1095 |   <!-- try the generic titlepage.mode --> | 
 | 1096 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 1097 | </xsl:template> | 
 | 1098 |  | 
 | 1099 | <xsl:template match="*" mode="reference.titlepage.verso.mode"> | 
 | 1100 |   <!-- if an element isn't found in this mode, --> | 
 | 1101 |   <!-- try the generic titlepage.mode --> | 
 | 1102 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 1103 | </xsl:template> | 
 | 1104 |  | 
 | 1105 | <xsl:template match="title" mode="reference.titlepage.recto.auto.mode"> | 
 | 1106 | <div xsl:use-attribute-sets="reference.titlepage.recto.style"> | 
 | 1107 | <xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> | 
 | 1108 | </div> | 
 | 1109 | </xsl:template> | 
 | 1110 |  | 
 | 1111 | <xsl:template match="subtitle" mode="reference.titlepage.recto.auto.mode"> | 
 | 1112 | <div xsl:use-attribute-sets="reference.titlepage.recto.style"> | 
 | 1113 | <xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> | 
 | 1114 | </div> | 
 | 1115 | </xsl:template> | 
 | 1116 |  | 
 | 1117 | <xsl:template match="corpauthor" mode="reference.titlepage.recto.auto.mode"> | 
 | 1118 | <div xsl:use-attribute-sets="reference.titlepage.recto.style"> | 
 | 1119 | <xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> | 
 | 1120 | </div> | 
 | 1121 | </xsl:template> | 
 | 1122 |  | 
 | 1123 | <xsl:template match="authorgroup" mode="reference.titlepage.recto.auto.mode"> | 
 | 1124 | <div xsl:use-attribute-sets="reference.titlepage.recto.style"> | 
 | 1125 | <xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> | 
 | 1126 | </div> | 
 | 1127 | </xsl:template> | 
 | 1128 |  | 
 | 1129 | <xsl:template match="author" mode="reference.titlepage.recto.auto.mode"> | 
 | 1130 | <div xsl:use-attribute-sets="reference.titlepage.recto.style"> | 
 | 1131 | <xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> | 
 | 1132 | </div> | 
 | 1133 | </xsl:template> | 
 | 1134 |  | 
 | 1135 | <xsl:template match="othercredit" mode="reference.titlepage.recto.auto.mode"> | 
 | 1136 | <div xsl:use-attribute-sets="reference.titlepage.recto.style"> | 
 | 1137 | <xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> | 
 | 1138 | </div> | 
 | 1139 | </xsl:template> | 
 | 1140 |  | 
 | 1141 | <xsl:template match="releaseinfo" mode="reference.titlepage.recto.auto.mode"> | 
 | 1142 | <div xsl:use-attribute-sets="reference.titlepage.recto.style"> | 
 | 1143 | <xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> | 
 | 1144 | </div> | 
 | 1145 | </xsl:template> | 
 | 1146 |  | 
 | 1147 | <xsl:template match="copyright" mode="reference.titlepage.recto.auto.mode"> | 
 | 1148 | <div xsl:use-attribute-sets="reference.titlepage.recto.style"> | 
 | 1149 | <xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> | 
 | 1150 | </div> | 
 | 1151 | </xsl:template> | 
 | 1152 |  | 
 | 1153 | <xsl:template match="legalnotice" mode="reference.titlepage.recto.auto.mode"> | 
 | 1154 | <div xsl:use-attribute-sets="reference.titlepage.recto.style"> | 
 | 1155 | <xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> | 
 | 1156 | </div> | 
 | 1157 | </xsl:template> | 
 | 1158 |  | 
 | 1159 | <xsl:template match="pubdate" mode="reference.titlepage.recto.auto.mode"> | 
 | 1160 | <div xsl:use-attribute-sets="reference.titlepage.recto.style"> | 
 | 1161 | <xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> | 
 | 1162 | </div> | 
 | 1163 | </xsl:template> | 
 | 1164 |  | 
 | 1165 | <xsl:template match="revision" mode="reference.titlepage.recto.auto.mode"> | 
 | 1166 | <div xsl:use-attribute-sets="reference.titlepage.recto.style"> | 
 | 1167 | <xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> | 
 | 1168 | </div> | 
 | 1169 | </xsl:template> | 
 | 1170 |  | 
 | 1171 | <xsl:template match="revhistory" mode="reference.titlepage.recto.auto.mode"> | 
 | 1172 | <div xsl:use-attribute-sets="reference.titlepage.recto.style"> | 
 | 1173 | <xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> | 
 | 1174 | </div> | 
 | 1175 | </xsl:template> | 
 | 1176 |  | 
 | 1177 | <xsl:template match="abstract" mode="reference.titlepage.recto.auto.mode"> | 
 | 1178 | <div xsl:use-attribute-sets="reference.titlepage.recto.style"> | 
 | 1179 | <xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> | 
 | 1180 | </div> | 
 | 1181 | </xsl:template> | 
 | 1182 |  | 
 | 1183 | <xsl:template name="refentry.titlepage.recto"> | 
 | 1184 | </xsl:template> | 
 | 1185 |  | 
 | 1186 | <xsl:template name="refentry.titlepage.verso"> | 
 | 1187 | </xsl:template> | 
 | 1188 |  | 
 | 1189 | <xsl:template name="refentry.titlepage.separator"> | 
 | 1190 | </xsl:template> | 
 | 1191 |  | 
 | 1192 | <xsl:template name="refentry.titlepage.before.recto"> | 
 | 1193 | </xsl:template> | 
 | 1194 |  | 
 | 1195 | <xsl:template name="refentry.titlepage.before.verso"> | 
 | 1196 | </xsl:template> | 
 | 1197 |  | 
 | 1198 | <xsl:template name="refentry.titlepage"> | 
 | 1199 |   <div class="titlepage"> | 
 | 1200 |     <xsl:variable name="recto.content"> | 
 | 1201 |       <xsl:call-template name="refentry.titlepage.before.recto"/> | 
 | 1202 |       <xsl:call-template name="refentry.titlepage.recto"/> | 
 | 1203 |     </xsl:variable> | 
 | 1204 |     <xsl:variable name="recto.elements.count"> | 
 | 1205 |       <xsl:choose> | 
 | 1206 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 1207 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 1208 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 1209 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 1210 |       </xsl:choose> | 
 | 1211 |     </xsl:variable> | 
 | 1212 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 1213 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 1214 |     </xsl:if> | 
 | 1215 |     <xsl:variable name="verso.content"> | 
 | 1216 |       <xsl:call-template name="refentry.titlepage.before.verso"/> | 
 | 1217 |       <xsl:call-template name="refentry.titlepage.verso"/> | 
 | 1218 |     </xsl:variable> | 
 | 1219 |     <xsl:variable name="verso.elements.count"> | 
 | 1220 |       <xsl:choose> | 
 | 1221 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 1222 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 1223 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 1224 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 1225 |       </xsl:choose> | 
 | 1226 |     </xsl:variable> | 
 | 1227 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 1228 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 1229 |     </xsl:if> | 
 | 1230 |     <xsl:call-template name="refentry.titlepage.separator"/> | 
 | 1231 |   </div> | 
 | 1232 | </xsl:template> | 
 | 1233 |  | 
 | 1234 | <xsl:template match="*" mode="refentry.titlepage.recto.mode"> | 
 | 1235 |   <!-- if an element isn't found in this mode, --> | 
 | 1236 |   <!-- try the generic titlepage.mode --> | 
 | 1237 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 1238 | </xsl:template> | 
 | 1239 |  | 
 | 1240 | <xsl:template match="*" mode="refentry.titlepage.verso.mode"> | 
 | 1241 |   <!-- if an element isn't found in this mode, --> | 
 | 1242 |   <!-- try the generic titlepage.mode --> | 
 | 1243 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 1244 | </xsl:template> | 
 | 1245 |  | 
 | 1246 | <xsl:template name="dedication.titlepage.recto"> | 
 | 1247 |   <div xsl:use-attribute-sets="dedication.titlepage.recto.style"> | 
 | 1248 | <xsl:call-template name="component.title"> | 
 | 1249 | <xsl:with-param name="node" select="ancestor-or-self::dedication[1]"/> | 
 | 1250 | </xsl:call-template></div> | 
 | 1251 |   <xsl:choose> | 
 | 1252 |     <xsl:when test="dedicationinfo/subtitle"> | 
 | 1253 |       <xsl:apply-templates mode="dedication.titlepage.recto.auto.mode" select="dedicationinfo/subtitle"/> | 
 | 1254 |     </xsl:when> | 
 | 1255 |     <xsl:when test="docinfo/subtitle"> | 
 | 1256 |       <xsl:apply-templates mode="dedication.titlepage.recto.auto.mode" select="docinfo/subtitle"/> | 
 | 1257 |     </xsl:when> | 
 | 1258 |     <xsl:when test="info/subtitle"> | 
 | 1259 |       <xsl:apply-templates mode="dedication.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 1260 |     </xsl:when> | 
 | 1261 |     <xsl:when test="subtitle"> | 
 | 1262 |       <xsl:apply-templates mode="dedication.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 1263 |     </xsl:when> | 
 | 1264 |   </xsl:choose> | 
 | 1265 |  | 
 | 1266 | </xsl:template> | 
 | 1267 |  | 
 | 1268 | <xsl:template name="dedication.titlepage.verso"> | 
 | 1269 | </xsl:template> | 
 | 1270 |  | 
 | 1271 | <xsl:template name="dedication.titlepage.separator"> | 
 | 1272 | </xsl:template> | 
 | 1273 |  | 
 | 1274 | <xsl:template name="dedication.titlepage.before.recto"> | 
 | 1275 | </xsl:template> | 
 | 1276 |  | 
 | 1277 | <xsl:template name="dedication.titlepage.before.verso"> | 
 | 1278 | </xsl:template> | 
 | 1279 |  | 
 | 1280 | <xsl:template name="dedication.titlepage"> | 
 | 1281 |   <div class="titlepage"> | 
 | 1282 |     <xsl:variable name="recto.content"> | 
 | 1283 |       <xsl:call-template name="dedication.titlepage.before.recto"/> | 
 | 1284 |       <xsl:call-template name="dedication.titlepage.recto"/> | 
 | 1285 |     </xsl:variable> | 
 | 1286 |     <xsl:variable name="recto.elements.count"> | 
 | 1287 |       <xsl:choose> | 
 | 1288 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 1289 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 1290 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 1291 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 1292 |       </xsl:choose> | 
 | 1293 |     </xsl:variable> | 
 | 1294 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 1295 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 1296 |     </xsl:if> | 
 | 1297 |     <xsl:variable name="verso.content"> | 
 | 1298 |       <xsl:call-template name="dedication.titlepage.before.verso"/> | 
 | 1299 |       <xsl:call-template name="dedication.titlepage.verso"/> | 
 | 1300 |     </xsl:variable> | 
 | 1301 |     <xsl:variable name="verso.elements.count"> | 
 | 1302 |       <xsl:choose> | 
 | 1303 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 1304 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 1305 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 1306 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 1307 |       </xsl:choose> | 
 | 1308 |     </xsl:variable> | 
 | 1309 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 1310 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 1311 |     </xsl:if> | 
 | 1312 |     <xsl:call-template name="dedication.titlepage.separator"/> | 
 | 1313 |   </div> | 
 | 1314 | </xsl:template> | 
 | 1315 |  | 
 | 1316 | <xsl:template match="*" mode="dedication.titlepage.recto.mode"> | 
 | 1317 |   <!-- if an element isn't found in this mode, --> | 
 | 1318 |   <!-- try the generic titlepage.mode --> | 
 | 1319 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 1320 | </xsl:template> | 
 | 1321 |  | 
 | 1322 | <xsl:template match="*" mode="dedication.titlepage.verso.mode"> | 
 | 1323 |   <!-- if an element isn't found in this mode, --> | 
 | 1324 |   <!-- try the generic titlepage.mode --> | 
 | 1325 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 1326 | </xsl:template> | 
 | 1327 |  | 
 | 1328 | <xsl:template match="subtitle" mode="dedication.titlepage.recto.auto.mode"> | 
 | 1329 | <div xsl:use-attribute-sets="dedication.titlepage.recto.style"> | 
 | 1330 | <xsl:apply-templates select="." mode="dedication.titlepage.recto.mode"/> | 
 | 1331 | </div> | 
 | 1332 | </xsl:template> | 
 | 1333 |  | 
 | 1334 | <xsl:template name="acknowledgements.titlepage.recto"> | 
 | 1335 |   <div xsl:use-attribute-sets="acknowledgements.titlepage.recto.style"> | 
 | 1336 | <xsl:call-template name="component.title"> | 
 | 1337 | <xsl:with-param name="node" select="ancestor-or-self::acknowledgements[1]"/> | 
 | 1338 | </xsl:call-template></div> | 
 | 1339 |   <xsl:choose> | 
 | 1340 |     <xsl:when test="acknowledgementsinfo/subtitle"> | 
 | 1341 |       <xsl:apply-templates mode="acknowledgements.titlepage.recto.auto.mode" select="acknowledgementsinfo/subtitle"/> | 
 | 1342 |     </xsl:when> | 
 | 1343 |     <xsl:when test="docinfo/subtitle"> | 
 | 1344 |       <xsl:apply-templates mode="acknowledgements.titlepage.recto.auto.mode" select="docinfo/subtitle"/> | 
 | 1345 |     </xsl:when> | 
 | 1346 |     <xsl:when test="info/subtitle"> | 
 | 1347 |       <xsl:apply-templates mode="acknowledgements.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 1348 |     </xsl:when> | 
 | 1349 |     <xsl:when test="subtitle"> | 
 | 1350 |       <xsl:apply-templates mode="acknowledgements.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 1351 |     </xsl:when> | 
 | 1352 |   </xsl:choose> | 
 | 1353 |  | 
 | 1354 | </xsl:template> | 
 | 1355 |  | 
 | 1356 | <xsl:template name="acknowledgements.titlepage.verso"> | 
 | 1357 | </xsl:template> | 
 | 1358 |  | 
 | 1359 | <xsl:template name="acknowledgements.titlepage.separator"> | 
 | 1360 | </xsl:template> | 
 | 1361 |  | 
 | 1362 | <xsl:template name="acknowledgements.titlepage.before.recto"> | 
 | 1363 | </xsl:template> | 
 | 1364 |  | 
 | 1365 | <xsl:template name="acknowledgements.titlepage.before.verso"> | 
 | 1366 | </xsl:template> | 
 | 1367 |  | 
 | 1368 | <xsl:template name="acknowledgements.titlepage"> | 
 | 1369 |   <div class="titlepage"> | 
 | 1370 |     <xsl:variable name="recto.content"> | 
 | 1371 |       <xsl:call-template name="acknowledgements.titlepage.before.recto"/> | 
 | 1372 |       <xsl:call-template name="acknowledgements.titlepage.recto"/> | 
 | 1373 |     </xsl:variable> | 
 | 1374 |     <xsl:variable name="recto.elements.count"> | 
 | 1375 |       <xsl:choose> | 
 | 1376 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 1377 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 1378 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 1379 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 1380 |       </xsl:choose> | 
 | 1381 |     </xsl:variable> | 
 | 1382 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 1383 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 1384 |     </xsl:if> | 
 | 1385 |     <xsl:variable name="verso.content"> | 
 | 1386 |       <xsl:call-template name="acknowledgements.titlepage.before.verso"/> | 
 | 1387 |       <xsl:call-template name="acknowledgements.titlepage.verso"/> | 
 | 1388 |     </xsl:variable> | 
 | 1389 |     <xsl:variable name="verso.elements.count"> | 
 | 1390 |       <xsl:choose> | 
 | 1391 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 1392 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 1393 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 1394 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 1395 |       </xsl:choose> | 
 | 1396 |     </xsl:variable> | 
 | 1397 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 1398 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 1399 |     </xsl:if> | 
 | 1400 |     <xsl:call-template name="acknowledgements.titlepage.separator"/> | 
 | 1401 |   </div> | 
 | 1402 | </xsl:template> | 
 | 1403 |  | 
 | 1404 | <xsl:template match="*" mode="acknowledgements.titlepage.recto.mode"> | 
 | 1405 |   <!-- if an element isn't found in this mode, --> | 
 | 1406 |   <!-- try the generic titlepage.mode --> | 
 | 1407 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 1408 | </xsl:template> | 
 | 1409 |  | 
 | 1410 | <xsl:template match="*" mode="acknowledgements.titlepage.verso.mode"> | 
 | 1411 |   <!-- if an element isn't found in this mode, --> | 
 | 1412 |   <!-- try the generic titlepage.mode --> | 
 | 1413 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 1414 | </xsl:template> | 
 | 1415 |  | 
 | 1416 | <xsl:template match="subtitle" mode="acknowledgements.titlepage.recto.auto.mode"> | 
 | 1417 | <div xsl:use-attribute-sets="acknowledgements.titlepage.recto.style"> | 
 | 1418 | <xsl:apply-templates select="." mode="acknowledgements.titlepage.recto.mode"/> | 
 | 1419 | </div> | 
 | 1420 | </xsl:template> | 
 | 1421 |  | 
 | 1422 | <xsl:template name="preface.titlepage.recto"> | 
 | 1423 |   <xsl:choose> | 
 | 1424 |     <xsl:when test="prefaceinfo/title"> | 
 | 1425 |       <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/title"/> | 
 | 1426 |     </xsl:when> | 
 | 1427 |     <xsl:when test="docinfo/title"> | 
 | 1428 |       <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/title"/> | 
 | 1429 |     </xsl:when> | 
 | 1430 |     <xsl:when test="info/title"> | 
 | 1431 |       <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/title"/> | 
 | 1432 |     </xsl:when> | 
 | 1433 |     <xsl:when test="title"> | 
 | 1434 |       <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="title"/> | 
 | 1435 |     </xsl:when> | 
 | 1436 |   </xsl:choose> | 
 | 1437 |  | 
 | 1438 |   <xsl:choose> | 
 | 1439 |     <xsl:when test="prefaceinfo/subtitle"> | 
 | 1440 |       <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/subtitle"/> | 
 | 1441 |     </xsl:when> | 
 | 1442 |     <xsl:when test="docinfo/subtitle"> | 
 | 1443 |       <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/subtitle"/> | 
 | 1444 |     </xsl:when> | 
 | 1445 |     <xsl:when test="info/subtitle"> | 
 | 1446 |       <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 1447 |     </xsl:when> | 
 | 1448 |     <xsl:when test="subtitle"> | 
 | 1449 |       <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 1450 |     </xsl:when> | 
 | 1451 |   </xsl:choose> | 
 | 1452 |  | 
 | 1453 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/corpauthor"/> | 
 | 1454 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/corpauthor"/> | 
 | 1455 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/corpauthor"/> | 
 | 1456 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/authorgroup"/> | 
 | 1457 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/authorgroup"/> | 
 | 1458 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/authorgroup"/> | 
 | 1459 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/author"/> | 
 | 1460 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/author"/> | 
 | 1461 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/author"/> | 
 | 1462 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/othercredit"/> | 
 | 1463 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/othercredit"/> | 
 | 1464 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/othercredit"/> | 
 | 1465 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/releaseinfo"/> | 
 | 1466 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/> | 
 | 1467 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/releaseinfo"/> | 
 | 1468 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/copyright"/> | 
 | 1469 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/copyright"/> | 
 | 1470 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/copyright"/> | 
 | 1471 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/legalnotice"/> | 
 | 1472 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/legalnotice"/> | 
 | 1473 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/legalnotice"/> | 
 | 1474 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/pubdate"/> | 
 | 1475 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/pubdate"/> | 
 | 1476 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/pubdate"/> | 
 | 1477 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/revision"/> | 
 | 1478 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/revision"/> | 
 | 1479 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/revision"/> | 
 | 1480 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/revhistory"/> | 
 | 1481 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/revhistory"/> | 
 | 1482 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/revhistory"/> | 
 | 1483 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/abstract"/> | 
 | 1484 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/abstract"/> | 
 | 1485 |   <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/abstract"/> | 
 | 1486 | </xsl:template> | 
 | 1487 |  | 
 | 1488 | <xsl:template name="preface.titlepage.verso"> | 
 | 1489 | </xsl:template> | 
 | 1490 |  | 
 | 1491 | <xsl:template name="preface.titlepage.separator"> | 
 | 1492 | </xsl:template> | 
 | 1493 |  | 
 | 1494 | <xsl:template name="preface.titlepage.before.recto"> | 
 | 1495 | </xsl:template> | 
 | 1496 |  | 
 | 1497 | <xsl:template name="preface.titlepage.before.verso"> | 
 | 1498 | </xsl:template> | 
 | 1499 |  | 
 | 1500 | <xsl:template name="preface.titlepage"> | 
 | 1501 |   <div class="titlepage"> | 
 | 1502 |     <xsl:variable name="recto.content"> | 
 | 1503 |       <xsl:call-template name="preface.titlepage.before.recto"/> | 
 | 1504 |       <xsl:call-template name="preface.titlepage.recto"/> | 
 | 1505 |     </xsl:variable> | 
 | 1506 |     <xsl:variable name="recto.elements.count"> | 
 | 1507 |       <xsl:choose> | 
 | 1508 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 1509 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 1510 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 1511 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 1512 |       </xsl:choose> | 
 | 1513 |     </xsl:variable> | 
 | 1514 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 1515 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 1516 |     </xsl:if> | 
 | 1517 |     <xsl:variable name="verso.content"> | 
 | 1518 |       <xsl:call-template name="preface.titlepage.before.verso"/> | 
 | 1519 |       <xsl:call-template name="preface.titlepage.verso"/> | 
 | 1520 |     </xsl:variable> | 
 | 1521 |     <xsl:variable name="verso.elements.count"> | 
 | 1522 |       <xsl:choose> | 
 | 1523 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 1524 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 1525 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 1526 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 1527 |       </xsl:choose> | 
 | 1528 |     </xsl:variable> | 
 | 1529 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 1530 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 1531 |     </xsl:if> | 
 | 1532 |     <xsl:call-template name="preface.titlepage.separator"/> | 
 | 1533 |   </div> | 
 | 1534 | </xsl:template> | 
 | 1535 |  | 
 | 1536 | <xsl:template match="*" mode="preface.titlepage.recto.mode"> | 
 | 1537 |   <!-- if an element isn't found in this mode, --> | 
 | 1538 |   <!-- try the generic titlepage.mode --> | 
 | 1539 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 1540 | </xsl:template> | 
 | 1541 |  | 
 | 1542 | <xsl:template match="*" mode="preface.titlepage.verso.mode"> | 
 | 1543 |   <!-- if an element isn't found in this mode, --> | 
 | 1544 |   <!-- try the generic titlepage.mode --> | 
 | 1545 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 1546 | </xsl:template> | 
 | 1547 |  | 
 | 1548 | <xsl:template match="title" mode="preface.titlepage.recto.auto.mode"> | 
 | 1549 | <div xsl:use-attribute-sets="preface.titlepage.recto.style"> | 
 | 1550 | <xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> | 
 | 1551 | </div> | 
 | 1552 | </xsl:template> | 
 | 1553 |  | 
 | 1554 | <xsl:template match="subtitle" mode="preface.titlepage.recto.auto.mode"> | 
 | 1555 | <div xsl:use-attribute-sets="preface.titlepage.recto.style"> | 
 | 1556 | <xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> | 
 | 1557 | </div> | 
 | 1558 | </xsl:template> | 
 | 1559 |  | 
 | 1560 | <xsl:template match="corpauthor" mode="preface.titlepage.recto.auto.mode"> | 
 | 1561 | <div xsl:use-attribute-sets="preface.titlepage.recto.style"> | 
 | 1562 | <xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> | 
 | 1563 | </div> | 
 | 1564 | </xsl:template> | 
 | 1565 |  | 
 | 1566 | <xsl:template match="authorgroup" mode="preface.titlepage.recto.auto.mode"> | 
 | 1567 | <div xsl:use-attribute-sets="preface.titlepage.recto.style"> | 
 | 1568 | <xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> | 
 | 1569 | </div> | 
 | 1570 | </xsl:template> | 
 | 1571 |  | 
 | 1572 | <xsl:template match="author" mode="preface.titlepage.recto.auto.mode"> | 
 | 1573 | <div xsl:use-attribute-sets="preface.titlepage.recto.style"> | 
 | 1574 | <xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> | 
 | 1575 | </div> | 
 | 1576 | </xsl:template> | 
 | 1577 |  | 
 | 1578 | <xsl:template match="othercredit" mode="preface.titlepage.recto.auto.mode"> | 
 | 1579 | <div xsl:use-attribute-sets="preface.titlepage.recto.style"> | 
 | 1580 | <xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> | 
 | 1581 | </div> | 
 | 1582 | </xsl:template> | 
 | 1583 |  | 
 | 1584 | <xsl:template match="releaseinfo" mode="preface.titlepage.recto.auto.mode"> | 
 | 1585 | <div xsl:use-attribute-sets="preface.titlepage.recto.style"> | 
 | 1586 | <xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> | 
 | 1587 | </div> | 
 | 1588 | </xsl:template> | 
 | 1589 |  | 
 | 1590 | <xsl:template match="copyright" mode="preface.titlepage.recto.auto.mode"> | 
 | 1591 | <div xsl:use-attribute-sets="preface.titlepage.recto.style"> | 
 | 1592 | <xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> | 
 | 1593 | </div> | 
 | 1594 | </xsl:template> | 
 | 1595 |  | 
 | 1596 | <xsl:template match="legalnotice" mode="preface.titlepage.recto.auto.mode"> | 
 | 1597 | <div xsl:use-attribute-sets="preface.titlepage.recto.style"> | 
 | 1598 | <xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> | 
 | 1599 | </div> | 
 | 1600 | </xsl:template> | 
 | 1601 |  | 
 | 1602 | <xsl:template match="pubdate" mode="preface.titlepage.recto.auto.mode"> | 
 | 1603 | <div xsl:use-attribute-sets="preface.titlepage.recto.style"> | 
 | 1604 | <xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> | 
 | 1605 | </div> | 
 | 1606 | </xsl:template> | 
 | 1607 |  | 
 | 1608 | <xsl:template match="revision" mode="preface.titlepage.recto.auto.mode"> | 
 | 1609 | <div xsl:use-attribute-sets="preface.titlepage.recto.style"> | 
 | 1610 | <xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> | 
 | 1611 | </div> | 
 | 1612 | </xsl:template> | 
 | 1613 |  | 
 | 1614 | <xsl:template match="revhistory" mode="preface.titlepage.recto.auto.mode"> | 
 | 1615 | <div xsl:use-attribute-sets="preface.titlepage.recto.style"> | 
 | 1616 | <xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> | 
 | 1617 | </div> | 
 | 1618 | </xsl:template> | 
 | 1619 |  | 
 | 1620 | <xsl:template match="abstract" mode="preface.titlepage.recto.auto.mode"> | 
 | 1621 | <div xsl:use-attribute-sets="preface.titlepage.recto.style"> | 
 | 1622 | <xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> | 
 | 1623 | </div> | 
 | 1624 | </xsl:template> | 
 | 1625 |  | 
 | 1626 | <xsl:template name="chapter.titlepage.recto"> | 
 | 1627 |   <xsl:choose> | 
 | 1628 |     <xsl:when test="chapterinfo/title"> | 
 | 1629 |       <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/title"/> | 
 | 1630 |     </xsl:when> | 
 | 1631 |     <xsl:when test="docinfo/title"> | 
 | 1632 |       <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/title"/> | 
 | 1633 |     </xsl:when> | 
 | 1634 |     <xsl:when test="info/title"> | 
 | 1635 |       <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/title"/> | 
 | 1636 |     </xsl:when> | 
 | 1637 |     <xsl:when test="title"> | 
 | 1638 |       <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="title"/> | 
 | 1639 |     </xsl:when> | 
 | 1640 |   </xsl:choose> | 
 | 1641 |  | 
 | 1642 |   <xsl:choose> | 
 | 1643 |     <xsl:when test="chapterinfo/subtitle"> | 
 | 1644 |       <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/subtitle"/> | 
 | 1645 |     </xsl:when> | 
 | 1646 |     <xsl:when test="docinfo/subtitle"> | 
 | 1647 |       <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/subtitle"/> | 
 | 1648 |     </xsl:when> | 
 | 1649 |     <xsl:when test="info/subtitle"> | 
 | 1650 |       <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 1651 |     </xsl:when> | 
 | 1652 |     <xsl:when test="subtitle"> | 
 | 1653 |       <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 1654 |     </xsl:when> | 
 | 1655 |   </xsl:choose> | 
 | 1656 |  | 
 | 1657 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/corpauthor"/> | 
 | 1658 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/corpauthor"/> | 
 | 1659 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/corpauthor"/> | 
 | 1660 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/authorgroup"/> | 
 | 1661 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/authorgroup"/> | 
 | 1662 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/authorgroup"/> | 
 | 1663 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/author"/> | 
 | 1664 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/author"/> | 
 | 1665 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/author"/> | 
 | 1666 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/othercredit"/> | 
 | 1667 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/othercredit"/> | 
 | 1668 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/othercredit"/> | 
 | 1669 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/releaseinfo"/> | 
 | 1670 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/> | 
 | 1671 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/releaseinfo"/> | 
 | 1672 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/copyright"/> | 
 | 1673 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/copyright"/> | 
 | 1674 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/copyright"/> | 
 | 1675 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/legalnotice"/> | 
 | 1676 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/legalnotice"/> | 
 | 1677 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/legalnotice"/> | 
 | 1678 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/pubdate"/> | 
 | 1679 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/pubdate"/> | 
 | 1680 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/pubdate"/> | 
 | 1681 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/revision"/> | 
 | 1682 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/revision"/> | 
 | 1683 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/revision"/> | 
 | 1684 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/revhistory"/> | 
 | 1685 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/revhistory"/> | 
 | 1686 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/revhistory"/> | 
 | 1687 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/abstract"/> | 
 | 1688 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/abstract"/> | 
 | 1689 |   <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/abstract"/> | 
 | 1690 | </xsl:template> | 
 | 1691 |  | 
 | 1692 | <xsl:template name="chapter.titlepage.verso"> | 
 | 1693 | </xsl:template> | 
 | 1694 |  | 
 | 1695 | <xsl:template name="chapter.titlepage.separator"> | 
 | 1696 | </xsl:template> | 
 | 1697 |  | 
 | 1698 | <xsl:template name="chapter.titlepage.before.recto"> | 
 | 1699 | </xsl:template> | 
 | 1700 |  | 
 | 1701 | <xsl:template name="chapter.titlepage.before.verso"> | 
 | 1702 | </xsl:template> | 
 | 1703 |  | 
 | 1704 | <xsl:template name="chapter.titlepage"> | 
 | 1705 |   <div class="titlepage"> | 
 | 1706 |     <xsl:variable name="recto.content"> | 
 | 1707 |       <xsl:call-template name="chapter.titlepage.before.recto"/> | 
 | 1708 |       <xsl:call-template name="chapter.titlepage.recto"/> | 
 | 1709 |     </xsl:variable> | 
 | 1710 |     <xsl:variable name="recto.elements.count"> | 
 | 1711 |       <xsl:choose> | 
 | 1712 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 1713 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 1714 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 1715 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 1716 |       </xsl:choose> | 
 | 1717 |     </xsl:variable> | 
 | 1718 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 1719 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 1720 |     </xsl:if> | 
 | 1721 |     <xsl:variable name="verso.content"> | 
 | 1722 |       <xsl:call-template name="chapter.titlepage.before.verso"/> | 
 | 1723 |       <xsl:call-template name="chapter.titlepage.verso"/> | 
 | 1724 |     </xsl:variable> | 
 | 1725 |     <xsl:variable name="verso.elements.count"> | 
 | 1726 |       <xsl:choose> | 
 | 1727 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 1728 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 1729 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 1730 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 1731 |       </xsl:choose> | 
 | 1732 |     </xsl:variable> | 
 | 1733 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 1734 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 1735 |     </xsl:if> | 
 | 1736 |     <xsl:call-template name="chapter.titlepage.separator"/> | 
 | 1737 |   </div> | 
 | 1738 | </xsl:template> | 
 | 1739 |  | 
 | 1740 | <xsl:template match="*" mode="chapter.titlepage.recto.mode"> | 
 | 1741 |   <!-- if an element isn't found in this mode, --> | 
 | 1742 |   <!-- try the generic titlepage.mode --> | 
 | 1743 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 1744 | </xsl:template> | 
 | 1745 |  | 
 | 1746 | <xsl:template match="*" mode="chapter.titlepage.verso.mode"> | 
 | 1747 |   <!-- if an element isn't found in this mode, --> | 
 | 1748 |   <!-- try the generic titlepage.mode --> | 
 | 1749 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 1750 | </xsl:template> | 
 | 1751 |  | 
 | 1752 | <xsl:template match="title" mode="chapter.titlepage.recto.auto.mode"> | 
 | 1753 | <div xsl:use-attribute-sets="chapter.titlepage.recto.style"> | 
 | 1754 | <xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> | 
 | 1755 | </div> | 
 | 1756 | </xsl:template> | 
 | 1757 |  | 
 | 1758 | <xsl:template match="subtitle" mode="chapter.titlepage.recto.auto.mode"> | 
 | 1759 | <div xsl:use-attribute-sets="chapter.titlepage.recto.style"> | 
 | 1760 | <xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> | 
 | 1761 | </div> | 
 | 1762 | </xsl:template> | 
 | 1763 |  | 
 | 1764 | <xsl:template match="corpauthor" mode="chapter.titlepage.recto.auto.mode"> | 
 | 1765 | <div xsl:use-attribute-sets="chapter.titlepage.recto.style"> | 
 | 1766 | <xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> | 
 | 1767 | </div> | 
 | 1768 | </xsl:template> | 
 | 1769 |  | 
 | 1770 | <xsl:template match="authorgroup" mode="chapter.titlepage.recto.auto.mode"> | 
 | 1771 | <div xsl:use-attribute-sets="chapter.titlepage.recto.style"> | 
 | 1772 | <xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> | 
 | 1773 | </div> | 
 | 1774 | </xsl:template> | 
 | 1775 |  | 
 | 1776 | <xsl:template match="author" mode="chapter.titlepage.recto.auto.mode"> | 
 | 1777 | <div xsl:use-attribute-sets="chapter.titlepage.recto.style"> | 
 | 1778 | <xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> | 
 | 1779 | </div> | 
 | 1780 | </xsl:template> | 
 | 1781 |  | 
 | 1782 | <xsl:template match="othercredit" mode="chapter.titlepage.recto.auto.mode"> | 
 | 1783 | <div xsl:use-attribute-sets="chapter.titlepage.recto.style"> | 
 | 1784 | <xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> | 
 | 1785 | </div> | 
 | 1786 | </xsl:template> | 
 | 1787 |  | 
 | 1788 | <xsl:template match="releaseinfo" mode="chapter.titlepage.recto.auto.mode"> | 
 | 1789 | <div xsl:use-attribute-sets="chapter.titlepage.recto.style"> | 
 | 1790 | <xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> | 
 | 1791 | </div> | 
 | 1792 | </xsl:template> | 
 | 1793 |  | 
 | 1794 | <xsl:template match="copyright" mode="chapter.titlepage.recto.auto.mode"> | 
 | 1795 | <div xsl:use-attribute-sets="chapter.titlepage.recto.style"> | 
 | 1796 | <xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> | 
 | 1797 | </div> | 
 | 1798 | </xsl:template> | 
 | 1799 |  | 
 | 1800 | <xsl:template match="legalnotice" mode="chapter.titlepage.recto.auto.mode"> | 
 | 1801 | <div xsl:use-attribute-sets="chapter.titlepage.recto.style"> | 
 | 1802 | <xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> | 
 | 1803 | </div> | 
 | 1804 | </xsl:template> | 
 | 1805 |  | 
 | 1806 | <xsl:template match="pubdate" mode="chapter.titlepage.recto.auto.mode"> | 
 | 1807 | <div xsl:use-attribute-sets="chapter.titlepage.recto.style"> | 
 | 1808 | <xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> | 
 | 1809 | </div> | 
 | 1810 | </xsl:template> | 
 | 1811 |  | 
 | 1812 | <xsl:template match="revision" mode="chapter.titlepage.recto.auto.mode"> | 
 | 1813 | <div xsl:use-attribute-sets="chapter.titlepage.recto.style"> | 
 | 1814 | <xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> | 
 | 1815 | </div> | 
 | 1816 | </xsl:template> | 
 | 1817 |  | 
 | 1818 | <xsl:template match="revhistory" mode="chapter.titlepage.recto.auto.mode"> | 
 | 1819 | <div xsl:use-attribute-sets="chapter.titlepage.recto.style"> | 
 | 1820 | <xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> | 
 | 1821 | </div> | 
 | 1822 | </xsl:template> | 
 | 1823 |  | 
 | 1824 | <xsl:template match="abstract" mode="chapter.titlepage.recto.auto.mode"> | 
 | 1825 | <div xsl:use-attribute-sets="chapter.titlepage.recto.style"> | 
 | 1826 | <xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> | 
 | 1827 | </div> | 
 | 1828 | </xsl:template> | 
 | 1829 |  | 
 | 1830 | <xsl:template name="appendix.titlepage.recto"> | 
 | 1831 |   <xsl:choose> | 
 | 1832 |     <xsl:when test="appendixinfo/title"> | 
 | 1833 |       <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/title"/> | 
 | 1834 |     </xsl:when> | 
 | 1835 |     <xsl:when test="docinfo/title"> | 
 | 1836 |       <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/title"/> | 
 | 1837 |     </xsl:when> | 
 | 1838 |     <xsl:when test="info/title"> | 
 | 1839 |       <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/title"/> | 
 | 1840 |     </xsl:when> | 
 | 1841 |     <xsl:when test="title"> | 
 | 1842 |       <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="title"/> | 
 | 1843 |     </xsl:when> | 
 | 1844 |   </xsl:choose> | 
 | 1845 |  | 
 | 1846 |   <xsl:choose> | 
 | 1847 |     <xsl:when test="appendixinfo/subtitle"> | 
 | 1848 |       <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/subtitle"/> | 
 | 1849 |     </xsl:when> | 
 | 1850 |     <xsl:when test="docinfo/subtitle"> | 
 | 1851 |       <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/subtitle"/> | 
 | 1852 |     </xsl:when> | 
 | 1853 |     <xsl:when test="info/subtitle"> | 
 | 1854 |       <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 1855 |     </xsl:when> | 
 | 1856 |     <xsl:when test="subtitle"> | 
 | 1857 |       <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 1858 |     </xsl:when> | 
 | 1859 |   </xsl:choose> | 
 | 1860 |  | 
 | 1861 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/corpauthor"/> | 
 | 1862 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/corpauthor"/> | 
 | 1863 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/corpauthor"/> | 
 | 1864 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/authorgroup"/> | 
 | 1865 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/authorgroup"/> | 
 | 1866 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/authorgroup"/> | 
 | 1867 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/author"/> | 
 | 1868 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/author"/> | 
 | 1869 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/author"/> | 
 | 1870 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/othercredit"/> | 
 | 1871 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/othercredit"/> | 
 | 1872 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/othercredit"/> | 
 | 1873 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/releaseinfo"/> | 
 | 1874 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/> | 
 | 1875 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/releaseinfo"/> | 
 | 1876 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/copyright"/> | 
 | 1877 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/copyright"/> | 
 | 1878 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/copyright"/> | 
 | 1879 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/legalnotice"/> | 
 | 1880 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/legalnotice"/> | 
 | 1881 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/legalnotice"/> | 
 | 1882 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/pubdate"/> | 
 | 1883 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/pubdate"/> | 
 | 1884 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/pubdate"/> | 
 | 1885 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/revision"/> | 
 | 1886 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/revision"/> | 
 | 1887 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/revision"/> | 
 | 1888 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/revhistory"/> | 
 | 1889 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/revhistory"/> | 
 | 1890 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/revhistory"/> | 
 | 1891 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/abstract"/> | 
 | 1892 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/abstract"/> | 
 | 1893 |   <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/abstract"/> | 
 | 1894 | </xsl:template> | 
 | 1895 |  | 
 | 1896 | <xsl:template name="appendix.titlepage.verso"> | 
 | 1897 | </xsl:template> | 
 | 1898 |  | 
 | 1899 | <xsl:template name="appendix.titlepage.separator"> | 
 | 1900 | </xsl:template> | 
 | 1901 |  | 
 | 1902 | <xsl:template name="appendix.titlepage.before.recto"> | 
 | 1903 | </xsl:template> | 
 | 1904 |  | 
 | 1905 | <xsl:template name="appendix.titlepage.before.verso"> | 
 | 1906 | </xsl:template> | 
 | 1907 |  | 
 | 1908 | <xsl:template name="appendix.titlepage"> | 
 | 1909 |   <div class="titlepage"> | 
 | 1910 |     <xsl:variable name="recto.content"> | 
 | 1911 |       <xsl:call-template name="appendix.titlepage.before.recto"/> | 
 | 1912 |       <xsl:call-template name="appendix.titlepage.recto"/> | 
 | 1913 |     </xsl:variable> | 
 | 1914 |     <xsl:variable name="recto.elements.count"> | 
 | 1915 |       <xsl:choose> | 
 | 1916 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 1917 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 1918 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 1919 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 1920 |       </xsl:choose> | 
 | 1921 |     </xsl:variable> | 
 | 1922 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 1923 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 1924 |     </xsl:if> | 
 | 1925 |     <xsl:variable name="verso.content"> | 
 | 1926 |       <xsl:call-template name="appendix.titlepage.before.verso"/> | 
 | 1927 |       <xsl:call-template name="appendix.titlepage.verso"/> | 
 | 1928 |     </xsl:variable> | 
 | 1929 |     <xsl:variable name="verso.elements.count"> | 
 | 1930 |       <xsl:choose> | 
 | 1931 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 1932 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 1933 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 1934 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 1935 |       </xsl:choose> | 
 | 1936 |     </xsl:variable> | 
 | 1937 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 1938 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 1939 |     </xsl:if> | 
 | 1940 |     <xsl:call-template name="appendix.titlepage.separator"/> | 
 | 1941 |   </div> | 
 | 1942 | </xsl:template> | 
 | 1943 |  | 
 | 1944 | <xsl:template match="*" mode="appendix.titlepage.recto.mode"> | 
 | 1945 |   <!-- if an element isn't found in this mode, --> | 
 | 1946 |   <!-- try the generic titlepage.mode --> | 
 | 1947 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 1948 | </xsl:template> | 
 | 1949 |  | 
 | 1950 | <xsl:template match="*" mode="appendix.titlepage.verso.mode"> | 
 | 1951 |   <!-- if an element isn't found in this mode, --> | 
 | 1952 |   <!-- try the generic titlepage.mode --> | 
 | 1953 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 1954 | </xsl:template> | 
 | 1955 |  | 
 | 1956 | <xsl:template match="title" mode="appendix.titlepage.recto.auto.mode"> | 
 | 1957 | <div xsl:use-attribute-sets="appendix.titlepage.recto.style"> | 
 | 1958 | <xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> | 
 | 1959 | </div> | 
 | 1960 | </xsl:template> | 
 | 1961 |  | 
 | 1962 | <xsl:template match="subtitle" mode="appendix.titlepage.recto.auto.mode"> | 
 | 1963 | <div xsl:use-attribute-sets="appendix.titlepage.recto.style"> | 
 | 1964 | <xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> | 
 | 1965 | </div> | 
 | 1966 | </xsl:template> | 
 | 1967 |  | 
 | 1968 | <xsl:template match="corpauthor" mode="appendix.titlepage.recto.auto.mode"> | 
 | 1969 | <div xsl:use-attribute-sets="appendix.titlepage.recto.style"> | 
 | 1970 | <xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> | 
 | 1971 | </div> | 
 | 1972 | </xsl:template> | 
 | 1973 |  | 
 | 1974 | <xsl:template match="authorgroup" mode="appendix.titlepage.recto.auto.mode"> | 
 | 1975 | <div xsl:use-attribute-sets="appendix.titlepage.recto.style"> | 
 | 1976 | <xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> | 
 | 1977 | </div> | 
 | 1978 | </xsl:template> | 
 | 1979 |  | 
 | 1980 | <xsl:template match="author" mode="appendix.titlepage.recto.auto.mode"> | 
 | 1981 | <div xsl:use-attribute-sets="appendix.titlepage.recto.style"> | 
 | 1982 | <xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> | 
 | 1983 | </div> | 
 | 1984 | </xsl:template> | 
 | 1985 |  | 
 | 1986 | <xsl:template match="othercredit" mode="appendix.titlepage.recto.auto.mode"> | 
 | 1987 | <div xsl:use-attribute-sets="appendix.titlepage.recto.style"> | 
 | 1988 | <xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> | 
 | 1989 | </div> | 
 | 1990 | </xsl:template> | 
 | 1991 |  | 
 | 1992 | <xsl:template match="releaseinfo" mode="appendix.titlepage.recto.auto.mode"> | 
 | 1993 | <div xsl:use-attribute-sets="appendix.titlepage.recto.style"> | 
 | 1994 | <xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> | 
 | 1995 | </div> | 
 | 1996 | </xsl:template> | 
 | 1997 |  | 
 | 1998 | <xsl:template match="copyright" mode="appendix.titlepage.recto.auto.mode"> | 
 | 1999 | <div xsl:use-attribute-sets="appendix.titlepage.recto.style"> | 
 | 2000 | <xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> | 
 | 2001 | </div> | 
 | 2002 | </xsl:template> | 
 | 2003 |  | 
 | 2004 | <xsl:template match="legalnotice" mode="appendix.titlepage.recto.auto.mode"> | 
 | 2005 | <div xsl:use-attribute-sets="appendix.titlepage.recto.style"> | 
 | 2006 | <xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> | 
 | 2007 | </div> | 
 | 2008 | </xsl:template> | 
 | 2009 |  | 
 | 2010 | <xsl:template match="pubdate" mode="appendix.titlepage.recto.auto.mode"> | 
 | 2011 | <div xsl:use-attribute-sets="appendix.titlepage.recto.style"> | 
 | 2012 | <xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> | 
 | 2013 | </div> | 
 | 2014 | </xsl:template> | 
 | 2015 |  | 
 | 2016 | <xsl:template match="revision" mode="appendix.titlepage.recto.auto.mode"> | 
 | 2017 | <div xsl:use-attribute-sets="appendix.titlepage.recto.style"> | 
 | 2018 | <xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> | 
 | 2019 | </div> | 
 | 2020 | </xsl:template> | 
 | 2021 |  | 
 | 2022 | <xsl:template match="revhistory" mode="appendix.titlepage.recto.auto.mode"> | 
 | 2023 | <div xsl:use-attribute-sets="appendix.titlepage.recto.style"> | 
 | 2024 | <xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> | 
 | 2025 | </div> | 
 | 2026 | </xsl:template> | 
 | 2027 |  | 
 | 2028 | <xsl:template match="abstract" mode="appendix.titlepage.recto.auto.mode"> | 
 | 2029 | <div xsl:use-attribute-sets="appendix.titlepage.recto.style"> | 
 | 2030 | <xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> | 
 | 2031 | </div> | 
 | 2032 | </xsl:template> | 
 | 2033 |  | 
 | 2034 | <xsl:template name="section.titlepage.recto"> | 
 | 2035 |   <xsl:choose> | 
 | 2036 |     <xsl:when test="sectioninfo/title"> | 
 | 2037 |       <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/title"/> | 
 | 2038 |     </xsl:when> | 
 | 2039 |     <xsl:when test="info/title"> | 
 | 2040 |       <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/title"/> | 
 | 2041 |     </xsl:when> | 
 | 2042 |     <xsl:when test="title"> | 
 | 2043 |       <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="title"/> | 
 | 2044 |     </xsl:when> | 
 | 2045 |   </xsl:choose> | 
 | 2046 |  | 
 | 2047 |   <xsl:choose> | 
 | 2048 |     <xsl:when test="sectioninfo/subtitle"> | 
 | 2049 |       <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/subtitle"/> | 
 | 2050 |     </xsl:when> | 
 | 2051 |     <xsl:when test="info/subtitle"> | 
 | 2052 |       <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 2053 |     </xsl:when> | 
 | 2054 |     <xsl:when test="subtitle"> | 
 | 2055 |       <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 2056 |     </xsl:when> | 
 | 2057 |   </xsl:choose> | 
 | 2058 |  | 
 | 2059 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/corpauthor"/> | 
 | 2060 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/corpauthor"/> | 
 | 2061 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/authorgroup"/> | 
 | 2062 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/authorgroup"/> | 
 | 2063 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/author"/> | 
 | 2064 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/author"/> | 
 | 2065 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/othercredit"/> | 
 | 2066 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/othercredit"/> | 
 | 2067 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/releaseinfo"/> | 
 | 2068 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/releaseinfo"/> | 
 | 2069 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/copyright"/> | 
 | 2070 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/copyright"/> | 
 | 2071 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/legalnotice"/> | 
 | 2072 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/legalnotice"/> | 
 | 2073 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/pubdate"/> | 
 | 2074 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/pubdate"/> | 
 | 2075 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/revision"/> | 
 | 2076 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/revision"/> | 
 | 2077 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/revhistory"/> | 
 | 2078 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/revhistory"/> | 
 | 2079 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/abstract"/> | 
 | 2080 |   <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/abstract"/> | 
 | 2081 | </xsl:template> | 
 | 2082 |  | 
 | 2083 | <xsl:template name="section.titlepage.verso"> | 
 | 2084 | </xsl:template> | 
 | 2085 |  | 
 | 2086 | <xsl:template name="section.titlepage.separator"><xsl:if test="count(parent::*)='0'"><hr/></xsl:if> | 
 | 2087 | </xsl:template> | 
 | 2088 |  | 
 | 2089 | <xsl:template name="section.titlepage.before.recto"> | 
 | 2090 | </xsl:template> | 
 | 2091 |  | 
 | 2092 | <xsl:template name="section.titlepage.before.verso"> | 
 | 2093 | </xsl:template> | 
 | 2094 |  | 
 | 2095 | <xsl:template name="section.titlepage"> | 
 | 2096 |   <div class="titlepage"> | 
 | 2097 |     <xsl:variable name="recto.content"> | 
 | 2098 |       <xsl:call-template name="section.titlepage.before.recto"/> | 
 | 2099 |       <xsl:call-template name="section.titlepage.recto"/> | 
 | 2100 |     </xsl:variable> | 
 | 2101 |     <xsl:variable name="recto.elements.count"> | 
 | 2102 |       <xsl:choose> | 
 | 2103 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 2104 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 2105 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 2106 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 2107 |       </xsl:choose> | 
 | 2108 |     </xsl:variable> | 
 | 2109 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 2110 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 2111 |     </xsl:if> | 
 | 2112 |     <xsl:variable name="verso.content"> | 
 | 2113 |       <xsl:call-template name="section.titlepage.before.verso"/> | 
 | 2114 |       <xsl:call-template name="section.titlepage.verso"/> | 
 | 2115 |     </xsl:variable> | 
 | 2116 |     <xsl:variable name="verso.elements.count"> | 
 | 2117 |       <xsl:choose> | 
 | 2118 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 2119 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 2120 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 2121 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 2122 |       </xsl:choose> | 
 | 2123 |     </xsl:variable> | 
 | 2124 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 2125 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 2126 |     </xsl:if> | 
 | 2127 |     <xsl:call-template name="section.titlepage.separator"/> | 
 | 2128 |   </div> | 
 | 2129 | </xsl:template> | 
 | 2130 |  | 
 | 2131 | <xsl:template match="*" mode="section.titlepage.recto.mode"> | 
 | 2132 |   <!-- if an element isn't found in this mode, --> | 
 | 2133 |   <!-- try the generic titlepage.mode --> | 
 | 2134 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 2135 | </xsl:template> | 
 | 2136 |  | 
 | 2137 | <xsl:template match="*" mode="section.titlepage.verso.mode"> | 
 | 2138 |   <!-- if an element isn't found in this mode, --> | 
 | 2139 |   <!-- try the generic titlepage.mode --> | 
 | 2140 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 2141 | </xsl:template> | 
 | 2142 |  | 
 | 2143 | <xsl:template match="title" mode="section.titlepage.recto.auto.mode"> | 
 | 2144 | <div xsl:use-attribute-sets="section.titlepage.recto.style"> | 
 | 2145 | <xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> | 
 | 2146 | </div> | 
 | 2147 | </xsl:template> | 
 | 2148 |  | 
 | 2149 | <xsl:template match="subtitle" mode="section.titlepage.recto.auto.mode"> | 
 | 2150 | <div xsl:use-attribute-sets="section.titlepage.recto.style"> | 
 | 2151 | <xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> | 
 | 2152 | </div> | 
 | 2153 | </xsl:template> | 
 | 2154 |  | 
 | 2155 | <xsl:template match="corpauthor" mode="section.titlepage.recto.auto.mode"> | 
 | 2156 | <div xsl:use-attribute-sets="section.titlepage.recto.style"> | 
 | 2157 | <xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> | 
 | 2158 | </div> | 
 | 2159 | </xsl:template> | 
 | 2160 |  | 
 | 2161 | <xsl:template match="authorgroup" mode="section.titlepage.recto.auto.mode"> | 
 | 2162 | <div xsl:use-attribute-sets="section.titlepage.recto.style"> | 
 | 2163 | <xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> | 
 | 2164 | </div> | 
 | 2165 | </xsl:template> | 
 | 2166 |  | 
 | 2167 | <xsl:template match="author" mode="section.titlepage.recto.auto.mode"> | 
 | 2168 | <div xsl:use-attribute-sets="section.titlepage.recto.style"> | 
 | 2169 | <xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> | 
 | 2170 | </div> | 
 | 2171 | </xsl:template> | 
 | 2172 |  | 
 | 2173 | <xsl:template match="othercredit" mode="section.titlepage.recto.auto.mode"> | 
 | 2174 | <div xsl:use-attribute-sets="section.titlepage.recto.style"> | 
 | 2175 | <xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> | 
 | 2176 | </div> | 
 | 2177 | </xsl:template> | 
 | 2178 |  | 
 | 2179 | <xsl:template match="releaseinfo" mode="section.titlepage.recto.auto.mode"> | 
 | 2180 | <div xsl:use-attribute-sets="section.titlepage.recto.style"> | 
 | 2181 | <xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> | 
 | 2182 | </div> | 
 | 2183 | </xsl:template> | 
 | 2184 |  | 
 | 2185 | <xsl:template match="copyright" mode="section.titlepage.recto.auto.mode"> | 
 | 2186 | <div xsl:use-attribute-sets="section.titlepage.recto.style"> | 
 | 2187 | <xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> | 
 | 2188 | </div> | 
 | 2189 | </xsl:template> | 
 | 2190 |  | 
 | 2191 | <xsl:template match="legalnotice" mode="section.titlepage.recto.auto.mode"> | 
 | 2192 | <div xsl:use-attribute-sets="section.titlepage.recto.style"> | 
 | 2193 | <xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> | 
 | 2194 | </div> | 
 | 2195 | </xsl:template> | 
 | 2196 |  | 
 | 2197 | <xsl:template match="pubdate" mode="section.titlepage.recto.auto.mode"> | 
 | 2198 | <div xsl:use-attribute-sets="section.titlepage.recto.style"> | 
 | 2199 | <xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> | 
 | 2200 | </div> | 
 | 2201 | </xsl:template> | 
 | 2202 |  | 
 | 2203 | <xsl:template match="revision" mode="section.titlepage.recto.auto.mode"> | 
 | 2204 | <div xsl:use-attribute-sets="section.titlepage.recto.style"> | 
 | 2205 | <xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> | 
 | 2206 | </div> | 
 | 2207 | </xsl:template> | 
 | 2208 |  | 
 | 2209 | <xsl:template match="revhistory" mode="section.titlepage.recto.auto.mode"> | 
 | 2210 | <div xsl:use-attribute-sets="section.titlepage.recto.style"> | 
 | 2211 | <xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> | 
 | 2212 | </div> | 
 | 2213 | </xsl:template> | 
 | 2214 |  | 
 | 2215 | <xsl:template match="abstract" mode="section.titlepage.recto.auto.mode"> | 
 | 2216 | <div xsl:use-attribute-sets="section.titlepage.recto.style"> | 
 | 2217 | <xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> | 
 | 2218 | </div> | 
 | 2219 | </xsl:template> | 
 | 2220 |  | 
 | 2221 | <xsl:template name="sect1.titlepage.recto"> | 
 | 2222 |   <xsl:choose> | 
 | 2223 |     <xsl:when test="sect1info/title"> | 
 | 2224 |       <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/title"/> | 
 | 2225 |     </xsl:when> | 
 | 2226 |     <xsl:when test="info/title"> | 
 | 2227 |       <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/title"/> | 
 | 2228 |     </xsl:when> | 
 | 2229 |     <xsl:when test="title"> | 
 | 2230 |       <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="title"/> | 
 | 2231 |     </xsl:when> | 
 | 2232 |   </xsl:choose> | 
 | 2233 |  | 
 | 2234 |   <xsl:choose> | 
 | 2235 |     <xsl:when test="sect1info/subtitle"> | 
 | 2236 |       <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/subtitle"/> | 
 | 2237 |     </xsl:when> | 
 | 2238 |     <xsl:when test="info/subtitle"> | 
 | 2239 |       <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 2240 |     </xsl:when> | 
 | 2241 |     <xsl:when test="subtitle"> | 
 | 2242 |       <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 2243 |     </xsl:when> | 
 | 2244 |   </xsl:choose> | 
 | 2245 |  | 
 | 2246 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/corpauthor"/> | 
 | 2247 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/corpauthor"/> | 
 | 2248 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/authorgroup"/> | 
 | 2249 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/authorgroup"/> | 
 | 2250 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/author"/> | 
 | 2251 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/author"/> | 
 | 2252 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/othercredit"/> | 
 | 2253 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/othercredit"/> | 
 | 2254 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/releaseinfo"/> | 
 | 2255 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/releaseinfo"/> | 
 | 2256 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/copyright"/> | 
 | 2257 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/copyright"/> | 
 | 2258 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/legalnotice"/> | 
 | 2259 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/legalnotice"/> | 
 | 2260 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/pubdate"/> | 
 | 2261 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/pubdate"/> | 
 | 2262 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/revision"/> | 
 | 2263 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/revision"/> | 
 | 2264 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/revhistory"/> | 
 | 2265 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/revhistory"/> | 
 | 2266 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/abstract"/> | 
 | 2267 |   <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/abstract"/> | 
 | 2268 | </xsl:template> | 
 | 2269 |  | 
 | 2270 | <xsl:template name="sect1.titlepage.verso"> | 
 | 2271 | </xsl:template> | 
 | 2272 |  | 
 | 2273 | <xsl:template name="sect1.titlepage.separator"><xsl:if test="count(parent::*)='0'"><hr/></xsl:if> | 
 | 2274 | </xsl:template> | 
 | 2275 |  | 
 | 2276 | <xsl:template name="sect1.titlepage.before.recto"> | 
 | 2277 | </xsl:template> | 
 | 2278 |  | 
 | 2279 | <xsl:template name="sect1.titlepage.before.verso"> | 
 | 2280 | </xsl:template> | 
 | 2281 |  | 
 | 2282 | <xsl:template name="sect1.titlepage"> | 
 | 2283 |   <div class="titlepage"> | 
 | 2284 |     <xsl:variable name="recto.content"> | 
 | 2285 |       <xsl:call-template name="sect1.titlepage.before.recto"/> | 
 | 2286 |       <xsl:call-template name="sect1.titlepage.recto"/> | 
 | 2287 |     </xsl:variable> | 
 | 2288 |     <xsl:variable name="recto.elements.count"> | 
 | 2289 |       <xsl:choose> | 
 | 2290 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 2291 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 2292 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 2293 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 2294 |       </xsl:choose> | 
 | 2295 |     </xsl:variable> | 
 | 2296 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 2297 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 2298 |     </xsl:if> | 
 | 2299 |     <xsl:variable name="verso.content"> | 
 | 2300 |       <xsl:call-template name="sect1.titlepage.before.verso"/> | 
 | 2301 |       <xsl:call-template name="sect1.titlepage.verso"/> | 
 | 2302 |     </xsl:variable> | 
 | 2303 |     <xsl:variable name="verso.elements.count"> | 
 | 2304 |       <xsl:choose> | 
 | 2305 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 2306 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 2307 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 2308 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 2309 |       </xsl:choose> | 
 | 2310 |     </xsl:variable> | 
 | 2311 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 2312 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 2313 |     </xsl:if> | 
 | 2314 |     <xsl:call-template name="sect1.titlepage.separator"/> | 
 | 2315 |   </div> | 
 | 2316 | </xsl:template> | 
 | 2317 |  | 
 | 2318 | <xsl:template match="*" mode="sect1.titlepage.recto.mode"> | 
 | 2319 |   <!-- if an element isn't found in this mode, --> | 
 | 2320 |   <!-- try the generic titlepage.mode --> | 
 | 2321 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 2322 | </xsl:template> | 
 | 2323 |  | 
 | 2324 | <xsl:template match="*" mode="sect1.titlepage.verso.mode"> | 
 | 2325 |   <!-- if an element isn't found in this mode, --> | 
 | 2326 |   <!-- try the generic titlepage.mode --> | 
 | 2327 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 2328 | </xsl:template> | 
 | 2329 |  | 
 | 2330 | <xsl:template match="title" mode="sect1.titlepage.recto.auto.mode"> | 
 | 2331 | <div xsl:use-attribute-sets="sect1.titlepage.recto.style"> | 
 | 2332 | <xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> | 
 | 2333 | </div> | 
 | 2334 | </xsl:template> | 
 | 2335 |  | 
 | 2336 | <xsl:template match="subtitle" mode="sect1.titlepage.recto.auto.mode"> | 
 | 2337 | <div xsl:use-attribute-sets="sect1.titlepage.recto.style"> | 
 | 2338 | <xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> | 
 | 2339 | </div> | 
 | 2340 | </xsl:template> | 
 | 2341 |  | 
 | 2342 | <xsl:template match="corpauthor" mode="sect1.titlepage.recto.auto.mode"> | 
 | 2343 | <div xsl:use-attribute-sets="sect1.titlepage.recto.style"> | 
 | 2344 | <xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> | 
 | 2345 | </div> | 
 | 2346 | </xsl:template> | 
 | 2347 |  | 
 | 2348 | <xsl:template match="authorgroup" mode="sect1.titlepage.recto.auto.mode"> | 
 | 2349 | <div xsl:use-attribute-sets="sect1.titlepage.recto.style"> | 
 | 2350 | <xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> | 
 | 2351 | </div> | 
 | 2352 | </xsl:template> | 
 | 2353 |  | 
 | 2354 | <xsl:template match="author" mode="sect1.titlepage.recto.auto.mode"> | 
 | 2355 | <div xsl:use-attribute-sets="sect1.titlepage.recto.style"> | 
 | 2356 | <xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> | 
 | 2357 | </div> | 
 | 2358 | </xsl:template> | 
 | 2359 |  | 
 | 2360 | <xsl:template match="othercredit" mode="sect1.titlepage.recto.auto.mode"> | 
 | 2361 | <div xsl:use-attribute-sets="sect1.titlepage.recto.style"> | 
 | 2362 | <xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> | 
 | 2363 | </div> | 
 | 2364 | </xsl:template> | 
 | 2365 |  | 
 | 2366 | <xsl:template match="releaseinfo" mode="sect1.titlepage.recto.auto.mode"> | 
 | 2367 | <div xsl:use-attribute-sets="sect1.titlepage.recto.style"> | 
 | 2368 | <xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> | 
 | 2369 | </div> | 
 | 2370 | </xsl:template> | 
 | 2371 |  | 
 | 2372 | <xsl:template match="copyright" mode="sect1.titlepage.recto.auto.mode"> | 
 | 2373 | <div xsl:use-attribute-sets="sect1.titlepage.recto.style"> | 
 | 2374 | <xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> | 
 | 2375 | </div> | 
 | 2376 | </xsl:template> | 
 | 2377 |  | 
 | 2378 | <xsl:template match="legalnotice" mode="sect1.titlepage.recto.auto.mode"> | 
 | 2379 | <div xsl:use-attribute-sets="sect1.titlepage.recto.style"> | 
 | 2380 | <xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> | 
 | 2381 | </div> | 
 | 2382 | </xsl:template> | 
 | 2383 |  | 
 | 2384 | <xsl:template match="pubdate" mode="sect1.titlepage.recto.auto.mode"> | 
 | 2385 | <div xsl:use-attribute-sets="sect1.titlepage.recto.style"> | 
 | 2386 | <xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> | 
 | 2387 | </div> | 
 | 2388 | </xsl:template> | 
 | 2389 |  | 
 | 2390 | <xsl:template match="revision" mode="sect1.titlepage.recto.auto.mode"> | 
 | 2391 | <div xsl:use-attribute-sets="sect1.titlepage.recto.style"> | 
 | 2392 | <xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> | 
 | 2393 | </div> | 
 | 2394 | </xsl:template> | 
 | 2395 |  | 
 | 2396 | <xsl:template match="revhistory" mode="sect1.titlepage.recto.auto.mode"> | 
 | 2397 | <div xsl:use-attribute-sets="sect1.titlepage.recto.style"> | 
 | 2398 | <xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> | 
 | 2399 | </div> | 
 | 2400 | </xsl:template> | 
 | 2401 |  | 
 | 2402 | <xsl:template match="abstract" mode="sect1.titlepage.recto.auto.mode"> | 
 | 2403 | <div xsl:use-attribute-sets="sect1.titlepage.recto.style"> | 
 | 2404 | <xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> | 
 | 2405 | </div> | 
 | 2406 | </xsl:template> | 
 | 2407 |  | 
 | 2408 | <xsl:template name="sect2.titlepage.recto"> | 
 | 2409 |   <xsl:choose> | 
 | 2410 |     <xsl:when test="sect2info/title"> | 
 | 2411 |       <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/title"/> | 
 | 2412 |     </xsl:when> | 
 | 2413 |     <xsl:when test="info/title"> | 
 | 2414 |       <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/title"/> | 
 | 2415 |     </xsl:when> | 
 | 2416 |     <xsl:when test="title"> | 
 | 2417 |       <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="title"/> | 
 | 2418 |     </xsl:when> | 
 | 2419 |   </xsl:choose> | 
 | 2420 |  | 
 | 2421 |   <xsl:choose> | 
 | 2422 |     <xsl:when test="sect2info/subtitle"> | 
 | 2423 |       <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/subtitle"/> | 
 | 2424 |     </xsl:when> | 
 | 2425 |     <xsl:when test="info/subtitle"> | 
 | 2426 |       <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 2427 |     </xsl:when> | 
 | 2428 |     <xsl:when test="subtitle"> | 
 | 2429 |       <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 2430 |     </xsl:when> | 
 | 2431 |   </xsl:choose> | 
 | 2432 |  | 
 | 2433 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/corpauthor"/> | 
 | 2434 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/corpauthor"/> | 
 | 2435 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/authorgroup"/> | 
 | 2436 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/authorgroup"/> | 
 | 2437 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/author"/> | 
 | 2438 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/author"/> | 
 | 2439 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/othercredit"/> | 
 | 2440 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/othercredit"/> | 
 | 2441 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/releaseinfo"/> | 
 | 2442 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/releaseinfo"/> | 
 | 2443 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/copyright"/> | 
 | 2444 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/copyright"/> | 
 | 2445 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/legalnotice"/> | 
 | 2446 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/legalnotice"/> | 
 | 2447 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/pubdate"/> | 
 | 2448 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/pubdate"/> | 
 | 2449 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/revision"/> | 
 | 2450 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/revision"/> | 
 | 2451 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/revhistory"/> | 
 | 2452 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/revhistory"/> | 
 | 2453 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/abstract"/> | 
 | 2454 |   <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/abstract"/> | 
 | 2455 | </xsl:template> | 
 | 2456 |  | 
 | 2457 | <xsl:template name="sect2.titlepage.verso"> | 
 | 2458 | </xsl:template> | 
 | 2459 |  | 
 | 2460 | <xsl:template name="sect2.titlepage.separator"><xsl:if test="count(parent::*)='0'"><hr/></xsl:if> | 
 | 2461 | </xsl:template> | 
 | 2462 |  | 
 | 2463 | <xsl:template name="sect2.titlepage.before.recto"> | 
 | 2464 | </xsl:template> | 
 | 2465 |  | 
 | 2466 | <xsl:template name="sect2.titlepage.before.verso"> | 
 | 2467 | </xsl:template> | 
 | 2468 |  | 
 | 2469 | <xsl:template name="sect2.titlepage"> | 
 | 2470 |   <div class="titlepage"> | 
 | 2471 |     <xsl:variable name="recto.content"> | 
 | 2472 |       <xsl:call-template name="sect2.titlepage.before.recto"/> | 
 | 2473 |       <xsl:call-template name="sect2.titlepage.recto"/> | 
 | 2474 |     </xsl:variable> | 
 | 2475 |     <xsl:variable name="recto.elements.count"> | 
 | 2476 |       <xsl:choose> | 
 | 2477 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 2478 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 2479 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 2480 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 2481 |       </xsl:choose> | 
 | 2482 |     </xsl:variable> | 
 | 2483 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 2484 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 2485 |     </xsl:if> | 
 | 2486 |     <xsl:variable name="verso.content"> | 
 | 2487 |       <xsl:call-template name="sect2.titlepage.before.verso"/> | 
 | 2488 |       <xsl:call-template name="sect2.titlepage.verso"/> | 
 | 2489 |     </xsl:variable> | 
 | 2490 |     <xsl:variable name="verso.elements.count"> | 
 | 2491 |       <xsl:choose> | 
 | 2492 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 2493 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 2494 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 2495 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 2496 |       </xsl:choose> | 
 | 2497 |     </xsl:variable> | 
 | 2498 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 2499 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 2500 |     </xsl:if> | 
 | 2501 |     <xsl:call-template name="sect2.titlepage.separator"/> | 
 | 2502 |   </div> | 
 | 2503 | </xsl:template> | 
 | 2504 |  | 
 | 2505 | <xsl:template match="*" mode="sect2.titlepage.recto.mode"> | 
 | 2506 |   <!-- if an element isn't found in this mode, --> | 
 | 2507 |   <!-- try the generic titlepage.mode --> | 
 | 2508 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 2509 | </xsl:template> | 
 | 2510 |  | 
 | 2511 | <xsl:template match="*" mode="sect2.titlepage.verso.mode"> | 
 | 2512 |   <!-- if an element isn't found in this mode, --> | 
 | 2513 |   <!-- try the generic titlepage.mode --> | 
 | 2514 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 2515 | </xsl:template> | 
 | 2516 |  | 
 | 2517 | <xsl:template match="title" mode="sect2.titlepage.recto.auto.mode"> | 
 | 2518 | <div xsl:use-attribute-sets="sect2.titlepage.recto.style"> | 
 | 2519 | <xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> | 
 | 2520 | </div> | 
 | 2521 | </xsl:template> | 
 | 2522 |  | 
 | 2523 | <xsl:template match="subtitle" mode="sect2.titlepage.recto.auto.mode"> | 
 | 2524 | <div xsl:use-attribute-sets="sect2.titlepage.recto.style"> | 
 | 2525 | <xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> | 
 | 2526 | </div> | 
 | 2527 | </xsl:template> | 
 | 2528 |  | 
 | 2529 | <xsl:template match="corpauthor" mode="sect2.titlepage.recto.auto.mode"> | 
 | 2530 | <div xsl:use-attribute-sets="sect2.titlepage.recto.style"> | 
 | 2531 | <xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> | 
 | 2532 | </div> | 
 | 2533 | </xsl:template> | 
 | 2534 |  | 
 | 2535 | <xsl:template match="authorgroup" mode="sect2.titlepage.recto.auto.mode"> | 
 | 2536 | <div xsl:use-attribute-sets="sect2.titlepage.recto.style"> | 
 | 2537 | <xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> | 
 | 2538 | </div> | 
 | 2539 | </xsl:template> | 
 | 2540 |  | 
 | 2541 | <xsl:template match="author" mode="sect2.titlepage.recto.auto.mode"> | 
 | 2542 | <div xsl:use-attribute-sets="sect2.titlepage.recto.style"> | 
 | 2543 | <xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> | 
 | 2544 | </div> | 
 | 2545 | </xsl:template> | 
 | 2546 |  | 
 | 2547 | <xsl:template match="othercredit" mode="sect2.titlepage.recto.auto.mode"> | 
 | 2548 | <div xsl:use-attribute-sets="sect2.titlepage.recto.style"> | 
 | 2549 | <xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> | 
 | 2550 | </div> | 
 | 2551 | </xsl:template> | 
 | 2552 |  | 
 | 2553 | <xsl:template match="releaseinfo" mode="sect2.titlepage.recto.auto.mode"> | 
 | 2554 | <div xsl:use-attribute-sets="sect2.titlepage.recto.style"> | 
 | 2555 | <xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> | 
 | 2556 | </div> | 
 | 2557 | </xsl:template> | 
 | 2558 |  | 
 | 2559 | <xsl:template match="copyright" mode="sect2.titlepage.recto.auto.mode"> | 
 | 2560 | <div xsl:use-attribute-sets="sect2.titlepage.recto.style"> | 
 | 2561 | <xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> | 
 | 2562 | </div> | 
 | 2563 | </xsl:template> | 
 | 2564 |  | 
 | 2565 | <xsl:template match="legalnotice" mode="sect2.titlepage.recto.auto.mode"> | 
 | 2566 | <div xsl:use-attribute-sets="sect2.titlepage.recto.style"> | 
 | 2567 | <xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> | 
 | 2568 | </div> | 
 | 2569 | </xsl:template> | 
 | 2570 |  | 
 | 2571 | <xsl:template match="pubdate" mode="sect2.titlepage.recto.auto.mode"> | 
 | 2572 | <div xsl:use-attribute-sets="sect2.titlepage.recto.style"> | 
 | 2573 | <xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> | 
 | 2574 | </div> | 
 | 2575 | </xsl:template> | 
 | 2576 |  | 
 | 2577 | <xsl:template match="revision" mode="sect2.titlepage.recto.auto.mode"> | 
 | 2578 | <div xsl:use-attribute-sets="sect2.titlepage.recto.style"> | 
 | 2579 | <xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> | 
 | 2580 | </div> | 
 | 2581 | </xsl:template> | 
 | 2582 |  | 
 | 2583 | <xsl:template match="revhistory" mode="sect2.titlepage.recto.auto.mode"> | 
 | 2584 | <div xsl:use-attribute-sets="sect2.titlepage.recto.style"> | 
 | 2585 | <xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> | 
 | 2586 | </div> | 
 | 2587 | </xsl:template> | 
 | 2588 |  | 
 | 2589 | <xsl:template match="abstract" mode="sect2.titlepage.recto.auto.mode"> | 
 | 2590 | <div xsl:use-attribute-sets="sect2.titlepage.recto.style"> | 
 | 2591 | <xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> | 
 | 2592 | </div> | 
 | 2593 | </xsl:template> | 
 | 2594 |  | 
 | 2595 | <xsl:template name="sect3.titlepage.recto"> | 
 | 2596 |   <xsl:choose> | 
 | 2597 |     <xsl:when test="sect3info/title"> | 
 | 2598 |       <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/title"/> | 
 | 2599 |     </xsl:when> | 
 | 2600 |     <xsl:when test="info/title"> | 
 | 2601 |       <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/title"/> | 
 | 2602 |     </xsl:when> | 
 | 2603 |     <xsl:when test="title"> | 
 | 2604 |       <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="title"/> | 
 | 2605 |     </xsl:when> | 
 | 2606 |   </xsl:choose> | 
 | 2607 |  | 
 | 2608 |   <xsl:choose> | 
 | 2609 |     <xsl:when test="sect3info/subtitle"> | 
 | 2610 |       <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/subtitle"/> | 
 | 2611 |     </xsl:when> | 
 | 2612 |     <xsl:when test="info/subtitle"> | 
 | 2613 |       <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 2614 |     </xsl:when> | 
 | 2615 |     <xsl:when test="subtitle"> | 
 | 2616 |       <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 2617 |     </xsl:when> | 
 | 2618 |   </xsl:choose> | 
 | 2619 |  | 
 | 2620 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/corpauthor"/> | 
 | 2621 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/corpauthor"/> | 
 | 2622 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/authorgroup"/> | 
 | 2623 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/authorgroup"/> | 
 | 2624 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/author"/> | 
 | 2625 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/author"/> | 
 | 2626 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/othercredit"/> | 
 | 2627 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/othercredit"/> | 
 | 2628 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/releaseinfo"/> | 
 | 2629 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/releaseinfo"/> | 
 | 2630 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/copyright"/> | 
 | 2631 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/copyright"/> | 
 | 2632 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/legalnotice"/> | 
 | 2633 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/legalnotice"/> | 
 | 2634 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/pubdate"/> | 
 | 2635 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/pubdate"/> | 
 | 2636 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/revision"/> | 
 | 2637 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/revision"/> | 
 | 2638 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/revhistory"/> | 
 | 2639 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/revhistory"/> | 
 | 2640 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/abstract"/> | 
 | 2641 |   <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/abstract"/> | 
 | 2642 | </xsl:template> | 
 | 2643 |  | 
 | 2644 | <xsl:template name="sect3.titlepage.verso"> | 
 | 2645 | </xsl:template> | 
 | 2646 |  | 
 | 2647 | <xsl:template name="sect3.titlepage.separator"><xsl:if test="count(parent::*)='0'"><hr/></xsl:if> | 
 | 2648 | </xsl:template> | 
 | 2649 |  | 
 | 2650 | <xsl:template name="sect3.titlepage.before.recto"> | 
 | 2651 | </xsl:template> | 
 | 2652 |  | 
 | 2653 | <xsl:template name="sect3.titlepage.before.verso"> | 
 | 2654 | </xsl:template> | 
 | 2655 |  | 
 | 2656 | <xsl:template name="sect3.titlepage"> | 
 | 2657 |   <div class="titlepage"> | 
 | 2658 |     <xsl:variable name="recto.content"> | 
 | 2659 |       <xsl:call-template name="sect3.titlepage.before.recto"/> | 
 | 2660 |       <xsl:call-template name="sect3.titlepage.recto"/> | 
 | 2661 |     </xsl:variable> | 
 | 2662 |     <xsl:variable name="recto.elements.count"> | 
 | 2663 |       <xsl:choose> | 
 | 2664 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 2665 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 2666 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 2667 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 2668 |       </xsl:choose> | 
 | 2669 |     </xsl:variable> | 
 | 2670 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 2671 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 2672 |     </xsl:if> | 
 | 2673 |     <xsl:variable name="verso.content"> | 
 | 2674 |       <xsl:call-template name="sect3.titlepage.before.verso"/> | 
 | 2675 |       <xsl:call-template name="sect3.titlepage.verso"/> | 
 | 2676 |     </xsl:variable> | 
 | 2677 |     <xsl:variable name="verso.elements.count"> | 
 | 2678 |       <xsl:choose> | 
 | 2679 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 2680 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 2681 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 2682 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 2683 |       </xsl:choose> | 
 | 2684 |     </xsl:variable> | 
 | 2685 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 2686 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 2687 |     </xsl:if> | 
 | 2688 |     <xsl:call-template name="sect3.titlepage.separator"/> | 
 | 2689 |   </div> | 
 | 2690 | </xsl:template> | 
 | 2691 |  | 
 | 2692 | <xsl:template match="*" mode="sect3.titlepage.recto.mode"> | 
 | 2693 |   <!-- if an element isn't found in this mode, --> | 
 | 2694 |   <!-- try the generic titlepage.mode --> | 
 | 2695 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 2696 | </xsl:template> | 
 | 2697 |  | 
 | 2698 | <xsl:template match="*" mode="sect3.titlepage.verso.mode"> | 
 | 2699 |   <!-- if an element isn't found in this mode, --> | 
 | 2700 |   <!-- try the generic titlepage.mode --> | 
 | 2701 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 2702 | </xsl:template> | 
 | 2703 |  | 
 | 2704 | <xsl:template match="title" mode="sect3.titlepage.recto.auto.mode"> | 
 | 2705 | <div xsl:use-attribute-sets="sect3.titlepage.recto.style"> | 
 | 2706 | <xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> | 
 | 2707 | </div> | 
 | 2708 | </xsl:template> | 
 | 2709 |  | 
 | 2710 | <xsl:template match="subtitle" mode="sect3.titlepage.recto.auto.mode"> | 
 | 2711 | <div xsl:use-attribute-sets="sect3.titlepage.recto.style"> | 
 | 2712 | <xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> | 
 | 2713 | </div> | 
 | 2714 | </xsl:template> | 
 | 2715 |  | 
 | 2716 | <xsl:template match="corpauthor" mode="sect3.titlepage.recto.auto.mode"> | 
 | 2717 | <div xsl:use-attribute-sets="sect3.titlepage.recto.style"> | 
 | 2718 | <xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> | 
 | 2719 | </div> | 
 | 2720 | </xsl:template> | 
 | 2721 |  | 
 | 2722 | <xsl:template match="authorgroup" mode="sect3.titlepage.recto.auto.mode"> | 
 | 2723 | <div xsl:use-attribute-sets="sect3.titlepage.recto.style"> | 
 | 2724 | <xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> | 
 | 2725 | </div> | 
 | 2726 | </xsl:template> | 
 | 2727 |  | 
 | 2728 | <xsl:template match="author" mode="sect3.titlepage.recto.auto.mode"> | 
 | 2729 | <div xsl:use-attribute-sets="sect3.titlepage.recto.style"> | 
 | 2730 | <xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> | 
 | 2731 | </div> | 
 | 2732 | </xsl:template> | 
 | 2733 |  | 
 | 2734 | <xsl:template match="othercredit" mode="sect3.titlepage.recto.auto.mode"> | 
 | 2735 | <div xsl:use-attribute-sets="sect3.titlepage.recto.style"> | 
 | 2736 | <xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> | 
 | 2737 | </div> | 
 | 2738 | </xsl:template> | 
 | 2739 |  | 
 | 2740 | <xsl:template match="releaseinfo" mode="sect3.titlepage.recto.auto.mode"> | 
 | 2741 | <div xsl:use-attribute-sets="sect3.titlepage.recto.style"> | 
 | 2742 | <xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> | 
 | 2743 | </div> | 
 | 2744 | </xsl:template> | 
 | 2745 |  | 
 | 2746 | <xsl:template match="copyright" mode="sect3.titlepage.recto.auto.mode"> | 
 | 2747 | <div xsl:use-attribute-sets="sect3.titlepage.recto.style"> | 
 | 2748 | <xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> | 
 | 2749 | </div> | 
 | 2750 | </xsl:template> | 
 | 2751 |  | 
 | 2752 | <xsl:template match="legalnotice" mode="sect3.titlepage.recto.auto.mode"> | 
 | 2753 | <div xsl:use-attribute-sets="sect3.titlepage.recto.style"> | 
 | 2754 | <xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> | 
 | 2755 | </div> | 
 | 2756 | </xsl:template> | 
 | 2757 |  | 
 | 2758 | <xsl:template match="pubdate" mode="sect3.titlepage.recto.auto.mode"> | 
 | 2759 | <div xsl:use-attribute-sets="sect3.titlepage.recto.style"> | 
 | 2760 | <xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> | 
 | 2761 | </div> | 
 | 2762 | </xsl:template> | 
 | 2763 |  | 
 | 2764 | <xsl:template match="revision" mode="sect3.titlepage.recto.auto.mode"> | 
 | 2765 | <div xsl:use-attribute-sets="sect3.titlepage.recto.style"> | 
 | 2766 | <xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> | 
 | 2767 | </div> | 
 | 2768 | </xsl:template> | 
 | 2769 |  | 
 | 2770 | <xsl:template match="revhistory" mode="sect3.titlepage.recto.auto.mode"> | 
 | 2771 | <div xsl:use-attribute-sets="sect3.titlepage.recto.style"> | 
 | 2772 | <xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> | 
 | 2773 | </div> | 
 | 2774 | </xsl:template> | 
 | 2775 |  | 
 | 2776 | <xsl:template match="abstract" mode="sect3.titlepage.recto.auto.mode"> | 
 | 2777 | <div xsl:use-attribute-sets="sect3.titlepage.recto.style"> | 
 | 2778 | <xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> | 
 | 2779 | </div> | 
 | 2780 | </xsl:template> | 
 | 2781 |  | 
 | 2782 | <xsl:template name="sect4.titlepage.recto"> | 
 | 2783 |   <xsl:choose> | 
 | 2784 |     <xsl:when test="sect4info/title"> | 
 | 2785 |       <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/title"/> | 
 | 2786 |     </xsl:when> | 
 | 2787 |     <xsl:when test="info/title"> | 
 | 2788 |       <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/title"/> | 
 | 2789 |     </xsl:when> | 
 | 2790 |     <xsl:when test="title"> | 
 | 2791 |       <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="title"/> | 
 | 2792 |     </xsl:when> | 
 | 2793 |   </xsl:choose> | 
 | 2794 |  | 
 | 2795 |   <xsl:choose> | 
 | 2796 |     <xsl:when test="sect4info/subtitle"> | 
 | 2797 |       <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/subtitle"/> | 
 | 2798 |     </xsl:when> | 
 | 2799 |     <xsl:when test="info/subtitle"> | 
 | 2800 |       <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 2801 |     </xsl:when> | 
 | 2802 |     <xsl:when test="subtitle"> | 
 | 2803 |       <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 2804 |     </xsl:when> | 
 | 2805 |   </xsl:choose> | 
 | 2806 |  | 
 | 2807 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/corpauthor"/> | 
 | 2808 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/corpauthor"/> | 
 | 2809 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/authorgroup"/> | 
 | 2810 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/authorgroup"/> | 
 | 2811 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/author"/> | 
 | 2812 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/author"/> | 
 | 2813 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/othercredit"/> | 
 | 2814 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/othercredit"/> | 
 | 2815 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/releaseinfo"/> | 
 | 2816 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/releaseinfo"/> | 
 | 2817 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/copyright"/> | 
 | 2818 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/copyright"/> | 
 | 2819 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/legalnotice"/> | 
 | 2820 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/legalnotice"/> | 
 | 2821 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/pubdate"/> | 
 | 2822 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/pubdate"/> | 
 | 2823 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/revision"/> | 
 | 2824 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/revision"/> | 
 | 2825 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/revhistory"/> | 
 | 2826 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/revhistory"/> | 
 | 2827 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/abstract"/> | 
 | 2828 |   <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/abstract"/> | 
 | 2829 | </xsl:template> | 
 | 2830 |  | 
 | 2831 | <xsl:template name="sect4.titlepage.verso"> | 
 | 2832 | </xsl:template> | 
 | 2833 |  | 
 | 2834 | <xsl:template name="sect4.titlepage.separator"><xsl:if test="count(parent::*)='0'"><hr/></xsl:if> | 
 | 2835 | </xsl:template> | 
 | 2836 |  | 
 | 2837 | <xsl:template name="sect4.titlepage.before.recto"> | 
 | 2838 | </xsl:template> | 
 | 2839 |  | 
 | 2840 | <xsl:template name="sect4.titlepage.before.verso"> | 
 | 2841 | </xsl:template> | 
 | 2842 |  | 
 | 2843 | <xsl:template name="sect4.titlepage"> | 
 | 2844 |   <div class="titlepage"> | 
 | 2845 |     <xsl:variable name="recto.content"> | 
 | 2846 |       <xsl:call-template name="sect4.titlepage.before.recto"/> | 
 | 2847 |       <xsl:call-template name="sect4.titlepage.recto"/> | 
 | 2848 |     </xsl:variable> | 
 | 2849 |     <xsl:variable name="recto.elements.count"> | 
 | 2850 |       <xsl:choose> | 
 | 2851 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 2852 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 2853 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 2854 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 2855 |       </xsl:choose> | 
 | 2856 |     </xsl:variable> | 
 | 2857 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 2858 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 2859 |     </xsl:if> | 
 | 2860 |     <xsl:variable name="verso.content"> | 
 | 2861 |       <xsl:call-template name="sect4.titlepage.before.verso"/> | 
 | 2862 |       <xsl:call-template name="sect4.titlepage.verso"/> | 
 | 2863 |     </xsl:variable> | 
 | 2864 |     <xsl:variable name="verso.elements.count"> | 
 | 2865 |       <xsl:choose> | 
 | 2866 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 2867 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 2868 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 2869 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 2870 |       </xsl:choose> | 
 | 2871 |     </xsl:variable> | 
 | 2872 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 2873 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 2874 |     </xsl:if> | 
 | 2875 |     <xsl:call-template name="sect4.titlepage.separator"/> | 
 | 2876 |   </div> | 
 | 2877 | </xsl:template> | 
 | 2878 |  | 
 | 2879 | <xsl:template match="*" mode="sect4.titlepage.recto.mode"> | 
 | 2880 |   <!-- if an element isn't found in this mode, --> | 
 | 2881 |   <!-- try the generic titlepage.mode --> | 
 | 2882 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 2883 | </xsl:template> | 
 | 2884 |  | 
 | 2885 | <xsl:template match="*" mode="sect4.titlepage.verso.mode"> | 
 | 2886 |   <!-- if an element isn't found in this mode, --> | 
 | 2887 |   <!-- try the generic titlepage.mode --> | 
 | 2888 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 2889 | </xsl:template> | 
 | 2890 |  | 
 | 2891 | <xsl:template match="title" mode="sect4.titlepage.recto.auto.mode"> | 
 | 2892 | <div xsl:use-attribute-sets="sect4.titlepage.recto.style"> | 
 | 2893 | <xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> | 
 | 2894 | </div> | 
 | 2895 | </xsl:template> | 
 | 2896 |  | 
 | 2897 | <xsl:template match="subtitle" mode="sect4.titlepage.recto.auto.mode"> | 
 | 2898 | <div xsl:use-attribute-sets="sect4.titlepage.recto.style"> | 
 | 2899 | <xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> | 
 | 2900 | </div> | 
 | 2901 | </xsl:template> | 
 | 2902 |  | 
 | 2903 | <xsl:template match="corpauthor" mode="sect4.titlepage.recto.auto.mode"> | 
 | 2904 | <div xsl:use-attribute-sets="sect4.titlepage.recto.style"> | 
 | 2905 | <xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> | 
 | 2906 | </div> | 
 | 2907 | </xsl:template> | 
 | 2908 |  | 
 | 2909 | <xsl:template match="authorgroup" mode="sect4.titlepage.recto.auto.mode"> | 
 | 2910 | <div xsl:use-attribute-sets="sect4.titlepage.recto.style"> | 
 | 2911 | <xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> | 
 | 2912 | </div> | 
 | 2913 | </xsl:template> | 
 | 2914 |  | 
 | 2915 | <xsl:template match="author" mode="sect4.titlepage.recto.auto.mode"> | 
 | 2916 | <div xsl:use-attribute-sets="sect4.titlepage.recto.style"> | 
 | 2917 | <xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> | 
 | 2918 | </div> | 
 | 2919 | </xsl:template> | 
 | 2920 |  | 
 | 2921 | <xsl:template match="othercredit" mode="sect4.titlepage.recto.auto.mode"> | 
 | 2922 | <div xsl:use-attribute-sets="sect4.titlepage.recto.style"> | 
 | 2923 | <xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> | 
 | 2924 | </div> | 
 | 2925 | </xsl:template> | 
 | 2926 |  | 
 | 2927 | <xsl:template match="releaseinfo" mode="sect4.titlepage.recto.auto.mode"> | 
 | 2928 | <div xsl:use-attribute-sets="sect4.titlepage.recto.style"> | 
 | 2929 | <xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> | 
 | 2930 | </div> | 
 | 2931 | </xsl:template> | 
 | 2932 |  | 
 | 2933 | <xsl:template match="copyright" mode="sect4.titlepage.recto.auto.mode"> | 
 | 2934 | <div xsl:use-attribute-sets="sect4.titlepage.recto.style"> | 
 | 2935 | <xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> | 
 | 2936 | </div> | 
 | 2937 | </xsl:template> | 
 | 2938 |  | 
 | 2939 | <xsl:template match="legalnotice" mode="sect4.titlepage.recto.auto.mode"> | 
 | 2940 | <div xsl:use-attribute-sets="sect4.titlepage.recto.style"> | 
 | 2941 | <xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> | 
 | 2942 | </div> | 
 | 2943 | </xsl:template> | 
 | 2944 |  | 
 | 2945 | <xsl:template match="pubdate" mode="sect4.titlepage.recto.auto.mode"> | 
 | 2946 | <div xsl:use-attribute-sets="sect4.titlepage.recto.style"> | 
 | 2947 | <xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> | 
 | 2948 | </div> | 
 | 2949 | </xsl:template> | 
 | 2950 |  | 
 | 2951 | <xsl:template match="revision" mode="sect4.titlepage.recto.auto.mode"> | 
 | 2952 | <div xsl:use-attribute-sets="sect4.titlepage.recto.style"> | 
 | 2953 | <xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> | 
 | 2954 | </div> | 
 | 2955 | </xsl:template> | 
 | 2956 |  | 
 | 2957 | <xsl:template match="revhistory" mode="sect4.titlepage.recto.auto.mode"> | 
 | 2958 | <div xsl:use-attribute-sets="sect4.titlepage.recto.style"> | 
 | 2959 | <xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> | 
 | 2960 | </div> | 
 | 2961 | </xsl:template> | 
 | 2962 |  | 
 | 2963 | <xsl:template match="abstract" mode="sect4.titlepage.recto.auto.mode"> | 
 | 2964 | <div xsl:use-attribute-sets="sect4.titlepage.recto.style"> | 
 | 2965 | <xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> | 
 | 2966 | </div> | 
 | 2967 | </xsl:template> | 
 | 2968 |  | 
 | 2969 | <xsl:template name="sect5.titlepage.recto"> | 
 | 2970 |   <xsl:choose> | 
 | 2971 |     <xsl:when test="sect5info/title"> | 
 | 2972 |       <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/title"/> | 
 | 2973 |     </xsl:when> | 
 | 2974 |     <xsl:when test="info/title"> | 
 | 2975 |       <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/title"/> | 
 | 2976 |     </xsl:when> | 
 | 2977 |     <xsl:when test="title"> | 
 | 2978 |       <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="title"/> | 
 | 2979 |     </xsl:when> | 
 | 2980 |   </xsl:choose> | 
 | 2981 |  | 
 | 2982 |   <xsl:choose> | 
 | 2983 |     <xsl:when test="sect5info/subtitle"> | 
 | 2984 |       <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/subtitle"/> | 
 | 2985 |     </xsl:when> | 
 | 2986 |     <xsl:when test="info/subtitle"> | 
 | 2987 |       <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 2988 |     </xsl:when> | 
 | 2989 |     <xsl:when test="subtitle"> | 
 | 2990 |       <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 2991 |     </xsl:when> | 
 | 2992 |   </xsl:choose> | 
 | 2993 |  | 
 | 2994 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/corpauthor"/> | 
 | 2995 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/corpauthor"/> | 
 | 2996 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/authorgroup"/> | 
 | 2997 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/authorgroup"/> | 
 | 2998 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/author"/> | 
 | 2999 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/author"/> | 
 | 3000 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/othercredit"/> | 
 | 3001 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/othercredit"/> | 
 | 3002 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/releaseinfo"/> | 
 | 3003 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/releaseinfo"/> | 
 | 3004 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/copyright"/> | 
 | 3005 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/copyright"/> | 
 | 3006 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/legalnotice"/> | 
 | 3007 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/legalnotice"/> | 
 | 3008 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/pubdate"/> | 
 | 3009 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/pubdate"/> | 
 | 3010 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/revision"/> | 
 | 3011 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/revision"/> | 
 | 3012 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/revhistory"/> | 
 | 3013 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/revhistory"/> | 
 | 3014 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/abstract"/> | 
 | 3015 |   <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/abstract"/> | 
 | 3016 | </xsl:template> | 
 | 3017 |  | 
 | 3018 | <xsl:template name="sect5.titlepage.verso"> | 
 | 3019 | </xsl:template> | 
 | 3020 |  | 
 | 3021 | <xsl:template name="sect5.titlepage.separator"><xsl:if test="count(parent::*)='0'"><hr/></xsl:if> | 
 | 3022 | </xsl:template> | 
 | 3023 |  | 
 | 3024 | <xsl:template name="sect5.titlepage.before.recto"> | 
 | 3025 | </xsl:template> | 
 | 3026 |  | 
 | 3027 | <xsl:template name="sect5.titlepage.before.verso"> | 
 | 3028 | </xsl:template> | 
 | 3029 |  | 
 | 3030 | <xsl:template name="sect5.titlepage"> | 
 | 3031 |   <div class="titlepage"> | 
 | 3032 |     <xsl:variable name="recto.content"> | 
 | 3033 |       <xsl:call-template name="sect5.titlepage.before.recto"/> | 
 | 3034 |       <xsl:call-template name="sect5.titlepage.recto"/> | 
 | 3035 |     </xsl:variable> | 
 | 3036 |     <xsl:variable name="recto.elements.count"> | 
 | 3037 |       <xsl:choose> | 
 | 3038 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 3039 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 3040 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 3041 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 3042 |       </xsl:choose> | 
 | 3043 |     </xsl:variable> | 
 | 3044 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 3045 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 3046 |     </xsl:if> | 
 | 3047 |     <xsl:variable name="verso.content"> | 
 | 3048 |       <xsl:call-template name="sect5.titlepage.before.verso"/> | 
 | 3049 |       <xsl:call-template name="sect5.titlepage.verso"/> | 
 | 3050 |     </xsl:variable> | 
 | 3051 |     <xsl:variable name="verso.elements.count"> | 
 | 3052 |       <xsl:choose> | 
 | 3053 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 3054 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 3055 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 3056 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 3057 |       </xsl:choose> | 
 | 3058 |     </xsl:variable> | 
 | 3059 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 3060 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 3061 |     </xsl:if> | 
 | 3062 |     <xsl:call-template name="sect5.titlepage.separator"/> | 
 | 3063 |   </div> | 
 | 3064 | </xsl:template> | 
 | 3065 |  | 
 | 3066 | <xsl:template match="*" mode="sect5.titlepage.recto.mode"> | 
 | 3067 |   <!-- if an element isn't found in this mode, --> | 
 | 3068 |   <!-- try the generic titlepage.mode --> | 
 | 3069 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 3070 | </xsl:template> | 
 | 3071 |  | 
 | 3072 | <xsl:template match="*" mode="sect5.titlepage.verso.mode"> | 
 | 3073 |   <!-- if an element isn't found in this mode, --> | 
 | 3074 |   <!-- try the generic titlepage.mode --> | 
 | 3075 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 3076 | </xsl:template> | 
 | 3077 |  | 
 | 3078 | <xsl:template match="title" mode="sect5.titlepage.recto.auto.mode"> | 
 | 3079 | <div xsl:use-attribute-sets="sect5.titlepage.recto.style"> | 
 | 3080 | <xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> | 
 | 3081 | </div> | 
 | 3082 | </xsl:template> | 
 | 3083 |  | 
 | 3084 | <xsl:template match="subtitle" mode="sect5.titlepage.recto.auto.mode"> | 
 | 3085 | <div xsl:use-attribute-sets="sect5.titlepage.recto.style"> | 
 | 3086 | <xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> | 
 | 3087 | </div> | 
 | 3088 | </xsl:template> | 
 | 3089 |  | 
 | 3090 | <xsl:template match="corpauthor" mode="sect5.titlepage.recto.auto.mode"> | 
 | 3091 | <div xsl:use-attribute-sets="sect5.titlepage.recto.style"> | 
 | 3092 | <xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> | 
 | 3093 | </div> | 
 | 3094 | </xsl:template> | 
 | 3095 |  | 
 | 3096 | <xsl:template match="authorgroup" mode="sect5.titlepage.recto.auto.mode"> | 
 | 3097 | <div xsl:use-attribute-sets="sect5.titlepage.recto.style"> | 
 | 3098 | <xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> | 
 | 3099 | </div> | 
 | 3100 | </xsl:template> | 
 | 3101 |  | 
 | 3102 | <xsl:template match="author" mode="sect5.titlepage.recto.auto.mode"> | 
 | 3103 | <div xsl:use-attribute-sets="sect5.titlepage.recto.style"> | 
 | 3104 | <xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> | 
 | 3105 | </div> | 
 | 3106 | </xsl:template> | 
 | 3107 |  | 
 | 3108 | <xsl:template match="othercredit" mode="sect5.titlepage.recto.auto.mode"> | 
 | 3109 | <div xsl:use-attribute-sets="sect5.titlepage.recto.style"> | 
 | 3110 | <xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> | 
 | 3111 | </div> | 
 | 3112 | </xsl:template> | 
 | 3113 |  | 
 | 3114 | <xsl:template match="releaseinfo" mode="sect5.titlepage.recto.auto.mode"> | 
 | 3115 | <div xsl:use-attribute-sets="sect5.titlepage.recto.style"> | 
 | 3116 | <xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> | 
 | 3117 | </div> | 
 | 3118 | </xsl:template> | 
 | 3119 |  | 
 | 3120 | <xsl:template match="copyright" mode="sect5.titlepage.recto.auto.mode"> | 
 | 3121 | <div xsl:use-attribute-sets="sect5.titlepage.recto.style"> | 
 | 3122 | <xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> | 
 | 3123 | </div> | 
 | 3124 | </xsl:template> | 
 | 3125 |  | 
 | 3126 | <xsl:template match="legalnotice" mode="sect5.titlepage.recto.auto.mode"> | 
 | 3127 | <div xsl:use-attribute-sets="sect5.titlepage.recto.style"> | 
 | 3128 | <xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> | 
 | 3129 | </div> | 
 | 3130 | </xsl:template> | 
 | 3131 |  | 
 | 3132 | <xsl:template match="pubdate" mode="sect5.titlepage.recto.auto.mode"> | 
 | 3133 | <div xsl:use-attribute-sets="sect5.titlepage.recto.style"> | 
 | 3134 | <xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> | 
 | 3135 | </div> | 
 | 3136 | </xsl:template> | 
 | 3137 |  | 
 | 3138 | <xsl:template match="revision" mode="sect5.titlepage.recto.auto.mode"> | 
 | 3139 | <div xsl:use-attribute-sets="sect5.titlepage.recto.style"> | 
 | 3140 | <xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> | 
 | 3141 | </div> | 
 | 3142 | </xsl:template> | 
 | 3143 |  | 
 | 3144 | <xsl:template match="revhistory" mode="sect5.titlepage.recto.auto.mode"> | 
 | 3145 | <div xsl:use-attribute-sets="sect5.titlepage.recto.style"> | 
 | 3146 | <xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> | 
 | 3147 | </div> | 
 | 3148 | </xsl:template> | 
 | 3149 |  | 
 | 3150 | <xsl:template match="abstract" mode="sect5.titlepage.recto.auto.mode"> | 
 | 3151 | <div xsl:use-attribute-sets="sect5.titlepage.recto.style"> | 
 | 3152 | <xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> | 
 | 3153 | </div> | 
 | 3154 | </xsl:template> | 
 | 3155 |  | 
 | 3156 | <xsl:template name="simplesect.titlepage.recto"> | 
 | 3157 |   <xsl:choose> | 
 | 3158 |     <xsl:when test="simplesectinfo/title"> | 
 | 3159 |       <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/title"/> | 
 | 3160 |     </xsl:when> | 
 | 3161 |     <xsl:when test="docinfo/title"> | 
 | 3162 |       <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/title"/> | 
 | 3163 |     </xsl:when> | 
 | 3164 |     <xsl:when test="info/title"> | 
 | 3165 |       <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/title"/> | 
 | 3166 |     </xsl:when> | 
 | 3167 |     <xsl:when test="title"> | 
 | 3168 |       <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="title"/> | 
 | 3169 |     </xsl:when> | 
 | 3170 |   </xsl:choose> | 
 | 3171 |  | 
 | 3172 |   <xsl:choose> | 
 | 3173 |     <xsl:when test="simplesectinfo/subtitle"> | 
 | 3174 |       <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/subtitle"/> | 
 | 3175 |     </xsl:when> | 
 | 3176 |     <xsl:when test="docinfo/subtitle"> | 
 | 3177 |       <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/subtitle"/> | 
 | 3178 |     </xsl:when> | 
 | 3179 |     <xsl:when test="info/subtitle"> | 
 | 3180 |       <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 3181 |     </xsl:when> | 
 | 3182 |     <xsl:when test="subtitle"> | 
 | 3183 |       <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 3184 |     </xsl:when> | 
 | 3185 |   </xsl:choose> | 
 | 3186 |  | 
 | 3187 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/corpauthor"/> | 
 | 3188 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/corpauthor"/> | 
 | 3189 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/corpauthor"/> | 
 | 3190 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/authorgroup"/> | 
 | 3191 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/authorgroup"/> | 
 | 3192 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/authorgroup"/> | 
 | 3193 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/author"/> | 
 | 3194 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/author"/> | 
 | 3195 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/author"/> | 
 | 3196 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/othercredit"/> | 
 | 3197 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/othercredit"/> | 
 | 3198 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/othercredit"/> | 
 | 3199 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/releaseinfo"/> | 
 | 3200 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/> | 
 | 3201 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/releaseinfo"/> | 
 | 3202 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/copyright"/> | 
 | 3203 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/copyright"/> | 
 | 3204 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/copyright"/> | 
 | 3205 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/legalnotice"/> | 
 | 3206 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/legalnotice"/> | 
 | 3207 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/legalnotice"/> | 
 | 3208 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/pubdate"/> | 
 | 3209 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/pubdate"/> | 
 | 3210 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/pubdate"/> | 
 | 3211 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/revision"/> | 
 | 3212 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/revision"/> | 
 | 3213 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/revision"/> | 
 | 3214 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/revhistory"/> | 
 | 3215 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/revhistory"/> | 
 | 3216 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/revhistory"/> | 
 | 3217 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/abstract"/> | 
 | 3218 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/abstract"/> | 
 | 3219 |   <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/abstract"/> | 
 | 3220 | </xsl:template> | 
 | 3221 |  | 
 | 3222 | <xsl:template name="simplesect.titlepage.verso"> | 
 | 3223 | </xsl:template> | 
 | 3224 |  | 
 | 3225 | <xsl:template name="simplesect.titlepage.separator"><xsl:if test="count(parent::*)='0'"><hr/></xsl:if> | 
 | 3226 | </xsl:template> | 
 | 3227 |  | 
 | 3228 | <xsl:template name="simplesect.titlepage.before.recto"> | 
 | 3229 | </xsl:template> | 
 | 3230 |  | 
 | 3231 | <xsl:template name="simplesect.titlepage.before.verso"> | 
 | 3232 | </xsl:template> | 
 | 3233 |  | 
 | 3234 | <xsl:template name="simplesect.titlepage"> | 
 | 3235 |   <div class="titlepage"> | 
 | 3236 |     <xsl:variable name="recto.content"> | 
 | 3237 |       <xsl:call-template name="simplesect.titlepage.before.recto"/> | 
 | 3238 |       <xsl:call-template name="simplesect.titlepage.recto"/> | 
 | 3239 |     </xsl:variable> | 
 | 3240 |     <xsl:variable name="recto.elements.count"> | 
 | 3241 |       <xsl:choose> | 
 | 3242 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 3243 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 3244 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 3245 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 3246 |       </xsl:choose> | 
 | 3247 |     </xsl:variable> | 
 | 3248 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 3249 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 3250 |     </xsl:if> | 
 | 3251 |     <xsl:variable name="verso.content"> | 
 | 3252 |       <xsl:call-template name="simplesect.titlepage.before.verso"/> | 
 | 3253 |       <xsl:call-template name="simplesect.titlepage.verso"/> | 
 | 3254 |     </xsl:variable> | 
 | 3255 |     <xsl:variable name="verso.elements.count"> | 
 | 3256 |       <xsl:choose> | 
 | 3257 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 3258 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 3259 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 3260 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 3261 |       </xsl:choose> | 
 | 3262 |     </xsl:variable> | 
 | 3263 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 3264 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 3265 |     </xsl:if> | 
 | 3266 |     <xsl:call-template name="simplesect.titlepage.separator"/> | 
 | 3267 |   </div> | 
 | 3268 | </xsl:template> | 
 | 3269 |  | 
 | 3270 | <xsl:template match="*" mode="simplesect.titlepage.recto.mode"> | 
 | 3271 |   <!-- if an element isn't found in this mode, --> | 
 | 3272 |   <!-- try the generic titlepage.mode --> | 
 | 3273 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 3274 | </xsl:template> | 
 | 3275 |  | 
 | 3276 | <xsl:template match="*" mode="simplesect.titlepage.verso.mode"> | 
 | 3277 |   <!-- if an element isn't found in this mode, --> | 
 | 3278 |   <!-- try the generic titlepage.mode --> | 
 | 3279 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 3280 | </xsl:template> | 
 | 3281 |  | 
 | 3282 | <xsl:template match="title" mode="simplesect.titlepage.recto.auto.mode"> | 
 | 3283 | <div xsl:use-attribute-sets="simplesect.titlepage.recto.style"> | 
 | 3284 | <xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> | 
 | 3285 | </div> | 
 | 3286 | </xsl:template> | 
 | 3287 |  | 
 | 3288 | <xsl:template match="subtitle" mode="simplesect.titlepage.recto.auto.mode"> | 
 | 3289 | <div xsl:use-attribute-sets="simplesect.titlepage.recto.style"> | 
 | 3290 | <xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> | 
 | 3291 | </div> | 
 | 3292 | </xsl:template> | 
 | 3293 |  | 
 | 3294 | <xsl:template match="corpauthor" mode="simplesect.titlepage.recto.auto.mode"> | 
 | 3295 | <div xsl:use-attribute-sets="simplesect.titlepage.recto.style"> | 
 | 3296 | <xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> | 
 | 3297 | </div> | 
 | 3298 | </xsl:template> | 
 | 3299 |  | 
 | 3300 | <xsl:template match="authorgroup" mode="simplesect.titlepage.recto.auto.mode"> | 
 | 3301 | <div xsl:use-attribute-sets="simplesect.titlepage.recto.style"> | 
 | 3302 | <xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> | 
 | 3303 | </div> | 
 | 3304 | </xsl:template> | 
 | 3305 |  | 
 | 3306 | <xsl:template match="author" mode="simplesect.titlepage.recto.auto.mode"> | 
 | 3307 | <div xsl:use-attribute-sets="simplesect.titlepage.recto.style"> | 
 | 3308 | <xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> | 
 | 3309 | </div> | 
 | 3310 | </xsl:template> | 
 | 3311 |  | 
 | 3312 | <xsl:template match="othercredit" mode="simplesect.titlepage.recto.auto.mode"> | 
 | 3313 | <div xsl:use-attribute-sets="simplesect.titlepage.recto.style"> | 
 | 3314 | <xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> | 
 | 3315 | </div> | 
 | 3316 | </xsl:template> | 
 | 3317 |  | 
 | 3318 | <xsl:template match="releaseinfo" mode="simplesect.titlepage.recto.auto.mode"> | 
 | 3319 | <div xsl:use-attribute-sets="simplesect.titlepage.recto.style"> | 
 | 3320 | <xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> | 
 | 3321 | </div> | 
 | 3322 | </xsl:template> | 
 | 3323 |  | 
 | 3324 | <xsl:template match="copyright" mode="simplesect.titlepage.recto.auto.mode"> | 
 | 3325 | <div xsl:use-attribute-sets="simplesect.titlepage.recto.style"> | 
 | 3326 | <xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> | 
 | 3327 | </div> | 
 | 3328 | </xsl:template> | 
 | 3329 |  | 
 | 3330 | <xsl:template match="legalnotice" mode="simplesect.titlepage.recto.auto.mode"> | 
 | 3331 | <div xsl:use-attribute-sets="simplesect.titlepage.recto.style"> | 
 | 3332 | <xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> | 
 | 3333 | </div> | 
 | 3334 | </xsl:template> | 
 | 3335 |  | 
 | 3336 | <xsl:template match="pubdate" mode="simplesect.titlepage.recto.auto.mode"> | 
 | 3337 | <div xsl:use-attribute-sets="simplesect.titlepage.recto.style"> | 
 | 3338 | <xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> | 
 | 3339 | </div> | 
 | 3340 | </xsl:template> | 
 | 3341 |  | 
 | 3342 | <xsl:template match="revision" mode="simplesect.titlepage.recto.auto.mode"> | 
 | 3343 | <div xsl:use-attribute-sets="simplesect.titlepage.recto.style"> | 
 | 3344 | <xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> | 
 | 3345 | </div> | 
 | 3346 | </xsl:template> | 
 | 3347 |  | 
 | 3348 | <xsl:template match="revhistory" mode="simplesect.titlepage.recto.auto.mode"> | 
 | 3349 | <div xsl:use-attribute-sets="simplesect.titlepage.recto.style"> | 
 | 3350 | <xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> | 
 | 3351 | </div> | 
 | 3352 | </xsl:template> | 
 | 3353 |  | 
 | 3354 | <xsl:template match="abstract" mode="simplesect.titlepage.recto.auto.mode"> | 
 | 3355 | <div xsl:use-attribute-sets="simplesect.titlepage.recto.style"> | 
 | 3356 | <xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> | 
 | 3357 | </div> | 
 | 3358 | </xsl:template> | 
 | 3359 |  | 
 | 3360 | <xsl:template name="bibliography.titlepage.recto"> | 
 | 3361 |   <div xsl:use-attribute-sets="bibliography.titlepage.recto.style"> | 
 | 3362 | <xsl:call-template name="component.title"> | 
 | 3363 | <xsl:with-param name="node" select="ancestor-or-self::bibliography[1]"/> | 
 | 3364 | </xsl:call-template></div> | 
 | 3365 |   <xsl:choose> | 
 | 3366 |     <xsl:when test="bibliographyinfo/subtitle"> | 
 | 3367 |       <xsl:apply-templates mode="bibliography.titlepage.recto.auto.mode" select="bibliographyinfo/subtitle"/> | 
 | 3368 |     </xsl:when> | 
 | 3369 |     <xsl:when test="docinfo/subtitle"> | 
 | 3370 |       <xsl:apply-templates mode="bibliography.titlepage.recto.auto.mode" select="docinfo/subtitle"/> | 
 | 3371 |     </xsl:when> | 
 | 3372 |     <xsl:when test="info/subtitle"> | 
 | 3373 |       <xsl:apply-templates mode="bibliography.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 3374 |     </xsl:when> | 
 | 3375 |     <xsl:when test="subtitle"> | 
 | 3376 |       <xsl:apply-templates mode="bibliography.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 3377 |     </xsl:when> | 
 | 3378 |   </xsl:choose> | 
 | 3379 |  | 
 | 3380 | </xsl:template> | 
 | 3381 |  | 
 | 3382 | <xsl:template name="bibliography.titlepage.verso"> | 
 | 3383 | </xsl:template> | 
 | 3384 |  | 
 | 3385 | <xsl:template name="bibliography.titlepage.separator"> | 
 | 3386 | </xsl:template> | 
 | 3387 |  | 
 | 3388 | <xsl:template name="bibliography.titlepage.before.recto"> | 
 | 3389 | </xsl:template> | 
 | 3390 |  | 
 | 3391 | <xsl:template name="bibliography.titlepage.before.verso"> | 
 | 3392 | </xsl:template> | 
 | 3393 |  | 
 | 3394 | <xsl:template name="bibliography.titlepage"> | 
 | 3395 |   <div class="titlepage"> | 
 | 3396 |     <xsl:variable name="recto.content"> | 
 | 3397 |       <xsl:call-template name="bibliography.titlepage.before.recto"/> | 
 | 3398 |       <xsl:call-template name="bibliography.titlepage.recto"/> | 
 | 3399 |     </xsl:variable> | 
 | 3400 |     <xsl:variable name="recto.elements.count"> | 
 | 3401 |       <xsl:choose> | 
 | 3402 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 3403 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 3404 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 3405 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 3406 |       </xsl:choose> | 
 | 3407 |     </xsl:variable> | 
 | 3408 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 3409 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 3410 |     </xsl:if> | 
 | 3411 |     <xsl:variable name="verso.content"> | 
 | 3412 |       <xsl:call-template name="bibliography.titlepage.before.verso"/> | 
 | 3413 |       <xsl:call-template name="bibliography.titlepage.verso"/> | 
 | 3414 |     </xsl:variable> | 
 | 3415 |     <xsl:variable name="verso.elements.count"> | 
 | 3416 |       <xsl:choose> | 
 | 3417 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 3418 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 3419 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 3420 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 3421 |       </xsl:choose> | 
 | 3422 |     </xsl:variable> | 
 | 3423 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 3424 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 3425 |     </xsl:if> | 
 | 3426 |     <xsl:call-template name="bibliography.titlepage.separator"/> | 
 | 3427 |   </div> | 
 | 3428 | </xsl:template> | 
 | 3429 |  | 
 | 3430 | <xsl:template match="*" mode="bibliography.titlepage.recto.mode"> | 
 | 3431 |   <!-- if an element isn't found in this mode, --> | 
 | 3432 |   <!-- try the generic titlepage.mode --> | 
 | 3433 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 3434 | </xsl:template> | 
 | 3435 |  | 
 | 3436 | <xsl:template match="*" mode="bibliography.titlepage.verso.mode"> | 
 | 3437 |   <!-- if an element isn't found in this mode, --> | 
 | 3438 |   <!-- try the generic titlepage.mode --> | 
 | 3439 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 3440 | </xsl:template> | 
 | 3441 |  | 
 | 3442 | <xsl:template match="subtitle" mode="bibliography.titlepage.recto.auto.mode"> | 
 | 3443 | <div xsl:use-attribute-sets="bibliography.titlepage.recto.style"> | 
 | 3444 | <xsl:apply-templates select="." mode="bibliography.titlepage.recto.mode"/> | 
 | 3445 | </div> | 
 | 3446 | </xsl:template> | 
 | 3447 |  | 
 | 3448 | <xsl:template name="glossary.titlepage.recto"> | 
 | 3449 |   <div xsl:use-attribute-sets="glossary.titlepage.recto.style"> | 
 | 3450 | <xsl:call-template name="component.title"> | 
 | 3451 | <xsl:with-param name="node" select="ancestor-or-self::glossary[1]"/> | 
 | 3452 | </xsl:call-template></div> | 
 | 3453 |   <xsl:choose> | 
 | 3454 |     <xsl:when test="glossaryinfo/subtitle"> | 
 | 3455 |       <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="glossaryinfo/subtitle"/> | 
 | 3456 |     </xsl:when> | 
 | 3457 |     <xsl:when test="docinfo/subtitle"> | 
 | 3458 |       <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="docinfo/subtitle"/> | 
 | 3459 |     </xsl:when> | 
 | 3460 |     <xsl:when test="info/subtitle"> | 
 | 3461 |       <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 3462 |     </xsl:when> | 
 | 3463 |     <xsl:when test="subtitle"> | 
 | 3464 |       <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 3465 |     </xsl:when> | 
 | 3466 |   </xsl:choose> | 
 | 3467 |  | 
 | 3468 | </xsl:template> | 
 | 3469 |  | 
 | 3470 | <xsl:template name="glossary.titlepage.verso"> | 
 | 3471 | </xsl:template> | 
 | 3472 |  | 
 | 3473 | <xsl:template name="glossary.titlepage.separator"> | 
 | 3474 | </xsl:template> | 
 | 3475 |  | 
 | 3476 | <xsl:template name="glossary.titlepage.before.recto"> | 
 | 3477 | </xsl:template> | 
 | 3478 |  | 
 | 3479 | <xsl:template name="glossary.titlepage.before.verso"> | 
 | 3480 | </xsl:template> | 
 | 3481 |  | 
 | 3482 | <xsl:template name="glossary.titlepage"> | 
 | 3483 |   <div class="titlepage"> | 
 | 3484 |     <xsl:variable name="recto.content"> | 
 | 3485 |       <xsl:call-template name="glossary.titlepage.before.recto"/> | 
 | 3486 |       <xsl:call-template name="glossary.titlepage.recto"/> | 
 | 3487 |     </xsl:variable> | 
 | 3488 |     <xsl:variable name="recto.elements.count"> | 
 | 3489 |       <xsl:choose> | 
 | 3490 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 3491 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 3492 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 3493 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 3494 |       </xsl:choose> | 
 | 3495 |     </xsl:variable> | 
 | 3496 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 3497 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 3498 |     </xsl:if> | 
 | 3499 |     <xsl:variable name="verso.content"> | 
 | 3500 |       <xsl:call-template name="glossary.titlepage.before.verso"/> | 
 | 3501 |       <xsl:call-template name="glossary.titlepage.verso"/> | 
 | 3502 |     </xsl:variable> | 
 | 3503 |     <xsl:variable name="verso.elements.count"> | 
 | 3504 |       <xsl:choose> | 
 | 3505 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 3506 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 3507 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 3508 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 3509 |       </xsl:choose> | 
 | 3510 |     </xsl:variable> | 
 | 3511 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 3512 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 3513 |     </xsl:if> | 
 | 3514 |     <xsl:call-template name="glossary.titlepage.separator"/> | 
 | 3515 |   </div> | 
 | 3516 | </xsl:template> | 
 | 3517 |  | 
 | 3518 | <xsl:template match="*" mode="glossary.titlepage.recto.mode"> | 
 | 3519 |   <!-- if an element isn't found in this mode, --> | 
 | 3520 |   <!-- try the generic titlepage.mode --> | 
 | 3521 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 3522 | </xsl:template> | 
 | 3523 |  | 
 | 3524 | <xsl:template match="*" mode="glossary.titlepage.verso.mode"> | 
 | 3525 |   <!-- if an element isn't found in this mode, --> | 
 | 3526 |   <!-- try the generic titlepage.mode --> | 
 | 3527 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 3528 | </xsl:template> | 
 | 3529 |  | 
 | 3530 | <xsl:template match="subtitle" mode="glossary.titlepage.recto.auto.mode"> | 
 | 3531 | <div xsl:use-attribute-sets="glossary.titlepage.recto.style"> | 
 | 3532 | <xsl:apply-templates select="." mode="glossary.titlepage.recto.mode"/> | 
 | 3533 | </div> | 
 | 3534 | </xsl:template> | 
 | 3535 |  | 
 | 3536 | <xsl:template name="index.titlepage.recto"> | 
 | 3537 |   <div xsl:use-attribute-sets="index.titlepage.recto.style"> | 
 | 3538 | <xsl:call-template name="component.title"> | 
 | 3539 | <xsl:with-param name="node" select="ancestor-or-self::index[1]"/> | 
 | 3540 | </xsl:call-template></div> | 
 | 3541 |   <xsl:choose> | 
 | 3542 |     <xsl:when test="indexinfo/subtitle"> | 
 | 3543 |       <xsl:apply-templates mode="index.titlepage.recto.auto.mode" select="indexinfo/subtitle"/> | 
 | 3544 |     </xsl:when> | 
 | 3545 |     <xsl:when test="docinfo/subtitle"> | 
 | 3546 |       <xsl:apply-templates mode="index.titlepage.recto.auto.mode" select="docinfo/subtitle"/> | 
 | 3547 |     </xsl:when> | 
 | 3548 |     <xsl:when test="info/subtitle"> | 
 | 3549 |       <xsl:apply-templates mode="index.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 3550 |     </xsl:when> | 
 | 3551 |     <xsl:when test="subtitle"> | 
 | 3552 |       <xsl:apply-templates mode="index.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 3553 |     </xsl:when> | 
 | 3554 |   </xsl:choose> | 
 | 3555 |  | 
 | 3556 | </xsl:template> | 
 | 3557 |  | 
 | 3558 | <xsl:template name="index.titlepage.verso"> | 
 | 3559 | </xsl:template> | 
 | 3560 |  | 
 | 3561 | <xsl:template name="index.titlepage.separator"> | 
 | 3562 | </xsl:template> | 
 | 3563 |  | 
 | 3564 | <xsl:template name="index.titlepage.before.recto"> | 
 | 3565 | </xsl:template> | 
 | 3566 |  | 
 | 3567 | <xsl:template name="index.titlepage.before.verso"> | 
 | 3568 | </xsl:template> | 
 | 3569 |  | 
 | 3570 | <xsl:template name="index.titlepage"> | 
 | 3571 |   <div class="titlepage"> | 
 | 3572 |     <xsl:variable name="recto.content"> | 
 | 3573 |       <xsl:call-template name="index.titlepage.before.recto"/> | 
 | 3574 |       <xsl:call-template name="index.titlepage.recto"/> | 
 | 3575 |     </xsl:variable> | 
 | 3576 |     <xsl:variable name="recto.elements.count"> | 
 | 3577 |       <xsl:choose> | 
 | 3578 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 3579 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 3580 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 3581 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 3582 |       </xsl:choose> | 
 | 3583 |     </xsl:variable> | 
 | 3584 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 3585 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 3586 |     </xsl:if> | 
 | 3587 |     <xsl:variable name="verso.content"> | 
 | 3588 |       <xsl:call-template name="index.titlepage.before.verso"/> | 
 | 3589 |       <xsl:call-template name="index.titlepage.verso"/> | 
 | 3590 |     </xsl:variable> | 
 | 3591 |     <xsl:variable name="verso.elements.count"> | 
 | 3592 |       <xsl:choose> | 
 | 3593 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 3594 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 3595 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 3596 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 3597 |       </xsl:choose> | 
 | 3598 |     </xsl:variable> | 
 | 3599 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 3600 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 3601 |     </xsl:if> | 
 | 3602 |     <xsl:call-template name="index.titlepage.separator"/> | 
 | 3603 |   </div> | 
 | 3604 | </xsl:template> | 
 | 3605 |  | 
 | 3606 | <xsl:template match="*" mode="index.titlepage.recto.mode"> | 
 | 3607 |   <!-- if an element isn't found in this mode, --> | 
 | 3608 |   <!-- try the generic titlepage.mode --> | 
 | 3609 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 3610 | </xsl:template> | 
 | 3611 |  | 
 | 3612 | <xsl:template match="*" mode="index.titlepage.verso.mode"> | 
 | 3613 |   <!-- if an element isn't found in this mode, --> | 
 | 3614 |   <!-- try the generic titlepage.mode --> | 
 | 3615 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 3616 | </xsl:template> | 
 | 3617 |  | 
 | 3618 | <xsl:template match="subtitle" mode="index.titlepage.recto.auto.mode"> | 
 | 3619 | <div xsl:use-attribute-sets="index.titlepage.recto.style"> | 
 | 3620 | <xsl:apply-templates select="." mode="index.titlepage.recto.mode"/> | 
 | 3621 | </div> | 
 | 3622 | </xsl:template> | 
 | 3623 |  | 
 | 3624 | <xsl:template name="setindex.titlepage.recto"> | 
 | 3625 |   <div xsl:use-attribute-sets="setindex.titlepage.recto.style"> | 
 | 3626 | <xsl:call-template name="component.title"> | 
 | 3627 | <xsl:with-param name="node" select="ancestor-or-self::setindex[1]"/> | 
 | 3628 | </xsl:call-template></div> | 
 | 3629 |   <xsl:choose> | 
 | 3630 |     <xsl:when test="setindexinfo/subtitle"> | 
 | 3631 |       <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="setindexinfo/subtitle"/> | 
 | 3632 |     </xsl:when> | 
 | 3633 |     <xsl:when test="docinfo/subtitle"> | 
 | 3634 |       <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="docinfo/subtitle"/> | 
 | 3635 |     </xsl:when> | 
 | 3636 |     <xsl:when test="info/subtitle"> | 
 | 3637 |       <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 3638 |     </xsl:when> | 
 | 3639 |     <xsl:when test="subtitle"> | 
 | 3640 |       <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 3641 |     </xsl:when> | 
 | 3642 |   </xsl:choose> | 
 | 3643 |  | 
 | 3644 | </xsl:template> | 
 | 3645 |  | 
 | 3646 | <xsl:template name="setindex.titlepage.verso"> | 
 | 3647 | </xsl:template> | 
 | 3648 |  | 
 | 3649 | <xsl:template name="setindex.titlepage.separator"> | 
 | 3650 | </xsl:template> | 
 | 3651 |  | 
 | 3652 | <xsl:template name="setindex.titlepage.before.recto"> | 
 | 3653 | </xsl:template> | 
 | 3654 |  | 
 | 3655 | <xsl:template name="setindex.titlepage.before.verso"> | 
 | 3656 | </xsl:template> | 
 | 3657 |  | 
 | 3658 | <xsl:template name="setindex.titlepage"> | 
 | 3659 |   <div class="titlepage"> | 
 | 3660 |     <xsl:variable name="recto.content"> | 
 | 3661 |       <xsl:call-template name="setindex.titlepage.before.recto"/> | 
 | 3662 |       <xsl:call-template name="setindex.titlepage.recto"/> | 
 | 3663 |     </xsl:variable> | 
 | 3664 |     <xsl:variable name="recto.elements.count"> | 
 | 3665 |       <xsl:choose> | 
 | 3666 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 3667 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 3668 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 3669 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 3670 |       </xsl:choose> | 
 | 3671 |     </xsl:variable> | 
 | 3672 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 3673 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 3674 |     </xsl:if> | 
 | 3675 |     <xsl:variable name="verso.content"> | 
 | 3676 |       <xsl:call-template name="setindex.titlepage.before.verso"/> | 
 | 3677 |       <xsl:call-template name="setindex.titlepage.verso"/> | 
 | 3678 |     </xsl:variable> | 
 | 3679 |     <xsl:variable name="verso.elements.count"> | 
 | 3680 |       <xsl:choose> | 
 | 3681 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 3682 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 3683 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 3684 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 3685 |       </xsl:choose> | 
 | 3686 |     </xsl:variable> | 
 | 3687 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 3688 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 3689 |     </xsl:if> | 
 | 3690 |     <xsl:call-template name="setindex.titlepage.separator"/> | 
 | 3691 |   </div> | 
 | 3692 | </xsl:template> | 
 | 3693 |  | 
 | 3694 | <xsl:template match="*" mode="setindex.titlepage.recto.mode"> | 
 | 3695 |   <!-- if an element isn't found in this mode, --> | 
 | 3696 |   <!-- try the generic titlepage.mode --> | 
 | 3697 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 3698 | </xsl:template> | 
 | 3699 |  | 
 | 3700 | <xsl:template match="*" mode="setindex.titlepage.verso.mode"> | 
 | 3701 |   <!-- if an element isn't found in this mode, --> | 
 | 3702 |   <!-- try the generic titlepage.mode --> | 
 | 3703 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 3704 | </xsl:template> | 
 | 3705 |  | 
 | 3706 | <xsl:template match="subtitle" mode="setindex.titlepage.recto.auto.mode"> | 
 | 3707 | <div xsl:use-attribute-sets="setindex.titlepage.recto.style"> | 
 | 3708 | <xsl:apply-templates select="." mode="setindex.titlepage.recto.mode"/> | 
 | 3709 | </div> | 
 | 3710 | </xsl:template> | 
 | 3711 |  | 
 | 3712 | <xsl:template name="sidebar.titlepage.recto"> | 
 | 3713 |   <xsl:choose> | 
 | 3714 |     <xsl:when test="sidebarinfo/title"> | 
 | 3715 |       <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="sidebarinfo/title"/> | 
 | 3716 |     </xsl:when> | 
 | 3717 |     <xsl:when test="docinfo/title"> | 
 | 3718 |       <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="docinfo/title"/> | 
 | 3719 |     </xsl:when> | 
 | 3720 |     <xsl:when test="info/title"> | 
 | 3721 |       <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="info/title"/> | 
 | 3722 |     </xsl:when> | 
 | 3723 |     <xsl:when test="title"> | 
 | 3724 |       <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="title"/> | 
 | 3725 |     </xsl:when> | 
 | 3726 |   </xsl:choose> | 
 | 3727 |  | 
 | 3728 |   <xsl:choose> | 
 | 3729 |     <xsl:when test="sidebarinfo/subtitle"> | 
 | 3730 |       <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="sidebarinfo/subtitle"/> | 
 | 3731 |     </xsl:when> | 
 | 3732 |     <xsl:when test="docinfo/subtitle"> | 
 | 3733 |       <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="docinfo/subtitle"/> | 
 | 3734 |     </xsl:when> | 
 | 3735 |     <xsl:when test="info/subtitle"> | 
 | 3736 |       <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="info/subtitle"/> | 
 | 3737 |     </xsl:when> | 
 | 3738 |     <xsl:when test="subtitle"> | 
 | 3739 |       <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="subtitle"/> | 
 | 3740 |     </xsl:when> | 
 | 3741 |   </xsl:choose> | 
 | 3742 |  | 
 | 3743 | </xsl:template> | 
 | 3744 |  | 
 | 3745 | <xsl:template name="sidebar.titlepage.verso"> | 
 | 3746 | </xsl:template> | 
 | 3747 |  | 
 | 3748 | <xsl:template name="sidebar.titlepage.separator"> | 
 | 3749 | </xsl:template> | 
 | 3750 |  | 
 | 3751 | <xsl:template name="sidebar.titlepage.before.recto"> | 
 | 3752 | </xsl:template> | 
 | 3753 |  | 
 | 3754 | <xsl:template name="sidebar.titlepage.before.verso"> | 
 | 3755 | </xsl:template> | 
 | 3756 |  | 
 | 3757 | <xsl:template name="sidebar.titlepage"> | 
 | 3758 |   <div class="titlepage"> | 
 | 3759 |     <xsl:variable name="recto.content"> | 
 | 3760 |       <xsl:call-template name="sidebar.titlepage.before.recto"/> | 
 | 3761 |       <xsl:call-template name="sidebar.titlepage.recto"/> | 
 | 3762 |     </xsl:variable> | 
 | 3763 |     <xsl:variable name="recto.elements.count"> | 
 | 3764 |       <xsl:choose> | 
 | 3765 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 3766 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 3767 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> | 
 | 3768 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 3769 |       </xsl:choose> | 
 | 3770 |     </xsl:variable> | 
 | 3771 |     <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> | 
 | 3772 |       <div><xsl:copy-of select="$recto.content"/></div> | 
 | 3773 |     </xsl:if> | 
 | 3774 |     <xsl:variable name="verso.content"> | 
 | 3775 |       <xsl:call-template name="sidebar.titlepage.before.verso"/> | 
 | 3776 |       <xsl:call-template name="sidebar.titlepage.verso"/> | 
 | 3777 |     </xsl:variable> | 
 | 3778 |     <xsl:variable name="verso.elements.count"> | 
 | 3779 |       <xsl:choose> | 
 | 3780 |         <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 3781 |         <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> | 
 | 3782 |           <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> | 
 | 3783 |         <xsl:otherwise>1</xsl:otherwise> | 
 | 3784 |       </xsl:choose> | 
 | 3785 |     </xsl:variable> | 
 | 3786 |     <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> | 
 | 3787 |       <div><xsl:copy-of select="$verso.content"/></div> | 
 | 3788 |     </xsl:if> | 
 | 3789 |     <xsl:call-template name="sidebar.titlepage.separator"/> | 
 | 3790 |   </div> | 
 | 3791 | </xsl:template> | 
 | 3792 |  | 
 | 3793 | <xsl:template match="*" mode="sidebar.titlepage.recto.mode"> | 
 | 3794 |   <!-- if an element isn't found in this mode, --> | 
 | 3795 |   <!-- try the generic titlepage.mode --> | 
 | 3796 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 3797 | </xsl:template> | 
 | 3798 |  | 
 | 3799 | <xsl:template match="*" mode="sidebar.titlepage.verso.mode"> | 
 | 3800 |   <!-- if an element isn't found in this mode, --> | 
 | 3801 |   <!-- try the generic titlepage.mode --> | 
 | 3802 |   <xsl:apply-templates select="." mode="titlepage.mode"/> | 
 | 3803 | </xsl:template> | 
 | 3804 |  | 
 | 3805 | <xsl:template match="title" mode="sidebar.titlepage.recto.auto.mode"> | 
 | 3806 | <div xsl:use-attribute-sets="sidebar.titlepage.recto.style"> | 
 | 3807 | <xsl:call-template name="formal.object.heading"> | 
 | 3808 | <xsl:with-param name="object" select="ancestor-or-self::sidebar[1]"/> | 
 | 3809 | </xsl:call-template> | 
 | 3810 | </div> | 
 | 3811 | </xsl:template> | 
 | 3812 |  | 
 | 3813 | <xsl:template match="subtitle" mode="sidebar.titlepage.recto.auto.mode"> | 
 | 3814 | <div xsl:use-attribute-sets="sidebar.titlepage.recto.style"> | 
 | 3815 | <xsl:apply-templates select="." mode="sidebar.titlepage.recto.mode"/> | 
 | 3816 | </div> | 
 | 3817 | </xsl:template> | 
 | 3818 |  | 
 | 3819 | </xsl:stylesheet> | 
 | 3820 |  |