juddi-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ks...@apache.org
Subject svn commit: r908784 [6/8] - in /webservices/juddi/styles: ./ docbook/ docbook/juddi-docbook-style/ docbook/juddi-docbook-style/src/ docbook/juddi-docbook-style/src/main/ docbook/juddi-docbook-style/src/main/css/ docbook/juddi-docbook-style/src/main/css...
Date Thu, 11 Feb 2010 01:36:45 GMT
Added: webservices/juddi/styles/docbook/juddi-docbook-xslt/src/main/resources/xslt/org/apache/juddi/pdf.xsl
URL: http://svn.apache.org/viewvc/webservices/juddi/styles/docbook/juddi-docbook-xslt/src/main/resources/xslt/org/apache/juddi/pdf.xsl?rev=908784&view=auto
==============================================================================
--- webservices/juddi/styles/docbook/juddi-docbook-xslt/src/main/resources/xslt/org/apache/juddi/pdf.xsl (added)
+++ webservices/juddi/styles/docbook/juddi-docbook-xslt/src/main/resources/xslt/org/apache/juddi/pdf.xsl Thu Feb 11 01:36:39 2010
@@ -0,0 +1,1597 @@
+<?xml version='1.0'?>
+<!--
+ * Copyright 2001-2009 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+ Note based on the jbossorg-docbook project.
+-->
+<!DOCTYPE xsl:stylesheet [
+<!ENTITY lowercase "'abcdefghijklmnopqrstuvwxyz'">
+<!ENTITY uppercase "'ABCDEFGHIJKLMNOPQRSTUVWXYZ'">
+ ]>
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+		        version="1.0"
+		        xmlns="http://www.w3.org/TR/xhtml1/transitional"
+		        xmlns:fo="http://www.w3.org/1999/XSL/Format"
+                xmlns:jbh="java:org.jboss.highlight.renderer.FORenderer"
+		        exclude-result-prefixes="jbh">
+
+<xsl:import href="http://docbook.sourceforge.net/release/xsl/1.72.0/fo/docbook.xsl"/>
+
+<xsl:import href="common.xsl" />
+
+<xsl:param name="alignment">justify</xsl:param>
+<xsl:param name="fop.extensions" select="1"/>
+<xsl:param name="fop1.extensions" select="0"/>
+<xsl:param name="img.src.path"/>
+<xsl:param name="qandadiv.autolabel" select="0"/>
+
+<xsl:param name="hyphenation-character">-</xsl:param>
+<!--xsl:param name="hyphenate.verbatim" select="0"/-->
+<xsl:param name="hyphenate">true</xsl:param>
+<!--xsl:param name="ulink.hyphenate" select="1"/-->
+
+<xsl:param name="line-height" select="1.5"/>
+
+   <!-- Callouts -->
+   <!-- Place callout bullets at this column in programlisting.-->
+   <xsl:param name="callout.defaultcolumn">80</xsl:param>
+   <xsl:param name="callout.icon.size">10pt</xsl:param>
+
+  <!-- Admonitions -->
+  <xsl:param name="admon.graphics.extension" select="'.svg'"/>
+
+<xsl:attribute-set name="admonition.title.properties">
+  <xsl:attribute name="font-size">13pt</xsl:attribute>
+  <xsl:attribute name="color">
+  <xsl:choose>
+    <xsl:when test="self::note">#4C5253</xsl:when>
+    <xsl:when test="self::caution">#533500</xsl:when>
+    <xsl:when test="self::important">white</xsl:when>
+    <xsl:when test="self::warning">white</xsl:when>
+    <xsl:when test="self::tip">white</xsl:when>
+    <xsl:otherwise>white</xsl:otherwise>
+  </xsl:choose>
+        </xsl:attribute>
+
+  <xsl:attribute name="font-weight">bold</xsl:attribute>
+  <xsl:attribute name="hyphenate">false</xsl:attribute>
+  <xsl:attribute name="keep-with-next.within-column">always</xsl:attribute>
+
+</xsl:attribute-set>
+
+<xsl:attribute-set name="graphical.admonition.properties">
+
+  <xsl:attribute name="color">
+  <xsl:choose>
+    <xsl:when test="self::note">#4C5253</xsl:when>
+    <xsl:when test="self::caution">#533500</xsl:when>
+    <xsl:when test="self::important">white</xsl:when>
+    <xsl:when test="self::warning">white</xsl:when>
+    <xsl:when test="self::tip">white</xsl:when>
+    <xsl:otherwise>white</xsl:otherwise>
+  </xsl:choose>
+        </xsl:attribute>
+  <xsl:attribute name="background-color">
+      <xsl:choose>
+    <xsl:when test="self::note">#B5BCBD</xsl:when>
+    <xsl:when test="self::caution">#E3A835</xsl:when>
+    <xsl:when test="self::important">#4A5D75</xsl:when>
+    <xsl:when test="self::warning">#7B1E1E</xsl:when>
+    <xsl:when test="self::tip">#7E917F</xsl:when>
+    <xsl:otherwise>#404040</xsl:otherwise>
+      </xsl:choose>
+        </xsl:attribute>
+
+  <xsl:attribute name="space-before.optimum">1em</xsl:attribute>
+  <xsl:attribute name="space-before.minimum">0.8em</xsl:attribute>
+  <xsl:attribute name="space-before.maximum">1.2em</xsl:attribute>
+  <xsl:attribute name="space-after.optimum">1em</xsl:attribute>
+  <xsl:attribute name="space-after.minimum">0.8em</xsl:attribute>
+  <xsl:attribute name="space-after.maximum">1em</xsl:attribute>
+  <xsl:attribute name="padding-bottom">12pt</xsl:attribute>
+  <xsl:attribute name="padding-top">12pt</xsl:attribute>
+  <xsl:attribute name="padding-right">12pt</xsl:attribute>
+  <xsl:attribute name="padding-left">12pt</xsl:attribute>
+  <xsl:attribute name="margin-left">
+    <xsl:value-of select="$title.margin.left"/>
+  </xsl:attribute>
+</xsl:attribute-set>
+
+   <xsl:param name="programlisting.font" select="'verdana,helvetica,sans-serif'" />
+   <xsl:param name="programlisting.font.size" select="'100%'" />
+   
+   <!-- Change to monospace font for programlisting, needed to workaround crappy callouts -->
+   <!-- <xsl:param name="programlisting.font" select="$monospace.font.family" /> -->
+   <!-- Make the font for programlisting slightly smaller -->
+   <!-- <xsl:param name="programlisting.font.size" select="'75%'" /> -->
+
+  <!-- Make the section depth in the TOC 2, same as html -->
+  <xsl:param name="toc.section.depth">2</xsl:param>
+
+   <!-- Now, set enable scalefit for large images -->
+   <xsl:param name="graphicsize.extension" select="'1'" />
+   <xsl:param name="default.image.width">17.4cm</xsl:param>
+   
+<!-- 
+From: fo/callout.xsl
+Version: 1.73.2
+Reason: This includes the callout.icon.size attribute for SVGs, we also add padding to the graphics
+        (We can probably get rid of this if we upgrade to DocBook Stylesheets 1.73.2)
+ -->
+ <xsl:template name="callout-bug">
+  <xsl:param name="conum" select='1'/>
+
+  <xsl:choose>
+    <!-- Draw callouts as images -->
+    <xsl:when test="$callout.graphics != '0'
+                    and $conum &lt;= $callout.graphics.number.limit">
+      <xsl:variable name="filename"
+                    select="concat($callout.graphics.path, $conum,
+                                   $callout.graphics.extension)"/>
+
+      <fo:external-graphic content-width="{$callout.icon.size}"
+                           width="{$callout.icon.size}" padding="0.0em" margin="0.0em">
+        <xsl:attribute name="src">
+          <xsl:choose>
+            <xsl:when test="$passivetex.extensions != 0
+                            or $fop.extensions != 0
+                            or $arbortext.extensions != 0">
+              <xsl:value-of select="$filename"/>
+            </xsl:when>
+            <xsl:otherwise>
+              <xsl:text>url(</xsl:text>
+              <xsl:value-of select="$filename"/>
+              <xsl:text>)</xsl:text>
+            </xsl:otherwise>
+          </xsl:choose>
+        </xsl:attribute>
+      </fo:external-graphic>
+    </xsl:when>
+
+    <xsl:when test="$callout.unicode != 0
+                    and $conum &lt;= $callout.unicode.number.limit">
+      <xsl:variable name="comarkup">
+        <xsl:choose>
+          <xsl:when test="$callout.unicode.start.character = 10102">
+            <xsl:choose>
+              <xsl:when test="$conum = 1">&#10102;</xsl:when>
+              <xsl:when test="$conum = 2">&#10103;</xsl:when>
+              <xsl:when test="$conum = 3">&#10104;</xsl:when>
+              <xsl:when test="$conum = 4">&#10105;</xsl:when>
+              <xsl:when test="$conum = 5">&#10106;</xsl:when>
+              <xsl:when test="$conum = 6">&#10107;</xsl:when>
+              <xsl:when test="$conum = 7">&#10108;</xsl:when>
+              <xsl:when test="$conum = 8">&#10109;</xsl:when>
+              <xsl:when test="$conum = 9">&#10110;</xsl:when>
+              <xsl:when test="$conum = 10">&#10111;</xsl:when>
+            </xsl:choose>
+          </xsl:when>
+          <xsl:otherwise>
+            <xsl:message>
+              <xsl:text>Don't know how to generate Unicode callouts </xsl:text>
+              <xsl:text>when $callout.unicode.start.character is </xsl:text>
+              <xsl:value-of select="$callout.unicode.start.character"/>
+            </xsl:message>
+            <fo:inline background-color="#404040"
+                       color="white"
+                       padding-top="0.1em"
+                       padding-bottom="0.1em"
+                       padding-start="0.2em"
+                       padding-end="0.2em"
+                       baseline-shift="0.1em"
+                       font-family="{$body.fontset}"
+                       font-weight="bold"
+                       font-size="75%">
+              <xsl:value-of select="$conum"/>
+            </fo:inline>
+          </xsl:otherwise>
+        </xsl:choose>
+      </xsl:variable>
+
+      <xsl:choose>
+        <xsl:when test="$callout.unicode.font != ''">
+          <fo:inline font-family="{$callout.unicode.font}">
+            <xsl:copy-of select="$comarkup"/>
+          </fo:inline>
+        </xsl:when>
+        <xsl:otherwise>
+          <xsl:copy-of select="$comarkup"/>
+        </xsl:otherwise>
+      </xsl:choose>
+    </xsl:when>
+
+    <!-- Most safe: draw a dark gray square with a white number inside -->
+    <xsl:otherwise>
+      <fo:inline background-color="#404040"
+                 color="white"
+                 padding-top="0.1em"
+                 padding-bottom="0.1em"
+                 padding-start="0.2em"
+                 padding-end="0.2em"
+                 baseline-shift="0.1em"
+                 font-family="{$body.fontset}"
+                 font-weight="bold"
+                 font-size="75%">
+        <xsl:value-of select="$conum"/>
+      </fo:inline>
+    </xsl:otherwise>
+  </xsl:choose>
+</xsl:template>   
+
+<xsl:attribute-set name="xref.properties">
+  <xsl:attribute name="font-style">italic</xsl:attribute>
+  <xsl:attribute name="color">
+	<xsl:choose>
+		<xsl:when test="ancestor::note or ancestor::caution or ancestor::important or ancestor::warning or ancestor::tip">
+			<xsl:text>#aee6ff</xsl:text>
+		</xsl:when>
+		<xsl:otherwise>
+			<xsl:text>#0066cc</xsl:text>
+		</xsl:otherwise>
+	</xsl:choose>
+  </xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="monospace.properties">
+	<xsl:attribute name="font-size">9pt</xsl:attribute>
+	<xsl:attribute name="font-family">
+		<xsl:value-of select="$monospace.font.family"/>
+	</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="monospace.verbatim.properties" use-attribute-sets="verbatim.properties monospace.properties">
+	<xsl:attribute name="text-align">start</xsl:attribute>
+	<xsl:attribute name="wrap-option">wrap</xsl:attribute>
+	<xsl:attribute name="hyphenation-character">&#x25BA;</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:param name="shade.verbatim" select="1"/>
+<xsl:attribute-set name="shade.verbatim.style">
+  <xsl:attribute name="wrap-option">wrap</xsl:attribute>
+  <xsl:attribute name="background-color">
+	<xsl:choose>
+		<xsl:when test="ancestor::note"> <xsl:text>#B5BCBD</xsl:text> </xsl:when>
+		<xsl:when test="ancestor::caution"> <xsl:text>#E3A835</xsl:text> </xsl:when>
+		<xsl:when test="ancestor::important"> <xsl:text>#4A5D75</xsl:text> </xsl:when>
+		<xsl:when test="ancestor::warning"> <xsl:text>#7B1E1E</xsl:text> </xsl:when>
+		<xsl:when test="ancestor::tip"> <xsl:text>#7E917F</xsl:text> </xsl:when>
+		<xsl:otherwise>
+			<xsl:text>black</xsl:text>
+		</xsl:otherwise>
+	</xsl:choose>
+  </xsl:attribute>
+  <xsl:attribute name="color">
+	<xsl:choose>
+		<xsl:when test="ancestor::note"> <xsl:text>#4C5253</xsl:text> </xsl:when>
+		<xsl:when test="ancestor::caution"> <xsl:text>#533500</xsl:text> </xsl:when>
+		<xsl:when test="ancestor::important"> <xsl:text>white</xsl:text> </xsl:when>
+		<xsl:when test="ancestor::warning"> <xsl:text>white</xsl:text> </xsl:when>
+		<xsl:when test="ancestor::tip"> <xsl:text>white</xsl:text> </xsl:when>
+		<xsl:otherwise>
+			<xsl:text>red</xsl:text>
+		</xsl:otherwise>
+	</xsl:choose>
+  </xsl:attribute>
+	<xsl:attribute name="padding-left">12pt</xsl:attribute>
+	<xsl:attribute name="padding-right">12pt</xsl:attribute>
+	<xsl:attribute name="padding-top">6pt</xsl:attribute>
+	<xsl:attribute name="padding-bottom">6pt</xsl:attribute>
+	<xsl:attribute name="margin-left">
+		<xsl:value-of select="$title.margin.left"/>
+	</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="verbatim.properties">
+  <xsl:attribute name="space-before.minimum">0.8em</xsl:attribute>
+  <xsl:attribute name="space-before.optimum">1em</xsl:attribute>
+  <xsl:attribute name="space-before.maximum">1.2em</xsl:attribute>
+  <xsl:attribute name="space-after.minimum">0.8em</xsl:attribute>
+  <xsl:attribute name="space-after.optimum">1em</xsl:attribute>
+  <xsl:attribute name="space-after.maximum">1.2em</xsl:attribute>
+  <xsl:attribute name="hyphenate">false</xsl:attribute>
+  <xsl:attribute name="wrap-option">wrap</xsl:attribute>
+  <xsl:attribute name="white-space-collapse">false</xsl:attribute>
+  <xsl:attribute name="white-space-treatment">preserve</xsl:attribute>
+  <xsl:attribute name="linefeed-treatment">preserve</xsl:attribute>
+  <xsl:attribute name="text-align">start</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:param name="generate.toc">
+set toc
+book toc
+article toc
+</xsl:param>
+
+   <!--###################################################
+      Custom TOC (bold chapter titles)
+      ################################################### -->
+
+   <!-- Improve the TOC. -->
+   <xsl:template name="toc.line">
+      <xsl:variable name="id">
+         <xsl:call-template name="object.id" />
+      </xsl:variable>
+
+      <xsl:variable name="label">
+         <xsl:apply-templates select="." mode="label.markup" />
+      </xsl:variable>
+
+      <fo:block text-align-last="justify" end-indent="{$toc.indent.width}pt"
+         last-line-end-indent="-{$toc.indent.width}pt">
+         <fo:inline keep-with-next.within-line="always">
+            <fo:basic-link internal-destination="{$id}">
+
+               <!-- Chapter titles should be bold. -->
+               <xsl:choose>
+                  <xsl:when test="local-name(.) = 'chapter'">
+                     <xsl:attribute name="font-weight">bold</xsl:attribute>
+                  </xsl:when>
+               </xsl:choose>
+
+               <xsl:if test="$label != ''">
+                  <xsl:copy-of select="$label" />
+                  <xsl:value-of select="$autotoc.label.separator" />
+               </xsl:if>
+               <xsl:apply-templates select="." mode="titleabbrev.markup" />
+            </fo:basic-link>
+         </fo:inline>
+         <fo:inline keep-together.within-line="always">
+            <xsl:text> </xsl:text>
+            <fo:leader leader-pattern="dots" leader-pattern-width="3pt"
+               leader-alignment="reference-area"
+               keep-with-next.within-line="always" />
+            <xsl:text> </xsl:text>
+            <fo:basic-link internal-destination="{$id}">
+               <fo:page-number-citation ref-id="{$id}" />
+            </fo:basic-link>
+         </fo:inline>
+      </fo:block>
+   </xsl:template>
+
+<!-- Format Variable Lists as Blocks (prevents horizontal overflow). -->
+<xsl:param name="variablelist.as.blocks">1</xsl:param>
+
+<!-- The horrible list spacing problems, this is much better. -->
+<xsl:attribute-set name="list.block.spacing">
+	<xsl:attribute name="space-before.optimum">2em</xsl:attribute>
+	<xsl:attribute name="space-before.minimum">1em</xsl:attribute>
+	<xsl:attribute name="space-before.maximum">3em</xsl:attribute>
+	<xsl:attribute name="space-after.optimum">0.1em</xsl:attribute>
+	<xsl:attribute name="space-after.minimum">0.1em</xsl:attribute>
+	<xsl:attribute name="space-after.maximum">0.1em</xsl:attribute>
+</xsl:attribute-set>
+
+<!-- Some padding inside tables -->
+<xsl:attribute-set name="table.cell.padding">
+<xsl:attribute name="padding-left">4pt</xsl:attribute>
+<xsl:attribute name="padding-right">4pt</xsl:attribute>
+<xsl:attribute name="padding-top">2pt</xsl:attribute>
+<xsl:attribute name="padding-bottom">2pt</xsl:attribute>
+</xsl:attribute-set>
+
+<!-- Only hairlines as frame and cell borders in tables -->
+<xsl:param name="table.frame.border.thickness">0.3pt</xsl:param>
+<xsl:param name="table.cell.border.thickness">0.15pt</xsl:param>
+<xsl:param name="table.cell.border.color">#5c5c4f</xsl:param>
+<xsl:param name="table.frame.border.color">#5c5c4f</xsl:param>
+<xsl:param name="table.cell.border.right.color">white</xsl:param>
+<xsl:param name="table.cell.border.left.color">white</xsl:param>
+<xsl:param name="table.frame.border.right.color">white</xsl:param>
+<xsl:param name="table.frame.border.left.color">white</xsl:param>
+<!-- Paper type, no headers on blank pages, no double sided printing -->
+<xsl:param name="paper.type" select="'A4'"/>
+<xsl:param name="double.sided">1</xsl:param>
+<xsl:param name="headers.on.blank.pages">1</xsl:param>
+<xsl:param name="footers.on.blank.pages">1</xsl:param>
+<!--xsl:param name="header.column.widths" select="'1 4 1'"/-->
+<xsl:param name="header.column.widths" select="'1 0 1'"/>
+<xsl:param name="footer.column.widths" select="'1 1 1'"/>
+<xsl:param name="header.rule" select="1"/>
+
+<!-- Space between paper border and content (chaotic stuff, don't touch) -->
+<xsl:param name="page.margin.top">15mm</xsl:param>
+<xsl:param name="region.before.extent">10mm</xsl:param>
+<xsl:param name="body.margin.top">15mm</xsl:param>
+
+<xsl:param name="body.margin.bottom">15mm</xsl:param>
+<xsl:param name="region.after.extent">10mm</xsl:param>
+<xsl:param name="page.margin.bottom">15mm</xsl:param>
+
+<xsl:param name="page.margin.outer">30mm</xsl:param>
+<xsl:param name="page.margin.inner">30mm</xsl:param>
+
+<!-- No intendation of Titles -->
+<xsl:param name="body.start.indent">0pt</xsl:param>
+
+<xsl:param name="title.color">#4a5d75</xsl:param>
+<xsl:param name="chapter.title.color" select="$title.color" />
+<xsl:param name="section.title.color" select="$title.color" />
+
+<xsl:attribute-set name="section.title.level1.properties">
+	<xsl:attribute name="color"><xsl:value-of select="$section.title.color"/></xsl:attribute>
+	<xsl:attribute name="font-size">
+		<xsl:value-of select="$body.font.master * 1.6"/>
+		<xsl:text>pt</xsl:text>
+	</xsl:attribute>
+</xsl:attribute-set>
+<xsl:attribute-set name="section.title.level2.properties">
+	<xsl:attribute name="color"><xsl:value-of select="$section.title.color"/></xsl:attribute>
+	<xsl:attribute name="font-size">
+		<xsl:value-of select="$body.font.master * 1.4"/>
+		<xsl:text>pt</xsl:text>
+	</xsl:attribute>
+</xsl:attribute-set>
+<xsl:attribute-set name="section.title.level3.properties">
+	<xsl:attribute name="color"><xsl:value-of select="$section.title.color"/></xsl:attribute>
+	<xsl:attribute name="font-size">
+		<xsl:value-of select="$body.font.master * 1.3"/>
+		<xsl:text>pt</xsl:text>
+	</xsl:attribute>
+</xsl:attribute-set>
+<xsl:attribute-set name="section.title.level4.properties">
+	<xsl:attribute name="color"><xsl:value-of select="$section.title.color"/></xsl:attribute>
+	<xsl:attribute name="font-size">
+		<xsl:value-of select="$body.font.master * 1.2"/>
+		<xsl:text>pt</xsl:text>
+	</xsl:attribute>
+</xsl:attribute-set>
+<xsl:attribute-set name="section.title.level5.properties">
+	<xsl:attribute name="color"><xsl:value-of select="$section.title.color"/></xsl:attribute>
+	<xsl:attribute name="font-size">
+		<xsl:value-of select="$body.font.master * 1.1"/>
+		<xsl:text>pt</xsl:text>
+	</xsl:attribute>
+</xsl:attribute-set>
+<xsl:attribute-set name="section.title.level6.properties">
+	<xsl:attribute name="color"><xsl:value-of select="$section.title.color"/></xsl:attribute>
+	<xsl:attribute name="font-size">
+		<xsl:value-of select="$body.font.master"/>
+		<xsl:text>pt</xsl:text>
+	</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="section.title.properties">
+	<xsl:attribute name="font-family">
+		<xsl:value-of select="$title.font.family"/>
+	</xsl:attribute>
+	<xsl:attribute name="font-weight">bold</xsl:attribute>
+	<!-- font size is calculated dynamically by section.heading template -->
+	<xsl:attribute name="keep-with-next.within-column">always</xsl:attribute>
+	<xsl:attribute name="space-before.minimum">0.8em</xsl:attribute>
+	<xsl:attribute name="space-before.optimum">1.0em</xsl:attribute>
+	<xsl:attribute name="space-before.maximum">1.2em</xsl:attribute>
+	<xsl:attribute name="text-align">left</xsl:attribute>
+	<xsl:attribute name="start-indent"><xsl:value-of select="$title.margin.left"/></xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:param name="titlepage.color" select="$title.color"/>
+
+<xsl:attribute-set name="book.titlepage.recto.style">
+	<xsl:attribute name="font-family">
+		<xsl:value-of select="$title.fontset"/>
+	</xsl:attribute>
+	<xsl:attribute name="color"><xsl:value-of select="$titlepage.color"/></xsl:attribute>
+	<xsl:attribute name="font-weight">bold</xsl:attribute>
+	<xsl:attribute name="font-size">12pt</xsl:attribute>
+	<xsl:attribute name="text-align">center</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="component.title.properties">
+	<xsl:attribute name="keep-with-next.within-column">always</xsl:attribute>
+	<xsl:attribute name="space-before.optimum"><xsl:value-of select="concat($body.font.master, 'pt')"/></xsl:attribute>
+	<xsl:attribute name="space-before.minimum"><xsl:value-of select="concat($body.font.master, 'pt')"/></xsl:attribute>
+	<xsl:attribute name="space-before.maximum"><xsl:value-of select="concat($body.font.master, 'pt')"/></xsl:attribute>
+	<xsl:attribute name="hyphenate">false</xsl:attribute>
+	<xsl:attribute name="color">
+		<xsl:choose>
+			<xsl:when test="not(parent::chapter | parent::article | parent::appendix)"><xsl:value-of select="$title.color"/></xsl:when>
+		</xsl:choose>
+	</xsl:attribute>
+	<xsl:attribute name="text-align">
+		<xsl:choose>
+			<xsl:when test="((parent::article | parent::articleinfo) and not(ancestor::book) and not(self::bibliography))				 or (parent::slides | parent::slidesinfo)">center</xsl:when>
+			<xsl:otherwise>left</xsl:otherwise>
+		</xsl:choose>
+	</xsl:attribute>
+	<xsl:attribute name="start-indent"><xsl:value-of select="$title.margin.left"/></xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="chapter.titlepage.recto.style">
+	<xsl:attribute name="color"><xsl:value-of select="$chapter.title.color"/></xsl:attribute>
+	<xsl:attribute name="background-color">white</xsl:attribute>
+	<xsl:attribute name="font-size">
+		<xsl:choose>
+			<xsl:when test="$l10n.gentext.language = 'ja-JP'">
+				<xsl:value-of select="$body.font.master * 1.7"/>
+				<xsl:text>pt</xsl:text>
+			</xsl:when>
+			<xsl:otherwise>
+				<xsl:text>24pt</xsl:text>
+			</xsl:otherwise>
+		</xsl:choose>
+	</xsl:attribute>
+	<xsl:attribute name="font-weight">bold</xsl:attribute>
+	<xsl:attribute name="text-align">left</xsl:attribute>
+	<!--xsl:attribute name="wrap-option">no-wrap</xsl:attribute-->
+	<xsl:attribute name="padding-left">1em</xsl:attribute>
+	<xsl:attribute name="padding-right">1em</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="preface.titlepage.recto.style">
+	<xsl:attribute name="font-family">
+		<xsl:value-of select="$title.fontset"/>
+	</xsl:attribute>
+	<xsl:attribute name="color">#4a5d75</xsl:attribute>
+	<xsl:attribute name="font-size">12pt</xsl:attribute>
+	<xsl:attribute name="font-weight">bold</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="part.titlepage.recto.style">
+  <xsl:attribute name="color"><xsl:value-of select="$title.color"/></xsl:attribute>
+  <xsl:attribute name="text-align">center</xsl:attribute>
+</xsl:attribute-set>
+
+
+<!--
+From: fo/table.xsl
+Reason: Table Header format
+Version:1.72
+-->
+<xsl:template name="table.cell.block.properties">
+  <!-- highlight this entry? -->
+  <xsl:if test="ancestor::thead or ancestor::tfoot">
+    <xsl:attribute name="font-weight">bold</xsl:attribute>
+	<xsl:attribute name="background-color">#4a5d75</xsl:attribute>
+	<xsl:attribute name="color">white</xsl:attribute>
+  </xsl:if>
+</xsl:template>
+
+<!--
+From: fo/table.xsl
+Reason: Table Header format
+Version:1.72
+-->
+<!-- customize this template to add row properties -->
+<xsl:template name="table.row.properties">
+  <xsl:variable name="bgcolor">
+    <xsl:call-template name="dbfo-attribute">
+      <xsl:with-param name="pis" select="processing-instruction('dbfo')"/>
+      <xsl:with-param name="attribute" select="'bgcolor'"/>
+    </xsl:call-template>
+  </xsl:variable>
+  <xsl:if test="$bgcolor != ''">
+    <xsl:attribute name="background-color">
+      <xsl:value-of select="$bgcolor"/>
+    </xsl:attribute>
+  </xsl:if>
+  <xsl:if test="ancestor::thead or ancestor::tfoot">
+	<xsl:attribute name="background-color">#4a5d75</xsl:attribute>
+  </xsl:if>
+</xsl:template>
+
+<!--
+From: fo/titlepage.templates.xsl
+Reason: Switch to using chapter.titlepage.recto.style
+Version:1.72
+-->
+<xsl:template match="title" mode="appendix.titlepage.recto.auto.mode">
+<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="chapter.titlepage.recto.style">
+<xsl:call-template name="component.title.nomarkup">
+<xsl:with-param name="node" select="ancestor-or-self::appendix[1]"/>
+</xsl:call-template>
+</fo:block>
+</xsl:template>
+
+<!--
+From: fo/titlepage.templates.xsl
+Reason: Remove font size and weight overrides
+Version:1.72
+-->
+<xsl:template match="title" mode="chapter.titlepage.recto.auto.mode">
+<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="chapter.titlepage.recto.style">
+<xsl:value-of select="."/>
+</fo:block>
+</xsl:template>
+
+<!--
+From: fo/titlepage.templates.xsl
+Reason: Remove font family, size and weight overrides
+Version:1.72
+-->
+<xsl:template name="preface.titlepage.recto">
+	<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style" margin-left="{$title.margin.left}">
+<xsl:call-template name="component.title.nomarkup">
+<xsl:with-param name="node" select="ancestor-or-self::preface[1]"/>
+</xsl:call-template></fo:block>
+	<xsl:choose>
+		<xsl:when test="prefaceinfo/subtitle">
+			<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/subtitle"/>
+		</xsl:when>
+		<xsl:when test="docinfo/subtitle">
+			<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
+		</xsl:when>
+		<xsl:when test="info/subtitle">
+			<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/subtitle"/>
+		</xsl:when>
+		<xsl:when test="subtitle">
+			<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="subtitle"/>
+		</xsl:when>
+	</xsl:choose>
+
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/corpauthor"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/corpauthor"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/corpauthor"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/authorgroup"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/authorgroup"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/authorgroup"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/author"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/author"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/author"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/othercredit"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/othercredit"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/othercredit"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/releaseinfo"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/releaseinfo"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/copyright"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/copyright"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/copyright"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/legalnotice"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/legalnotice"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/legalnotice"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/pubdate"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/pubdate"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/pubdate"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/revision"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/revision"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/revision"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/revhistory"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/revhistory"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/revhistory"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/abstract"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/abstract"/>
+	<xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/abstract"/>
+</xsl:template>
+
+
+<xsl:template name="pickfont-sans">
+	<xsl:variable name="font">
+		<xsl:choose>
+			<xsl:when test="$l10n.gentext.language = 'ja-JP'">
+				<xsl:text>KochiMincho,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'ko-KR'">
+				<xsl:text>BaekmukBatang,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'zh-CN'">
+				<xsl:text>ARPLKaitiMGB,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'bn-IN'">
+				<xsl:text>LohitBengali,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'ta-IN'">
+				<xsl:text>LohitTamil,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'pa-IN'">
+				<xsl:text>LohitPunjabi,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'hi-IN'">
+				<xsl:text>LohitHindi,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'gu-IN'">
+				<xsl:text>LohitGujarati,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'zh-TW'">
+				<xsl:text>ARPLMingti2LBig5,</xsl:text>
+			</xsl:when>
+		</xsl:choose>
+	</xsl:variable>
+	<xsl:choose>
+		<xsl:when test="$fop1.extensions != 0">
+		  <xsl:copy-of select="$font"/><xsl:text>DejaVuLGCSans,sans-serif</xsl:text>
+		</xsl:when>
+		<xsl:otherwise>
+		  <xsl:copy-of select="$font"/><xsl:text>sans-serif</xsl:text>
+		</xsl:otherwise>
+	</xsl:choose>
+</xsl:template>
+
+<xsl:template name="pickfont-serif">
+	<xsl:variable name="font">
+		<xsl:choose>
+			<xsl:when test="$l10n.gentext.language = 'ja-JP'">
+				<xsl:text>KochiMincho,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'ko-KR'">
+				<xsl:text>BaekmukBatang,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'zh-CN'">
+				<xsl:text>ARPLKaitiMGB,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'bn-IN'">
+				<xsl:text>LohitBengali,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'ta-IN'">
+				<xsl:text>LohitTamil,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'pa-IN'">
+				<xsl:text>LohitPunjabi,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'hi-IN'">
+				<xsl:text>LohitHindi,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'gu-IN'">
+				<xsl:text>LohitGujarati,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'zh-TW'">
+				<xsl:text>ARPLMingti2LBig5,</xsl:text>
+			</xsl:when>
+		</xsl:choose>
+	</xsl:variable>
+	<xsl:choose>
+		<xsl:when test="$fop1.extensions != 0">
+		  <xsl:copy-of select="$font"/><xsl:text>DejaVuLGCSans,serif</xsl:text>
+		</xsl:when>
+		<xsl:otherwise>
+		  <xsl:copy-of select="$font"/><xsl:text>serif</xsl:text>
+		</xsl:otherwise>
+	</xsl:choose>
+</xsl:template>
+
+<xsl:template name="pickfont-mono">
+	<xsl:variable name="font">
+		<xsl:choose>
+			<xsl:when test="$l10n.gentext.language = 'ja-JP'">
+				<xsl:text>KochiMincho,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'ko-KR'">
+				<xsl:text>BaekmukBatang,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'zh-CN'">
+				<xsl:text>ARPLKaitiMGB,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'bn-IN'">
+				<xsl:text>LohitBengali,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'ta-IN'">
+				<xsl:text>LohitTamil,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'pa-IN'">
+				<xsl:text>LohitPunjabi,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'hi-IN'">
+				<xsl:text>LohitHindi,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'gu-IN'">
+				<xsl:text>LohitGujarati,</xsl:text>
+			</xsl:when>
+			<xsl:when test="$l10n.gentext.language = 'zh-TW'">
+				<xsl:text>ARPLMingti2LBig5,</xsl:text>
+			</xsl:when>
+		</xsl:choose>
+	</xsl:variable>
+	<xsl:choose>
+		<xsl:when test="$fop1.extensions != 0">
+		  <xsl:copy-of select="$font"/><xsl:text>DejaVuLGCSans,monospace</xsl:text>
+		</xsl:when>
+		<xsl:otherwise>
+		  <xsl:copy-of select="$font"/><xsl:text>monospace</xsl:text>
+		</xsl:otherwise>
+	</xsl:choose>
+</xsl:template>
+
+<!--xsl:param name="symbol.font.family">
+	<xsl:choose>
+		<xsl:when test="$l10n.gentext.language = 'ja-JP'">
+			<xsl:text>Symbol,ZapfDingbats</xsl:text>
+		</xsl:when>
+		<xsl:otherwise>
+			<xsl:text>Symbol,ZapfDingbats</xsl:text>
+		</xsl:otherwise>
+	</xsl:choose>
+</xsl:param-->
+
+<xsl:param name="title.font.family">
+	<xsl:call-template name="pickfont-sans"/>
+</xsl:param>
+
+<xsl:param name="body.font.family">
+	<xsl:call-template name="pickfont-sans"/>
+</xsl:param>
+
+<xsl:param name="monospace.font.family">
+	<xsl:call-template name="pickfont-mono"/>
+</xsl:param>
+
+<xsl:param name="sans.font.family">
+	<xsl:call-template name="pickfont-sans"/>
+</xsl:param>
+
+<!--xsl:param name="callout.unicode.font">
+	<xsl:call-template name="pickfont-sans"/>
+</xsl:param-->
+
+<!--
+From: fo/verbatim.xsl
+Reason: Left align address
+Version: 1.72
+-->
+
+<xsl:template match="address">
+	<xsl:param name="suppress-numbers" select="'0'"/>
+
+	<xsl:variable name="content">
+		<xsl:choose>
+			<xsl:when test="$suppress-numbers = '0'
+											and @linenumbering = 'numbered'
+											and $use.extensions != '0'
+											and $linenumbering.extension != '0'">
+				<xsl:call-template name="number.rtf.lines">
+					<xsl:with-param name="rtf">
+						<xsl:apply-templates/>
+					</xsl:with-param>
+				</xsl:call-template>
+			</xsl:when>
+			<xsl:otherwise>
+				<xsl:apply-templates/>
+			</xsl:otherwise>
+		</xsl:choose>
+	</xsl:variable>
+
+	<fo:block wrap-option='no-wrap'
+						white-space-collapse='false'
+			white-space-treatment='preserve'
+						linefeed-treatment="preserve"
+						text-align="start"
+						xsl:use-attribute-sets="verbatim.properties">
+		<xsl:copy-of select="$content"/>
+	</fo:block>
+</xsl:template>
+
+<xsl:template name="component.title.nomarkup">
+  <xsl:param name="node" select="."/>
+
+  <xsl:variable name="id">
+    <xsl:call-template name="object.id">
+      <xsl:with-param name="object" select="$node"/>
+    </xsl:call-template>
+  </xsl:variable>
+
+  <xsl:variable name="title">
+    <xsl:apply-templates select="$node" mode="object.title.markup">
+      <xsl:with-param name="allow-anchors" select="1"/>
+    </xsl:apply-templates>
+  </xsl:variable>
+  <xsl:copy-of select="$title"/>
+</xsl:template>
+
+<!--
+From: fo/pagesetup.xsl
+Reason: Custom Header
+Version: 1.72
+-->
+<xsl:template name="header.content">
+  <xsl:param name="pageclass" select="''"/>
+  <xsl:param name="sequence" select="''"/>
+  <xsl:param name="position" select="''"/>
+  <xsl:param name="gentext-key" select="''"/>
+	<xsl:param name="title-limit" select="'30'"/>
+<!--
+  <fo:block>
+    <xsl:value-of select="$pageclass"/>
+    <xsl:text>, </xsl:text>
+    <xsl:value-of select="$sequence"/>
+    <xsl:text>, </xsl:text>
+    <xsl:value-of select="$position"/>
+    <xsl:text>, </xsl:text>
+    <xsl:value-of select="$gentext-key"/>
+  </fo:block>
+body, blank, left, chapter
+-->
+    <!-- sequence can be odd, even, first, blank -->
+    <!-- position can be left, center, right -->
+    <xsl:choose>
+      <!--xsl:when test="($sequence='blank' and $position='left' and $gentext-key='chapter')">
+			<xsl:variable name="text">
+				<xsl:call-template name="component.title.nomarkup"/>
+			</xsl:variable>
+	      <fo:inline keep-together.within-line="always" font-weight="bold">
+  			  <xsl:choose>
+		  		<xsl:when test="string-length($text) &gt; '33'">
+					<xsl:value-of select="concat(substring($text, 0, $title-limit), '...')"/>
+				</xsl:when>
+				<xsl:otherwise>
+					<xsl:value-of select="$text"/>
+				</xsl:otherwise>
+			  </xsl:choose>
+		  </fo:inline>
+      </xsl:when-->
+	  <xsl:when test="$confidential = 1 and (($sequence='odd' and $position='left') or ($sequence='even' and $position='right'))">
+	      <fo:inline keep-together.within-line="always" font-weight="bold">
+			<xsl:text>RED HAT CONFIDENTIAL</xsl:text>
+		  </fo:inline>
+      </xsl:when>
+	  <xsl:when test="$sequence = 'blank'">
+        <!-- nothing -->
+      </xsl:when>
+ 	  <!-- Extracting 'Chapter' + Chapter Number from the full Chapter title, with a dirty, dirty hack -->
+  		<xsl:when test="($sequence='first' and $position='left' and $gentext-key='chapter')">
+		<xsl:variable name="text">
+			<xsl:call-template name="component.title.nomarkup"/>
+		</xsl:variable>
+		<xsl:variable name="chapt">
+			<xsl:value-of select="substring-before($text, '&#xA0;')"/>
+		</xsl:variable>
+		<xsl:variable name="remainder">
+			<xsl:value-of select="substring-after($text, '&#xA0;')"/>
+		</xsl:variable>
+		<xsl:variable name="chapt-num">
+			<xsl:value-of select="substring-before($remainder, '&#xA0;')"/>
+		</xsl:variable>
+		<xsl:variable name="text1">
+			<xsl:value-of select="concat($chapt, '&#xA0;', $chapt-num)"/>
+		</xsl:variable>
+        <fo:inline keep-together.within-line="always" font-weight="bold">
+ 		  <xsl:value-of select="$text1"/>
+		</fo:inline>
+      </xsl:when>
+     <!--xsl:when test="($sequence='odd' or $sequence='even') and $position='center'"-->
+      <xsl:when test="($sequence='even' and $position='left')">
+        <!--xsl:if test="$pageclass != 'titlepage'"-->
+			<xsl:variable name="text">
+				<xsl:call-template name="component.title.nomarkup"/>
+			</xsl:variable>
+	      <fo:inline keep-together.within-line="always" font-weight="bold">
+  			  <xsl:choose>
+		  		<xsl:when test="string-length($text) &gt; '33'">
+					<xsl:value-of select="concat(substring($text, 0, $title-limit), '...')"/>
+				</xsl:when>
+				<xsl:otherwise>
+					<xsl:value-of select="$text"/>
+				</xsl:otherwise>
+			  </xsl:choose>
+		  </fo:inline>
+        <!--xsl:if-->
+      </xsl:when>
+      <xsl:when test="($sequence='odd' and $position='right')">
+        <!--xsl:if test="$pageclass != 'titlepage'"-->
+	      <fo:inline keep-together.within-line="always"><fo:retrieve-marker retrieve-class-name="section.head.marker" retrieve-position="first-including-carryover" retrieve-boundary="page-sequence"/></fo:inline>
+        <!--/xsl:if-->
+      </xsl:when>
+	  <xsl:when test="$position='left'">
+        <!-- Same for odd, even, empty, and blank sequences -->
+        <xsl:call-template name="draft.text"/>
+      </xsl:when>
+      <xsl:when test="$position='center'">
+        <!-- nothing for empty and blank sequences -->
+      </xsl:when>
+      <xsl:when test="$position='right'">
+        <!-- Same for odd, even, empty, and blank sequences -->
+        <xsl:call-template name="draft.text"/>
+      </xsl:when>
+      <xsl:when test="$sequence = 'first'">
+        <!-- nothing for first pages -->
+      </xsl:when>
+      <xsl:when test="$sequence = 'blank'">
+        <!-- nothing for blank pages -->
+      </xsl:when>
+    </xsl:choose>
+</xsl:template>
+
+<!--
+From: fo/pagesetup.xsl
+Reason: Override colour
+Version: 1.72
+-->
+<xsl:template name="head.sep.rule">
+	<xsl:param name="pageclass"/>
+	<xsl:param name="sequence"/>
+	<xsl:param name="gentext-key"/>
+
+	<xsl:if test="$header.rule != 0">
+		<xsl:attribute name="border-bottom-width">0.5pt</xsl:attribute>
+		<xsl:attribute name="border-bottom-style">solid</xsl:attribute>
+		<xsl:attribute name="border-bottom-color">#4a5d75</xsl:attribute>
+	</xsl:if>
+</xsl:template>
+
+<!--
+From: fo/pagesetup.xsl
+Reason: Override colour
+Version: 1.72
+-->
+<xsl:template name="foot.sep.rule">
+	<xsl:param name="pageclass"/>
+	<xsl:param name="sequence"/>
+	<xsl:param name="gentext-key"/>
+
+	<xsl:if test="$footer.rule != 0">
+		<xsl:attribute name="border-top-width">0.5pt</xsl:attribute>
+		<xsl:attribute name="border-top-style">solid</xsl:attribute>
+		<xsl:attribute name="border-top-color">#4a5d75</xsl:attribute>
+	</xsl:if>
+</xsl:template>
+
+<xsl:param name="footnote.font.size">
+	<xsl:value-of select="$body.font.master * 0.8"/><xsl:text>pt</xsl:text>
+</xsl:param>
+<xsl:param name="footnote.number.format" select="'1'"/>
+<xsl:param name="footnote.number.symbols" select="''"/>
+<xsl:attribute-set name="footnote.mark.properties">
+	<xsl:attribute name="font-size">75%</xsl:attribute>
+	<xsl:attribute name="font-weight">normal</xsl:attribute>
+	<xsl:attribute name="font-style">normal</xsl:attribute>
+</xsl:attribute-set>
+<xsl:attribute-set name="footnote.properties">
+	<xsl:attribute name="padding-top">48pt</xsl:attribute>
+	<xsl:attribute name="font-family"><xsl:value-of select="$body.fontset"/></xsl:attribute>
+	<xsl:attribute name="font-size"><xsl:value-of select="$footnote.font.size"/></xsl:attribute>
+	<xsl:attribute name="font-weight">normal</xsl:attribute>
+	<xsl:attribute name="font-style">normal</xsl:attribute>
+	<xsl:attribute name="text-align"><xsl:value-of select="$alignment"/></xsl:attribute>
+	<xsl:attribute name="start-indent">0pt</xsl:attribute>
+</xsl:attribute-set>
+<xsl:attribute-set name="footnote.sep.leader.properties">
+	<xsl:attribute name="color">black</xsl:attribute>
+	<xsl:attribute name="leader-pattern">rule</xsl:attribute>
+	<xsl:attribute name="leader-length">1in</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:template match="author" mode="tablerow.titlepage.mode">
+  <fo:table-row>
+    <fo:table-cell>
+	  <fo:block>
+        <xsl:call-template name="gentext">
+          <xsl:with-param name="key" select="'Author'"/>
+        </xsl:call-template>
+	  </fo:block>
+    </fo:table-cell>
+    <fo:table-cell>
+	  <fo:block>
+	    <xsl:call-template name="person.name">
+          <xsl:with-param name="node" select="."/>
+        </xsl:call-template>
+	  </fo:block>
+    </fo:table-cell>
+    <fo:table-cell>
+	  <fo:block>
+	    <xsl:apply-templates select="email"/>
+	  </fo:block>
+    </fo:table-cell>
+  </fo:table-row>
+</xsl:template>
+
+<xsl:template match="author" mode="titlepage.mode">
+  <fo:block>
+    <xsl:call-template name="person.name">
+         <xsl:with-param name="node" select="."/>
+    </xsl:call-template>
+  </fo:block>
+</xsl:template>
+
+<xsl:param name="editedby.enabled">0</xsl:param>
+
+<xsl:template match="editor" mode="tablerow.titlepage.mode">
+  <fo:table-row>
+    <fo:table-cell>
+	  <fo:block>
+	    <xsl:call-template name="gentext">
+	      <xsl:with-param name="key" select="'Editor'"/>
+	    </xsl:call-template>
+	  </fo:block>
+    </fo:table-cell>
+    <fo:table-cell>
+	  <fo:block>
+        <xsl:call-template name="person.name">
+          <xsl:with-param name="node" select="."/>
+        </xsl:call-template>
+	  </fo:block>
+    </fo:table-cell>
+    <fo:table-cell>
+	  <fo:block>
+	    <xsl:apply-templates select="email"/>
+	  </fo:block>
+    </fo:table-cell>
+  </fo:table-row>
+</xsl:template>
+
+<xsl:template match="othercredit" mode="tablerow.titlepage.mode">
+  <fo:table-row>
+    <fo:table-cell>
+	  <fo:block>
+	    <xsl:call-template name="gentext">
+	      <xsl:with-param name="key" select="'translator'"/>
+	    </xsl:call-template>
+	  </fo:block>
+    </fo:table-cell>
+    <fo:table-cell>
+	  <fo:block>
+        <xsl:call-template name="person.name">
+          <xsl:with-param name="node" select="."/>
+        </xsl:call-template>
+	  </fo:block>
+    </fo:table-cell>
+    <fo:table-cell>
+	  <fo:block>
+	    <xsl:apply-templates select="email"/>
+	  </fo:block>
+    </fo:table-cell>
+  </fo:table-row>
+ </xsl:template>
+
+<!--
+From: fo/titlepage.xsl
+Reason: 
+Version:1.72
+-->
+<!-- Omitted to get JBossOrg style working - TODO
+<xsl:template name="verso.authorgroup">
+  <fo:table table-layout="fixed" width="100%">
+    <fo:table-column column-number="1" column-width="proportional-column-width(1)"/>
+    <fo:table-column column-number="2" column-width="proportional-column-width(1)"/>
+    <fo:table-column column-number="3" column-width="proportional-column-width(1)"/>
+    <fo:table-body>
+      <xsl:apply-templates select="author" mode="tablerow.titlepage.mode"/>
+      <xsl:apply-templates select="editor" mode="tablerow.titlepage.mode"/>
+      <xsl:apply-templates select="othercredit" mode="tablerow.titlepage.mode"/>
+    </fo:table-body>
+  </fo:table>
+</xsl:template> -->
+
+<xsl:template match="title" mode="book.titlepage.recto.auto.mode">
+<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.recto.style" text-align="center" font-size="20pt" space-before="18.6624pt" font-weight="bold" font-family="{$title.fontset}">
+<xsl:call-template name="division.title">
+<xsl:with-param name="node" select="ancestor-or-self::book[1]"/>
+</xsl:call-template>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="book.titlepage.recto.auto.mode">
+<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.recto.style" text-align="center" font-size="34pt" space-before="30pt" font-family="{$title.fontset}">
+<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="issuenum" mode="book.titlepage.recto.auto.mode">
+<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.recto.style" text-align="center" font-size="16pt" space-before="15.552pt" font-family="{$title.fontset}">
+<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/>
+</fo:block>
+</xsl:template>
+
+<xsl:template match="author" mode="book.titlepage.recto.auto.mode">
+  <fo:block xsl:use-attribute-sets="book.titlepage.recto.style" font-size="14pt" space-before="15.552pt">
+    <xsl:call-template name="person.name">
+         <xsl:with-param name="node" select="."/>
+    </xsl:call-template>
+  </fo:block>
+</xsl:template>
+
+<!-- <xsl:template name="book.titlepage.recto">
+  <xsl:choose>
+    <xsl:when test="bookinfo/title">
+      <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/title"/>
+    </xsl:when>
+    <xsl:when test="info/title">
+      <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/title"/>
+    </xsl:when>
+    <xsl:when test="title">
+      <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="title"/>
+    </xsl:when>
+  </xsl:choose>
+
+  <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/issuenum"/>
+  <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/issuenum"/>
+  <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="issuenum"/>
+
+  <xsl:choose>
+    <xsl:when test="bookinfo/subtitle">
+      <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/subtitle"/>
+    </xsl:when>
+    <xsl:when test="info/subtitle">
+      <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/subtitle"/>
+    </xsl:when>
+    <xsl:when test="subtitle">
+      <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="subtitle"/>
+    </xsl:when>
+  </xsl:choose>
+
+  <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/corpauthor"/>
+  <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/corpauthor"/>
+
+  <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/authorgroup/author"/>
+  <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/authorgroup/author"/>
+  <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/author"/>
+  <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/author"/>
+
+  <fo:block xsl:use-attribute-sets="book.titlepage.recto.style" color="black">
+    <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/invpartnumber"/>
+    <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/invpartnumber"/>
+  </fo:block>
+  <fo:block xsl:use-attribute-sets="book.titlepage.recto.style" color="black">
+    <xsl:call-template name="gentext">
+      <xsl:with-param name="key" select="'isbn'"/>
+	</xsl:call-template>
+	<xsl:text>: </xsl:text>
+    <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/isbn"/>
+    <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/isbn"/>
+  </fo:block>
+  <fo:block xsl:use-attribute-sets="book.titlepage.recto.style" color="black"> 
+    <xsl:call-template name="gentext">
+      <xsl:with-param name="key" select="'pubdate'"/>
+	</xsl:call-template>
+	<xsl:text>: </xsl:text>
+    <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/pubdate"/>
+    <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/pubdate"/>
+  </fo:block>
+</xsl:template> -->
+
+   <!-- Use our own slightly simpler title page (just show title, version, authors) -->
+   <xsl:template name="book.titlepage.recto">
+      <xsl:choose>
+         <xsl:when test="bookinfo/title">
+            <xsl:apply-templates mode="book.titlepage.recto.auto.mode"
+               select="bookinfo/title" />
+         </xsl:when>
+         <xsl:when test="info/title">
+            <xsl:apply-templates mode="book.titlepage.recto.auto.mode"
+               select="info/title" />
+         </xsl:when>
+         <xsl:when test="title">
+            <xsl:apply-templates mode="book.titlepage.recto.auto.mode"
+               select="title" />
+         </xsl:when>
+      </xsl:choose>
+
+      <xsl:apply-templates mode="book.titlepage.recto.auto.mode"
+         select="bookinfo/issuenum" />
+      <xsl:apply-templates mode="book.titlepage.recto.auto.mode"
+         select="info/issuenum" />
+      <xsl:apply-templates mode="book.titlepage.recto.auto.mode"
+         select="issuenum" />
+
+      <xsl:choose>
+         <xsl:when test="bookinfo/subtitle">
+            <xsl:apply-templates mode="book.titlepage.recto.auto.mode"
+               select="bookinfo/subtitle" />
+         </xsl:when>
+         <xsl:when test="info/subtitle">
+            <xsl:apply-templates mode="book.titlepage.recto.auto.mode"
+               select="info/subtitle" />
+         </xsl:when>
+         <xsl:when test="subtitle">
+            <xsl:apply-templates mode="book.titlepage.recto.auto.mode"
+               select="subtitle" />
+         </xsl:when>
+      </xsl:choose>
+
+      <fo:block xsl:use-attribute-sets="book.titlepage.recto.style"
+         font-size="14pt" space-before="15.552pt">
+         <xsl:apply-templates mode="book.titlepage.recto.auto.mode"
+            select="bookinfo/releaseinfo" />
+      </fo:block>
+
+      <fo:block text-align="center" space-before="15.552pt">
+         <xsl:call-template name="person.name.list">
+            <xsl:with-param name="person.list" select="bookinfo/authorgroup/author|bookinfo/authorgroup/corpauthor" />
+            <xsl:with-param name="person.type" select="'author'"/>
+         </xsl:call-template>
+      </fo:block>
+
+      <fo:block text-align="center" space-before="15.552pt">
+         <xsl:call-template name="person.name.list">
+            <xsl:with-param name="person.list" select="bookinfo/authorgroup/editor" />
+            <xsl:with-param name="person.type" select="'editor'"/>
+         </xsl:call-template>
+      </fo:block>
+
+      <fo:block text-align="center" space-before="15.552pt">
+         <xsl:call-template name="person.name.list">
+            <xsl:with-param name="person.list" select="bookinfo/authorgroup/othercredit" />
+            <xsl:with-param name="person.type" select="'othercredit'"/>
+         </xsl:call-template>
+      </fo:block>
+
+   </xsl:template>
+
+<!-- <xsl:template name="book.titlepage.verso">
+  <xsl:choose>
+    <xsl:when test="bookinfo/abstract">
+      <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/abstract"/>
+    </xsl:when>
+    <xsl:when test="info/abstract">
+      <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/abstract"/>
+    </xsl:when>
+  </xsl:choose>
+
+</xsl:template> -->
+
+   <xsl:template name="book.titlepage.verso"></xsl:template>
+
+
+<!-- <xsl:template name="book.titlepage3.recto">
+  <xsl:choose>
+    <xsl:when test="bookinfo/title">
+      <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/title"/>
+    </xsl:when>
+    <xsl:when test="info/title">
+      <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/title"/>
+    </xsl:when>
+    <xsl:when test="title">
+      <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="title"/>
+    </xsl:when>
+  </xsl:choose> 
+
+  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/authorgroup"/>
+  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/authorgroup"/>
+  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/author"/>
+  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/author"/>
+  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/othercredit"/>
+  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/othercredit"/>
+  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/copyright"/>
+  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/copyright"/>
+  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/legalnotice"/>
+  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/legalnotice"/>
+  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/publisher"/>
+  <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/publisher"/>
+</xsl:template> -->
+
+   <xsl:template name="book.titlepage3.recto">
+
+   </xsl:template>
+   
+   <!-- Make examples, tables etc. break across pages -->
+   <xsl:attribute-set name="formal.object.properties">
+      <xsl:attribute name="keep-together.within-column">auto</xsl:attribute>
+   </xsl:attribute-set>
+
+   <!-- Correct placement of titles for figures and examples. -->
+   <xsl:param name="formal.title.placement">
+      figure after example before equation before table before procedure before
+   </xsl:param>
+
+   <!-- Prevent blank pages in output -->
+   <xsl:template name="book.titlepage.before.verso"></xsl:template>
+   <xsl:template name="book.titlepage.separator"></xsl:template>
+   
+<!-- <xsl:template name="book.titlepage.separator"><fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" break-after="page"/>
+</xsl:template> -->
+
+<xsl:template name="book.titlepage.before.recto">
+</xsl:template>
+
+<!-- <xsl:template name="book.titlepage.before.verso"><fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" break-after="page"/>
+</xsl:template> -->
+
+<xsl:template name="book.titlepage">
+  <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format">
+    <xsl:call-template name="book.titlepage.before.recto"/>
+    <fo:block><xsl:call-template name="book.titlepage.recto"/></fo:block>
+    <xsl:call-template name="book.titlepage.separator"/>
+    <fo:block><xsl:call-template name="book.titlepage.verso"/></fo:block>
+    <xsl:call-template name="book.titlepage.separator"/>
+    <fo:block><xsl:call-template name="book.titlepage3.recto"/></fo:block>
+    <xsl:call-template name="book.titlepage.separator"/>
+  </fo:block>
+</xsl:template>
+
+<!--
+From: fo/qandaset.xsl
+Reason: Id in list-item-label causes fop crash
+Version:1.72
+-->
+
+<xsl:template match="question">
+  <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable>
+
+  <xsl:variable name="entry.id">
+    <xsl:call-template name="object.id">
+      <xsl:with-param name="object" select="parent::*"/>
+    </xsl:call-template>
+  </xsl:variable>
+
+  <xsl:variable name="deflabel">
+    <xsl:choose>
+      <xsl:when test="ancestor-or-self::*[@defaultlabel]">
+        <xsl:value-of select="(ancestor-or-self::*[@defaultlabel])[last()]
+                              /@defaultlabel"/>
+      </xsl:when>
+      <xsl:otherwise>
+        <xsl:value-of select="$qanda.defaultlabel"/>
+      </xsl:otherwise>
+    </xsl:choose>
+  </xsl:variable>
+
+  <fo:list-item id="{$entry.id}" xsl:use-attribute-sets="list.item.spacing">
+    <fo:list-item-label end-indent="label-end()">
+      <xsl:choose>
+        <xsl:when test="$deflabel = 'none'">
+          <fo:block/>
+        </xsl:when>
+        <xsl:otherwise>
+          <fo:block>
+            <xsl:apply-templates select="." mode="label.markup"/>
+            <xsl:if test="$deflabel = 'number' and not(label)">
+              <xsl:apply-templates select="." mode="intralabel.punctuation"/>
+            </xsl:if>
+          </fo:block>
+        </xsl:otherwise>
+      </xsl:choose>
+    </fo:list-item-label>
+    <fo:list-item-body start-indent="body-start()">
+      <xsl:choose>
+        <xsl:when test="$deflabel = 'none'">
+          <fo:block font-weight="bold">
+            <xsl:apply-templates select="*[local-name(.)!='label']"/>
+          </fo:block>
+        </xsl:when>
+        <xsl:otherwise>
+          <xsl:apply-templates select="*[local-name(.)!='label']"/>
+        </xsl:otherwise>
+      </xsl:choose>
+      <!-- Uncomment this line to get revhistory output in the question -->
+      <!-- <xsl:apply-templates select="preceding-sibling::revhistory"/> -->
+    </fo:list-item-body>
+  </fo:list-item>
+</xsl:template>
+
+<!--
+From: fo/qandaset.xsl
+Reason: Id in list-item-label causes fop crash
+Version:1.72
+-->
+<xsl:template match="answer">
+  <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable>
+  <xsl:variable name="entry.id">
+    <xsl:call-template name="object.id">
+      <xsl:with-param name="object" select="parent::*"/>
+    </xsl:call-template>
+  </xsl:variable>
+
+  <xsl:variable name="deflabel">
+    <xsl:choose>
+      <xsl:when test="ancestor-or-self::*[@defaultlabel]">
+        <xsl:value-of select="(ancestor-or-self::*[@defaultlabel])[last()]
+                              /@defaultlabel"/>
+      </xsl:when>
+      <xsl:otherwise>
+        <xsl:value-of select="$qanda.defaultlabel"/>
+      </xsl:otherwise>
+    </xsl:choose>
+  </xsl:variable>
+
+  <fo:list-item xsl:use-attribute-sets="list.item.spacing">
+    <fo:list-item-label end-indent="label-end()">
+      <xsl:choose>
+        <xsl:when test="$deflabel = 'none'">
+          <fo:block/>
+        </xsl:when>
+        <xsl:otherwise>
+          <fo:block>
+            <xsl:variable name="answer.label">
+              <xsl:apply-templates select="." mode="label.markup"/>
+            </xsl:variable>
+            <xsl:copy-of select="$answer.label"/>
+          </fo:block>
+        </xsl:otherwise>
+      </xsl:choose>
+    </fo:list-item-label>
+    <fo:list-item-body start-indent="body-start()">
+      <xsl:apply-templates select="*[local-name(.)!='label']"/>
+    </fo:list-item-body>
+  </fo:list-item>
+</xsl:template>
+
+   
+  <xsl:template match="programlisting|programlisting[@role='XML']|programlisting[@role='JAVA']|programlisting[@role='XHTML']|programlisting[@role='JSP']|programlisting[@role='CSS']">
+    
+    <xsl:variable name="role">
+      <xsl:value-of select="s:toUpperCase(string(@role))" xmlns:s="java:java.lang.String"/>
+    </xsl:variable>
+
+    <xsl:variable name="hilighter" select="jbh:new()"/>
+    <xsl:variable name="parsable" select="jbh:isParsable($role)"/>
+    
+    <fo:block background-color="#F5F5F5"
+              border-style="solid"
+              border-width=".3mm"
+              border-color="#CCCCCC"
+              font-family="{$programlisting.font}"
+              font-size="{$programlisting.font.size}"
+              space-before="12pt"
+              space-after="12pt"
+              linefeed-treatment="preserve"
+              white-space-collapse="false"
+              white-space-treatment="preserve"
+              padding-bottom="12pt"
+              padding-top="12pt"
+              padding-right="12pt"
+              padding-left="12pt">
+
+    <xsl:choose>
+      <xsl:when test="$parsable = 'true'">
+        <xsl:for-each select="node()">
+          <xsl:choose>
+            <xsl:when test="self::text()">
+              <xsl:variable name="child.content" select="."/>
+      
+              <xsl:variable name="caller" select="jbh:parseText($hilighter, $role, string($child.content), 'UTF-8')"/>
+              <xsl:variable name="noOfTokens" select="jbh:getNoOfTokens($caller)"/>
+
+              <xsl:call-template name="iterator">
+                <xsl:with-param name="caller" select="$caller"/>
+                <xsl:with-param name="noOfTokens" select="$noOfTokens"/>
+              </xsl:call-template>
+            </xsl:when>
+            <xsl:otherwise>
+              <fo:inline>
+              <xsl:call-template name="anchor"/>
+              <xsl:apply-templates select="." mode="callout-bug"/>
+              </fo:inline>
+            </xsl:otherwise>
+          </xsl:choose>
+        </xsl:for-each>
+      </xsl:when>
+      <xsl:otherwise>
+        <xsl:apply-templates/>
+      </xsl:otherwise>
+    </xsl:choose>
+
+    </fo:block>
+  </xsl:template>
+
+
+  <xsl:template name="iterator">
+    <xsl:param name="caller"/>
+    <xsl:param name="noOfTokens"/>
+    <xsl:param name="i" select="0"/>
+
+    <xsl:variable name="style" select="jbh:getStyle($caller, $i)"/>
+    <xsl:variable name="token" select="jbh:getToken($caller, $i)"/>
+
+    <xsl:choose>
+      <xsl:when test="$style = 'java_keyword'"> <fo:inline color="#7F1B55" font-weight="bold"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'java_plain'"> <fo:inline color="#000000"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'java_type'"> <fo:inline color="#000000"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'java_separator'"> <fo:inline color="#000000"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'java_literal'"> <fo:inline color="#2A00FF"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'java_comment'"> <fo:inline color="#3F7F5F"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'java_javadoc_comment'"> <fo:inline color="#3F5FBF" font-style="italic"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'java_operator'"> <fo:inline color="#000000"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'java_javadoc_tag'"> <fo:inline color="#7F9FBF" font-weight="bold" font-style="italic"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'xml_plain'"> <fo:inline color="#000000"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'xml_char_data'"> <fo:inline color="#000000"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'xml_tag_symbols'"> <fo:inline color="#008080"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'xml_comment'"> <fo:inline color="#3F5FBF"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'xml_attribute_value'"> <fo:inline color="#2A00FF"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'xml_attribute_name'"> <fo:inline color="#7F007F" font-weight="bold"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'xml_processing_instruction'"> <fo:inline color="#000000" font-weight="bold" font-style="italic"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'xml_tag_name'"> <fo:inline color="#3F7F7F"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'xml_rife_tag'"> <fo:inline color="#000000"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'xml_rife_name'"> <fo:inline color="#008CCA"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:otherwise> <fo:inline color="black"> <xsl:value-of select="$token"/> </fo:inline></xsl:otherwise>
+    </xsl:choose>
+
+    <xsl:if test="$i &lt; $noOfTokens - 1">
+      <xsl:call-template name="iterator">
+        <xsl:with-param name="caller" select="$caller"/>
+        <xsl:with-param name="noOfTokens" select="$noOfTokens"/>
+        <xsl:with-param name="i" select="$i + 1"/>
+      </xsl:call-template>  
+    </xsl:if>
+  </xsl:template>
+
+</xsl:stylesheet>

Added: webservices/juddi/styles/docbook/juddi-docbook-xslt/src/main/resources/xslt/org/apache/juddi/xhtml-common.xsl
URL: http://svn.apache.org/viewvc/webservices/juddi/styles/docbook/juddi-docbook-xslt/src/main/resources/xslt/org/apache/juddi/xhtml-common.xsl?rev=908784&view=auto
==============================================================================
--- webservices/juddi/styles/docbook/juddi-docbook-xslt/src/main/resources/xslt/org/apache/juddi/xhtml-common.xsl (added)
+++ webservices/juddi/styles/docbook/juddi-docbook-xslt/src/main/resources/xslt/org/apache/juddi/xhtml-common.xsl Thu Feb 11 01:36:39 2010
@@ -0,0 +1,578 @@
+<?xml version='1.0'?>
+<!--
+ * Copyright 2001-2009 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+ Note based on the jbossorg-docbook project.
+-->
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+				version="1.0"
+                xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory"
+                exclude-result-prefixes="#default">
+
+   <xsl:import href="common.xsl" />
+  
+  <!-- Ignore image scaling in html version -->
+  <xsl:param name="ignore.image.scaling" select="1"/>
+  
+  <xsl:param name="generate.legalnotice.link" select="1"/>
+  <xsl:param name="generate.revhistory.link" select="0"/>
+  
+  <!-- This is needed to generate the correct xhtml-strict DOCTYPE on the front page.
+      We can't use indentation as the algorithm inserts linebreaks into the markup
+      created for callouts. This means that callouts appear on different lines than
+      the code they are supposed to refer to. -->
+  <xsl:output method="xml"
+              encoding="UTF-8"
+              indent="no"
+              doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
+              doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
+              standalone="no"/>
+
+  <xsl:param name="siteHref" select="'http://ws.apache.org/juddi'"/>
+  <xsl:param name="docHref" select="'http://ws.apache.org/juddi/docs'"/>
+  <xsl:param name="siteLinkText" select="'Apache jUDDI'"/>
+  <xsl:param name="docLinkText" select="'Community Documentation'"/>
+
+   <xsl:param name="graphicsize.extension">0</xsl:param>
+   
+   <!-- Placement of titles -->
+   <xsl:param name="formal.title.placement">
+      figure after example before equation before table before procedure before
+   </xsl:param>
+   
+   <!-- Callouts -->
+   <!-- Place callout marks at this column in annotated areas. The algorithm using this number doesn't
+        know about highlighted code with extra span elements so we need to pad each line at the start
+        with an XML comment and a line break. The callout marks must then be placed immediately afterwards.
+        This ensures that the callouts appear on the same line as the code it relates to and we can position
+        them using CSS so that they all appear in a column on the right. -->
+   <xsl:param name="callout.defaultcolumn">15</xsl:param>
+   <xsl:param name="callout.icon.size">17px</xsl:param>
+      
+  <!-- Admonitions -->
+  <xsl:param name="admon.style" select="''"/>
+
+  <!-- Set chunk.section.depth to 0 to just chunk chapters. -->
+  <xsl:param name="chunk.section.depth" select="0"/>
+  <xsl:param name="chunk.first.sections" select="1"/>
+  <xsl:param name="chunk.toc" select="''"/>
+  <xsl:param name="chunker.output.doctype-public" select="'-//W3C//DTD XHTML 1.0 Strict//EN'"/>
+  <xsl:param name="chunker.output.doctype-system" select="'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'"/>
+  <xsl:param name="chunker.output.encoding" select="'UTF-8'"/>
+
+  <!-- We must turn off indenting as the algorithm inserts linebreaks into the callout markup that is added by the
+      code highlighting routine. This causes the callouts to appear on different lines from the code they relate to. -->
+  <xsl:param name="chunker.output.indent" select="'no'"/>
+
+  <xsl:param name="html.stylesheet" select="'css/jbossorg.css'"/>
+  <xsl:param name="html.stylesheet.type" select="'text/css'"/>
+  <xsl:param name="html.cleanup" select="1"/>
+  <xsl:param name="html.ext" select="'.html'"/>
+
+
+  <xsl:template match="authorgroup" mode="titlepage.mode">
+   <xsl:choose>
+   <xsl:when test="$use.simplified.author.group = 1">
+      <div class="authorgroup">
+         <div class="authors">
+            <xsl:call-template name="person.name.list">
+               <xsl:with-param name="person.list" select="./author|./corpauthor" />
+               <xsl:with-param name="person.type" select="'author'"/>
+            </xsl:call-template>
+         </div>
+
+         <div class="editors">
+            <xsl:call-template name="person.name.list">
+               <xsl:with-param name="person.list" select="./editor" />
+               <xsl:with-param name="person.type" select="'editor'"/>
+            </xsl:call-template>
+         </div>
+
+         <div class="others">
+            <xsl:call-template name="person.name.list">
+               <xsl:with-param name="person.list" select="./othercredit" />
+               <xsl:with-param name="person.type" select="'othercredit'"/>
+            </xsl:call-template>
+         </div>
+      </div>
+      </xsl:when>
+      <xsl:otherwise>
+         <xsl:apply-imports/>
+      </xsl:otherwise>
+      </xsl:choose>
+      
+   </xsl:template>     
+
+<!-- 
+From: fo/callout.xsl
+Version: 1.73.2
+Reason: This includes the callout.icon.size attribute for SVGs
+        (We can probably get rid of this if we upgrade to DocBook Stylesheets 1.73.2)
+ -->
+ <xsl:template name="callout-bug">
+  <xsl:param name="conum" select="1"/>
+
+  <xsl:choose>
+    <xsl:when test="$callout.graphics != 0                     and $conum &lt;= $callout.graphics.number.limit">
+      <img src="{$callout.graphics.path}{$conum}{$callout.graphics.extension}" alt="{$conum}" border="0" height="{$callout.icon.size}" width="{$callout.icon.size}"/>
+    </xsl:when>
+    <xsl:when test="$callout.unicode != 0                     and $conum &lt;= $callout.unicode.number.limit">
+      <xsl:choose>
+        <xsl:when test="$callout.unicode.start.character = 10102">
+          <xsl:choose>
+            <xsl:when test="$conum = 1">&#10102;</xsl:when>
+            <xsl:when test="$conum = 2">&#10103;</xsl:when>
+            <xsl:when test="$conum = 3">&#10104;</xsl:when>
+            <xsl:when test="$conum = 4">&#10105;</xsl:when>
+            <xsl:when test="$conum = 5">&#10106;</xsl:when>
+            <xsl:when test="$conum = 6">&#10107;</xsl:when>
+            <xsl:when test="$conum = 7">&#10108;</xsl:when>
+            <xsl:when test="$conum = 8">&#10109;</xsl:when>
+            <xsl:when test="$conum = 9">&#10110;</xsl:when>
+            <xsl:when test="$conum = 10">&#10111;</xsl:when>
+          </xsl:choose>
+        </xsl:when>
+        <xsl:otherwise>
+          <xsl:message>
+            <xsl:text>Don't know how to generate Unicode callouts </xsl:text>
+            <xsl:text>when $callout.unicode.start.character is </xsl:text>
+            <xsl:value-of select="$callout.unicode.start.character"/>
+          </xsl:message>
+          <xsl:text>(</xsl:text>
+          <xsl:value-of select="$conum"/>
+          <xsl:text>)</xsl:text>
+        </xsl:otherwise>
+      </xsl:choose>
+    </xsl:when>
+    <xsl:otherwise>
+      <xsl:text>(</xsl:text>
+      <xsl:value-of select="$conum"/>
+      <xsl:text>)</xsl:text>
+    </xsl:otherwise>
+  </xsl:choose>
+</xsl:template>
+
+<!-- TOC -->
+<xsl:param name="generate.toc">
+set toc
+book toc
+article toc
+chapter toc
+qandadiv toc
+qandaset toc
+sect1 nop
+sect2 nop
+sect3 nop
+sect4 nop
+sect5 nop
+section toc
+part toc
+</xsl:param>
+
+<xsl:param name="suppress.navigation" select="0"/>
+<xsl:param name="suppress.header.navigation" select="0"/>
+<xsl:param name="suppress.footer.navigation" select="0"/>
+
+<xsl:param name="header.rule" select="0"/>
+<xsl:param name="footer.rule" select="0"/>
+<xsl:param name="css.decoration" select="0"/>
+<xsl:param name="ulink.target"/>
+<xsl:param name="table.cell.border.style"/>
+
+<!-- BUGBUG TODO 
+
+	There is a bug where inserting elements in to the body level
+	of xhtml will add xmlns="" to the tag. This is invalid xhtml.
+	To overcome this I added:
+		xmlns="http://www.w3.org/1999/xhtml"
+	to the outer most tag. This gets stripped by the parser, resulting
+	in valid xhtml ... go figure.
+  
+    This sounds like the system used by the stylesheets to process
+    DocBook 5 docs by stripping out the XML namespace before processing
+    the node set as normal: http://lists.oasis-open.org/archives/docbook-apps/200701/msg00184.html
+-->
+
+<!--
+From: xhtml/admon.xsl
+Reason: remove tables
+Version: 1.72.0
+-->
+<xsl:template name="graphical.admonition">
+	<xsl:variable name="admon.type">
+		<xsl:choose>
+			<xsl:when test="local-name(.)='note'">Note</xsl:when>
+			<xsl:when test="local-name(.)='warning'">Warning</xsl:when>
+			<xsl:when test="local-name(.)='caution'">Caution</xsl:when>
+			<xsl:when test="local-name(.)='tip'">Tip</xsl:when>
+			<xsl:when test="local-name(.)='important'">Important</xsl:when>
+			<xsl:otherwise>Note</xsl:otherwise>
+		</xsl:choose>
+	</xsl:variable>
+
+	<xsl:variable name="alt">
+		<xsl:call-template name="gentext">
+			<xsl:with-param name="key" select="$admon.type"/>
+		</xsl:call-template>
+	</xsl:variable>
+
+	<div xmlns="http://www.w3.org/1999/xhtml">
+	 	 <xsl:apply-templates select="." mode="class.attribute"/>
+		<xsl:if test="$admon.style != ''">
+			<xsl:attribute name="style">
+				<xsl:value-of select="$admon.style"/>
+			</xsl:attribute>
+		</xsl:if>
+
+		<xsl:call-template name="anchor"/>
+			<xsl:if test="$admon.textlabel != 0 or title">
+				<h2>
+					<xsl:apply-templates select="." mode="object.title.markup"/>
+				</h2>
+			</xsl:if>
+		<xsl:apply-templates/>
+	</div>
+</xsl:template>
+
+<!--
+From: xhtml/lists.xsl
+Reason: Remove invalid type attribute from ol
+Version: 1.72.0
+-->
+<xsl:template match="substeps">
+	<xsl:variable name="numeration">
+		<xsl:call-template name="procedure.step.numeration"/>
+	</xsl:variable>
+	<xsl:call-template name="anchor"/>
+	<ol xmlns="http://www.w3.org/1999/xhtml" class="{$numeration}">
+		<xsl:apply-templates/>
+	</ol>
+</xsl:template>
+
+<!--
+From: xhtml/lists.xsl
+Reason: Remove invalid type, start & compact attributes from ol
+Version: 1.72.0
+-->
+<xsl:template match="orderedlist">
+	<div xmlns="http://www.w3.org/1999/xhtml">
+		<xsl:apply-templates select="." mode="class.attribute"/>
+		<xsl:call-template name="anchor"/>
+		<xsl:if test="title">
+			<xsl:call-template name="formal.object.heading"/>
+		</xsl:if>
+<!-- Preserve order of PIs and comments -->
+		<xsl:apply-templates select="*[not(self::listitem or self::title or self::titleabbrev)]	|comment()[not(preceding-sibling::listitem)]	|processing-instruction()[not(preceding-sibling::listitem)]"/>
+		<ol>
+			<xsl:apply-templates select="listitem |comment()[preceding-sibling::listitem] |processing-instruction()[preceding-sibling::listitem]"/>
+		</ol>
+	</div>
+</xsl:template>
+
+<!--
+From: xhtml/lists.xsl
+Reason: Remove invalid type, start & compact attributes from ol
+Version: 1.72.0
+-->
+<xsl:template match="procedure">
+	<xsl:variable name="param.placement" select="substring-after(normalize-space($formal.title.placement), concat(local-name(.), ' '))"/>
+
+	<xsl:variable name="placement">
+		<xsl:choose>
+			<xsl:when test="contains($param.placement, ' ')">
+				<xsl:value-of select="substring-before($param.placement, ' ')"/>
+			</xsl:when>
+			<xsl:when test="$param.placement = ''">before</xsl:when>
+			<xsl:otherwise>
+				<xsl:value-of select="$param.placement"/>
+			</xsl:otherwise>
+		</xsl:choose>
+	</xsl:variable>
+
+<!-- Preserve order of PIs and comments -->
+	<xsl:variable name="preamble" select="*[not(self::step or self::title or self::titleabbrev)] |comment()[not(preceding-sibling::step)]	|processing-instruction()[not(preceding-sibling::step)]"/>
+	<div xmlns="http://www.w3.org/1999/xhtml">
+		<xsl:apply-templates select="." mode="class.attribute"/>
+		<xsl:call-template name="anchor">
+			<xsl:with-param name="conditional">
+				<xsl:choose>
+					<xsl:when test="title">0</xsl:when>
+					<xsl:otherwise>1</xsl:otherwise>
+				</xsl:choose>
+			</xsl:with-param>
+		</xsl:call-template>
+		<xsl:if test="title and $placement = 'before'">
+			<xsl:call-template name="formal.object.heading"/>
+		</xsl:if>
+		<xsl:apply-templates select="$preamble"/>
+		<xsl:choose>
+			<xsl:when test="count(step) = 1">
+				<ul>
+					<xsl:apply-templates select="step |comment()[preceding-sibling::step] |processing-instruction()[preceding-sibling::step]"/>
+				</ul>
+			</xsl:when>
+			<xsl:otherwise>
+				<ol>
+					<xsl:attribute name="class">
+						<xsl:value-of select="substring($procedure.step.numeration.formats,1,1)"/>
+					</xsl:attribute>
+					<xsl:apply-templates select="step |comment()[preceding-sibling::step] |processing-instruction()[preceding-sibling::step]"/>
+				</ol>
+			</xsl:otherwise>
+		</xsl:choose>
+		<xsl:if test="title and $placement != 'before'">
+			<xsl:call-template name="formal.object.heading"/>
+		</xsl:if>
+	</div>
+</xsl:template>
+
+<!--
+From: xhtml/graphics.xsl
+Reason:  Remove html markup (align)
+Version: 1.72.0
+-->
+<xsl:template name="longdesc.link">
+	<xsl:param name="longdesc.uri" select="''"/>
+
+	<xsl:variable name="this.uri">
+	<xsl:call-template name="make-relative-filename">
+		<xsl:with-param name="base.dir" select="$base.dir"/>
+			<xsl:with-param name="base.name">
+				<xsl:call-template name="href.target.uri"/>
+			</xsl:with-param>
+		</xsl:call-template>
+	</xsl:variable>
+	<xsl:variable name="href.to">
+		<xsl:call-template name="trim.common.uri.paths">
+			<xsl:with-param name="uriA" select="$longdesc.uri"/>
+			<xsl:with-param name="uriB" select="$this.uri"/>
+			<xsl:with-param name="return" select="'A'"/>
+		</xsl:call-template>
+	</xsl:variable>
+	<div xmlns="http://www.w3.org/1999/xhtml" class="longdesc-link">
+		<br/>
+		<span class="longdesc-link">
+			<xsl:text>[</xsl:text>
+			<a href="{$href.to}">D</a>
+			<xsl:text>]</xsl:text>
+		</span>
+	</div>
+</xsl:template>
+
+<!--
+From: xhtml/docbook.xsl
+Reason: Remove inline style for draft mode
+Version: 1.72.0
+-->
+<xsl:template name="head.content">
+	<xsl:param name="node" select="."/>
+	<xsl:param name="title">
+		<xsl:apply-templates select="$node" mode="object.title.markup.textonly"/>
+	</xsl:param>
+
+	<title xmlns="http://www.w3.org/1999/xhtml" >
+		<xsl:copy-of select="$title"/>
+	</title>
+
+	<xsl:if test="$html.stylesheet != ''">
+		<xsl:call-template name="output.html.stylesheets">
+			<xsl:with-param name="stylesheets" select="normalize-space($html.stylesheet)"/>
+		</xsl:call-template>
+	</xsl:if>
+
+	<xsl:if test="$link.mailto.url != ''">
+		<link rev="made" href="{$link.mailto.url}"/>
+	</xsl:if>
+
+	<xsl:if test="$html.base != ''">
+		<base href="{$html.base}"/>
+	</xsl:if>
+
+	<meta xmlns="http://www.w3.org/1999/xhtml" name="generator" content="DocBook {$DistroTitle} V{$VERSION}"/>
+
+	<xsl:if test="$generate.meta.abstract != 0">
+		<xsl:variable name="info" select="(articleinfo |bookinfo |prefaceinfo |chapterinfo |appendixinfo |sectioninfo |sect1info |sect2info |sect3info |sect4info |sect5info |referenceinfo |refentryinfo |partinfo |info |docinfo)[1]"/>
+		<xsl:if test="$info and $info/abstract">
+			<meta xmlns="http://www.w3.org/1999/xhtml" name="description">
+				<xsl:attribute name="content">
+					<xsl:for-each select="$info/abstract[1]/*">
+						<xsl:value-of select="normalize-space(.)"/>
+						<xsl:if test="position() &lt; last()">
+							<xsl:text> </xsl:text>
+						</xsl:if>
+					</xsl:for-each>
+				</xsl:attribute>
+			</meta>
+		</xsl:if>
+	</xsl:if>
+
+	<xsl:apply-templates select="." mode="head.keywords.content"/>
+</xsl:template>
+
+<!--
+From: xhtml/docbook.xsl
+Reason: Add css class for draft mode
+Version: 1.72.0
+-->
+<xsl:template name="body.attributes">
+	<xsl:if test="($draft.mode = 'yes' or ($draft.mode = 'maybe' and ancestor-or-self::*[@status][1]/@status = 'draft'))">
+		<xsl:attribute name="class">
+			<xsl:value-of select="ancestor-or-self::*[@status][1]/@status"/>
+		</xsl:attribute>
+	</xsl:if>
+</xsl:template>
+
+<!--
+From: xhtml/docbook.xsl
+Reason: Add confidential to footer
+Version: 1.72.0
+-->
+<xsl:template name="user.footer.content">
+	<xsl:param name="node" select="."/>
+	<xsl:if test="$confidential = '1'">
+		<h1 xmlns="http://www.w3.org/1999/xhtml" class="confidential">
+			<xsl:text>Red Hat Confidential!</xsl:text>
+		</h1>
+	</xsl:if>
+</xsl:template>
+
+<!--
+From: xhtml/block.xsl
+Reason:  default class (otherwise) to formalpara
+Version: 1.72.0
+-->
+<xsl:template match="formalpara">
+	<xsl:call-template name="paragraph">
+		<xsl:with-param name="class">
+			<xsl:choose>
+				<xsl:when test="@role and $para.propagates.style != 0">
+					<xsl:value-of select="@role"/>
+				</xsl:when>
+				<xsl:otherwise>
+					<xsl:text>formalpara</xsl:text>
+				</xsl:otherwise>
+			</xsl:choose>
+		</xsl:with-param>
+		<xsl:with-param name="content">
+			<xsl:call-template name="anchor"/>
+			<xsl:apply-templates/>
+		</xsl:with-param>
+	</xsl:call-template>
+</xsl:template>
+
+<!--
+From: xhtml/block.xsl
+Reason:  h5 instead of <b>, remove default title end punctuation
+Version: 1.72.0
+-->
+<xsl:template match="formalpara/title|formalpara/info/title">
+	<xsl:variable name="titleStr">
+			<xsl:apply-templates/>
+	</xsl:variable>
+	<h5 xmlns="http://www.w3.org/1999/xhtml" class="formalpara">
+		<xsl:copy-of select="$titleStr"/>
+	</h5>
+</xsl:template>
+
+<!--
+From: xhtml/footnote.xsl
+Reason: remove inline css from hr
+Version: 1.72.0
+-->
+<xsl:template name="process.footnotes">
+  <xsl:variable name="footnotes" select=".//footnote"/>
+  <xsl:variable name="table.footnotes" select=".//tgroup//footnote"/>
+
+  <!-- Only bother to do this if there's at least one non-table footnote -->
+  <xsl:if test="count($footnotes)&gt;count($table.footnotes)">
+    <div class="footnotes">
+      <br/>
+      <hr/>
+      <xsl:apply-templates select="$footnotes" mode="process.footnote.mode"/>
+    </div>
+  </xsl:if>
+
+  <xsl:if test="$annotation.support != 0 and //annotation">
+    <div class="annotation-list">
+      <div class="annotation-nocss">
+  <p>The following annotations are from this essay. You are seeing
+  them here because your browser doesn&#8217;t support the user-interface
+  techniques used to make them appear as &#8216;popups&#8217; on modern browsers.</p>
+      </div>
+
+      <xsl:apply-templates select="//annotation" mode="annotation-popup"/>
+    </div>
+  </xsl:if>
+</xsl:template>
+
+  <xsl:template match="programlisting[@role='XML']|programlisting[@role='JAVA']|programlisting[@role='XHTML']|programlisting[@role='JSP']|programlisting[@role='CSS']">
+    
+    <xsl:variable name="role">
+      <xsl:value-of select="s:toUpperCase(string(@role))" xmlns:s="java:java.lang.String"/>
+    </xsl:variable>
+    
+    <xsl:variable name="factory" select="rf:instance()"/>
+    <xsl:variable name="hiliter" select="rf:getRenderer($factory, string($role))"/>
+
+    <pre class="{$role}">
+    <xsl:choose>
+      <xsl:when test="$hiliter">
+            <xsl:for-each select="node()">
+              <xsl:choose>
+                <xsl:when test="self::text()">
+                  <xsl:variable name="child.content" select="."/>
+          
+                  <xsl:value-of select="jhr:highlight($hiliter, $role, string($child.content), 'UTF-8', true())"
+            xmlns:jhr="com.uwyn.jhighlight.renderer.Renderer" disable-output-escaping="yes"/>
+          </xsl:when>
+                <xsl:otherwise>
+                  <!-- Support a single linkend in HTML -->
+                  <xsl:variable name="targets" select="key('id', @linkends)"/>
+                  <xsl:variable name="target" select="$targets[1]"/>
+                  <xsl:choose>
+                  <xsl:when test="$target">
+                  <a>
+                    <xsl:if test="@id or @xml:id">
+                      <xsl:attribute name="id">
+                        <xsl:value-of select="(@id|@xml:id)[1]"/>
+                      </xsl:attribute>
+                    </xsl:if>
+                    <xsl:attribute name="href">
+                      <xsl:call-template name="href.target">
+                        <xsl:with-param name="object" select="$target"/>
+                      </xsl:call-template>
+                    </xsl:attribute>
+                    <xsl:apply-templates select="." mode="callout-bug"/>
+                  </a>
+                  </xsl:when>
+                  <xsl:otherwise>
+                    <xsl:call-template name="anchor"/>
+                    <xsl:apply-templates select="." mode="callout-bug"/>
+                  </xsl:otherwise>
+                  </xsl:choose>
+                </xsl:otherwise>
+              </xsl:choose>
+            </xsl:for-each>
+          </xsl:when>
+          <xsl:otherwise>
+            <xsl:apply-templates/>
+          </xsl:otherwise>
+        </xsl:choose>
+      </pre>
+    
+  </xsl:template>
+
+</xsl:stylesheet>



---------------------------------------------------------------------
To unsubscribe, e-mail: juddi-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: juddi-cvs-help@ws.apache.org


Mime
View raw message