diff options
author | Matthew Burgess <matthew@linuxfromscratch.org> | 2013-10-08 20:03:29 +0000 |
---|---|---|
committer | Matthew Burgess <matthew@linuxfromscratch.org> | 2013-10-08 20:03:29 +0000 |
commit | 15c7d39533a1eb1da0748011f3378fd0f02ed14d (patch) | |
tree | a7ed12df60c5ffd4d00a570804c51470bfb8b0f5 /stylesheets/lfs-xsl/docbook-xsl-snapshot/fo | |
parent | 09a35dd7178070f01a7961d2ded39e11ba2aac83 (diff) |
Update stylesheets to docbook-xsl-1.78.1.
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@10355 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Diffstat (limited to 'stylesheets/lfs-xsl/docbook-xsl-snapshot/fo')
53 files changed, 0 insertions, 33335 deletions
diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/admon.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/admon.xsl deleted file mode 100644 index 9662ac5e0..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/admon.xsl +++ /dev/null @@ -1,130 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<xsl:template match="note|important|warning|caution|tip"> - <xsl:choose> - <xsl:when test="$admon.graphics != 0"> - <xsl:call-template name="graphical.admonition"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="nongraphical.admonition"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="*" mode="admon.graphic.width"> - <xsl:param name="node" select="."/> - <xsl:text>36pt</xsl:text> -</xsl:template> - -<xsl:template name="admon.graphic"> - <xsl:param name="node" select="."/> - - <xsl:variable name="filename"> - <xsl:value-of select="$admon.graphics.path"/> - <xsl:choose> - <xsl:when test="local-name($node)='note'">note</xsl:when> - <xsl:when test="local-name($node)='warning'">warning</xsl:when> - <xsl:when test="local-name($node)='caution'">caution</xsl:when> - <xsl:when test="local-name($node)='tip'">tip</xsl:when> - <xsl:when test="local-name($node)='important'">important</xsl:when> - <xsl:otherwise>note</xsl:otherwise> - </xsl:choose> - <xsl:value-of select="$admon.graphics.extension"/> - </xsl:variable> - - <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:template> - -<xsl:template name="graphical.admonition"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <xsl:variable name="graphic.width"> - <xsl:apply-templates select="." mode="admon.graphic.width"/> - </xsl:variable> - - <fo:block id="{$id}" - xsl:use-attribute-sets="graphical.admonition.properties"> - <fo:list-block provisional-distance-between-starts="{$graphic.width} + 18pt" - provisional-label-separation="18pt"> - <fo:list-item> - <fo:list-item-label end-indent="label-end()"> - <fo:block> - <fo:external-graphic width="auto" height="auto" - content-width="{$graphic.width}" > - <xsl:attribute name="src"> - <xsl:call-template name="admon.graphic"/> - </xsl:attribute> - </fo:external-graphic> - </fo:block> - </fo:list-item-label> - <fo:list-item-body start-indent="body-start()"> - <xsl:if test="$admon.textlabel != 0 or title or info/title"> - <fo:block xsl:use-attribute-sets="admonition.title.properties"> - <xsl:apply-templates select="." mode="object.title.markup"> - <xsl:with-param name="allow-anchors" select="1"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> - <fo:block xsl:use-attribute-sets="admonition.properties"> - <xsl:apply-templates/> - </fo:block> - </fo:list-item-body> - </fo:list-item> - </fo:list-block> - </fo:block> -</xsl:template> - -<xsl:template name="nongraphical.admonition"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:block id="{$id}" - xsl:use-attribute-sets="nongraphical.admonition.properties"> - <xsl:if test="$admon.textlabel != 0 or title or info/title"> - <fo:block keep-with-next.within-column='always' - xsl:use-attribute-sets="admonition.title.properties"> - <xsl:apply-templates select="." mode="object.title.markup"> - <xsl:with-param name="allow-anchors" select="1"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> - - <fo:block xsl:use-attribute-sets="admonition.properties"> - <xsl:apply-templates/> - </fo:block> - </fo:block> -</xsl:template> - -<xsl:template match="note/title"></xsl:template> -<xsl:template match="important/title"></xsl:template> -<xsl:template match="warning/title"></xsl:template> -<xsl:template match="caution/title"></xsl:template> -<xsl:template match="tip/title"></xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/annotations.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/annotations.xsl deleted file mode 100644 index e2e1449a3..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/annotations.xsl +++ /dev/null @@ -1,18 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<xsl:template match="annotation"/> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/autoidx-kimber.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/autoidx-kimber.xsl deleted file mode 100644 index 0b01823fe..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/autoidx-kimber.xsl +++ /dev/null @@ -1,178 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE xsl:stylesheet [ - -<!ENTITY primary 'normalize-space(concat(primary/@sortas, primary[not(@sortas) or @sortas = ""]))'> -<!ENTITY secondary 'normalize-space(concat(secondary/@sortas, secondary[not(@sortas) or @sortas = ""]))'> -<!ENTITY tertiary 'normalize-space(concat(tertiary/@sortas, tertiary[not(@sortas) or @sortas = ""]))'> - -<!ENTITY sep '" "'> -<!-- Documents using the kimber index method must have a lang attribute --> -<!-- Only one of these should be present in the entity --> -<!ENTITY lang 'concat(/*/@lang, /*/@xml:lang)'> - -<!ENTITY scope 'count(ancestor::node()|$scope) = count(ancestor::node()) - and ($role = @role or $type = @type or - (string-length($role) = 0 and string-length($type) = 0))'> -]> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:k="java:com.isogen.saxoni18n.Saxoni18nService" - exclude-result-prefixes="k" - version="1.0"> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the DocBook XSL Stylesheet distribution. - See ../README or http://docbook.sf.net/ for copyright - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> -<!-- The "kimber" method contributed by Eliot Kimber of Innodata Isogen. --> -<!-- ==================================================================== --> -<!-- *** THIS MODULE ONLY WORKS WITH SAXON 6 OR SAXON 8 *** --> -<!-- ==================================================================== --> - -<xsl:include href="../common/autoidx-kimber.xsl"/> - -<!-- Java sort apparently works only on lang part, not country --> -<xsl:param name="sort.lang"> - <xsl:choose> - <xsl:when test="contains(⟨, '-')"> - <xsl:value-of select="substring-before(⟨, '-')"/> - </xsl:when> - <xsl:when test="contains(⟨, '_')"> - <xsl:value-of select="substring-before(⟨, '_')"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="⟨"/> - </xsl:otherwise> - </xsl:choose> -</xsl:param> - -<xsl:template name="generate-kimber-index"> - <xsl:param name="scope" select="NOTANODE"/> - - <xsl:variable name="vendor" select="system-property('xsl:vendor')"/> - <xsl:if test="not(contains($vendor, 'SAXON '))"> - <xsl:message terminate="yes"> - <xsl:text>ERROR: the 'kimber' index method requires the </xsl:text> - <xsl:text>Saxon version 6 or 8 XSLT processor.</xsl:text> - </xsl:message> - </xsl:if> - - <xsl:if test="not(function-available('k:getIndexGroupKey'))"> - <xsl:message terminate="yes"> - <xsl:text>ERROR: the 'kimber' index method requires the </xsl:text> - <xsl:text>Innodata Isogen 
Java extensions for </xsl:text> - <xsl:text>internationalized indexes. 
Install those </xsl:text> - <xsl:text>extensions, or use a different index method.
</xsl:text> - <xsl:text>For more information, see:
</xsl:text> - <xsl:text>http://www.innodata-isogen.com/knowledge_center/tools_downloads/i18nsupport</xsl:text> - </xsl:message> - </xsl:if> - - <xsl:variable name="role"> - <xsl:if test="$index.on.role != 0"> - <xsl:value-of select="@role"/> - </xsl:if> - </xsl:variable> - - <xsl:variable name="type"> - <xsl:if test="$index.on.type != 0"> - <xsl:value-of select="@type"/> - </xsl:if> - </xsl:variable> - - <xsl:variable name="terms" - select="//indexterm[count(.|key('k-group', - k:getIndexGroupKey(⟨, &primary;)) - [&scope;][1]) = 1 - and not(@class = 'endofrange')]"/> - - <xsl:variable name="alphabetical" - select="$terms[not(starts-with( - k:getIndexGroupKey(⟨, &primary;), - '#NUMERIC' - ))]"/> - - <xsl:variable name="others" - select="$terms[starts-with( - k:getIndexGroupKey(⟨, &primary;), - '#NUMERIC' - )]"/> - - <fo:block> - <xsl:if test="$others"> - <xsl:call-template name="indexdiv.title"> - <xsl:with-param name="titlecontent"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'index symbols'"/> - </xsl:call-template> - </xsl:with-param> - </xsl:call-template> - - <fo:block> - <xsl:apply-templates select="$others" - mode="index-symbol-div"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort lang="{$sort.lang}" - select="k:getIndexGroupSortKey(⟨, - k:getIndexGroupKey(⟨, &primary;))"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> - - <xsl:apply-templates select="$alphabetical" - mode="index-div-kimber"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort lang="{$sort.lang}" - select="k:getIndexGroupSortKey(⟨, - k:getIndexGroupKey(⟨, &primary;))"/> - </xsl:apply-templates> - </fo:block> - -</xsl:template> - -<xsl:template match="indexterm" mode="index-div-kimber"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - - <xsl:variable name="key" - select="k:getIndexGroupKey(⟨, &primary;)"/> - - <xsl:variable name="label" - select="k:getIndexGroupLabel(⟨, $key)"/> - - <xsl:if test="key('k-group', $key)[&scope;] - [count(.|key('primary', &primary;)[&scope;][1]) = 1]"> - <fo:block> - <xsl:call-template name="indexdiv.title"> - <xsl:with-param name="titlecontent"> - <xsl:value-of select="$label"/> - </xsl:with-param> - </xsl:call-template> - <fo:block> - <xsl:apply-templates select="key('k-group', $key)[&scope;] - [count(.|key('primary', &primary;)[&scope;] - [1])=1]" - mode="index-primary"> - <xsl:sort select="&primary;" lang="{$sort.lang}"/> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - </xsl:apply-templates> - </fo:block> - </fo:block> - </xsl:if> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/autoidx-kosek.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/autoidx-kosek.xsl deleted file mode 100644 index bfb17b101..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/autoidx-kosek.xsl +++ /dev/null @@ -1,150 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE xsl:stylesheet [ - -<!ENTITY primary 'normalize-space(concat(primary/@sortas, primary[not(@sortas) or @sortas = ""]))'> -<!ENTITY secondary 'normalize-space(concat(secondary/@sortas, secondary[not(@sortas) or @sortas = ""]))'> -<!ENTITY tertiary 'normalize-space(concat(tertiary/@sortas, tertiary[not(@sortas) or @sortas = ""]))'> - -<!ENTITY sep '" "'> -<!-- Documents using the kimber index method must have a lang attribute --> -<!-- Only one of these should be present in the entity --> - -<!ENTITY scope 'count(ancestor::node()|$scope) = count(ancestor::node()) - and ($role = @role or $type = @type or - (string-length($role) = 0 and string-length($type) = 0))'> -]> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:rx="http://www.renderx.com/XSL/Extensions" - xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" - xmlns:i="urn:cz-kosek:functions:index" - xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" - xmlns:func="http://exslt.org/functions" - xmlns:exslt="http://exslt.org/common" - extension-element-prefixes="func exslt" - exclude-result-prefixes="func exslt i l" - version="1.0"> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the DocBook XSL Stylesheet distribution. - See ../README or http://docbook.sf.net/ for copyright - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> -<!-- The "kosek" method contributed by Jirka Kosek. --> - -<xsl:include href="../common/autoidx-kosek.xsl"/> - -<xsl:template name="generate-kosek-index"> - <xsl:param name="scope" select="NOTANODE"/> - - <xsl:variable name="vendor" select="system-property('xsl:vendor')"/> - <xsl:if test="contains($vendor, 'libxslt')"> - <xsl:message terminate="yes"> - <xsl:text>ERROR: the 'kosek' index method does not </xsl:text> - <xsl:text>work with the xsltproc XSLT processor.</xsl:text> - </xsl:message> - </xsl:if> - - <xsl:if test="contains($vendor, 'Saxonica')"> - <xsl:message terminate="yes"> - <xsl:text>ERROR: the 'kosek' index method does not </xsl:text> - <xsl:text>work with the Saxon 8 XSLT processor.</xsl:text> - </xsl:message> - </xsl:if> - - - <xsl:if test="not(function-available('exslt:node-set') or - function-available('exslt:nodeSet'))"> - <xsl:message terminate="yes"> - <xsl:text>ERROR: the 'kosek' index method requires the </xsl:text> - <xsl:text>exslt:node-set() function. Use a processor that </xsl:text> - <xsl:text>has it, or use a different index method.</xsl:text> - </xsl:message> - </xsl:if> - - <xsl:if test="not(function-available('i:group-index'))"> - <xsl:message terminate="yes"> - <xsl:text>ERROR: the 'kosek' index method requires the
</xsl:text> - <xsl:text>index extension functions be imported:
</xsl:text> - <xsl:text> xsl:import href="common/autoidx-kosek.xsl"</xsl:text> - </xsl:message> - </xsl:if> - - <xsl:variable name="role"> - <xsl:if test="$index.on.role != 0"> - <xsl:value-of select="@role"/> - </xsl:if> - </xsl:variable> - - <xsl:variable name="type"> - <xsl:if test="$index.on.type != 0"> - <xsl:value-of select="@type"/> - </xsl:if> - </xsl:variable> - - <xsl:variable name="terms" - select="//indexterm[count(.|key('group-code', - i:group-index(&primary;)) - [&scope;][1]) = 1 - and not(@class = 'endofrange')]"/> - <fo:block> - <xsl:apply-templates select="$terms" mode="index-div-kosek"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="i:group-index(&primary;)" data-type="number"/> - </xsl:apply-templates> - </fo:block> -</xsl:template> - -<xsl:template match="indexterm" mode="index-div-kosek"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - - <xsl:variable name="key" - select="i:group-index(&primary;)"/> - - <xsl:variable name="lang"> - <xsl:call-template name="l10n.language"/> - </xsl:variable> - - <xsl:if test="key('group-code', $key)[&scope;] - [count(.|key('primary', &primary;)[&scope;][1]) = 1]"> - <fo:block> - <xsl:call-template name="indexdiv.title"> - <xsl:with-param name="titlecontent"> - <xsl:choose> - <xsl:when test="$key = 0"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'index symbols'"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="i:group-letter($key)"/> - </xsl:otherwise> - </xsl:choose> - </xsl:with-param> - </xsl:call-template> - <fo:block> - <xsl:apply-templates select="key('group-code', $key)[&scope;] - [count(.|key('primary', &primary;) - [&scope;][1])=1]" - mode="index-primary"> - <xsl:sort select="&primary;" lang="{$lang}"/> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - </xsl:apply-templates> - </fo:block> - </fo:block> - </xsl:if> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/autoidx-ng.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/autoidx-ng.xsl deleted file mode 100644 index 57884cc9a..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/autoidx-ng.xsl +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0"?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - version="1.0"> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the DocBook XSL Stylesheet distribution. - See ../README or http://docbook.sf.net/ for copyright - copyright and other information. - - ******************************************************************** --> - -<!-- You should have this directly in your customization file. --> -<!-- This file is there only to retain backward compatibility. --> -<xsl:import href="autoidx-kosek.xsl"/> -<xsl:param name="index.method">kosek</xsl:param> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/autoidx.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/autoidx.xsl deleted file mode 100644 index bf42732f5..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/autoidx.xsl +++ /dev/null @@ -1,1310 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE xsl:stylesheet [ -<!ENTITY % common.entities SYSTEM "../common/entities.ent"> -%common.entities; -]> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:rx="http://www.renderx.com/XSL/Extensions" - xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" - xmlns:exslt="http://exslt.org/common" - extension-element-prefixes="exslt" - exclude-result-prefixes="exslt" - version="1.0"> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the DocBook XSL Stylesheet distribution. - See ../README or http://docbook.sf.net/ for copyright - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> -<!-- The "basic" method derived from Jeni Tennison's work. --> -<!-- The "kosek" method contributed by Jirka Kosek. --> -<!-- The "kimber" method contributed by Eliot Kimber of Innodata Isogen. --> - -<!-- Importing module for kimber or kosek method overrides one of these --> -<xsl:param name="kimber.imported" select="0"/> -<xsl:param name="kosek.imported" select="0"/> - -<!-- These keys used primary in all methods --> -<xsl:key name="letter" - match="indexterm" - use="translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;)"/> - -<xsl:key name="primary" - match="indexterm" - use="&primary;"/> - -<xsl:key name="secondary" - match="indexterm" - use="concat(&primary;, &sep;, &secondary;)"/> - -<xsl:key name="tertiary" - match="indexterm" - use="concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;)"/> - -<xsl:key name="endofrange" - match="indexterm[@class='endofrange']" - use="@startref"/> - -<xsl:key name="see-also" - match="indexterm[seealso]" - use="concat(&primary;, &sep;, - &secondary;, &sep;, - &tertiary;, &sep;, seealso)"/> - -<xsl:key name="see" - match="indexterm[see]" - use="concat(&primary;, &sep;, - &secondary;, &sep;, - &tertiary;, &sep;, see)"/> - - -<xsl:template name="generate-index"> - <xsl:param name="scope" select="(ancestor::book|/)[last()]"/> - - <xsl:choose> - <xsl:when test="$index.method = 'kosek'"> - <xsl:call-template name="generate-kosek-index"> - <xsl:with-param name="scope" select="$scope"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="$index.method = 'kimber'"> - <xsl:call-template name="generate-kimber-index"> - <xsl:with-param name="scope" select="$scope"/> - </xsl:call-template> - </xsl:when> - - <xsl:otherwise> - <xsl:call-template name="generate-basic-index"> - <xsl:with-param name="scope" select="$scope"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="generate-basic-index"> - <xsl:param name="scope" select="NOTANODE"/> - - <xsl:variable name="role"> - <xsl:if test="$index.on.role != 0"> - <xsl:value-of select="@role"/> - </xsl:if> - </xsl:variable> - - <xsl:variable name="type"> - <xsl:if test="$index.on.type != 0"> - <xsl:value-of select="@type"/> - </xsl:if> - </xsl:variable> - - <xsl:variable name="terms" - select="//indexterm - [count(.|key('letter', - translate(substring(&primary;, 1, 1), - &lowercase;, - &uppercase;)) - [&scope;][1]) = 1 - and not(@class = 'endofrange')]"/> - - <xsl:variable name="alphabetical" - select="$terms[contains(concat(&lowercase;, &uppercase;), - substring(&primary;, 1, 1))]"/> - - <xsl:variable name="others" select="$terms[not(contains( - concat(&lowercase;, - &uppercase;), - substring(&primary;, 1, 1)))]"/> - <fo:block> - <xsl:if test="$others"> - <xsl:call-template name="indexdiv.title"> - <xsl:with-param name="titlecontent"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'index symbols'"/> - </xsl:call-template> - </xsl:with-param> - </xsl:call-template> - - <fo:block> - <xsl:apply-templates select="$others[count(.|key('primary', - &primary;)[&scope;][1]) = 1]" - mode="index-symbol-div"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(&primary;, &lowercase;, - &uppercase;)"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> - - <xsl:apply-templates select="$alphabetical[count(.|key('letter', - translate(substring(&primary;, 1, 1), - &lowercase;,&uppercase;)) - [&scope;][1]) = 1]" - mode="index-div-basic"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - </fo:block> -</xsl:template> - -<!-- This template not used if fo/autoidx-kosek.xsl is imported --> -<xsl:template name="generate-kosek-index"> - <xsl:param name="scope" select="NOTANODE"/> - - <xsl:variable name="vendor" select="system-property('xsl:vendor')"/> - <xsl:if test="contains($vendor, 'libxslt')"> - <xsl:message terminate="yes"> - <xsl:text>ERROR: the 'kosek' index method does not </xsl:text> - <xsl:text>work with the xsltproc XSLT processor.</xsl:text> - </xsl:message> - </xsl:if> - - - <xsl:if test="not(function-available('exslt:node-set') or - function-available('exslt:nodeSet'))"> - <xsl:message terminate="yes"> - <xsl:text>ERROR: the 'kosek' index method requires the </xsl:text> - <xsl:text>exslt:node-set() function. Use a processor that </xsl:text> - <xsl:text>has it, or use a different index method.</xsl:text> - </xsl:message> - </xsl:if> - - <xsl:if test="$kosek.imported = 0"> - <xsl:message terminate="yes"> - <xsl:text>ERROR: the 'kosek' index method requires the
</xsl:text> - <xsl:text>kosek index extensions be imported:
</xsl:text> - <xsl:text> xsl:import href="fo/autoidx-kosek.xsl"</xsl:text> - </xsl:message> - </xsl:if> - -</xsl:template> - - -<!-- This template not used if fo/autoidx-kimber.xsl is imported --> -<xsl:template name="generate-kimber-index"> - <xsl:param name="scope" select="NOTANODE"/> - - <xsl:variable name="vendor" select="system-property('xsl:vendor')"/> - <xsl:if test="not(contains($vendor, 'SAXON '))"> - <xsl:message terminate="yes"> - <xsl:text>ERROR: the 'kimber' index method requires the </xsl:text> - <xsl:text>Saxon version 6 or 8 XSLT processor.</xsl:text> - </xsl:message> - </xsl:if> - - <xsl:if test="$kimber.imported = 0"> - <xsl:message terminate="yes"> - <xsl:text>ERROR: the 'kimber' index method requires the
</xsl:text> - <xsl:text>kimber index extensions be imported:
</xsl:text> - <xsl:text> xsl:import href="fo/autoidx-kimber.xsl"</xsl:text> - </xsl:message> - </xsl:if> - -</xsl:template> - -<xsl:template match="indexterm" mode="index-div-basic"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - - <xsl:variable name="key" - select="translate(substring(&primary;, 1, 1), - &lowercase;,&uppercase;)"/> - - <xsl:if test="key('letter', $key)[&scope;] - [count(.|key('primary', &primary;)[&scope;][1]) = 1]"> - <fo:block> - <xsl:if test="contains(concat(&lowercase;, &uppercase;), $key)"> - <xsl:call-template name="indexdiv.title"> - <xsl:with-param name="titlecontent"> - <xsl:value-of select="translate($key, &lowercase;, &uppercase;)"/> - </xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:block xsl:use-attribute-sets="index.entry.properties"> - <xsl:apply-templates select="key('letter', $key)[&scope;] - [count(.|key('primary', &primary;) - [&scope;][1])=1]" - mode="index-primary"> - <xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - </xsl:apply-templates> - </fo:block> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="indexterm" mode="index-symbol-div"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - - <xsl:variable name="key" - select="translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;)"/> - - <fo:block xsl:use-attribute-sets="index.entry.properties"> - <xsl:apply-templates select="key('letter', $key)[&scope;][count(.|key('primary', &primary;)[&scope;][1]) = 1]" - mode="index-primary"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - </fo:block> -</xsl:template> - -<xsl:template match="indexterm" mode="index-primary"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - - <xsl:variable name="key" select="&primary;"/> - <xsl:variable name="refs" select="key('primary', $key)[&scope;]"/> - - <xsl:variable name="term.separator"> - <xsl:call-template name="index.separator"> - <xsl:with-param name="key" select="'index.term.separator'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="range.separator"> - <xsl:call-template name="index.separator"> - <xsl:with-param name="key" select="'index.range.separator'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="number.separator"> - <xsl:call-template name="index.separator"> - <xsl:with-param name="key" select="'index.number.separator'"/> - </xsl:call-template> - </xsl:variable> - - <fo:block> - <xsl:if test="$axf.extensions != 0"> - <xsl:attribute name="axf:suppress-duplicate-page-number">true</xsl:attribute> - </xsl:if> - <xsl:value-of select="primary"/> - - <xsl:choose> - <xsl:when test="$xep.extensions != 0"> - <xsl:if test="$refs[not(see) and not(secondary)]"> - <xsl:copy-of select="$term.separator"/> - <xsl:variable name="primary" select="&primary;"/> - <xsl:variable name="primary.significant" select="concat(&primary;, $significant.flag)"/> - <rx:page-index list-separator="{$number.separator}" - range-separator="{$range.separator}"> - <xsl:if test="$refs[@significance='preferred'][not(see) and not(secondary)]"> - <rx:index-item xsl:use-attribute-sets="index.preferred.page.properties xep.index.item.properties" - ref-key="{$primary.significant}"/> - </xsl:if> - <xsl:if test="$refs[not(@significance) or @significance!='preferred'][not(see) and not(secondary)]"> - <rx:index-item xsl:use-attribute-sets="xep.index.item.properties" - ref-key="{$primary}"/> - </xsl:if> - </rx:page-index> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="page-number-citations"> - <xsl:for-each select="$refs[not(see) - and not(secondary)]"> - <xsl:apply-templates select="." mode="reference"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:with-param name="position" select="position()"/> - </xsl:apply-templates> - </xsl:for-each> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$passivetex.extensions != '0'"> - <fotex:sort xmlns:fotex="http://www.tug.org/fotex"> - <xsl:copy-of select="$page-number-citations"/> - </fotex:sort> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$page-number-citations"/> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> - - <xsl:if test="$refs[not(secondary)]/*[self::see]"> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &sep;, &sep;, see))[&scope;][1])]" - mode="index-see"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(see, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - </xsl:if> - - </fo:block> - - <xsl:if test="$refs/secondary or $refs[not(secondary)]/*[self::seealso]"> - <fo:block start-indent="1pc"> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &sep;, &sep;, seealso))[&scope;][1])]" - mode="index-seealso"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(seealso, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - <xsl:apply-templates select="$refs[secondary and count(.|key('secondary', concat($key, &sep;, &secondary;))[&scope;][1]) = 1]" - mode="index-secondary"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(&secondary;, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="indexterm" mode="index-secondary"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - - <xsl:variable name="key" select="concat(&primary;, &sep;, &secondary;)"/> - <xsl:variable name="refs" select="key('secondary', $key)[&scope;]"/> - - <xsl:variable name="term.separator"> - <xsl:call-template name="index.separator"> - <xsl:with-param name="key" select="'index.term.separator'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="range.separator"> - <xsl:call-template name="index.separator"> - <xsl:with-param name="key" select="'index.range.separator'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="number.separator"> - <xsl:call-template name="index.separator"> - <xsl:with-param name="key" select="'index.number.separator'"/> - </xsl:call-template> - </xsl:variable> - - <fo:block> - <xsl:if test="$axf.extensions != 0"> - <xsl:attribute name="axf:suppress-duplicate-page-number">true</xsl:attribute> - </xsl:if> - <xsl:value-of select="secondary"/> - - <xsl:choose> - <xsl:when test="$xep.extensions != 0"> - <xsl:if test="$refs[not(see) and not(tertiary)]"> - <xsl:copy-of select="$term.separator"/> - <xsl:variable name="primary" select="&primary;"/> - <xsl:variable name="secondary" select="&secondary;"/> - <xsl:variable name="primary.significant" select="concat(&primary;, $significant.flag)"/> - <rx:page-index list-separator="{$number.separator}" - range-separator="{$range.separator}"> - <xsl:if test="$refs[@significance='preferred'][not(see) and not(tertiary)]"> - <rx:index-item xsl:use-attribute-sets="index.preferred.page.properties xep.index.item.properties"> - <xsl:attribute name="ref-key"> - <xsl:value-of select="$primary.significant"/> - <xsl:text>, </xsl:text> - <xsl:value-of select="$secondary"/> - </xsl:attribute> - </rx:index-item> - </xsl:if> - <xsl:if test="$refs[not(@significance) or @significance!='preferred'][not(see) and not(tertiary)]"> - <rx:index-item xsl:use-attribute-sets="xep.index.item.properties"> - <xsl:attribute name="ref-key"> - <xsl:value-of select="$primary"/> - <xsl:text>, </xsl:text> - <xsl:value-of select="$secondary"/> - </xsl:attribute> - </rx:index-item> - </xsl:if> - </rx:page-index> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="page-number-citations"> - <xsl:for-each select="$refs[not(see) - and not(tertiary)]"> - <xsl:apply-templates select="." mode="reference"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:with-param name="position" select="position()"/> - </xsl:apply-templates> - </xsl:for-each> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$passivetex.extensions != '0'"> - <fotex:sort xmlns:fotex="http://www.tug.org/fotex"> - <xsl:copy-of select="$page-number-citations"/> - </fotex:sort> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$page-number-citations"/> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> - - <xsl:if test="$refs[not(tertiary)]/*[self::see]"> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &secondary;, &sep;, &sep;, see))[&scope;][1])]" - mode="index-see"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(see, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - </xsl:if> - - </fo:block> - - <xsl:if test="$refs/tertiary or $refs[not(tertiary)]/*[self::seealso]"> - <fo:block start-indent="2pc"> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &secondary;, &sep;, &sep;, seealso))[&scope;][1])]" - mode="index-seealso"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(seealso, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - <xsl:apply-templates select="$refs[tertiary and count(.|key('tertiary', concat($key, &sep;, &tertiary;))[&scope;][1]) = 1]" - mode="index-tertiary"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(&tertiary;, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="indexterm" mode="index-tertiary"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - <xsl:variable name="key" select="concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;)"/> - <xsl:variable name="refs" select="key('tertiary', $key)[&scope;]"/> - - <xsl:variable name="term.separator"> - <xsl:call-template name="index.separator"> - <xsl:with-param name="key" select="'index.term.separator'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="range.separator"> - <xsl:call-template name="index.separator"> - <xsl:with-param name="key" select="'index.range.separator'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="number.separator"> - <xsl:call-template name="index.separator"> - <xsl:with-param name="key" select="'index.number.separator'"/> - </xsl:call-template> - </xsl:variable> - - <fo:block> - <xsl:if test="$axf.extensions != 0"> - <xsl:attribute name="axf:suppress-duplicate-page-number">true</xsl:attribute> - </xsl:if> - <xsl:value-of select="tertiary"/> - - <xsl:choose> - <xsl:when test="$xep.extensions != 0"> - <xsl:if test="$refs[not(see)]"> - <xsl:copy-of select="$term.separator"/> - <xsl:variable name="primary" select="&primary;"/> - <xsl:variable name="secondary" select="&secondary;"/> - <xsl:variable name="tertiary" select="&tertiary;"/> - <xsl:variable name="primary.significant" select="concat(&primary;, $significant.flag)"/> - <rx:page-index list-separator="{$number.separator}" - range-separator="{$range.separator}"> - <xsl:if test="$refs[@significance='preferred'][not(see)]"> - <rx:index-item xsl:use-attribute-sets="index.preferred.page.properties xep.index.item.properties"> - <xsl:attribute name="ref-key"> - <xsl:value-of select="$primary.significant"/> - <xsl:text>, </xsl:text> - <xsl:value-of select="$secondary"/> - <xsl:text>, </xsl:text> - <xsl:value-of select="$tertiary"/> - </xsl:attribute> - </rx:index-item> - </xsl:if> - <xsl:if test="$refs[not(@significance) or @significance!='preferred'][not(see)]"> - <rx:index-item xsl:use-attribute-sets="xep.index.item.properties"> - <xsl:attribute name="ref-key"> - <xsl:value-of select="$primary"/> - <xsl:text>, </xsl:text> - <xsl:value-of select="$secondary"/> - <xsl:text>, </xsl:text> - <xsl:value-of select="$tertiary"/> - </xsl:attribute> - </rx:index-item> - </xsl:if> - </rx:page-index> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="page-number-citations"> - <xsl:for-each select="$refs[not(see)]"> - <xsl:apply-templates select="." mode="reference"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:with-param name="position" select="position()"/> - </xsl:apply-templates> - </xsl:for-each> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$passivetex.extensions != '0'"> - <fotex:sort xmlns:fotex="http://www.tug.org/fotex"> - <xsl:copy-of select="$page-number-citations"/> - </fotex:sort> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$page-number-citations"/> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> - - <xsl:if test="$refs/see"> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;, &sep;, see))[&scope;][1])]" - mode="index-see"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(see, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - </xsl:if> - - </fo:block> - - <xsl:if test="$refs/seealso"> - <fo:block> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;, &sep;, seealso))[&scope;][1])]" - mode="index-seealso"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(seealso, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="indexterm" mode="reference"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - <xsl:param name="position" select="0"/> - <xsl:param name="separator" select="''"/> - - <xsl:variable name="term.separator"> - <xsl:call-template name="index.separator"> - <xsl:with-param name="key" select="'index.term.separator'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="range.separator"> - <xsl:call-template name="index.separator"> - <xsl:with-param name="key" select="'index.range.separator'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="number.separator"> - <xsl:call-template name="index.separator"> - <xsl:with-param name="key" select="'index.number.separator'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$separator != ''"> - <xsl:value-of select="$separator"/> - </xsl:when> - <xsl:when test="$position = 1"> - <xsl:value-of select="$term.separator"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$number.separator"/> - </xsl:otherwise> - </xsl:choose> - - <xsl:choose> - <xsl:when test="@zone and string(@zone)"> - <xsl:call-template name="reference"> - <xsl:with-param name="zones" select="normalize-space(@zone)"/> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="ancestor::*[contains(local-name(),'info') and not(starts-with(local-name(),'info'))]"> - <xsl:call-template name="info.reference"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:basic-link internal-destination="{$id}" - xsl:use-attribute-sets="index.page.number.properties"> - <fo:page-number-citation ref-id="{$id}"/> - </fo:basic-link> - - <xsl:if test="key('endofrange', $id)[&scope;]"> - <xsl:apply-templates select="key('endofrange', $id)[&scope;][last()]" - mode="reference"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:with-param name="separator" select="$range.separator"/> - </xsl:apply-templates> - </xsl:if> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="reference"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - <xsl:param name="zones"/> - - <xsl:variable name="number.separator"> - <xsl:call-template name="index.separator"> - <xsl:with-param name="key" select="'index.number.separator'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:choose> - <xsl:when test="contains($zones, ' ')"> - <xsl:variable name="zone" select="substring-before($zones, ' ')"/> - <xsl:variable name="target" select="key('id', $zone)[&scope;]"/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$target[1]"/> - </xsl:call-template> - </xsl:variable> - - <fo:basic-link internal-destination="{$id}" - xsl:use-attribute-sets="index.page.number.properties"> - <fo:page-number-citation ref-id="{$id}"/> - </fo:basic-link> - - <xsl:if test="$passivetex.extensions = '0'"> - <xsl:copy-of select="$number.separator"/> - </xsl:if> - <xsl:call-template name="reference"> - <xsl:with-param name="zones" select="substring-after($zones, ' ')"/> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="zone" select="$zones"/> - <xsl:variable name="target" select="key('id', $zone)[&scope;]"/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$target[1]"/> - </xsl:call-template> - </xsl:variable> - - <fo:basic-link internal-destination="{$id}" - xsl:use-attribute-sets="index.page.number.properties"> - <fo:page-number-citation ref-id="{$id}"/> - </fo:basic-link> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="info.reference"> - <!-- This is not perfect. It doesn't treat indexterm inside info element as a range covering whole parent of info. - It also not work when there is no ID generated for parent element. But it works in the most common cases. --> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - - <xsl:variable name="target" select="(ancestor::appendix|ancestor::article|ancestor::bibliography|ancestor::book| - ancestor::chapter|ancestor::glossary|ancestor::part|ancestor::preface| - ancestor::refentry|ancestor::reference|ancestor::refsect1|ancestor::refsect2| - ancestor::refsect3|ancestor::refsection|ancestor::refsynopsisdiv| - ancestor::sect1|ancestor::sect2|ancestor::sect3|ancestor::sect4|ancestor::sect5| - ancestor::section|ancestor::setindex|ancestor::set|ancestor::sidebar)[&scope;]"/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$target[1]"/> - </xsl:call-template> - </xsl:variable> - - <fo:basic-link internal-destination="{$id}" - xsl:use-attribute-sets="index.page.number.properties"> - <fo:page-number-citation ref-id="{$id}"/> - </fo:basic-link> -</xsl:template> - -<xsl:template match="indexterm" mode="index-see"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - - <fo:inline> - <xsl:text> (</xsl:text> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'see'"/> - </xsl:call-template> - <xsl:text> </xsl:text> - <xsl:value-of select="see"/> - <xsl:text>)</xsl:text> - </fo:inline> -</xsl:template> - -<xsl:template match="indexterm" mode="index-seealso"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - - <xsl:for-each select="seealso"> - <xsl:sort select="translate(., &lowercase;, &uppercase;)"/> - <fo:block> - <xsl:text>(</xsl:text> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'seealso'"/> - </xsl:call-template> - <xsl:text> </xsl:text> - <xsl:value-of select="."/> - <xsl:text>)</xsl:text> - </fo:block> - </xsl:for-each> - -</xsl:template> - -<!-- ====================================================================== --> - -<xsl:template name="generate-index-markup"> - <xsl:param name="scope" select="(ancestor::book|/)[last()]"/> - <xsl:param name="role" select="@role"/> - <xsl:param name="type" select="@type"/> - - <xsl:variable name="terms" select="$scope//indexterm[count(.|key('letter', - translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;))[&scope;][1]) = 1]"/> - <xsl:variable name="alphabetical" - select="$terms[contains(concat(&lowercase;, &uppercase;), - substring(&primary;, 1, 1))]"/> - <xsl:variable name="others" select="$terms[not(contains(concat(&lowercase;, - &uppercase;), - substring(&primary;, 1, 1)))]"/> - - <xsl:text><index> </xsl:text> - <xsl:if test="$others"> - <xsl:text> <indexdiv> </xsl:text> - <xsl:text><title></xsl:text> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'index symbols'"/> - </xsl:call-template> - <xsl:text></title> </xsl:text> - <xsl:apply-templates select="$others[count(.|key('primary', - &primary;)[&scope;][1]) = 1]" - mode="index-symbol-div-markup"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - <xsl:text></indexdiv> </xsl:text> - </xsl:if> - - <xsl:apply-templates select="$alphabetical[count(.|key('letter', - translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;))[&scope;][1]) = 1]" - mode="index-div-markup"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - <xsl:text></index> </xsl:text> -</xsl:template> - -<xsl:template match="*" mode="index-markup"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - - <xsl:text><</xsl:text> - <xsl:value-of select="local-name(.)"/> - <xsl:text>> </xsl:text> - <xsl:apply-templates mode="index-markup"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="indexterm" mode="index-div-markup"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - <xsl:variable name="key" select="translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;)"/> - <xsl:text> <indexdiv> </xsl:text> - <xsl:text><title></xsl:text> - <xsl:value-of select="translate($key, &lowercase;, &uppercase;)"/> - <xsl:text></title> </xsl:text> - - <xsl:apply-templates select="key('letter', $key)[&scope;][count(.|key('primary', &primary;)[&scope;][1]) = 1]" - mode="index-primary-markup"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - <xsl:text></indexdiv> </xsl:text> -</xsl:template> - -<xsl:template match="indexterm" mode="index-symbol-div-markup"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - <xsl:variable name="key" select="translate(substring(&primary;, 1, 1),&lowercase;,&uppercase;)"/> - - <xsl:apply-templates select="key('letter', $key)[&scope;][count(.|key('primary', &primary;)[&scope;][1]) = 1]" - mode="index-primary-markup"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(&primary;, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="indexterm" mode="index-primary-markup"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - <xsl:variable name="key" select="&primary;"/> - <xsl:variable name="refs" select="key('primary', $key)[&scope;]"/> - <xsl:variable name="pages" select="$refs[not(see) and not(seealso)]"/> - - <xsl:text> <indexentry> </xsl:text> - <xsl:text><primaryie></xsl:text> - <xsl:text><phrase></xsl:text> - <xsl:call-template name="escape-text"> - <xsl:with-param name="text" select="string(primary)"/> - </xsl:call-template> - <xsl:text></phrase></xsl:text> - <xsl:if test="$pages">,</xsl:if> - <xsl:text> </xsl:text> - - <xsl:for-each select="$pages"> - <xsl:apply-templates select="." mode="reference-markup"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - </xsl:apply-templates> - </xsl:for-each> - - <xsl:text></primaryie> </xsl:text> - - <xsl:if test="$refs/secondary or $refs[not(secondary)]/*[self::see or self::seealso]"> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &sep;, &sep;, see))[&scope;][1])]" - mode="index-see-markup"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(see, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &sep;, &sep;, seealso))[&scope;][1])]" - mode="index-seealso-markup"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(seealso, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - - <xsl:apply-templates select="$refs[secondary and count(.|key('secondary', concat($key, &sep;, &secondary;))[&scope;][1]) = 1]" - mode="index-secondary-markup"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(&secondary;, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - </xsl:if> - <xsl:text></indexentry> </xsl:text> -</xsl:template> - -<xsl:template match="indexterm" mode="index-secondary-markup"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - <xsl:variable name="key" select="concat(&primary;, &sep;, &secondary;)"/> - <xsl:variable name="refs" select="key('secondary', $key)[&scope;]"/> - <xsl:variable name="pages" select="$refs[not(see) and not(seealso)]"/> - - <xsl:text><secondaryie></xsl:text> - <xsl:text><phrase></xsl:text> - <xsl:call-template name="escape-text"> - <xsl:with-param name="text" select="string(secondary)"/> - </xsl:call-template> - <xsl:text></phrase></xsl:text> - <xsl:if test="$pages">,</xsl:if> - <xsl:text> </xsl:text> - - <xsl:for-each select="$pages"> - <xsl:apply-templates select="." mode="reference-markup"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - </xsl:apply-templates> - </xsl:for-each> - - <xsl:text></secondaryie> </xsl:text> - - <xsl:if test="$refs/tertiary or $refs[not(tertiary)]/*[self::see or self::seealso]"> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &secondary;, &sep;, &sep;, see))[&scope;][1])]" - mode="index-see-markup"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(see, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &secondary;, &sep;, &sep;, seealso))[&scope;][1])]" - mode="index-seealso-markup"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(seealso, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - <xsl:apply-templates select="$refs[tertiary and count(.|key('tertiary', concat($key, &sep;, &tertiary;))[&scope;][1]) = 1]" - mode="index-tertiary-markup"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(&tertiary;, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - </xsl:if> -</xsl:template> - -<xsl:template match="indexterm" mode="index-tertiary-markup"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - <xsl:variable name="key" select="concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;)"/> - <xsl:variable name="refs" select="key('tertiary', $key)[&scope;]"/> - <xsl:variable name="pages" select="$refs[not(see) and not(seealso)]"/> - - <xsl:text><tertiaryie></xsl:text> - <xsl:text><phrase></xsl:text> - <xsl:call-template name="escape-text"> - <xsl:with-param name="text" select="string(tertiary)"/> - </xsl:call-template> - <xsl:text></phrase></xsl:text> - <xsl:if test="$pages">,</xsl:if> - <xsl:text> </xsl:text> - - <xsl:for-each select="$pages"> - <xsl:apply-templates select="." mode="reference-markup"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - </xsl:apply-templates> - </xsl:for-each> - - <xsl:text></tertiaryie> </xsl:text> - - <xsl:variable name="see" select="$refs/see | $refs/seealso"/> - <xsl:if test="$see"> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see', concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;, &sep;, see))[&scope;][1])]" - mode="index-see-markup"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(see, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - <xsl:apply-templates select="$refs[generate-id() = generate-id(key('see-also', concat(&primary;, &sep;, &secondary;, &sep;, &tertiary;, &sep;, seealso))[&scope;][1])]" - mode="index-seealso-markup"> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - <xsl:sort select="translate(seealso, &lowercase;, &uppercase;)"/> - </xsl:apply-templates> - </xsl:if> -</xsl:template> - -<xsl:template match="indexterm" mode="reference-markup"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - - <xsl:choose> - <xsl:when test="@zone and string(@zone)"> - <xsl:call-template name="reference-markup"> - <xsl:with-param name="zones" select="normalize-space(@zone)"/> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - - <xsl:choose> - <xsl:when test="@startref and @class='endofrange'"> - <xsl:text><phrase role="pageno"></xsl:text> - <xsl:text><link linkend="</xsl:text> - <xsl:value-of select="@startref"/> - <xsl:text>"></xsl:text> - <fo:basic-link internal-destination="{@startref}" - xsl:use-attribute-sets="index.page.number.properties"> - <fo:page-number-citation ref-id="{@startref}"/> - <xsl:text>-</xsl:text> - <fo:page-number-citation ref-id="{$id}"/> - </fo:basic-link> - <xsl:text></link></xsl:text> - <xsl:text></phrase> </xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text><phrase role="pageno"></xsl:text> - <xsl:if test="$id"> - <xsl:text><link linkend="</xsl:text> - <xsl:value-of select="$id"/> - <xsl:text>"></xsl:text> - </xsl:if> - <fo:basic-link internal-destination="{$id}" - xsl:use-attribute-sets="index.page.number.properties"> - <fo:page-number-citation ref-id="{$id}"/> - </fo:basic-link> - <xsl:if test="$id"> - <xsl:text></link></xsl:text> - </xsl:if> - <xsl:text></phrase> </xsl:text> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="reference-markup"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - <xsl:param name="zones"/> - <xsl:choose> - <xsl:when test="contains($zones, ' ')"> - <xsl:variable name="zone" select="substring-before($zones, ' ')"/> - <xsl:variable name="target" select="key('id', $zone)[&scope;]"/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$target[1]"/> - </xsl:call-template> - </xsl:variable> - - <xsl:text><phrase fole="pageno"></xsl:text> - <xsl:if test="$target[1]/@id or $target[1]/@xml:id"> - <xsl:text><link linkend="</xsl:text> - <xsl:value-of select="$id"/> - <xsl:text>"></xsl:text> - </xsl:if> - <fo:basic-link internal-destination="{$id}" - xsl:use-attribute-sets="index.page.number.properties"> - <fo:page-number-citation ref-id="{$id}"/> - </fo:basic-link> - <xsl:if test="$target[1]/@id or $target[1]/@xml:id"> - <xsl:text></link></xsl:text> - </xsl:if> - <xsl:text></phrase> </xsl:text> - - <xsl:call-template name="reference"> - <xsl:with-param name="zones" select="substring-after($zones, ' ')"/> - <xsl:with-param name="scope" select="$scope"/> - <xsl:with-param name="role" select="$role"/> - <xsl:with-param name="type" select="$type"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="zone" select="$zones"/> - <xsl:variable name="target" select="key('id', $zone)[&scope;]"/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$target[1]"/> - </xsl:call-template> - </xsl:variable> - - <xsl:text><phrase role="pageno"></xsl:text> - <xsl:if test="$target[1]/@id or target[1]/@xml:id"> - <xsl:text><link linkend="</xsl:text> - <xsl:value-of select="$id"/> - <xsl:text>"></xsl:text> - </xsl:if> - <fo:basic-link internal-destination="{$id}" - xsl:use-attribute-sets="index.page.number.properties"> - <fo:page-number-citation ref-id="{$id}"/> - </fo:basic-link> - <xsl:if test="$target[1]/@id or target[1]/@xml:id"> - <xsl:text></link></xsl:text> - </xsl:if> - <xsl:text></phrase> </xsl:text> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="indexterm" mode="index-see-markup"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - <fo:block> - <xsl:text><seeie></xsl:text> - <xsl:text><phrase></xsl:text> - <xsl:call-template name="escape-text"> - <xsl:with-param name="text" select="string(see)"/> - </xsl:call-template> - <xsl:text></phrase></xsl:text> - <xsl:text></seeie> </xsl:text> - </fo:block> -</xsl:template> - -<xsl:template match="indexterm" mode="index-seealso-markup"> - <xsl:param name="scope" select="."/> - <xsl:param name="role" select="''"/> - <xsl:param name="type" select="''"/> - <fo:block> - <xsl:text><seealsoie></xsl:text> - <xsl:text><phrase></xsl:text> - <xsl:call-template name="escape-text"> - <xsl:with-param name="text" select="string(seealso)"/> - </xsl:call-template> - <xsl:text></phrase></xsl:text> - <xsl:text></seealsoie> </xsl:text> - </fo:block> -</xsl:template> - -<xsl:template name="escape-text"> - <xsl:param name="text" select="''"/> - - <xsl:variable name="ltpos" select="substring-before($text, '<')"/> - <xsl:variable name="amppos" select="substring-before($text, '&')"/> - - <xsl:choose> - <xsl:when test="contains($text,'<') and contains($text, '&') - and string-length($ltpos) < string-length($amppos)"> - <xsl:value-of select="$ltpos"/> - <xsl:text>&lt;</xsl:text> - <xsl:call-template name="escape-text"> - <xsl:with-param name="text" select="substring-after($text, '<')"/> - </xsl:call-template> - </xsl:when> - - <xsl:when test="contains($text,'<') and contains($text, '&') - and string-length($amppos) < string-length($ltpos)"> - <xsl:value-of select="$amppos"/> - <xsl:text>&amp;</xsl:text> - <xsl:call-template name="escape-text"> - <xsl:with-param name="text" select="substring-after($text, '&')"/> - </xsl:call-template> - </xsl:when> - - <xsl:when test="contains($text, '<')"> - <xsl:value-of select="$ltpos"/> - <xsl:text>&lt;</xsl:text> - <xsl:call-template name="escape-text"> - <xsl:with-param name="text" select="substring-after($text, '<')"/> - </xsl:call-template> - </xsl:when> - - <xsl:when test="contains($text, '&')"> - <xsl:value-of select="$amppos"/> - <xsl:text>&amp;</xsl:text> - <xsl:call-template name="escape-text"> - <xsl:with-param name="text" select="substring-after($text, '&')"/> - </xsl:call-template> - </xsl:when> - - <xsl:otherwise> - <xsl:value-of select="$text"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="index.separator"> - <xsl:param name="key" select="''"/> - <xsl:param name="lang"> - <xsl:call-template name="l10n.language"/> - </xsl:param> - - <xsl:choose> - <xsl:when test="$key = 'index.term.separator'"> - <xsl:choose> - <!-- Use the override if not blank --> - <xsl:when test="$index.term.separator != ''"> - <xsl:copy-of select="$index.term.separator"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="gentext.template"> - <xsl:with-param name="lang" select="$lang"/> - <xsl:with-param name="context">index</xsl:with-param> - <xsl:with-param name="name">term-separator</xsl:with-param> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:when test="$key = 'index.number.separator'"> - <xsl:choose> - <!-- Use the override if not blank --> - <xsl:when test="$index.number.separator != ''"> - <xsl:copy-of select="$index.number.separator"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="gentext.template"> - <xsl:with-param name="lang" select="$lang"/> - <xsl:with-param name="context">index</xsl:with-param> - <xsl:with-param name="name">number-separator</xsl:with-param> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:when test="$key = 'index.range.separator'"> - <xsl:choose> - <!-- Use the override if not blank --> - <xsl:when test="$index.range.separator != ''"> - <xsl:copy-of select="$index.range.separator"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="gentext.template"> - <xsl:with-param name="lang" select="$lang"/> - <xsl:with-param name="context">index</xsl:with-param> - <xsl:with-param name="name">range-separator</xsl:with-param> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - </xsl:choose> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/autotoc.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/autotoc.xsl deleted file mode 100644 index 30f327782..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/autotoc.xsl +++ /dev/null @@ -1,855 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<xsl:template name="set.toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="cid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$toc-context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="nodes" select="book|setindex"/> - - <xsl:if test="$nodes"> - <fo:block id="toc...{$id}" - xsl:use-attribute-sets="toc.margin.properties"> - <xsl:if test="$axf.extensions != 0"> - <xsl:attribute name="axf:outline-level">1</xsl:attribute> - <xsl:attribute name="axf:outline-expand">false</xsl:attribute> - <xsl:attribute name="axf:outline-title"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'TableofContents'"/> - </xsl:call-template> - </xsl:attribute> - </xsl:if> - <xsl:call-template name="table.of.contents.titlepage"/> - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template name="division.toc"> - <xsl:param name="toc-context" select="."/> - <xsl:param name="toc.title.p" select="true()"/> - - <xsl:variable name="cid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$toc-context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="nodes" - select="$toc-context/part - |$toc-context/reference - |$toc-context/preface - |$toc-context/chapter - |$toc-context/appendix - |$toc-context/article - |$toc-context/bibliography - |$toc-context/glossary - |$toc-context/index"/> - - <xsl:if test="$nodes"> - <fo:block id="toc...{$cid}" - xsl:use-attribute-sets="toc.margin.properties"> - <xsl:if test="$axf.extensions != 0"> - <xsl:attribute name="axf:outline-level">1</xsl:attribute> - <xsl:attribute name="axf:outline-expand">false</xsl:attribute> - <xsl:attribute name="axf:outline-title"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'TableofContents'"/> - </xsl:call-template> - </xsl:attribute> - </xsl:if> - <xsl:if test="$toc.title.p"> - <xsl:call-template name="table.of.contents.titlepage"/> - </xsl:if> - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template name="component.toc"> - <xsl:param name="toc-context" select="."/> - <xsl:param name="toc.title.p" select="true()"/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="cid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$toc-context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="nodes" select="section|sect1|refentry - |article|bibliography|glossary - |qandaset[$qanda.in.toc != 0] - |appendix|index"/> - <xsl:if test="$nodes"> - <fo:block id="toc...{$id}" - xsl:use-attribute-sets="toc.margin.properties"> - <xsl:if test="$toc.title.p"> - <xsl:call-template name="table.of.contents.titlepage"/> - </xsl:if> - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template name="component.toc.separator"> - <!-- Customize to output something between - component.toc and first output --> -</xsl:template> - -<xsl:template name="section.toc"> - <xsl:param name="toc-context" select="."/> - <xsl:param name="toc.title.p" select="true()"/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="cid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$toc-context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="nodes" - select="section|sect1|sect2|sect3|sect4|sect5|refentry - |qandaset[$qanda.in.toc != 0] - |bridgehead[$bridgehead.in.toc != 0]"/> - - <xsl:variable name="level"> - <xsl:call-template name="section.level"/> - </xsl:variable> - - <xsl:if test="$nodes"> - <fo:block id="toc...{$id}" - xsl:use-attribute-sets="toc.margin.properties"> - - <xsl:if test="$toc.title.p"> - <xsl:call-template name="section.heading"> - <xsl:with-param name="level" select="$level + 1"/> - <xsl:with-param name="title"> - <fo:block space-after="0.5em"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'TableofContents'"/> - </xsl:call-template> - </fo:block> - </xsl:with-param> - </xsl:call-template> - </xsl:if> - - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template name="section.toc.separator"> - <!-- Customize to output something between - section.toc and first output --> -</xsl:template> -<!-- ==================================================================== --> - -<xsl:template name="toc.line"> - <xsl:param name="toc-context" select="NOTANODE"/> - - <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 xsl:use-attribute-sets="toc.line.properties"> - <fo:inline keep-with-next.within-line="always"> - <fo:basic-link internal-destination="{$id}"> - <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> - -<!-- ==================================================================== --> -<xsl:template name="qandaset.toc"> - <xsl:param name="toc-context" select="."/> - <xsl:param name="toc.title.p" select="true()"/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="cid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$toc-context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="nodes" select="qandadiv|qandaentry"/> - - <xsl:if test="$nodes"> - <fo:block id="toc...{$id}" - xsl:use-attribute-sets="toc.margin.properties"> - <xsl:if test="$toc.title.p"> - <xsl:call-template name="table.of.contents.titlepage"/> - </xsl:if> - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template name="qandaset.toc.separator"> - <!-- Customize to output something between - qandaset.toc and first output --> -</xsl:template> - -<xsl:template match="qandadiv" mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="cid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$toc-context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> - - <xsl:variable name="nodes" select="qandadiv|qandaentry"/> - - <xsl:if test="$nodes"> - <fo:block id="toc.{$cid}.{$id}"> - <xsl:attribute name="margin-left"> - <xsl:call-template name="set.toc.indent"/> - </xsl:attribute> - - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="qandaentry" mode="toc"> - <xsl:apply-templates select="question" mode="toc"/> -</xsl:template> - -<xsl:template match="question" mode="toc"> - <xsl:variable name="firstchunk"> - <xsl:apply-templates select="(*[local-name(.)!='label'])[1]/node()"/> - </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> - - <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 xsl:use-attribute-sets="toc.line.properties" - margin-left="3em" - text-indent="-3em" - 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}"> - <xsl:if test="$label != ''"> - <xsl:copy-of select="$label"/> - <xsl:if test="$deflabel = 'number' and not(label)"> - <xsl:value-of select="$autotoc.label.separator"/> - </xsl:if> - <xsl:text> </xsl:text> - </xsl:if> - <xsl:copy-of select="$firstchunk"/> - </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> - -<!-- ==================================================================== --> - -<xsl:template match="book|setindex" mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="cid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$toc-context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> - - <xsl:variable name="nodes" select="glossary|bibliography|preface|chapter - |reference|part|article|appendix|index"/> - - <xsl:variable name="depth.from.context" select="count(ancestor::*)-count($toc-context/ancestor::*)"/> - - <xsl:if test="$toc.section.depth > 0 - and $toc.max.depth > $depth.from.context - and $nodes"> - <fo:block id="toc.{$cid}.{$id}"> - <xsl:attribute name="margin-left"> - <xsl:call-template name="set.toc.indent"/> - </xsl:attribute> - - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="part" mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="cid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$toc-context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> - - <xsl:variable name="nodes" select="chapter|appendix|preface|reference| - refentry|article|index|glossary| - bibliography"/> - - <xsl:variable name="depth.from.context" select="count(ancestor::*)-count($toc-context/ancestor::*)"/> - - <xsl:if test="$toc.section.depth > 0 - and $toc.max.depth > $depth.from.context - and $nodes"> - <fo:block id="toc.{$cid}.{$id}"> - <xsl:attribute name="margin-left"> - <xsl:call-template name="set.toc.indent"/> - </xsl:attribute> - - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="reference" mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="cid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$toc-context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="depth.from.context" select="count(ancestor::*)-count($toc-context/ancestor::*)"/> - - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> - - <xsl:if test="$toc.section.depth > 0 - and $toc.max.depth > $depth.from.context - and refentry"> - <fo:block id="toc.{$cid}.{$id}"> - <xsl:attribute name="margin-left"> - <xsl:call-template name="set.toc.indent"/> - </xsl:attribute> - - <xsl:apply-templates select="refentry" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="refentry" mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> -</xsl:template> - -<xsl:template match="preface|chapter|appendix|article" - mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="cid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$toc-context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> - - <xsl:variable name="nodes" select="section|sect1 - |qandaset[$qanda.in.toc != 0] - |simplesect[$simplesect.in.toc != 0] - |refentry|appendix"/> - - <xsl:variable name="depth.from.context" select="count(ancestor::*)-count($toc-context/ancestor::*)"/> - - <xsl:if test="$toc.section.depth > 0 - and $toc.max.depth > $depth.from.context - and $nodes"> - <fo:block id="toc.{$cid}.{$id}"> - <xsl:attribute name="margin-left"> - <xsl:call-template name="set.toc.indent"/> - </xsl:attribute> - - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="sect1" mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="cid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$toc-context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> - - <xsl:variable name="depth.from.context" select="count(ancestor::*)-count($toc-context/ancestor::*)"/> - - <xsl:if test="$toc.section.depth > 1 - and $toc.max.depth > $depth.from.context - and sect2"> - <fo:block id="toc.{$cid}.{$id}"> - <xsl:attribute name="margin-left"> - <xsl:call-template name="set.toc.indent"/> - </xsl:attribute> - - <xsl:apply-templates select="sect2|qandaset[$qanda.in.toc != 0]" - mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="sect2" mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="cid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$toc-context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> - - <xsl:variable name="reldepth" - select="count(ancestor::*)-count($toc-context/ancestor::*)"/> - - <xsl:variable name="depth.from.context" select="count(ancestor::*)-count($toc-context/ancestor::*)"/> - - <xsl:if test="$toc.section.depth > 2 - and $toc.max.depth > $depth.from.context - and sect3"> - <fo:block id="toc.{$cid}.{$id}"> - <xsl:attribute name="margin-left"> - <xsl:call-template name="set.toc.indent"> - <xsl:with-param name="reldepth" select="$reldepth"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="sect3|qandaset[$qanda.in.toc != 0]" - mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="sect3" mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="cid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$toc-context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> - - <xsl:variable name="reldepth" - select="count(ancestor::*)-count($toc-context/ancestor::*)"/> - - <xsl:variable name="depth.from.context" select="count(ancestor::*)-count($toc-context/ancestor::*)"/> - - <xsl:if test="$toc.section.depth > 3 - and $toc.max.depth > $depth.from.context - and sect4"> - <fo:block id="toc.{$cid}.{$id}"> - <xsl:attribute name="margin-left"> - <xsl:call-template name="set.toc.indent"> - <xsl:with-param name="reldepth" select="$reldepth"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="sect4|qandaset[$qanda.in.toc != 0]" - mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="sect4" mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="cid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$toc-context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> - - <xsl:variable name="reldepth" - select="count(ancestor::*)-count($toc-context/ancestor::*)"/> - - <xsl:variable name="depth.from.context" select="count(ancestor::*)-count($toc-context/ancestor::*)"/> - - <xsl:if test="$toc.section.depth > 4 - and $toc.max.depth > $depth.from.context - and sect5"> - <fo:block id="toc.{$cid}.{$id}"> - <xsl:attribute name="margin-left"> - <xsl:call-template name="set.toc.indent"> - <xsl:with-param name="reldepth" select="$reldepth"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="sect5|qandaset[$qanda.in.toc != 0]" - mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="sect5|simplesect" mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> -</xsl:template> - -<xsl:template name="set.toc.indent"> - <xsl:param name="reldepth"/> - - <xsl:variable name="depth"> - <xsl:choose> - <xsl:when test="$reldepth != ''"> - <xsl:value-of select="$reldepth"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="count(ancestor::*)"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$fop.extensions != 0 or $passivetex.extensions != 0"> - <xsl:value-of select="concat($depth*$toc.indent.width, 'pt')"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="concat($toc.indent.width, 'pt')"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - - -<xsl:template match="section" mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="cid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$toc-context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="depth" select="count(ancestor::section) + 1"/> - <xsl:variable name="reldepth" - select="count(ancestor::*)-count($toc-context/ancestor::*)"/> - - <xsl:variable name="depth.from.context" select="count(ancestor::*)-count($toc-context/ancestor::*)"/> - - <xsl:if test="$toc.section.depth >= $depth"> - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> - - <xsl:if test="$toc.section.depth > $depth - and $toc.max.depth > $depth.from.context - and section"> - <fo:block id="toc.{$cid}.{$id}"> - <xsl:attribute name="margin-left"> - <xsl:call-template name="set.toc.indent"> - <xsl:with-param name="reldepth" select="$reldepth"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="section|qandaset[$qanda.in.toc != 0]" - mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> - </xsl:if> -</xsl:template> - -<xsl:template match="bibliography|glossary" - mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> -</xsl:template> - -<xsl:template match="index" mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:if test="* or $generate.index != 0"> - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> - </xsl:if> -</xsl:template> - -<xsl:template match="title" mode="toc"> - <xsl:apply-templates/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="list.of.titles"> - <xsl:param name="titles" select="'table'"/> - <xsl:param name="nodes" select=".//table"/> - <xsl:param name="toc-context" select="."/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:if test="$nodes"> - <fo:block id="lot...{$titles}...{$id}"> - <xsl:choose> - <xsl:when test="$titles='table'"> - <xsl:call-template name="list.of.tables.titlepage"/> - </xsl:when> - <xsl:when test="$titles='figure'"> - <xsl:call-template name="list.of.figures.titlepage"/> - </xsl:when> - <xsl:when test="$titles='equation'"> - <xsl:call-template name="list.of.equations.titlepage"/> - </xsl:when> - <xsl:when test="$titles='example'"> - <xsl:call-template name="list.of.examples.titlepage"/> - </xsl:when> - <xsl:when test="$titles='procedure'"> - <xsl:call-template name="list.of.procedures.titlepage"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="list.of.unknowns.titlepage"/> - </xsl:otherwise> - </xsl:choose> - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="figure|table|example|equation|procedure" mode="toc"> - <xsl:param name="toc-context" select="."/> - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> -</xsl:template> - -<!-- ==================================================================== --> - -<!-- qandaset handled like a section when qanda.in.toc is set --> -<xsl:template match="qandaset" mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="cid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$toc-context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="depth" select="count(ancestor::section) + 1"/> - <xsl:variable name="reldepth" - select="count(ancestor::*)-count($toc-context/ancestor::*)"/> - - <xsl:variable name="depth.from.context" select="count(ancestor::*)-count($toc-context/ancestor::*)"/> - - <xsl:if test="$toc.section.depth >= $depth"> - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> - - <xsl:if test="$toc.section.depth > $depth - and $toc.max.depth > $depth.from.context - and (child::qandadiv or child::qandaentry)"> - <fo:block id="toc.{$cid}.{$id}"> - <xsl:attribute name="margin-left"> - <xsl:call-template name="set.toc.indent"> - <xsl:with-param name="reldepth" select="$reldepth"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="qandadiv|qandaentry" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </fo:block> - </xsl:if> - </xsl:if> -</xsl:template> - -</xsl:stylesheet> - diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/axf.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/axf.xsl deleted file mode 100644 index f74c52523..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/axf.xsl +++ /dev/null @@ -1,110 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** --> - -<xsl:template name="axf-document-information"> - - <xsl:variable name="authors" select="(//author|//editor| - //corpauthor|//authorgroup)[1]"/> - <xsl:if test="$authors"> - <xsl:variable name="author"> - <xsl:choose> - <xsl:when test="$authors[self::authorgroup]"> - <xsl:call-template name="person.name.list"> - <xsl:with-param name="person.list" - select="$authors/*[self::author|self::corpauthor| - self::othercredit|self::editor]"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="$authors[self::corpauthor]"> - <xsl:value-of select="$authors"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="person.name"> - <xsl:with-param name="node" select="$authors"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:element name="axf:document-info"> - <xsl:attribute name="name">author</xsl:attribute> - <xsl:attribute name="value"> - <xsl:value-of select="normalize-space($author)"/> - </xsl:attribute> - </xsl:element> - </xsl:if> - - <xsl:variable name="title"> - <xsl:apply-templates select="/*[1]" mode="label.markup"/> - <xsl:apply-templates select="/*[1]" mode="title.markup"/> - </xsl:variable> - - <!-- * see bug report #1465301 - mzjn --> - <axf:document-info name="title"> - <xsl:attribute name="value"> - <xsl:value-of select="normalize-space($title)"/> - </xsl:attribute> - </axf:document-info> - - <xsl:if test="//keyword"> - <xsl:element name="axf:document-info"> - <xsl:attribute name="name">keywords</xsl:attribute> - <xsl:attribute name="value"> - <xsl:for-each select="//keyword"> - <xsl:value-of select="normalize-space(.)"/> - <xsl:if test="position() != last()"> - <xsl:text>, </xsl:text> - </xsl:if> - </xsl:for-each> - </xsl:attribute> - </xsl:element> - </xsl:if> - - <xsl:if test="//subjectterm"> - <xsl:element name="axf:document-info"> - <xsl:attribute name="name">subject</xsl:attribute> - <xsl:attribute name="value"> - <xsl:for-each select="//subjectterm"> - <xsl:value-of select="normalize-space(.)"/> - <xsl:if test="position() != last()"> - <xsl:text>, </xsl:text> - </xsl:if> - </xsl:for-each> - </xsl:attribute> - </xsl:element> - </xsl:if> - -</xsl:template> - -<!-- These properties are added to fo:simple-page-master --> -<xsl:template name="axf-page-master-properties"> - <xsl:param name="page.master" select="''"/> - - <xsl:if test="$crop.marks != 0"> - <xsl:attribute name="axf:printer-marks">crop</xsl:attribute> - <xsl:attribute name="axf:bleed"><xsl:value-of - select="$crop.mark.bleed"/></xsl:attribute> - <xsl:attribute name="axf:printer-marks-line-width"><xsl:value-of - select="$crop.mark.width"/></xsl:attribute> - <xsl:attribute name="axf:crop-offset"><xsl:value-of - select="$crop.mark.offset"/></xsl:attribute> - </xsl:if> - - <xsl:call-template name="user-axf-page-master-properties"> - <xsl:with-param name="page.master" select="$page.master"/> - </xsl:call-template> - -</xsl:template> - -<xsl:template name="user-axf-page-master-properties"> - <xsl:param name="page.master" select="''"/> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/biblio-iso690.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/biblio-iso690.xsl deleted file mode 100644 index 11c99ca12..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/biblio-iso690.xsl +++ /dev/null @@ -1,1300 +0,0 @@ -<?xml version="1.0" encoding="windows-1250"?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - The original code for processing bibliography in ISO690 style - was provided by Jana Dvorakova <jana4u@seznam.cz> - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<!-- if biblioentry.alt.primary.seps is set to nonzero value then use alternative separators for primary responsibility - $alt.person.two.sep, $alt.person.last.sep, $alt.person.more.sep --> -<xsl:param name="biblioentry.alt.primary.seps" select="0"/> - -<!-- how many authors will be printed if there is more than three authors - set to number 1 (default value), 2 or 3 --> -<xsl:param name="biblioentry.primary.count" select="1"/> - -<!-- ==================================================================== --> - -<xsl:template name="iso690.makecitation"> -<!-- Types of resources --> - <xsl:choose> - - <!-- SYSTEMS OF ELECTRONIC COMMUNICATION : ENTIRE MESSAGE SYSTEM --> - <!-- same as Monographs --> - <xsl:when test="./@role='messagesystem'"> - <xsl:call-template name="iso690.monogr"/> - </xsl:when> - - <!-- SYSTEMS OF ELECTRONIC COMMUNICATION : ELECTRONIC MESSAGES --> - <!-- same as Contributions to Monographs --> - <xsl:when test="./@role='message'"> - <xsl:call-template name="iso690.paper.mon"/> - </xsl:when> - - <!-- SERIALS --> - <xsl:when test="./@role='serial' or ./biblioid/@class='issn' or ./issn"> - <xsl:call-template name="iso690.serial"/> - </xsl:when> - - <!-- PARTS OF MONOGRAPHS --> - <xsl:when test="./@role='part' or (./bibliomisc[@role='secnum']|./bibliomisc[@role='sectitle'])"> - <xsl:call-template name="iso690.monogr.part"/> - </xsl:when> - - <!-- CONTRIBUTIONS TO MONOGRAPHS --> - <xsl:when test="./@role='contribution' or (./biblioset/@relation='part' and ./biblioset/@relation='book')"> - <xsl:call-template name="iso690.paper.mon"/> - </xsl:when> - - <!-- ARTICLES, ETC., IN SERIALS --> - <xsl:when test="./@role='article' or (./biblioset/@relation='journal' and ./biblioset/@relation='article')"> - <xsl:call-template name="iso690.article"/> - </xsl:when> - - <!-- PATENT DOCUMENTS --> - <xsl:when test="./@role='patent' or (./bibliomisc[@role='patenttype'] and ./bibliomisc[@role='patentnum'])"> - <xsl:call-template name="iso690.patent"/> - </xsl:when> - - <!-- MONOGRAPHS --> - <xsl:otherwise> - <xsl:call-template name="iso690.monogr"/> - </xsl:otherwise> - - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<!-- MONOGRAPHS --> -<xsl:template name="iso690.monogr"> - <!-- Primary responsibility --> - <xsl:call-template name="iso690.primary"/> - <!-- Title and Type of medium --> - <xsl:call-template name="iso690.title"/> - <!-- Subordinate responsibility --> - <xsl:call-template name="iso690.secondary"/> - <!-- Edition --> - <xsl:call-template name="iso690.edition"/> - <!-- Place of publication, Publisher, Year/Date of publication, Date of update/revision, Date of citation --> - <xsl:call-template name="iso690.pub"/> - <!-- Extent --> - <xsl:call-template name="iso690.extent"/> - <!-- Series --> - <xsl:call-template name="iso690.serie"/> - <!-- Notes --> - <xsl:call-template name="iso690.notice"/> - <!-- Avaibility and access --> - <xsl:call-template name="iso690.access"/> - <!-- Standard number --> - <xsl:call-template name="iso690.isbn"/> -</xsl:template> - -<!-- SERIALS --> -<xsl:template name="iso690.serial"> - <!-- Title and Type of medium --> - <xsl:call-template name="iso690.title"/> - <!-- Responsibility [nonEL] --> - <xsl:if test="not(./bibliomisc[@role='medium'])"> - <xsl:call-template name="iso690.secondary"/> - </xsl:if> - <!-- Edition --> - <xsl:call-template name="iso690.edition"> - <xsl:with-param name="after" select="./bibliomisc[@role='issuing']"/> - </xsl:call-template> - <!-- Issue designation (date and/or n°) [nonEL] --> - <xsl:if test="not(./bibliomisc[@role='medium'])"> - <xsl:call-template name="iso690.issuing"/> - </xsl:if> - <!-- Place of publication, Publisher, Year/Date of publication, Date of update/revision, Date of citation --> - <xsl:call-template name="iso690.pub"/> - <!-- Series --> - <xsl:call-template name="iso690.serie"/> - <!-- Notes --> - <xsl:call-template name="iso690.notice"/> - <!-- Avaibility and access --> - <xsl:call-template name="iso690.access"/> - <!-- Standard number --> - <xsl:call-template name="iso690.issn"/> -</xsl:template> - -<!-- PARTS OF MONOGRAPHS --> -<xsl:template name="iso690.monogr.part"> - <!-- Primary responsibility of host document --> - <xsl:call-template name="iso690.primary"/> - <!-- Title and Type of medium of host document --> - <xsl:call-template name="iso690.title"/> - <!-- Subordinate responsibility of host document [EL] --> - <xsl:if test="./bibliomisc[@role='medium']"> - <xsl:call-template name="iso690.secondary"/> - </xsl:if> - <!-- Edition --> - <xsl:call-template name="iso690.edition"> - <xsl:with-param name="after" select="./volumenum"/> - </xsl:call-template> - <!-- Numeration of the part [nonEL]--> - <xsl:if test="not(./bibliomisc[@role='medium'])"> - <xsl:call-template name="iso690.partnr"/> - <!-- Subordinate responsibility [nonEL] --> - <xsl:call-template name="iso690.secondary"/> - </xsl:if> - <!-- Place of publication, Publisher, Year/Date of publication, Date of update/revision, Date of citation --> - <xsl:call-template name="iso690.pub"/> - <!-- Location within host --> - <xsl:call-template name="iso690.part.location"/> - <xsl:if test="./bibliomisc[@role='medium']"> - <!-- Numeration within host document [EL] --> - <!-- Notes [EL] --> - <xsl:call-template name="iso690.notice"/> - <!-- Avaibility and access [EL] --> - <xsl:call-template name="iso690.access"/> - <!-- Standard number [EL] --> - <xsl:call-template name="iso690.isbn"/> - </xsl:if> -</xsl:template> - -<!-- CONTRIBUTIONS TO MONOGRAPHS --> -<xsl:template name="iso690.paper.mon"> -<!-- Contribution --> - <xsl:apply-templates mode="iso690.paper.part" select="./biblioset[@relation='part']"/> -<!-- In --> - <xsl:text>In </xsl:text> -<!-- Host --> - <xsl:apply-templates mode="iso690.paper.book" select="./biblioset[@relation='book']"/> -</xsl:template> - -<xsl:template match="biblioset" mode="iso690.paper.part"> -<!-- Contribution --> - <!-- Primary responsibility --> - <xsl:call-template name="iso690.primary"/> - <!-- Title --> - <xsl:call-template name="iso690.title"> - <xsl:with-param name="italic" select="0"/> - </xsl:call-template> -</xsl:template> - -<xsl:template match="biblioset" mode="iso690.paper.book"> -<!-- Host --> - <!-- Primary responsibility --> - <xsl:call-template name="iso690.primary"/> - <!-- Title and Type of medium --> - <xsl:call-template name="iso690.title"/> - <!-- Subordinate responsibility [EL] --> - <xsl:if test="./bibliomisc[@role='medium']"> - <xsl:call-template name="iso690.secondary"/> - </xsl:if> - <!-- Edition --> - <xsl:call-template name="iso690.edition"/> - <!-- Place of publication, Publisher, Year/Date of publication, Date of update/revision, Date of citation --> - <xsl:call-template name="iso690.paper.pub"/> - <!-- Numeration within host document [EL] --> - <!-- Location within host --> - <xsl:call-template name="iso690.location"/> - <xsl:if test="./bibliomisc[@role='medium']"> - <!-- Notes [EL] --> - <xsl:call-template name="iso690.notice"/> - <!-- Avaibility and access [EL] --> - <xsl:call-template name="iso690.access"/> - <!-- Standard number [EL] --> - <xsl:call-template name="iso690.isbn"/> - </xsl:if> -</xsl:template> - -<!-- ARTICLES, ETC., IN SERIALS --> -<xsl:template name="iso690.article"> -<!-- Article --> - <xsl:apply-templates mode="iso690.article.art" select="./biblioset[@relation='article']"/> -<!-- Serial --> - <xsl:apply-templates mode="iso690.article.jour" select="./biblioset[@relation='journal']"/> -</xsl:template> - -<xsl:template match="biblioset" mode="iso690.article.art"> -<!-- Article --> - <!-- Primary responsibility --> - <xsl:call-template name="iso690.primary"/> - <!-- Title --> - <xsl:call-template name="iso690.title"> - <xsl:with-param name="italic" select="0"/> - </xsl:call-template> - <!-- Subordinate responsibility [nonEL] --> - <xsl:if test="not(../*/bibliomisc[@role='medium'])"> - <xsl:call-template name="iso690.secondary"/> - </xsl:if> -</xsl:template> - -<xsl:template match="biblioset" mode="iso690.article.jour"> -<!-- Serial --> - <!-- Title and Type of medium --> - <xsl:call-template name="iso690.title"/> - <!-- Edition --> - <xsl:call-template name="iso690.edition"> - <xsl:with-param name="after" select="./pubdate[not(@role='issuing')]|./volumenum|./issuenum|./pagenums"/> - </xsl:call-template> - <!-- Number designation [EL] --> - <!-- Location within host --> - <xsl:call-template name="iso690.article.location"/> - <xsl:if test="./bibliomisc[@role='medium']"> - <!-- Notes [EL] --> - <xsl:call-template name="iso690.notice"/> - <!-- Avaibility and access [EL] --> - <xsl:call-template name="iso690.access"/> - <!-- Standard number [EL] --> - <xsl:call-template name="iso690.issn"/> - </xsl:if> -</xsl:template> - -<!-- PATENT DOCUMENTS --> -<xsl:template name="iso690.patent"> - <!-- Primary responsibility (applicant) --> - <xsl:call-template name="iso690.primary"/> - <!-- Title of the invention --> - <xsl:call-template name="iso690.title"/> - <!-- Subordinate responsibility --> - <xsl:call-template name="iso690.secondary"/> - <!-- Notes --> - <xsl:call-template name="iso690.notice"/> - <!-- Identification --> - <xsl:call-template name="iso690.pat.ident"/> -</xsl:template> - -<!-- ==================================================================== --> -<!-- Elements --> - -<!-- Primary responsibility --> -<xsl:template name="iso690.primary"> - <xsl:param name="primary.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'primary.sep'"/></xsl:call-template> - </xsl:param> - <xsl:choose> - <xsl:when test="./authorgroup/author|./author"> - <xsl:call-template name="iso690.author.list"> - <xsl:with-param name="person.list" select=".//authorgroup/author|.//author"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="./authorgroup/editor|./editor"> - <xsl:call-template name="iso690.author.list"> - <xsl:with-param name="person.list" select=".//authorgroup/editor|.//editor"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="./authorgroup/corpauthor|./corpauthor"> - <xsl:call-template name="iso690.author.list"> - <xsl:with-param name="person.list" select=".//authorgroup/corpauthor|.//corpauthor"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:if test="(./firstname)and(./surname)"> - <xsl:call-template name="iso690.author"/> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="string(./firstname[1])"/> - <xsl:with-param name="sep" select="$primary.sep"/> - </xsl:call-template> - </xsl:if> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="iso690.author.list"> - <xsl:param name="person.list" - select="author|corpauthor|editor"/> - <xsl:param name="person.count" select="count($person.list)"/> - <xsl:param name="count" select="1"/> - <xsl:param name="group" select="./authorgroup[@role='many']"/> - <xsl:param name="many" select="0"/> - - <xsl:param name="primary.many"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'primary.many'"/></xsl:call-template> - </xsl:param> - <xsl:param name="primary.editor"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'primary.editor'"/></xsl:call-template> - </xsl:param> - <xsl:param name="primary.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'primary.sep'"/></xsl:call-template> - </xsl:param> - - <xsl:choose> - <xsl:when test="$count > $person.count"></xsl:when> - <xsl:otherwise> - <xsl:choose> - <xsl:when test="$person.count < 4 and not($group)"> - <xsl:call-template name="iso690.author"> - <xsl:with-param name="node" select="$person.list[position()=$count]"/> - </xsl:call-template> - <xsl:choose> - <xsl:when test="$person.count = 2 and $count = 1 and $biblioentry.alt.primary.seps != 0"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'alt.person.two.sep'"/></xsl:call-template> - </xsl:when> - <xsl:when test="$person.count = 2 and $count = 1"> - <xsl:call-template name="gentext.template"> - <xsl:with-param name="context" select="'authorgroup'"/> - <xsl:with-param name="name" select="'sep2'"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="$person.count > 2 and $count+1 = $person.count and $biblioentry.alt.primary.seps != 0"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'alt.person.last.sep'"/></xsl:call-template> - </xsl:when> - <xsl:when test="$person.count > 2 and $count+1 = $person.count"> - <xsl:call-template name="gentext.template"> - <xsl:with-param name="context" select="'authorgroup'"/> - <xsl:with-param name="name" select="'seplast'"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="$count < $person.count and $biblioentry.alt.primary.seps != 0"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'alt.person.more.sep'"/></xsl:call-template> - </xsl:when> - <xsl:when test="$count < $person.count"> - <xsl:call-template name="gentext.template"> - <xsl:with-param name="context" select="'authorgroup'"/> - <xsl:with-param name="name" select="'sep'"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="($count = $person.count)"> - <xsl:choose> - <xsl:when test="$many!=0"> - <xsl:if test="name($person.list[position()=$count])='editor'"> - <xsl:value-of select="$primary.editor"/> - </xsl:if> - <xsl:value-of select="$primary.many"/> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="$primary.many"/> - <xsl:with-param name="sep" select="$primary.sep"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="name($person.list[position()=$count])='editor'"> - <xsl:value-of select="$primary.editor"/> - <xsl:value-of select="$primary.sep"/> - </xsl:when> - <xsl:when test="name($person.list[position()=$count])='corpauthor'"> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="string($person.list[position()=$count])"/> - <xsl:with-param name="sep" select="$primary.sep"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="string($person.list[position()=$count]//firstname[1])"/> - <xsl:with-param name="sep" select="$primary.sep"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - </xsl:choose> - - <xsl:call-template name="iso690.author.list"> - <xsl:with-param name="person.list" select="$person.list"/> - <xsl:with-param name="person.count" select="$person.count"/> - <xsl:with-param name="count" select="$count+1"/> - <xsl:with-param name="many" select="$many"/> - <xsl:with-param name="group"/> - </xsl:call-template> - </xsl:when> - - <xsl:otherwise> - <xsl:choose> - <xsl:when test="($biblioentry.primary.count>=3) and ($person.count>=3)"> - <xsl:call-template name="iso690.author.list"> - <xsl:with-param name="person.list" select="$person.list[1]|$person.list[2]|$person.list[3]"/> - <xsl:with-param name="person.count" select="3"/> - <xsl:with-param name="count" select="1"/> - <xsl:with-param name="many" select="1"/> - <xsl:with-param name="group"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="($biblioentry.primary.count>1) and ($person.count>1)"> - <xsl:call-template name="iso690.author.list"> - <xsl:with-param name="person.list" select="$person.list[1]|$person.list[2]"/> - <xsl:with-param name="person.count" select="2"/> - <xsl:with-param name="count" select="1"/> - <xsl:with-param name="many" select="1"/> - <xsl:with-param name="group"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="iso690.author.list"> - <xsl:with-param name="person.list" select="$person.list[1]"/> - <xsl:with-param name="person.count" select="1"/> - <xsl:with-param name="count" select="1"/> - <xsl:with-param name="many" select="1"/> - <xsl:with-param name="group"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="iso690.author"> - <xsl:param name="node" select="."/> - <xsl:param name="lastfirst.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'lastfirst.sep'"/></xsl:call-template> - </xsl:param> - <xsl:choose> - <xsl:when test="name($node)!='corpauthor'"> - <fo:inline text-transform="uppercase"> - <xsl:apply-templates mode="iso690.mode" select="$node//surname[1]"/> - </fo:inline> - <xsl:if test="$node//surname and $node//firstname"> - <xsl:value-of select="$lastfirst.sep"/> - </xsl:if> - <xsl:apply-templates mode="iso690.mode" select="$node//firstname[1]"/> - </xsl:when> - <xsl:otherwise> - <fo:inline text-transform="uppercase"> - <xsl:apply-templates mode="iso690.mode" select="$node"/> - </fo:inline> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="corpauthor|firstname|surname" mode="iso690.mode"> - <xsl:apply-templates mode="iso690.mode"/> -</xsl:template> - -<!-- Title and Type of medium --> -<xsl:template name="iso690.title"> - <xsl:param name="medium" select="./bibliomisc[@role='medium']"/> - <xsl:param name="italic" select="1"/> - <xsl:param name="sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'title.sep'"/></xsl:call-template> - </xsl:param> - - <xsl:apply-templates mode="iso690.mode" select="./title"> - <xsl:with-param name="medium" select="$medium"/> - <xsl:with-param name="italic" select="$italic"/> - <xsl:with-param name="sep" select="$sep"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="title" mode="iso690.mode"> - <xsl:param name="medium"/> - <xsl:param name="italic" select="1"/> - <xsl:param name="sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'title.sep'"/></xsl:call-template> - </xsl:param> - <xsl:param name="medium1"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'medium1'"/></xsl:call-template> - </xsl:param> - <xsl:param name="medium2"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'medium2'"/></xsl:call-template> - </xsl:param> - <xsl:choose> - <xsl:when test="$italic=1"> - <xsl:call-template name="iso690.italic.title"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="iso690.make.title"/> - </xsl:otherwise> - </xsl:choose> - <xsl:if test="$medium"> - <xsl:value-of select="$medium1"/> - <xsl:apply-templates mode="iso690.mode" select="$medium"/> - <xsl:value-of select="$medium2"/> - </xsl:if> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="concat(string(.),string(../subtitle))"/> - <xsl:with-param name="sep" select="$sep"/> - </xsl:call-template> -</xsl:template> - -<xsl:template name="iso690.italic.title"> - <fo:inline font-style="italic"> - <xsl:call-template name="iso690.make.title"/> - </fo:inline> -</xsl:template> - -<xsl:template name="iso690.make.title"> - <xsl:param name="submaintitle.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'submaintitle.sep'"/></xsl:call-template> - </xsl:param> - <xsl:apply-templates mode="iso690.mode"/> - <xsl:if test="../subtitle"> - <xsl:value-of select="$submaintitle.sep"/> - <xsl:apply-templates mode="iso690.mode" select="../subtitle"/> - </xsl:if> -</xsl:template> - -<xsl:template match="subtitle" mode="iso690.mode"> - <xsl:apply-templates mode="iso690.mode"/> -</xsl:template> - -<xsl:template match="bibliomisc[@role='medium']" mode="iso690.mode"> - <xsl:apply-templates mode="iso690.mode"/> -</xsl:template> - -<!-- Subordinate responsibility --> -<xsl:template name="iso690.secondary"> - <xsl:param name="secondary.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'secondary.sep'"/></xsl:call-template> - </xsl:param> - <xsl:param name="secondary.person.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'secondary.person.sep'"/></xsl:call-template> - </xsl:param> - <xsl:for-each select="./bibliomisc[@role='secondary']"> - <xsl:apply-templates mode="iso690.mode" select="."/> - <xsl:choose> - <xsl:when test="position()=count(../bibliomisc[@role='secondary'])"> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="string(.)"/> - <xsl:with-param name="sep" select="$secondary.sep"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$secondary.person.sep"/> - </xsl:otherwise> - </xsl:choose> - </xsl:for-each> -</xsl:template> - -<xsl:template match="bibliomisc[@role='secondary']" mode="iso690.mode"> - <xsl:apply-templates mode="iso690.mode"/> -</xsl:template> - -<!-- Edition --> -<xsl:template name="iso690.edition"> - <xsl:param name="after"/> - <xsl:param name="edition.serial.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'edition.serial.sep'"/></xsl:call-template> - </xsl:param> - <xsl:choose> - <xsl:when test="string($after)!=''"> - <xsl:apply-templates mode="iso690.mode" select="./edition"> - <xsl:with-param name="sep" select="$edition.serial.sep"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates mode="iso690.mode" select="./edition"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="edition" mode="iso690.mode"> - <xsl:param name="sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'edition.sep'"/></xsl:call-template> - </xsl:param> - <xsl:apply-templates mode="iso690.mode"/> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="string(.)"/> - <xsl:with-param name="sep" select="$sep"/> - </xsl:call-template> -</xsl:template> - -<!-- Issue designation (date and/or n°) --> -<xsl:template name="iso690.issuing"> - <xsl:param name="issuing.div"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'issuing.div'"/></xsl:call-template> - </xsl:param> - <xsl:param name="issuing.range"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'issuing.range'"/></xsl:call-template> - </xsl:param> - <xsl:param name="issuing.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'issuing.sep'"/></xsl:call-template> - </xsl:param> - <xsl:choose> - <xsl:when test="./pubdate[@role='issuing'] and ./volumenum[2] and ./issuenum[2]"> - <xsl:call-template name="iso690.issuedate"/> - <xsl:apply-templates mode="iso690.mode" select="./volumenum[1]"> - <xsl:with-param name="sep" select="$issuing.div"/> - </xsl:apply-templates> - <xsl:apply-templates mode="iso690.mode" select="./issuenum[1]"> - <xsl:with-param name="sep" select="$issuing.range"/> - </xsl:apply-templates> - <xsl:apply-templates mode="iso690.mode" select="./volumenum[2]"> - <xsl:with-param name="sep" select="$issuing.div"/> - </xsl:apply-templates> - <xsl:apply-templates mode="iso690.mode" select="./issuenum[2]"> - <xsl:with-param name="sep" select="$issuing.sep"/> - </xsl:apply-templates> - </xsl:when> - <xsl:when test="./pubdate[@role='issuing'] and ./volumenum[2]"> - <xsl:call-template name="iso690.issuedate"/> - <xsl:apply-templates mode="iso690.mode" select="./volumenum[1]"> - <xsl:with-param name="sep" select="$issuing.range"/> - </xsl:apply-templates> - <xsl:apply-templates mode="iso690.mode" select="./volumenum[2]"> - <xsl:with-param name="sep" select="$issuing.sep"/> - </xsl:apply-templates> - </xsl:when> - <xsl:when test="./pubdate[@role='issuing'] and ./volumenum and ./issuenum"> - <xsl:apply-templates mode="iso690.mode" select="./pubdate[@role='issuing']"> - <xsl:with-param name="sep" select="$issuing.div"/> - </xsl:apply-templates> - <xsl:apply-templates mode="iso690.mode" select="./volumenum"> - <xsl:with-param name="sep" select="$issuing.div"/> - </xsl:apply-templates> - <xsl:apply-templates mode="iso690.mode" select="./issuenum"> - <xsl:with-param name="sep" select="$issuing.sep"/> - </xsl:apply-templates> - </xsl:when> - <xsl:when test="./pubdate[@role='issuing']"> - <xsl:apply-templates mode="iso690.mode" select="./pubdate[@role='issuing']"> - <xsl:with-param name="sep" select="$issuing.sep"/> - </xsl:apply-templates> - </xsl:when> - <xsl:when test="./volumenum"> - <xsl:apply-templates mode="iso690.mode" select="./volumenum"> - <xsl:with-param name="sep" select="$issuing.sep"/> - </xsl:apply-templates> - </xsl:when> - <xsl:when test="./issuenum"> - <xsl:apply-templates mode="iso690.mode" select="./issuenum"> - <xsl:with-param name="sep" select="$issuing.sep"/> - </xsl:apply-templates> - </xsl:when> - </xsl:choose> -</xsl:template> - -<xsl:template name="iso690.issuedate"> - <xsl:param name="issuing.div"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'issuing.div'"/></xsl:call-template> - </xsl:param> - <xsl:param name="issuing.range"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'issuing.range'"/></xsl:call-template> - </xsl:param> - <xsl:param name="issuing.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'issuing.sep'"/></xsl:call-template> - </xsl:param> - <xsl:choose> - <xsl:when test="./pubdate[@role='issuing'][2]"> - <xsl:apply-templates mode="iso690.mode" select="./pubdate[@role='issuing'][1]"> - <xsl:with-param name="sep" select="$issuing.range"/> - </xsl:apply-templates> - <xsl:apply-templates mode="iso690.mode" select="./pubdate[@role='issuing'][2]"> - <xsl:with-param name="sep" select="$issuing.div"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates mode="iso690.mode" select="./pubdate[@role='issuing']"> - <xsl:with-param name="sep" select="$issuing.div"/> - </xsl:apply-templates> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="pubdate[@role='issuing']" mode="iso690.mode"> - <xsl:param name="sep"/> - <xsl:variable name="substr" select="substring(string(.),string-length(string(.)))"/> - <xsl:apply-templates mode="iso690.mode"/> - <xsl:call-template name="iso690.space"> - <xsl:with-param name="text" select="$substr"/> - </xsl:call-template> - <xsl:choose> - <xsl:when test="$substr='-'"> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="' '"/> - <xsl:with-param name="sep" select="$sep"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="string(.)"/> - <xsl:with-param name="sep" select="$sep"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- Numeration of the part --> -<xsl:template name="iso690.partnr"> - <xsl:param name="partnr.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'partnr.sep'"/></xsl:call-template> - </xsl:param> - <xsl:apply-templates mode="iso690.mode" select="./volumenum"> - <xsl:with-param name="sep" select="$partnr.sep"/> - </xsl:apply-templates> -</xsl:template> - -<!-- Place of publication, Publisher, Year/Date of publication, Date of update/revision, Date of citation --> -<xsl:template name="iso690.pub"> - <xsl:param name="onlydate" select="0"/> - <xsl:param name="placesep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'placepubl.sep'"/></xsl:call-template> - </xsl:param> - <xsl:param name="pubsep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'publyear.sep'"/></xsl:call-template> - </xsl:param> - <xsl:param name="endsep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'pubinfo.sep'"/></xsl:call-template> - </xsl:param> - <xsl:choose> - <xsl:when test="(./publisher/publishername|./publishername|./publisher/address/city)and($onlydate=0)and(./pubdate[not(@role='issuing')]|./copyright/year|./date[@role='upd']|./date[@role='upd'])"> - <xsl:apply-templates mode="iso690.mode" select="./publisher/address/city"> - <xsl:with-param name="sep" select="$placesep"/> - </xsl:apply-templates> - <xsl:apply-templates mode="iso690.mode" select="./publisher/publishername|./publishername"> - <xsl:with-param name="sep" select="$pubsep"/> - </xsl:apply-templates> - <xsl:apply-templates mode="iso690.mode" select="./pubdate[not(@role='issuing')]|./copyright/year"> - <xsl:with-param name="sep" select="$endsep"/> - </xsl:apply-templates> - <xsl:if test="not(./pubdate[not(@role='issuing')]|./copyright/year)"> - <xsl:call-template name="iso690.data"> - <xsl:with-param name="sep" select="$endsep"/> - </xsl:call-template> - </xsl:if> - </xsl:when> - <xsl:when test="(./publisher/publishername|./publishername)and(./publisher/address/city)and($onlydate=0)"> - <xsl:apply-templates mode="iso690.mode" select="./publisher/address/city"> - <xsl:with-param name="sep" select="$placesep"/> - </xsl:apply-templates> - <xsl:apply-templates mode="iso690.mode" select="./publisher/publishername|./publishername"> - <xsl:with-param name="sep" select="$endsep"/> - </xsl:apply-templates> - </xsl:when> - <xsl:when test="($onlydate=1)or(./pubdate[not(@role='issuing')]|./copyright/year)"> - <xsl:apply-templates mode="iso690.mode" select="./pubdate[not(@role='issuing')]|./copyright/year"> - <xsl:with-param name="sep" select="$endsep"/> - </xsl:apply-templates> - <xsl:if test="$onlydate=1"> - <xsl:call-template name="iso690.location"> - <xsl:with-param name="onlypages" select="1"/> - </xsl:call-template> - </xsl:if> - </xsl:when> - <xsl:when test="not(./pubdate[not(@role='issuing')]|./copyright/year)"> - <xsl:call-template name="iso690.data"> - <xsl:with-param name="sep" select="$endsep"/> - </xsl:call-template> - </xsl:when> - </xsl:choose> -</xsl:template> - -<xsl:template name="iso690.paper.pub"> - <xsl:param name="spec.pubinfo.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'spec.pubinfo.sep'"/></xsl:call-template> - </xsl:param> - <xsl:choose> - <xsl:when test="./volumnum|./issuenum|./pagenums"> - <xsl:call-template name="iso690.pub"> - <xsl:with-param name="endsep" select="$spec.pubinfo.sep"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="iso690.pub"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="iso690.data"> - <xsl:param name="sep"/> - <xsl:param name="datecit2"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'datecit2'"/></xsl:call-template> - </xsl:param> - <xsl:apply-templates mode="iso690.mode" select="./date[@role='upd']"> - <xsl:with-param name="sep"/> - </xsl:apply-templates> - <xsl:apply-templates mode="iso690.mode" select="./date[@role='cit']"/> - <xsl:choose> - <xsl:when test="./date[@role='cit']"> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="$datecit2"/> - <xsl:with-param name="sep" select="$sep"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="./date[@role='upd']"> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="string(./date[@role='upd'])"/> - <xsl:with-param name="sep" select="$sep"/> - </xsl:call-template> - </xsl:when> - </xsl:choose> -</xsl:template> - -<xsl:template match="publisher/address/city|publishername" mode="iso690.mode"> - <xsl:param name="sep"/> - <xsl:param name="upd" select="0"/> - <xsl:apply-templates mode="iso690.mode"/> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="string(.)"/> - <xsl:with-param name="sep" select="$sep"/> - </xsl:call-template> -</xsl:template> - -<xsl:template match="pubdate|copyright/year" mode="iso690.mode"> - <xsl:param name="sep"/> - <xsl:param name="upd" select="1"/> - <xsl:param name="datecit2"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'datecit2'"/></xsl:call-template> - </xsl:param> - <xsl:variable name="substr" select="substring(string(.),string-length(string(.)))"/> - <xsl:if test="name(.)!='pubdate'"> - <xsl:value-of select="'©'"/><!-- copyright --> - </xsl:if> - <xsl:apply-templates mode="iso690.mode"/> - <xsl:call-template name="iso690.space"> - <xsl:with-param name="text" select="$substr"/> - </xsl:call-template> - <xsl:if test="$upd!=0"> - <xsl:choose> - <xsl:when test="name(.)='pubdate'"> - <xsl:apply-templates mode="iso690.mode" select="../date[@role='upd']"/> - <xsl:apply-templates mode="iso690.mode" select="../date[@role='cit']"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates mode="iso690.mode" select="../../date[@role='upd']"/> - <xsl:apply-templates mode="iso690.mode" select="../../date[@role='cit']"/> - </xsl:otherwise> - </xsl:choose> - </xsl:if> - <xsl:choose> - <xsl:when test="../date[@role='cit']|../../date[@role='cit'] and $upd!=0"> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="$datecit2"/> - <xsl:with-param name="sep" select="$sep"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="../date[@role='upd']|../../date[@role='upd'] and $upd!=0"> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="string(../date[@role='upd'])"/> - <xsl:with-param name="sep" select="$sep"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="$substr='-'"> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="' '"/> - <xsl:with-param name="sep" select="$sep"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="string(.)"/> - <xsl:with-param name="sep" select="$sep"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="iso690.space"> - <xsl:param name="text" select="substring(string(.),string-length(string(.)))"/> - <xsl:if test="$text='-'"> - <xsl:value-of select="' '"/> - </xsl:if> -</xsl:template> - -<!-- Date of update/revision --> -<xsl:template match="date[@role='upd']" mode="iso690.mode"> - <xsl:param name="sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'upd.sep'"/></xsl:call-template> - </xsl:param> - <xsl:value-of select="$sep"/> - <xsl:apply-templates mode="iso690.mode"/> -</xsl:template> - -<!-- Date of citation --> -<xsl:template match="date[@role='cit']" mode="iso690.mode"> - <xsl:param name="datecit1"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'datecit1'"/></xsl:call-template> - </xsl:param> - <xsl:param name="datecit2"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'datecit2'"/></xsl:call-template> - </xsl:param> - <xsl:value-of select="$datecit1"/> - <xsl:apply-templates mode="iso690.mode"/> - <xsl:value-of select="$datecit2"/> -</xsl:template> - -<!-- Extent --> -<xsl:template name="iso690.extent"> - <xsl:param name="extent.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'extent.sep'"/></xsl:call-template> - </xsl:param> - <xsl:apply-templates mode="iso690.mode" select="./pagenums"> - <xsl:with-param name="sep" select="$extent.sep"/> - </xsl:apply-templates> -</xsl:template> - -<!-- Location within host --> -<xsl:template name="iso690.part.location"> - <xsl:param name="location.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'location.sep'"/></xsl:call-template> - </xsl:param> - <xsl:choose> - <xsl:when test="./pagenums"> - <xsl:apply-templates mode="iso690.mode" select="./bibliomisc[@role='secnum']"/> - <xsl:apply-templates mode="iso690.mode" select="./bibliomisc[@role='sectitle']"/> - <xsl:apply-templates mode="iso690.mode" select="./pagenums"/> - </xsl:when> - <xsl:when test="./bibliomisc[@role='sectitle']"> - <xsl:apply-templates mode="iso690.mode" select="./bibliomisc[@role='secnum']"/> - <xsl:apply-templates mode="iso690.mode" select="./bibliomisc[@role='sectitle']"> - <xsl:with-param name="sep" select="$location.sep"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates mode="iso690.mode" select="./bibliomisc[@role='secnum']"> - <xsl:with-param name="sep" select="$location.sep"/> - </xsl:apply-templates> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="iso690.article.location"> - <xsl:param name="location.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'location.sep'"/></xsl:call-template> - </xsl:param> - <xsl:param name="locs.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'locs.sep'"/></xsl:call-template> - </xsl:param> - <xsl:choose> - <xsl:when test="not(./date[@role='upd']|./date[@role='cit'])"> - <xsl:choose> - <xsl:when test="./volumenum|./issuenum|./pagenums"> - <xsl:apply-templates mode="iso690.mode" select="./pubdate[not(@role='issuing')]"> - <xsl:with-param name="upd" select="0"/> - <xsl:with-param name="sep" select="$locs.sep"/> - </xsl:apply-templates> - <xsl:call-template name="iso690.location"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates mode="iso690.mode" select="./pubdate[not(@role='issuing')]"> - <xsl:with-param name="sep" select="$location.sep"/> - </xsl:apply-templates> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:choose> - <xsl:when test="./volumenum|./issuenum|./pagenums"> - <xsl:apply-templates mode="iso690.mode" select="./pubdate[not(@role='issuing')]"> - <xsl:with-param name="upd" select="0"/> - <xsl:with-param name="sep" select="$locs.sep"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates mode="iso690.mode" select="./pubdate[not(@role='issuing')]"> - <xsl:with-param name="upd" select="0"/> - <xsl:with-param name="sep" select="$location.sep"/> - </xsl:apply-templates> - </xsl:otherwise> - </xsl:choose> - <xsl:choose> - <xsl:when test="./issuenum"> - <xsl:apply-templates mode="iso690.mode" select="./volumenum"/> - <xsl:apply-templates mode="iso690.mode" select="./issuenum"> - <xsl:with-param name="sep"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates mode="iso690.mode" select="./volumenum"> - <xsl:with-param name="sep"/> - </xsl:apply-templates> - </xsl:otherwise> - </xsl:choose> - <xsl:choose> - <xsl:when test="./pagenums"> - <xsl:call-template name="iso690.data"> - <xsl:with-param name="sep" select="$locs.sep"/> - </xsl:call-template> - <xsl:apply-templates mode="iso690.mode" select="./pagenums"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="iso690.data"> - <xsl:with-param name="sep" select="$location.sep"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="iso690.location"> - <xsl:param name="location.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'location.sep'"/></xsl:call-template> - </xsl:param> - <xsl:choose> - <xsl:when test="./volumenum and not(./issuenum) and not(./pagenums)"> - <xsl:apply-templates mode="iso690.mode" select="./volumenum"> - <xsl:with-param name="sep" select="$location.sep"/> - </xsl:apply-templates> - </xsl:when> - <xsl:when test="./issuenum and not(./pagenums)"> - <xsl:apply-templates mode="iso690.mode" select="./volumenum"/> - <xsl:apply-templates mode="iso690.mode" select="./issuenum"> - <xsl:with-param name="sep" select="$location.sep"/> - </xsl:apply-templates> - </xsl:when> - <xsl:when test="./pagenums"> - <xsl:apply-templates mode="iso690.mode" select="./volumenum"/> - <xsl:apply-templates mode="iso690.mode" select="./issuenum"/> - <xsl:apply-templates mode="iso690.mode" select="./pagenums"/> - </xsl:when> - </xsl:choose> -</xsl:template> - -<xsl:template match="bibliomisc[@role='secnum']|bibliomisc[@role='sectitle']" mode="iso690.mode"> - <xsl:param name="sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'locs.sep'"/></xsl:call-template> - </xsl:param> - <xsl:apply-templates mode="iso690.mode"/> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="string(.)"/> - <xsl:with-param name="sep" select="$sep"/> - </xsl:call-template> -</xsl:template> - -<xsl:template match="volumenum|issuenum" mode="iso690.mode"> - <xsl:param name="sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'locs.sep'"/></xsl:call-template> - </xsl:param> - <xsl:apply-templates mode="iso690.mode"/> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="string(.)"/> - <xsl:with-param name="sep" select="$sep"/> - </xsl:call-template> -</xsl:template> - -<xsl:template match="pagenums" mode="iso690.mode"> - <xsl:param name="sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'location.sep'"/></xsl:call-template> - </xsl:param> - <xsl:apply-templates mode="iso690.mode"/> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="string(.)"/> - <xsl:with-param name="sep" select="$sep"/> - </xsl:call-template> -</xsl:template> - -<!-- Series --> -<xsl:template name="iso690.serie"> - <xsl:apply-templates mode="iso690.mode" select=".//bibliomisc[@role='serie']"/> -</xsl:template> - -<!-- Notes --> -<xsl:template name="iso690.notice"> - <xsl:apply-templates mode="iso690.mode" select=".//bibliomisc[not(@role)]"/> -</xsl:template> - -<xsl:template match="bibliomisc[not(@role)]|bibliomisc[@role='serie']" mode="iso690.mode"> - <xsl:param name="notice.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'notice.sep'"/></xsl:call-template> - </xsl:param> - <xsl:apply-templates mode="iso690.mode"/> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="string(.)"/> - <xsl:with-param name="sep" select="$notice.sep"/> - </xsl:call-template> -</xsl:template> - -<!-- Avaibility and access --> -<xsl:template name="iso690.access"> - <xsl:for-each select="./biblioid[@class='uri']|./bibliomisc[@role='access']"> - <xsl:choose> - <xsl:when test="position()=1"> - <xsl:apply-templates mode="iso690.mode" select="."/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates mode="iso690.mode" select="."> - <xsl:with-param name="firstacc" select="0"/> - </xsl:apply-templates> - </xsl:otherwise> - </xsl:choose> - </xsl:for-each> -</xsl:template> - -<xsl:template match="biblioid[@class='uri']/ulink|bibliomisc[@role='access']/ulink" mode="iso690.mode"> - <xsl:param name="link1"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'link1'"/></xsl:call-template> - </xsl:param> - <xsl:param name="link2"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'link2'"/></xsl:call-template> - </xsl:param> - <xsl:value-of select="$link1"/> - <xsl:call-template name="ulink"/> - <xsl:value-of select="$link2"/> -</xsl:template> - -<xsl:template match="biblioid[@class='uri']|bibliomisc[@role='access']" mode="iso690.mode"> - <xsl:param name="firstacc" select="1"/> - <xsl:param name="access"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'access'"/></xsl:call-template> - </xsl:param> - <xsl:param name="acctoo"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'acctoo'"/></xsl:call-template> - </xsl:param> - <xsl:param name="onwww"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'onwww'"/></xsl:call-template> - </xsl:param> - <xsl:param name="oninet"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'oninet'"/></xsl:call-template> - </xsl:param> - <xsl:param name="access.end"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'access.end'"/></xsl:call-template> - </xsl:param> - <xsl:param name="access.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'access.sep'"/></xsl:call-template> - </xsl:param> - <xsl:choose> - <xsl:when test="$firstacc=1"> - <xsl:value-of select="$access"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$acctoo"/> - </xsl:otherwise> - </xsl:choose> - <xsl:choose> - <xsl:when test="(./ulink)and(string(./ulink)=string(.))"> - <xsl:choose> - <xsl:when test="(starts-with(./ulink/@url,'http://')or(starts-with(./ulink/@url,'https://')))"> - <xsl:value-of select="$onwww"/> - <xsl:value-of select="$access.end"/> - <xsl:apply-templates mode="iso690.mode" select="./ulink"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$oninet"/> - <xsl:value-of select="$access.end"/> - <xsl:apply-templates mode="iso690.mode" select="./ulink"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:when test="(./ulink)and(string(./ulink)!=string(.))"> - <xsl:value-of select="text()[1]"/> - <xsl:call-template name="iso690.endsep"> - <xsl:with-param name="text" select="text()[1]"/> - <xsl:with-param name="sep" select="$access.end"/> - </xsl:call-template> - <xsl:apply-templates mode="iso690.mode" select="./ulink"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates mode="iso690.mode"/> - </xsl:otherwise> - </xsl:choose> - <xsl:value-of select="$access.sep"/> -</xsl:template> - -<!-- Standard number - ISBN --> -<xsl:template name="iso690.isbn"> - <xsl:choose> - <xsl:when test="./biblioid/@class='isbn'"> - <xsl:apply-templates mode="iso690.mode" select="./biblioid[@class='isbn']"/> - </xsl:when> - <xsl:when test="./isbn"> - <xsl:apply-templates mode="iso690.mode" select="./isbn"/> - </xsl:when> - </xsl:choose> -</xsl:template> - -<xsl:template match="isbn|biblioid[@class='isbn']" mode="iso690.mode"> - <xsl:param name="isbn"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'isbn'"/></xsl:call-template> - </xsl:param> - <xsl:param name="stdnum.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'stdnum.sep'"/></xsl:call-template> - </xsl:param> - <xsl:value-of select="$isbn"/> - <xsl:apply-templates mode="iso690.mode"/> - <xsl:value-of select="$stdnum.sep"/> -</xsl:template> - -<!-- Standard number - ISSN --> -<xsl:template name="iso690.issn"> - <xsl:choose> - <xsl:when test="./biblioid/@class='issn'"> - <xsl:apply-templates mode="iso690.mode" select="./biblioid[@class='issn']"/> - </xsl:when> - <xsl:when test="./issn"> - <xsl:apply-templates mode="iso690.mode" select="./issn"/> - </xsl:when> - </xsl:choose> -</xsl:template> - -<xsl:template match="issn|biblioid[@class='issn']" mode="iso690.mode"> - <xsl:param name="issn"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'issn'"/></xsl:call-template> - </xsl:param> - <xsl:param name="stdnum.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'stdnum.sep'"/></xsl:call-template> - </xsl:param> - <xsl:value-of select="$issn"/> - <xsl:apply-templates mode="iso690.mode"/> - <xsl:value-of select="$stdnum.sep"/> -</xsl:template> - -<!-- Identification of patent document --> -<xsl:template name="iso690.pat.ident"> - <xsl:param name="patdate.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'patdate.sep'"/></xsl:call-template> - </xsl:param> - <xsl:apply-templates mode="iso690.mode" select="./address/country"/> - <xsl:apply-templates mode="iso690.mode" select="./bibliomisc[@role='patenttype']"/> - <xsl:choose> - <xsl:when test="./biblioid[@class='other' and @otherclass='patentnum']"> - <xsl:apply-templates mode="iso690.mode" select="./biblioid[@class='other' and @otherclass='patentnum']"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates mode="iso690.mode" select="./bibliomisc[@role='patentnum']"/> - </xsl:otherwise> - </xsl:choose> - <xsl:apply-templates mode="iso690.mode" select="./pubdate[not(@role='issuing')]"> - <xsl:with-param name="sep" select="$patdate.sep"/> - </xsl:apply-templates> -</xsl:template> - -<!-- Country or issuing office --> -<xsl:template match="address/country" mode="iso690.mode"> - <xsl:param name="patcountry.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'patcountry.sep'"/></xsl:call-template> - </xsl:param> - <fo:inline font-style="italic"> - <xsl:apply-templates mode="iso690.mode"/> - </fo:inline> - <xsl:value-of select="$patcountry.sep"/> -</xsl:template> - -<!-- Kind of patent document --> -<xsl:template match="bibliomisc[@role='patenttype']" mode="iso690.mode"> - <xsl:param name="pattype.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'pattype.sep'"/></xsl:call-template> - </xsl:param> - <fo:inline font-style="italic"> - <xsl:apply-templates mode="iso690.mode"/> - </fo:inline> - <xsl:value-of select="$pattype.sep"/> -</xsl:template> - -<!-- Number --> -<xsl:template match="biblioid[@class='other' and @otherclass='patentnum']|bibliomisc[@role='patentnum']" mode="iso690.mode"> - <xsl:param name="patnum.sep"> - <xsl:call-template name="gentext.template"><xsl:with-param name="context" select="'iso690'"/><xsl:with-param name="name" select="'patnum.sep'"/></xsl:call-template> - </xsl:param> - <xsl:apply-templates mode="iso690.mode"/> - <xsl:value-of select="$patnum.sep"/> -</xsl:template> - -<!-- ==================================================================== --> -<!-- Supplementary templates --> - -<xsl:template name="iso690.endsep"> - <xsl:param name="text"/> - <xsl:param name="sep" select=". "/> - <xsl:choose> - <xsl:when test="substring($text,string-length($text))!=substring($sep,1,1)"> - <xsl:value-of select="$sep"/> - </xsl:when> - <xsl:when test="substring($text,string-length($text))=' '"> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="' '"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="*" mode="iso690.mode"> - <xsl:apply-templates select="."/><!-- try the default mode --> -</xsl:template> - -<!-- ==================================================================== --> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/biblio.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/biblio.xsl deleted file mode 100644 index 0212fada0..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/biblio.xsl +++ /dev/null @@ -1,1169 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<xsl:template match="bibliography"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:choose> - <xsl:when test="not(parent::*) or parent::part or parent::book"> - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"/> - </xsl:variable> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - - <fo:block id="{$id}"> - <xsl:call-template name="bibliography.titlepage"/> - </fo:block> - <xsl:apply-templates/> - </fo:flow> - </fo:page-sequence> - </xsl:when> - <xsl:otherwise> - <fo:block id="{$id}" - space-before.minimum="1em" - space-before.optimum="1.5em" - space-before.maximum="2em"> - <xsl:call-template name="bibliography.titlepage"/> - </fo:block> - <xsl:apply-templates/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="bibliography/bibliographyinfo"></xsl:template> -<xsl:template match="bibliography/info"></xsl:template> -<xsl:template match="bibliography/title"></xsl:template> -<xsl:template match="bibliography/subtitle"></xsl:template> -<xsl:template match="bibliography/titleabbrev"></xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="bibliodiv"> - <fo:block> - <xsl:attribute name="id"> - <xsl:call-template name="object.id"/> - </xsl:attribute> - <xsl:call-template name="bibliodiv.titlepage"/> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="bibliodiv/title"/> -<xsl:template match="bibliodiv/subtitle"/> -<xsl:template match="bibliodiv/titleabbrev"/> - -<!-- ==================================================================== --> - -<xsl:template match="bibliolist"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:block id="{$id}" - space-before.minimum="1em" - space-before.optimum="1.5em" - space-before.maximum="2em"> - - <xsl:if test="blockinfo/title|info/title|title"> - <xsl:call-template name="formal.object.heading"/> - </xsl:if> - - <xsl:apply-templates select="*[not(self::blockinfo) - and not(self::info) - and not(self::title) - and not(self::titleabbrev)]"/> - </fo:block> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="biblioentry"> - <xsl:param name="label"> - <xsl:call-template name="biblioentry.label"/> - </xsl:param> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:choose> - <xsl:when test="string(.) = ''"> - <xsl:variable name="bib" select="document($bibliography.collection,.)"/> - <xsl:variable name="entry" select="$bib/bibliography/ - *[@id=$id or @xml:id=$id][1]"/> - <xsl:choose> - <xsl:when test="$entry"> - <xsl:choose> - <xsl:when test="$bibliography.numbered != 0"> - <xsl:apply-templates select="$entry"> - <xsl:with-param name="label" select="$label"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="$entry"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:message> - <xsl:text>No bibliography entry: </xsl:text> - <xsl:value-of select="$id"/> - <xsl:text> found in </xsl:text> - <xsl:value-of select="$bibliography.collection"/> - </xsl:message> - <fo:block id="{$id}" xsl:use-attribute-sets="normal.para.spacing"> - <xsl:text>Error: no bibliography entry: </xsl:text> - <xsl:value-of select="$id"/> - <xsl:text> found in </xsl:text> - <xsl:value-of select="$bibliography.collection"/> - </fo:block> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <fo:block id="{$id}" xsl:use-attribute-sets="biblioentry.properties"> - <xsl:copy-of select="$label"/> - <xsl:choose> - <xsl:when test="$bibliography.style = 'iso690'"> - <xsl:call-template name="iso690.makecitation"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates mode="bibliography.mode"/> - </xsl:otherwise> - </xsl:choose> - </fo:block> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="bibliomixed"> - <xsl:param name="label"> - <xsl:call-template name="biblioentry.label"/> - </xsl:param> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:choose> - <xsl:when test="string(.) = ''"> - <xsl:variable name="bib" select="document($bibliography.collection,.)"/> - <xsl:variable name="entry" select="$bib/bibliography/ - *[@id=$id or @xml:id=$id][1]"/> - <xsl:choose> - <xsl:when test="$entry"> - <xsl:choose> - <xsl:when test="$bibliography.numbered != 0"> - <xsl:apply-templates select="$entry"> - <xsl:with-param name="label" select="$label"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="$entry"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:message> - <xsl:text>No bibliography entry: </xsl:text> - <xsl:value-of select="$id"/> - <xsl:text> found in </xsl:text> - <xsl:value-of select="$bibliography.collection"/> - </xsl:message> - <fo:block id="{$id}" xsl:use-attribute-sets="normal.para.spacing"> - <xsl:text>Error: no bibliography entry: </xsl:text> - <xsl:value-of select="$id"/> - <xsl:text> found in </xsl:text> - <xsl:value-of select="$bibliography.collection"/> - </fo:block> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <fo:block id="{$id}" xsl:use-attribute-sets="biblioentry.properties"> - <xsl:copy-of select="$label"/> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:block> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="biblioentry.label"> - <xsl:param name="node" select="."/> - - <xsl:choose> - <xsl:when test="$bibliography.numbered != 0"> - <xsl:text>[</xsl:text> - <xsl:number from="bibliography" count="biblioentry|bibliomixed" - level="any" format="1"/> - <xsl:text>] </xsl:text> - </xsl:when> - <xsl:when test="local-name($node/child::*[1]) = 'abbrev'"> - <xsl:text>[</xsl:text> - <xsl:apply-templates select="$node/abbrev[1]"/> - <xsl:text>] </xsl:text> - </xsl:when> - <xsl:when test="$node/@xreflabel"> - <xsl:text>[</xsl:text> - <xsl:value-of select="$node/@xreflabel"/> - <xsl:text>] </xsl:text> - </xsl:when> - <xsl:when test="$node/@id or $node/@xml:id"> - <xsl:text>[</xsl:text> - <xsl:value-of select="($node/@id|$node/@xml:id)[1]"/> - <xsl:text>] </xsl:text> - </xsl:when> - <xsl:otherwise><!-- nop --></xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="*" mode="bibliography.mode"> - <xsl:apply-templates select="."/><!-- try the default mode --> -</xsl:template> - -<xsl:template match="abbrev" mode="bibliography.mode"> - <xsl:if test="preceding-sibling::*"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - </fo:inline> - </xsl:if> -</xsl:template> - -<xsl:template match="abstract" mode="bibliography.mode"> - <!-- suppressed --> -</xsl:template> - -<xsl:template match="address" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="affiliation" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="shortaffil" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="jobtitle" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="artheader|articleinfo|article/info" - mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="artpagenums" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="author" mode="bibliography.mode"> - <fo:inline> - <xsl:call-template name="person.name"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="authorblurb|personblurb" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="authorgroup" mode="bibliography.mode"> - <fo:inline> - <xsl:call-template name="person.name.list"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="authorinitials" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="bibliomisc" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="bibliomset" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<!-- ================================================== --> - -<xsl:template match="biblioset" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="biblioset/title|biblioset/citetitle" - mode="bibliography.mode"> - <xsl:variable name="relation" select="../@relation"/> - <xsl:choose> - <xsl:when test="$relation='article' or @pubwork='article'"> - <xsl:call-template name="gentext.startquote"/> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:call-template name="gentext.endquote"/> - </xsl:when> - <xsl:otherwise> - <fo:inline font-style="italic"> - <xsl:apply-templates/> - </fo:inline> - </xsl:otherwise> - </xsl:choose> - <xsl:value-of select="$biblioentry.item.separator"/> -</xsl:template> - -<!-- ================================================== --> - -<xsl:template match="bookbiblio" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="citetitle" mode="bibliography.mode"> - <fo:inline> - <xsl:choose> - <xsl:when test="@pubwork = 'article'"> - <xsl:call-template name="gentext.startquote"/> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:call-template name="gentext.endquote"/> - </xsl:when> - <xsl:otherwise> - <fo:inline font-style="italic"> - <xsl:apply-templates mode="bibliography.mode"/> - </fo:inline> - </xsl:otherwise> - </xsl:choose> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="collab" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="confgroup" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="contractnum" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="contractsponsor" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="contrib" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<!-- ================================================== --> - -<xsl:template match="copyright" mode="bibliography.mode"> - <fo:inline> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'Copyright'"/> - </xsl:call-template> - <xsl:call-template name="gentext.space"/> - <xsl:call-template name="dingbat"> - <xsl:with-param name="dingbat">copyright</xsl:with-param> - </xsl:call-template> - <xsl:call-template name="gentext.space"/> - <xsl:apply-templates select="year" mode="bibliography.mode"/> - <xsl:if test="holder"> - <xsl:call-template name="gentext.space"/> - <xsl:apply-templates select="holder" mode="bibliography.mode"/> - </xsl:if> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="year" mode="bibliography.mode"> - <xsl:apply-templates/><xsl:text>, </xsl:text> -</xsl:template> - -<xsl:template match="year[position()=last()]" mode="bibliography.mode"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="holder" mode="bibliography.mode"> - <xsl:apply-templates/> -</xsl:template> - -<!-- ================================================== --> - -<xsl:template match="corpauthor" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="corpcredit" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="corpname" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="date" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="edition" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="editor" mode="bibliography.mode"> - <fo:inline> - <xsl:call-template name="person.name"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="firstname" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="honorific" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="indexterm" mode="bibliography.mode"> - <xsl:apply-templates select="."/> -</xsl:template> - -<xsl:template match="invpartnumber" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="isbn" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="issn" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="issuenum" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="lineage" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="orgname" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="othercredit" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="othername" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="pagenums" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="printhistory" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="productname" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="productnumber" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="pubdate" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="publisher" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="publishername" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="pubsnumber" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="releaseinfo" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="revhistory" mode="bibliography.mode"> - <fo:block> - <xsl:apply-templates select="."/> <!-- use normal mode --> - </fo:block> -</xsl:template> - -<xsl:template match="seriesinfo" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="seriesvolnums" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="subtitle" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="surname" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="title" mode="bibliography.mode"> - <fo:inline> - <fo:inline font-style="italic"> - <xsl:apply-templates mode="bibliography.mode"/> - </fo:inline> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="titleabbrev" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="volumenum" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="orgdiv" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="collabname" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="confdates" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="conftitle" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="confnum" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="confsponsor" mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<xsl:template match="bibliocoverage|biblioid|bibliorelation|bibliosource" - mode="bibliography.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - <xsl:value-of select="$biblioentry.item.separator"/> - </fo:inline> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="*" mode="bibliomixed.mode"> - <xsl:apply-templates select="."/><!-- try the default mode --> -</xsl:template> - -<xsl:template match="abbrev" mode="bibliomixed.mode"> - <xsl:if test="preceding-sibling::*"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> - </xsl:if> -</xsl:template> - -<xsl:template match="abstract" mode="bibliomixed.mode"> - <fo:block start-indent="1in"> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:block> -</xsl:template> - -<xsl:template match="para" mode="bibliomixed.mode"> - <fo:block> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:block> -</xsl:template> - -<xsl:template match="address" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="affiliation" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="shortaffil" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="jobtitle" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliography.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="artpagenums" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="author" mode="bibliomixed.mode"> - <fo:inline> - <xsl:call-template name="person.name"/> - </fo:inline> -</xsl:template> - -<xsl:template match="authorblurb|personblurb" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="authorgroup" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="authorinitials" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="bibliomisc" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<!-- ================================================== --> - -<xsl:template match="bibliomset" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="bibliomset/title|bibliomset/citetitle" - mode="bibliomixed.mode"> - <xsl:variable name="relation" select="../@relation"/> - <xsl:choose> - <xsl:when test="$relation='article' or @pubwork='article'"> - <xsl:call-template name="gentext.startquote"/> - <xsl:apply-templates mode="bibliomixed.mode"/> - <xsl:call-template name="gentext.endquote"/> - </xsl:when> - <xsl:otherwise> - <fo:inline font-style="italic"> - <xsl:apply-templates/> - </fo:inline> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ================================================== --> - -<xsl:template match="biblioset" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="citetitle" mode="bibliomixed.mode"> - <xsl:choose> - <xsl:when test="@pubwork = 'article'"> - <xsl:call-template name="gentext.startquote"/> - <xsl:apply-templates mode="bibliomixed.mode"/> - <xsl:call-template name="gentext.endquote"/> - </xsl:when> - <xsl:otherwise> - <fo:inline font-style="italic"> - <xsl:apply-templates mode="bibliography.mode"/> - </fo:inline> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="collab" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="confgroup" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="contractnum" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="contractsponsor" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="contrib" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="copyright" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="corpauthor" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="corpcredit" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="corpname" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="date" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="edition" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="editor" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="firstname" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="honorific" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="indexterm" mode="bibliomixed.mode"> - <xsl:apply-templates select="."/> -</xsl:template> - -<xsl:template match="invpartnumber" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="isbn" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="issn" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="issuenum" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="lineage" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="orgname" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="othercredit" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="othername" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="pagenums" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="printhistory" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="productname" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="productnumber" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="pubdate" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="publisher" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="publishername" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="pubsnumber" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="releaseinfo" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="revhistory" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="seriesvolnums" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="subtitle" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="surname" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="title" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="titleabbrev" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="volumenum" mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<xsl:template match="bibliocoverage|biblioid|bibliorelation|bibliosource" - mode="bibliomixed.mode"> - <fo:inline> - <xsl:apply-templates mode="bibliomixed.mode"/> - </fo:inline> -</xsl:template> - -<!-- ==================================================================== --> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/block.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/block.xsl deleted file mode 100644 index 2d42c8a91..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/block.xsl +++ /dev/null @@ -1,600 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> -<!-- What should we do about styling blockinfo? --> - -<xsl:template match="blockinfo|info"> - <!-- suppress --> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="block.object"> - <fo:block> - <xsl:call-template name="anchor"/> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="para"> - <fo:block xsl:use-attribute-sets="normal.para.spacing"> - <xsl:call-template name="anchor"/> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="simpara"> - <fo:block xsl:use-attribute-sets="normal.para.spacing"> - <xsl:call-template name="anchor"/> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="formalpara"> - <fo:block xsl:use-attribute-sets="normal.para.spacing"> - <xsl:call-template name="anchor"/> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<!-- Only use title from info --> -<xsl:template match="formalpara/info"> - <xsl:apply-templates select="title"/> -</xsl:template> - -<xsl:template match="formalpara/title|formalpara/info/title"> - <xsl:variable name="titleStr"> - <xsl:apply-templates/> - </xsl:variable> - <xsl:variable name="lastChar"> - <xsl:if test="$titleStr != ''"> - <xsl:value-of select="substring($titleStr,string-length($titleStr),1)"/> - </xsl:if> - </xsl:variable> - - <fo:inline font-weight="bold" - keep-with-next.within-line="always" - padding-end="1em"> - <xsl:copy-of select="$titleStr"/> - <xsl:if test="$lastChar != '' - and not(contains($runinhead.title.end.punct, $lastChar))"> - <xsl:value-of select="$runinhead.default.title.end.punct"/> - </xsl:if> - <xsl:text> </xsl:text> - </fo:inline> -</xsl:template> - -<xsl:template match="formalpara/para"> - <xsl:apply-templates/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="blockquote"> - <fo:block xsl:use-attribute-sets="blockquote.properties"> - <xsl:call-template name="anchor"/> - <fo:block> - <xsl:if test="title|info/title"> - <fo:block xsl:use-attribute-sets="formal.title.properties"> - <xsl:apply-templates select="." mode="object.title.markup"/> - </fo:block> - </xsl:if> - <xsl:apply-templates select="*[local-name(.) != 'title' - and local-name(.) != 'attribution']"/> - </fo:block> - <xsl:if test="attribution"> - <fo:block text-align="right"> - <!-- mdash --> - <xsl:text>—</xsl:text> - <xsl:apply-templates select="attribution"/> - </fo:block> - </xsl:if> - </fo:block> -</xsl:template> - -<xsl:template match="epigraph"> - <fo:block> - <xsl:call-template name="anchor"/> - <xsl:apply-templates select="para|simpara|formalpara|literallayout"/> - <xsl:if test="attribution"> - <fo:inline> - <xsl:text>--</xsl:text> - <xsl:apply-templates select="attribution"/> - </fo:inline> - </xsl:if> - </fo:block> -</xsl:template> - -<xsl:template match="attribution"> - <fo:inline><xsl:apply-templates/></fo:inline> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="floater"> - <xsl:param name="position" select="'none'"/> - <xsl:param name="clear" select="'both'"/> - <xsl:param name="width"/> - <xsl:param name="content"/> - <xsl:param name="start.indent">0pt</xsl:param> - <xsl:param name="end.indent">0pt</xsl:param> - - <xsl:choose> - <xsl:when test="not($fop.extensions = 0)"> - <!-- fop 0.20.5 does not support floats --> - <xsl:copy-of select="$content"/> - </xsl:when> - <xsl:when test="$position = 'none'"> - <xsl:copy-of select="$content"/> - </xsl:when> - <xsl:when test="$position = 'before'"> - <fo:float float="before"> - <xsl:copy-of select="$content"/> - </fo:float> - </xsl:when> - <xsl:when test="$position = 'left' or - $position = 'start' or - $position = 'right' or - $position = 'end' or - $position = 'inside' or - $position = 'outside'"> - <xsl:variable name="float"> - <fo:float float="{$position}" - clear="{$clear}"> - <fo:block-container - start-indent="{$start.indent}" - end-indent="{$end.indent}"> - <xsl:if test="$width != ''"> - <xsl:attribute name="inline-progression-dimension"> - <xsl:value-of select="$width"/> - </xsl:attribute> - </xsl:if> - <fo:block> - <xsl:copy-of select="$content"/> - </fo:block> - </fo:block-container> - </fo:float> - </xsl:variable> - <xsl:choose> - <xsl:when test="$axf.extensions != 0 and self::sidebar"> - <fo:block xsl:use-attribute-sets="normal.para.spacing" - space-after="0pt" - space-after.precedence="force" - start-indent="0pt" end-indent="0pt"> - <xsl:copy-of select="$float"/> - </fo:block> - </xsl:when> - <xsl:when test="$axf.extensions != 0 and - ($position = 'left' or $position = 'start')"> - <fo:float float="{$position}" - clear="{$clear}"> - <fo:block-container - inline-progression-dimension=".001mm" - end-indent="{$start.indent} + {$width} + {$end.indent}"> - <xsl:attribute name="start-indent"> - <xsl:choose> - <xsl:when test="ancestor::para"> - <!-- Special case for handling inline floats - in Antenna House--> - <xsl:value-of select="concat('-', $body.start.indent)"/> - </xsl:when> - <xsl:otherwise>0pt</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - <fo:block start-indent="{$start.indent}" - end-indent="-{$start.indent} - {$width}"> - <xsl:copy-of select="$content"/> - </fo:block> - </fo:block-container> - </fo:float> - - </xsl:when> - <xsl:when test="$axf.extensions != 0 and - ($position = 'right' or $position = 'end')"> - <!-- Special case for handling inline floats in Antenna House--> - <fo:float float="{$position}" - clear="{$clear}"> - <fo:block-container - inline-progression-dimension=".001mm" - end-indent="-{$body.end.indent}" - start-indent="{$start.indent} + {$width} + {$end.indent}"> - <fo:block end-indent="{$end.indent}" - start-indent="-{$end.indent} - {$width}"> - <xsl:copy-of select="$content"/> - </fo:block> - </fo:block-container> - </fo:float> - - </xsl:when> - <xsl:when test="$xep.extensions != 0 and self::sidebar"> - <!-- float needs some space above to line up with following para --> - <fo:block xsl:use-attribute-sets="normal.para.spacing"> - <xsl:copy-of select="$float"/> - </fo:block> - </xsl:when> - <xsl:when test="$xep.extensions != 0"> - <xsl:copy-of select="$float"/> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$float"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$content"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="sidebar" name="sidebar"> - <!-- Also does margin notes --> - <xsl:variable name="pi-type"> - <xsl:call-template name="pi.dbfo_float-type"/> - </xsl:variable> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$pi-type = 'margin.note'"> - <xsl:call-template name="margin.note"/> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="content"> - <fo:block xsl:use-attribute-sets="sidebar.properties" - id="{$id}"> - <xsl:call-template name="sidebar.titlepage"/> - <xsl:apply-templates select="node()[not(self::title) and - not(self::info) and - not(self::sidebarinfo)]"/> - </fo:block> - </xsl:variable> - - <xsl:variable name="pi-width"> - <xsl:call-template name="pi.dbfo_sidebar-width"/> - </xsl:variable> - - <xsl:variable name="position"> - <xsl:choose> - <xsl:when test="$pi-type != ''"> - <xsl:value-of select="$pi-type"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$sidebar.float.type"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:call-template name="floater"> - <xsl:with-param name="content" select="$content"/> - <xsl:with-param name="position" select="$position"/> - <xsl:with-param name="width"> - <xsl:choose> - <xsl:when test="$pi-width != ''"> - <xsl:value-of select="$pi-width"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$sidebar.float.width"/> - </xsl:otherwise> - </xsl:choose> - </xsl:with-param> - <xsl:with-param name="start.indent"> - <xsl:choose> - <xsl:when test="$position = 'start' or - $position = 'left'">0pt</xsl:when> - <xsl:when test="$position = 'end' or - $position = 'right'">0.5em</xsl:when> - <xsl:otherwise>0pt</xsl:otherwise> - </xsl:choose> - </xsl:with-param> - <xsl:with-param name="end.indent"> - <xsl:choose> - <xsl:when test="$position = 'start' or - $position = 'left'">0.5em</xsl:when> - <xsl:when test="$position = 'end' or - $position = 'right'">0pt</xsl:when> - <xsl:otherwise>0pt</xsl:otherwise> - </xsl:choose> - </xsl:with-param> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - -</xsl:template> - -<xsl:template match="sidebar/title|sidebarinfo|sidebar/info"/> - -<xsl:template match="sidebar/title|sidebarinfo/title|sidebar/info/title" - mode="titlepage.mode" priority="1"> - <fo:block xsl:use-attribute-sets="sidebar.title.properties"> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template name="margin.note"> - <xsl:param name="content"> - <fo:block xsl:use-attribute-sets="margin.note.properties"> - <xsl:if test="./title"> - <fo:block xsl:use-attribute-sets="margin.note.title.properties"> - <xsl:apply-templates select="./title" mode="margin.note.title.mode"/> - </fo:block> - </xsl:if> - <xsl:apply-templates/> - </fo:block> - </xsl:param> - - <xsl:variable name="pi-width"> - <xsl:call-template name="pi.dbfo_sidebar-width"/> - </xsl:variable> - - <xsl:variable name="position" select="$margin.note.float.type"/> - - <xsl:call-template name="floater"> - <xsl:with-param name="content" select="$content"/> - <xsl:with-param name="position" select="$position"/> - <xsl:with-param name="width" > - <xsl:choose> - <xsl:when test="$pi-width != ''"> - <xsl:value-of select="$pi-width"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$margin.note.width"/> - </xsl:otherwise> - </xsl:choose> - </xsl:with-param> - <xsl:with-param name="start.indent"> - <xsl:choose> - <xsl:when test="$position = 'start' or - $position = 'left'">0pt</xsl:when> - <xsl:when test="$position = 'end' or - $position = 'right'">0.5em</xsl:when> - <xsl:otherwise>0pt</xsl:otherwise> - </xsl:choose> - </xsl:with-param> - <xsl:with-param name="end.indent"> - <xsl:choose> - <xsl:when test="$position = 'start' or - $position = 'left'">0.5em</xsl:when> - <xsl:when test="$position = 'end' or - $position = 'right'">0pt</xsl:when> - <xsl:otherwise>0pt</xsl:otherwise> - </xsl:choose> - </xsl:with-param> - </xsl:call-template> -</xsl:template> - -<xsl:template match="sidebar/title" mode="margin.note.title.mode"> - <xsl:apply-templates/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="abstract"> - <fo:block xsl:use-attribute-sets="abstract.properties"> - <xsl:call-template name="anchor"/> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="abstract/title|abstract/info/title"> - <fo:block xsl:use-attribute-sets="abstract.title.properties"> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="msgset"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="msgentry"> - <xsl:call-template name="block.object"/> -</xsl:template> - -<xsl:template match="simplemsgentry"> - <xsl:call-template name="block.object"/> -</xsl:template> - -<xsl:template match="msg"> - <xsl:call-template name="block.object"/> -</xsl:template> - -<xsl:template match="msgmain"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="msgsub"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="msgrel"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="msgtext"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="msginfo"> - <xsl:call-template name="block.object"/> -</xsl:template> - -<xsl:template match="msglevel"> - <fo:block> - <fo:inline font-weight="bold" - keep-with-next.within-line="always"> - <xsl:call-template name="gentext.template"> - <xsl:with-param name="context" select="'msgset'"/> - <xsl:with-param name="name" select="'MsgLevel'"/> - </xsl:call-template> - </fo:inline> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="msgorig"> - <fo:block> - <fo:inline font-weight="bold" - keep-with-next.within-line="always"> - <xsl:call-template name="gentext.template"> - <xsl:with-param name="context" select="'msgset'"/> - <xsl:with-param name="name" select="'MsgOrig'"/> - </xsl:call-template> - </fo:inline> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="msgaud"> - <fo:block> - <fo:inline font-weight="bold" - keep-with-next.within-line="always"> - <xsl:call-template name="gentext.template"> - <xsl:with-param name="context" select="'msgset'"/> - <xsl:with-param name="name" select="'MsgAud'"/> - </xsl:call-template> - </fo:inline> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="msgexplan"> - <xsl:call-template name="block.object"/> -</xsl:template> - -<xsl:template match="msgexplan/title"> - <fo:block font-weight="bold" - keep-with-next.within-column="always" - hyphenate="false"> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<!-- ==================================================================== --> -<!-- For better or worse, revhistory is allowed in content... --> - -<xsl:template match="revhistory"> - <fo:table table-layout="fixed" xsl:use-attribute-sets="revhistory.table.properties"> - <xsl:call-template name="anchor"/> - <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 start-indent="0pt" end-indent="0pt"> - <fo:table-row> - <fo:table-cell number-columns-spanned="3" xsl:use-attribute-sets="revhistory.table.cell.properties"> - <fo:block xsl:use-attribute-sets="revhistory.title.properties"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'RevHistory'"/> - </xsl:call-template> - </fo:block> - </fo:table-cell> - </fo:table-row> - <xsl:apply-templates/> - </fo:table-body> - </fo:table> -</xsl:template> - -<xsl:template match="revhistory/revision"> - <xsl:variable name="revnumber" select="revnumber"/> - <xsl:variable name="revdate" select="date"/> - <xsl:variable name="revauthor" select="authorinitials|author"/> - <xsl:variable name="revremark" select="revremark|revdescription"/> - <fo:table-row> - <fo:table-cell xsl:use-attribute-sets="revhistory.table.cell.properties"> - <fo:block> - <xsl:call-template name="anchor"/> - <xsl:if test="$revnumber"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'Revision'"/> - </xsl:call-template> - <xsl:call-template name="gentext.space"/> - <xsl:apply-templates select="$revnumber[1]"/> - </xsl:if> - </fo:block> - </fo:table-cell> - <fo:table-cell xsl:use-attribute-sets="revhistory.table.cell.properties"> - <fo:block> - <xsl:apply-templates select="$revdate[1]"/> - </fo:block> - </fo:table-cell> - <fo:table-cell xsl:use-attribute-sets="revhistory.table.cell.properties"> - <fo:block> - <xsl:for-each select="$revauthor"> - <xsl:apply-templates select="."/> - <xsl:if test="position() != last()"> - <xsl:text>, </xsl:text> - </xsl:if> - </xsl:for-each> - </fo:block> - </fo:table-cell> - </fo:table-row> - <xsl:if test="$revremark"> - <fo:table-row> - <fo:table-cell number-columns-spanned="3" xsl:use-attribute-sets="revhistory.table.cell.properties"> - <fo:block> - <xsl:apply-templates select="$revremark[1]"/> - </fo:block> - </fo:table-cell> - </fo:table-row> - </xsl:if> -</xsl:template> - -<xsl:template match="revision/revnumber"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="revision/date"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="revision/authorinitials"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="revision/author"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="revision/revremark"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="revision/revdescription"> - <xsl:apply-templates/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="ackno"> - <fo:block xsl:use-attribute-sets="normal.para.spacing"> - <xsl:call-template name="anchor"/> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="highlights"> - <xsl:call-template name="block.object"/> -</xsl:template> - -<!-- ==================================================================== --> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/callout.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/callout.xsl deleted file mode 100644 index e3d70b47d..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/callout.xsl +++ /dev/null @@ -1,231 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:sverb="http://nwalsh.com/xslt/ext/com.nwalsh.saxon.Verbatim" - xmlns:xverb="com.nwalsh.xalan.Verbatim" - xmlns:lxslt="http://xml.apache.org/xslt" - exclude-result-prefixes="sverb xverb lxslt" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<lxslt:component prefix="xverb" - functions="insertCallouts"/> - -<xsl:template match="programlistingco|screenco"> - <xsl:variable name="verbatim" select="programlisting|screen"/> - <xsl:variable name="vendor" select="system-property('xsl:vendor')"/> - - <xsl:choose> - <xsl:when test="$use.extensions != '0' - and $callouts.extension != '0'"> - <xsl:variable name="rtf"> - <xsl:apply-templates select="$verbatim"> - <xsl:with-param name="suppress-numbers" select="'1'"/> - </xsl:apply-templates> - </xsl:variable> - - <xsl:variable name="rtf-with-callouts"> - <xsl:choose> - <xsl:when test="contains($vendor, 'SAXON ')"> - <xsl:copy-of select="sverb:insertCallouts(areaspec,$rtf)"/> - </xsl:when> - <xsl:when test="contains($vendor, 'Apache Software Foundation')"> - <xsl:copy-of select="xverb:insertCallouts(areaspec,$rtf)"/> - </xsl:when> - <xsl:otherwise> - <xsl:message terminate="yes"> - <xsl:text>Don't know how to do callouts with </xsl:text> - <xsl:value-of select="$vendor"/> - </xsl:message> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$verbatim/@linenumbering = 'numbered' - and $linenumbering.extension != '0'"> - <xsl:call-template name="number.rtf.lines"> - <xsl:with-param name="rtf" select="$rtf-with-callouts"/> - <xsl:with-param name="pi.context" - select="programlisting|screen"/> - </xsl:call-template> - <xsl:apply-templates select="calloutlist"/> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$rtf-with-callouts"/> - <xsl:apply-templates select="calloutlist"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="areaspec|areaset|area"> -</xsl:template> - -<xsl:template match="areaset" mode="conumber"> - <xsl:number count="area|areaset" format="1"/> -</xsl:template> - -<xsl:template match="area" mode="conumber"> - <xsl:number count="area|areaset" format="1"/> -</xsl:template> - -<xsl:template match="co"> - <fo:inline> - <xsl:call-template name="anchor"/> - <xsl:apply-templates select="." mode="callout-bug"/> - </fo:inline> -</xsl:template> - -<xsl:template match="coref"> - <!-- tricky; this relies on the fact that we can process the "co" that's --> - <!-- "over there" as if it were "right here" --> - - <xsl:variable name="co" select="key('id', @linkend)"/> - <xsl:choose> - <xsl:when test="not($co)"> - <xsl:message> - <xsl:text>Error: coref link is broken: </xsl:text> - <xsl:value-of select="@linkend"/> - </xsl:message> - </xsl:when> - <xsl:when test="local-name($co) != 'co'"> - <xsl:message> - <xsl:text>Error: coref doesn't point to a co: </xsl:text> - <xsl:value-of select="@linkend"/> - </xsl:message> - </xsl:when> - <xsl:otherwise> - <fo:inline> - <xsl:call-template name="anchor"/> - <xsl:apply-templates select="$co" mode="callout-bug"/> - </fo:inline> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="co" mode="callout-bug"> - <xsl:call-template name="callout-bug"> - <xsl:with-param name="conum"> - <xsl:number count="co" - level="any" - from="programlisting|screen|literallayout|synopsis" - format="1"/> - </xsl:with-param> - </xsl:call-template> -</xsl:template> - -<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 <= $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}"> - <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 <= $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">❶</xsl:when> - <xsl:when test="$conum = 2">❷</xsl:when> - <xsl:when test="$conum = 3">❸</xsl:when> - <xsl:when test="$conum = 4">❹</xsl:when> - <xsl:when test="$conum = 5">❺</xsl:when> - <xsl:when test="$conum = 6">❻</xsl:when> - <xsl:when test="$conum = 7">❼</xsl:when> - <xsl:when test="$conum = 8">❽</xsl:when> - <xsl:when test="$conum = 9">❾</xsl:when> - <xsl:when test="$conum = 10">❿</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:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/component.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/component.xsl deleted file mode 100644 index af1f1e40b..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/component.xsl +++ /dev/null @@ -1,797 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - - -<xsl:template name="component.title"> - <xsl:param name="node" select="."/> - <xsl:param name="pagewide" select="0"/> - - <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:variable name="titleabbrev"> - <xsl:apply-templates select="$node" mode="titleabbrev.markup"/> - </xsl:variable> - - <xsl:variable name="level"> - <xsl:choose> - <xsl:when test="ancestor::section"> - <xsl:value-of select="count(ancestor::section)+1"/> - </xsl:when> - <xsl:when test="ancestor::sect5">6</xsl:when> - <xsl:when test="ancestor::sect4">5</xsl:when> - <xsl:when test="ancestor::sect3">4</xsl:when> - <xsl:when test="ancestor::sect2">3</xsl:when> - <xsl:when test="ancestor::sect1">2</xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:if test="$passivetex.extensions != 0"> - <fotex:bookmark xmlns:fotex="http://www.tug.org/fotex" - fotex-bookmark-level="2" - fotex-bookmark-label="{$id}"> - <xsl:value-of select="$titleabbrev"/> - </fotex:bookmark> - </xsl:if> - - <fo:block xsl:use-attribute-sets="component.title.properties"> - <xsl:if test="$pagewide != 0"> - <!-- Doesn't work to use 'all' here since not a child of fo:flow --> - <xsl:attribute name="span">inherit</xsl:attribute> - </xsl:if> - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:if test="$axf.extensions != 0"> - <xsl:attribute name="axf:outline-level"> - <xsl:value-of select="count($node/ancestor::*)"/> - </xsl:attribute> - <xsl:attribute name="axf:outline-expand">false</xsl:attribute> - <xsl:attribute name="axf:outline-title"> - <xsl:value-of select="normalize-space($title)"/> - </xsl:attribute> - </xsl:if> - - <!-- Let's handle the case where a component (bibliography, for example) - occurs inside a section; will we need parameters for this? - Danger Will Robinson: using section.title.level*.properties here - runs the risk that someone will set something other than - font-size there... --> - <xsl:choose> - <xsl:when test="$level=2"> - <fo:block xsl:use-attribute-sets="section.title.level2.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:when> - <xsl:when test="$level=3"> - <fo:block xsl:use-attribute-sets="section.title.level3.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:when> - <xsl:when test="$level=4"> - <fo:block xsl:use-attribute-sets="section.title.level4.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:when> - <xsl:when test="$level=5"> - <fo:block xsl:use-attribute-sets="section.title.level5.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:when> - <xsl:when test="$level=6"> - <fo:block xsl:use-attribute-sets="section.title.level6.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:when> - <xsl:otherwise> - <!-- not in a section: do nothing special --> - <xsl:copy-of select="$title"/> - </xsl:otherwise> - </xsl:choose> - </fo:block> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="dedication" mode="dedication"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"/> - </xsl:variable> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - - <fo:block id="{$id}" - xsl:use-attribute-sets="component.titlepage.properties"> - <xsl:call-template name="dedication.titlepage"/> - </fo:block> - <xsl:apply-templates/> - </fo:flow> - </fo:page-sequence> -</xsl:template> - -<xsl:template match="dedication"></xsl:template> <!-- see mode="dedication" --> -<xsl:template match="dedication/docinfo"></xsl:template> -<xsl:template match="dedication/title"></xsl:template> -<xsl:template match="dedication/subtitle"></xsl:template> -<xsl:template match="dedication/titleabbrev"></xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="colophon"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"/> - </xsl:variable> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - - <fo:block id="{$id}" - xsl:use-attribute-sets="component.titlepage.properties"> - <xsl:call-template name="colophon.titlepage"/> - </fo:block> - <xsl:apply-templates/> - </fo:flow> - </fo:page-sequence> -</xsl:template> - -<xsl:template match="colophon/title"></xsl:template> -<xsl:template match="colophon/subtitle"></xsl:template> -<xsl:template match="colophon/titleabbrev"></xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="preface"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"/> - </xsl:variable> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - - <fo:block id="{$id}" - xsl:use-attribute-sets="component.titlepage.properties"> - <xsl:call-template name="preface.titlepage"/> - </fo:block> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" - select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="component.toc"> - <xsl:with-param name="toc.title.p" - select="contains($toc.params, 'title')"/> - </xsl:call-template> - <xsl:call-template name="component.toc.separator"/> - </xsl:if> - - <xsl:apply-templates/> - </fo:flow> - </fo:page-sequence> -</xsl:template> - -<xsl:template match="preface/docinfo|prefaceinfo"></xsl:template> -<xsl:template match="preface/info"></xsl:template> -<xsl:template match="preface/title"></xsl:template> -<xsl:template match="preface/titleabbrev"></xsl:template> -<xsl:template match="preface/subtitle"></xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="chapter"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"/> - </xsl:variable> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - - <fo:block id="{$id}" - xsl:use-attribute-sets="component.titlepage.properties"> - <xsl:call-template name="chapter.titlepage"/> - </fo:block> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="component.toc"> - <xsl:with-param name="toc.title.p" - select="contains($toc.params, 'title')"/> - </xsl:call-template> - <xsl:call-template name="component.toc.separator"/> - </xsl:if> - <xsl:apply-templates/> - </fo:flow> - </fo:page-sequence> -</xsl:template> - -<xsl:template match="chapter/docinfo|chapterinfo"></xsl:template> -<xsl:template match="chapter/info"></xsl:template> -<xsl:template match="chapter/title"></xsl:template> -<xsl:template match="chapter/titleabbrev"></xsl:template> -<xsl:template match="chapter/subtitle"></xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="appendix"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"/> - </xsl:variable> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - - <fo:block id="{$id}" - xsl:use-attribute-sets="component.titlepage.properties"> - <xsl:call-template name="appendix.titlepage"/> - </fo:block> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="component.toc"> - <xsl:with-param name="toc.title.p" - select="contains($toc.params, 'title')"/> - </xsl:call-template> - <xsl:call-template name="component.toc.separator"/> - </xsl:if> - <xsl:apply-templates/> - </fo:flow> - </fo:page-sequence> -</xsl:template> - -<xsl:template match="appendix/docinfo|appendixinfo"></xsl:template> -<xsl:template match="appendix/info"></xsl:template> -<xsl:template match="appendix/title"></xsl:template> -<xsl:template match="appendix/titleabbrev"></xsl:template> -<xsl:template match="appendix/subtitle"></xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="article"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"/> - </xsl:variable> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - - <fo:block id="{$id}" - xsl:use-attribute-sets="component.titlepage.properties"> - <xsl:call-template name="article.titlepage"/> - </fo:block> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="component.toc"> - <xsl:with-param name="toc.title.p" - select="contains($toc.params, 'title')"/> - </xsl:call-template> - <xsl:call-template name="component.toc.separator"/> - </xsl:if> - <xsl:apply-templates/> - </fo:flow> - </fo:page-sequence> -</xsl:template> - -<xsl:template match="article/artheader"></xsl:template> -<xsl:template match="article/articleinfo"></xsl:template> -<xsl:template match="article/info"></xsl:template> -<xsl:template match="article/title"></xsl:template> -<xsl:template match="article/subtitle"></xsl:template> -<xsl:template match="article/titleabbrev"></xsl:template> - -<xsl:template match="article/appendix"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="title"> - <xsl:apply-templates select="." mode="object.title.markup"/> - </xsl:variable> - - <xsl:variable name="titleabbrev"> - <xsl:apply-templates select="." mode="titleabbrev.markup"/> - </xsl:variable> - - <fo:block id='{$id}'> - <xsl:if test="$axf.extensions != 0"> - <xsl:attribute name="axf:outline-level"> - <xsl:value-of select="count(ancestor::*)+2"/> - </xsl:attribute> - <xsl:attribute name="axf:outline-expand">false</xsl:attribute> - <xsl:attribute name="axf:outline-title"> - <xsl:value-of select="normalize-space($titleabbrev)"/> - </xsl:attribute> - </xsl:if> - - <xsl:if test="$passivetex.extensions != 0"> - <fotex:bookmark xmlns:fotex="http://www.tug.org/fotex" - fotex-bookmark-level="{count(ancestor::*)+2}" - fotex-bookmark-label="{$id}"> - <xsl:value-of select="$titleabbrev"/> - </fotex:bookmark> - </xsl:if> - - <fo:block xsl:use-attribute-sets="article.appendix.title.properties"> - <fo:marker marker-class-name="section.head.marker"> - <xsl:choose> - <xsl:when test="$titleabbrev = ''"> - <xsl:value-of select="$title"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$titleabbrev"/> - </xsl:otherwise> - </xsl:choose> - </fo:marker> - <xsl:copy-of select="$title"/> - </fo:block> - - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<!-- ==================================================================== --> - -<!-- Utility template to create a page sequence for an element --> -<xsl:template match="*" mode="page.sequence" name="page.sequence"> - <xsl:param name="content"> - <xsl:apply-templates/> - </xsl:param> - <xsl:param name="master-reference"> - <xsl:call-template name="select.pagemaster"/> - </xsl:param> - <xsl:param name="element" select="local-name(.)"/> - <xsl:param name="gentext-key" select="local-name(.)"/> - <xsl:param name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:param> - - <xsl:param name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - <xsl:with-param name="element" select="$element"/> - </xsl:call-template> - </xsl:param> - - <xsl:param name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - <xsl:with-param name="element" select="$element"/> - </xsl:call-template> - </xsl:param> - - <xsl:param name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - <xsl:with-param name="element" select="$element"/> - </xsl:call-template> - </xsl:param> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:value-of select="$language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:value-of select="$format"/> - </xsl:attribute> - - <xsl:attribute name="initial-page-number"> - <xsl:value-of select="$initial-page-number"/> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:value-of select="$force-page-count"/> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:apply-templates> - - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - - <xsl:copy-of select="$content"/> - - </fo:flow> - </fo:page-sequence> -</xsl:template> - -</xsl:stylesheet> - diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/division.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/division.xsl deleted file mode 100644 index 0b53b77bf..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/division.xsl +++ /dev/null @@ -1,611 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<xsl:template name="division.title"> - <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:variable> - - <xsl:if test="$passivetex.extensions != 0"> - <fotex:bookmark xmlns:fotex="http://www.tug.org/fotex" - fotex-bookmark-level="1" - fotex-bookmark-label="{$id}"> - <xsl:value-of select="$title"/> - </fotex:bookmark> - </xsl:if> - - <fo:block keep-with-next.within-column="always" - hyphenate="false"> - <xsl:if test="$axf.extensions != 0"> - <xsl:attribute name="axf:outline-level"> - <xsl:choose> - <xsl:when test="count($node/ancestor::*) > 0"> - <xsl:value-of select="count($node/ancestor::*)"/> - </xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - <xsl:attribute name="axf:outline-expand">false</xsl:attribute> - <xsl:attribute name="axf:outline-title"> - <xsl:value-of select="normalize-space($title)"/> - </xsl:attribute> - </xsl:if> - <xsl:copy-of select="$title"/> - </fo:block> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="set"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="preamble" - select="*[not(self::book or self::setindex)]"/> - - <xsl:variable name="content" select="book|setindex"/> - - <xsl:variable name="titlepage-master-reference"> - <xsl:call-template name="select.pagemaster"> - <xsl:with-param name="pageclass" select="'titlepage'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="lot-master-reference"> - <xsl:call-template name="select.pagemaster"> - <xsl:with-param name="pageclass" select="'lot'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="$preamble"> - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$titlepage-master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" - select="$titlepage-master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" - select="$titlepage-master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" - select="$titlepage-master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$titlepage-master-reference"/> - </xsl:apply-templates> - - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$titlepage-master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" - select="$titlepage-master-reference"/> - </xsl:call-template> - - <fo:block id="{$id}"> - <xsl:call-template name="set.titlepage"/> - </fo:block> - </fo:flow> - </fo:page-sequence> - </xsl:if> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="contains($toc.params, 'toc')"> - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$lot-master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="element" select="'toc'"/> - <xsl:with-param name="master-reference" - select="$lot-master-reference"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" - select="$lot-master-reference"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" - select="$lot-master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$lot-master-reference"/> - </xsl:apply-templates> - - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$lot-master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" - select="$lot-master-reference"/> - </xsl:call-template> - - <xsl:call-template name="set.toc"/> - </fo:flow> - </fo:page-sequence> - </xsl:if> - - <xsl:apply-templates select="$content"/> -</xsl:template> - -<xsl:template match="set/setinfo"></xsl:template> -<xsl:template match="set/title"></xsl:template> -<xsl:template match="set/subtitle"></xsl:template> -<xsl:template match="set/titleabbrev"></xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="book"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="preamble" - select="title|subtitle|titleabbrev|bookinfo|info"/> - - <xsl:variable name="content" - select="node()[not(self::title or self::subtitle - or self::titleabbrev - or self::info - or self::bookinfo)]"/> - - <xsl:variable name="titlepage-master-reference"> - <xsl:call-template name="select.pagemaster"> - <xsl:with-param name="pageclass" select="'titlepage'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:call-template name="front.cover"/> - - <xsl:if test="$preamble"> - <xsl:call-template name="page.sequence"> - <xsl:with-param name="master-reference" - select="$titlepage-master-reference"/> - <xsl:with-param name="content"> - <fo:block id="{$id}"> - <xsl:call-template name="book.titlepage"/> - </fo:block> - </xsl:with-param> - </xsl:call-template> - </xsl:if> - - <xsl:apply-templates select="dedication" mode="dedication"/> - - <xsl:call-template name="make.book.tocs"/> - - <xsl:apply-templates select="$content"/> - - <xsl:call-template name="back.cover"/> - -</xsl:template> - -<xsl:template match="book/bookinfo"></xsl:template> -<xsl:template match="book/info"></xsl:template> -<xsl:template match="book/title"></xsl:template> -<xsl:template match="book/subtitle"></xsl:template> -<xsl:template match="book/titleabbrev"></xsl:template> - -<!-- Placeholder templates --> -<xsl:template name="front.cover"/> -<xsl:template name="back.cover"/> - -<!-- ================================================================= --> -<xsl:template name="make.book.tocs"> - - <xsl:variable name="lot-master-reference"> - <xsl:call-template name="select.pagemaster"> - <xsl:with-param name="pageclass" select="'lot'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="contains($toc.params, 'toc')"> - <xsl:call-template name="page.sequence"> - <xsl:with-param name="master-reference" - select="$lot-master-reference"/> - <xsl:with-param name="element" select="'toc'"/> - <xsl:with-param name="gentext-key" select="'TableofContents'"/> - <xsl:with-param name="content"> - <xsl:call-template name="division.toc"> - <xsl:with-param name="toc.title.p" - select="contains($toc.params, 'title')"/> - </xsl:call-template> - </xsl:with-param> - </xsl:call-template> - </xsl:if> - - <xsl:if test="contains($toc.params,'figure') and .//figure"> - <xsl:call-template name="page.sequence"> - <xsl:with-param name="master-reference" - select="$lot-master-reference"/> - <xsl:with-param name="element" select="'toc'"/> - <xsl:with-param name="gentext-key" select="'ListofFigures'"/> - <xsl:with-param name="content"> - <xsl:call-template name="list.of.titles"> - <xsl:with-param name="titles" select="'figure'"/> - <xsl:with-param name="nodes" select=".//figure"/> - </xsl:call-template> - </xsl:with-param> - </xsl:call-template> - </xsl:if> - - <xsl:if test="contains($toc.params,'table') and .//table"> - <xsl:call-template name="page.sequence"> - <xsl:with-param name="master-reference" - select="$lot-master-reference"/> - <xsl:with-param name="element" select="'toc'"/> - <xsl:with-param name="gentext-key" select="'ListofTables'"/> - <xsl:with-param name="content"> - <xsl:call-template name="list.of.titles"> - <xsl:with-param name="titles" select="'table'"/> - <xsl:with-param name="nodes" select=".//table"/> - </xsl:call-template> - </xsl:with-param> - </xsl:call-template> - </xsl:if> - - <xsl:if test="contains($toc.params,'example') and .//example"> - <xsl:call-template name="page.sequence"> - <xsl:with-param name="master-reference" - select="$lot-master-reference"/> - <xsl:with-param name="element" select="'toc'"/> - <xsl:with-param name="gentext-key" select="'ListofExample'"/> - <xsl:with-param name="content"> - <xsl:call-template name="list.of.titles"> - <xsl:with-param name="titles" select="'example'"/> - <xsl:with-param name="nodes" select=".//example"/> - </xsl:call-template> - </xsl:with-param> - </xsl:call-template> - </xsl:if> - - <xsl:if test="contains($toc.params,'equation') and - .//equation[title or info/title]"> - <xsl:call-template name="page.sequence"> - <xsl:with-param name="master-reference" - select="$lot-master-reference"/> - <xsl:with-param name="element" select="'toc'"/> - <xsl:with-param name="gentext-key" select="'ListofEquations'"/> - <xsl:with-param name="content"> - <xsl:call-template name="list.of.titles"> - <xsl:with-param name="titles" select="'equation'"/> - <xsl:with-param name="nodes" - select=".//equation[title or info/title]"/> - </xsl:call-template> - </xsl:with-param> - </xsl:call-template> - </xsl:if> - - <xsl:if test="contains($toc.params,'procedure') and - .//procedure[title or info/title]"> - <xsl:call-template name="page.sequence"> - <xsl:with-param name="master-reference" - select="$lot-master-reference"/> - <xsl:with-param name="element" select="'toc'"/> - <xsl:with-param name="gentext-key" select="'ListofProcedures'"/> - <xsl:with-param name="content"> - <xsl:call-template name="list.of.titles"> - <xsl:with-param name="titles" select="'procedure'"/> - <xsl:with-param name="nodes" - select=".//procedure[title or info/title]"/> - </xsl:call-template> - </xsl:with-param> - </xsl:call-template> - </xsl:if> -</xsl:template> -<!-- ==================================================================== --> - -<xsl:template match="part"> - <xsl:if test="not(partintro)"> - <xsl:apply-templates select="." mode="part.titlepage.mode"/> - <xsl:call-template name="generate.part.toc"/> - </xsl:if> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="part" mode="part.titlepage.mode"> - <!-- done this way to force the context node to be the part --> - <xsl:param name="additional.content"/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="titlepage-master-reference"> - <xsl:call-template name="select.pagemaster"> - <xsl:with-param name="pageclass" select="'titlepage'"/> - </xsl:call-template> - </xsl:variable> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$titlepage-master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" - select="$titlepage-master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" - select="$titlepage-master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" - select="$titlepage-master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$titlepage-master-reference"/> - </xsl:apply-templates> - - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$titlepage-master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" - select="$titlepage-master-reference"/> - </xsl:call-template> - - <fo:block id="{$id}"> - <xsl:call-template name="part.titlepage"/> - </fo:block> - <xsl:copy-of select="$additional.content"/> - </fo:flow> - </fo:page-sequence> -</xsl:template> - -<xsl:template match="part/docinfo|partinfo"></xsl:template> -<xsl:template match="part/info"></xsl:template> -<xsl:template match="part/title"></xsl:template> -<xsl:template match="part/subtitle"></xsl:template> -<xsl:template match="part/titleabbrev"></xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="generate.part.toc"> - <xsl:param name="part" select="."/> - - <xsl:variable name="lot-master-reference"> - <xsl:call-template name="select.pagemaster"> - <xsl:with-param name="pageclass" select="'lot'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="node" select="$part"/> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="nodes" select="reference| - preface| - chapter| - appendix| - article| - bibliography| - glossary| - index"/> - - <xsl:if test="count($nodes) > 0 and contains($toc.params, 'toc')"> - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$lot-master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="element" select="'toc'"/> - <xsl:with-param name="master-reference" - select="$lot-master-reference"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="element" select="'toc'"/> - <xsl:with-param name="master-reference" - select="$lot-master-reference"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" - select="$lot-master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="$part" mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$lot-master-reference"/> - </xsl:apply-templates> - - <xsl:apply-templates select="$part" mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$lot-master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" - select="$lot-master-reference"/> - </xsl:call-template> - - <xsl:call-template name="division.toc"> - <xsl:with-param name="toc-context" select="$part"/> - <xsl:with-param name="toc.title.p" - select="contains($toc.params, 'title')"/> - </xsl:call-template> - - </fo:flow> - </fo:page-sequence> - </xsl:if> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="part/partintro"> - <xsl:apply-templates select=".." mode="part.titlepage.mode"> - <xsl:with-param name="additional.content"> - <xsl:if test="title"> - <xsl:call-template name="partintro.titlepage"/> - </xsl:if> - <xsl:apply-templates/> - </xsl:with-param> - </xsl:apply-templates> - - <xsl:call-template name="generate.part.toc"> - <xsl:with-param name="part" select=".."/> - </xsl:call-template> -</xsl:template> - -<xsl:template match="partintro/title"></xsl:template> -<xsl:template match="partintro/subtitle"></xsl:template> -<xsl:template match="partintro/titleabbrev"></xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="book" mode="division.number"> - <xsl:number from="set" count="book" format="1."/> -</xsl:template> - -<xsl:template match="part" mode="division.number"> - <xsl:number from="book" count="part" format="I."/> -</xsl:template> - -</xsl:stylesheet> - diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/docbook.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/docbook.xsl deleted file mode 100644 index 5edfb5718..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/docbook.xsl +++ /dev/null @@ -1,331 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:exsl="http://exslt.org/common" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:ng="http://docbook.org/docbook-ng" - xmlns:db="http://docbook.org/ns/docbook" - exclude-result-prefixes="db ng exsl" - version='1.0'> - -<!-- It is important to use indent="no" here, otherwise verbatim --> -<!-- environments get broken by indented tags...at least when the --> -<!-- callout extension is used...at least with some processors --> -<xsl:output method="xml" indent="no"/> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<xsl:include href="../VERSION"/> -<xsl:include href="param.xsl"/> -<xsl:include href="../lib/lib.xsl"/> -<xsl:include href="../common/l10n.xsl"/> -<xsl:include href="../common/common.xsl"/> -<xsl:include href="../common/utility.xsl"/> -<xsl:include href="../common/labels.xsl"/> -<xsl:include href="../common/titles.xsl"/> -<xsl:include href="../common/subtitles.xsl"/> -<xsl:include href="../common/gentext.xsl"/> -<xsl:include href="../common/olink.xsl"/> -<xsl:include href="../common/targets.xsl"/> -<xsl:include href="../common/pi.xsl"/> -<xsl:include href="autotoc.xsl"/> -<xsl:include href="autoidx.xsl"/> -<xsl:include href="lists.xsl"/> -<xsl:include href="callout.xsl"/> -<xsl:include href="verbatim.xsl"/> -<xsl:include href="graphics.xsl"/> -<xsl:include href="xref.xsl"/> -<xsl:include href="formal.xsl"/> -<xsl:include href="table.xsl"/> -<xsl:include href="htmltbl.xsl"/> -<xsl:include href="sections.xsl"/> -<xsl:include href="inline.xsl"/> -<xsl:include href="footnote.xsl"/> -<xsl:include href="fo.xsl"/> -<xsl:include href="fo-rtf.xsl"/> -<xsl:include href="info.xsl"/> -<xsl:include href="keywords.xsl"/> -<xsl:include href="division.xsl"/> -<xsl:include href="index.xsl"/> -<xsl:include href="toc.xsl"/> -<xsl:include href="refentry.xsl"/> -<xsl:include href="math.xsl"/> -<xsl:include href="admon.xsl"/> -<xsl:include href="component.xsl"/> -<xsl:include href="biblio.xsl"/> -<xsl:include href="biblio-iso690.xsl"/> -<xsl:include href="glossary.xsl"/> -<xsl:include href="block.xsl"/> -<xsl:include href="task.xsl"/> -<xsl:include href="qandaset.xsl"/> -<xsl:include href="synop.xsl"/> -<xsl:include href="titlepage.xsl"/> -<xsl:include href="titlepage.templates.xsl"/> -<xsl:include href="pagesetup.xsl"/> -<xsl:include href="pi.xsl"/> -<xsl:include href="spaces.xsl"/> -<xsl:include href="ebnf.xsl"/> -<xsl:include href="../html/chunker.xsl"/> -<xsl:include href="annotations.xsl"/> -<xsl:include href="../common/stripns.xsl"/> - -<xsl:include href="fop.xsl"/> -<xsl:include href="fop1.xsl"/> -<xsl:include href="passivetex.xsl"/> -<xsl:include href="xep.xsl"/> -<xsl:include href="axf.xsl"/> -<xsl:include href="ptc.xsl"/> - -<xsl:param name="stylesheet.result.type" select="'fo'"/> - -<!-- ==================================================================== --> - -<xsl:key name="id" match="*" use="@id|@xml:id"/> - -<!-- ==================================================================== --> - -<xsl:template match="*"> - <xsl:message> - <xsl:value-of select="name(.)"/> - <xsl:text> encountered</xsl:text> - <xsl:if test="parent::*"> - <xsl:text> in </xsl:text> - <xsl:value-of select="name(parent::*)"/> - </xsl:if> - <xsl:text>, but no template matches.</xsl:text> - </xsl:message> - <fo:block color="red"> - <xsl:text><</xsl:text> - <xsl:value-of select="name(.)"/> - <xsl:text>></xsl:text> - <xsl:apply-templates/> - <xsl:text></</xsl:text> - <xsl:value-of select="name(.)"/> - <xsl:text>></xsl:text> - </fo:block> -</xsl:template> - -<!-- Update this list if new root elements supported --> -<xsl:variable name="root.elements" select="' appendix article bibliography book chapter colophon dedication glossary index part preface qandaset refentry reference sect1 section set setindex '"/> - -<xsl:template match="/"> - <!-- * Get a title for current doc so that we let the user --> - <!-- * know what document we are processing at this point. --> - <xsl:variable name="doc.title"> - <xsl:call-template name="get.doc.title"/> - </xsl:variable> - <xsl:choose> - <!-- Hack! If someone hands us a DocBook V5.x or DocBook NG document, - toss the namespace and continue. Use the docbook5 namespaced - stylesheets for DocBook5 if you don't want to use this feature.--> - <!-- include extra test for Xalan quirk --> - <xsl:when test="(function-available('exsl:node-set') or - contains(system-property('xsl:vendor'), - 'Apache Software Foundation')) - and (*/self::ng:* or */self::db:*)"> - <xsl:call-template name="log.message"> - <xsl:with-param name="level">Note</xsl:with-param> - <xsl:with-param name="source" select="$doc.title"/> - <xsl:with-param name="context-desc"> - <xsl:text>namesp. cut</xsl:text> - </xsl:with-param> - <xsl:with-param name="message"> - <xsl:text>stripped namespace before processing</xsl:text> - </xsl:with-param> - </xsl:call-template> - <xsl:variable name="nons"> - <xsl:apply-templates mode="stripNS"/> - </xsl:variable> - <xsl:call-template name="log.message"> - <xsl:with-param name="level">Note</xsl:with-param> - <xsl:with-param name="source" select="$doc.title"/> - <xsl:with-param name="context-desc"> - <xsl:text>namesp. cut</xsl:text> - </xsl:with-param> - <xsl:with-param name="message"> - <xsl:text>processing stripped document</xsl:text> - </xsl:with-param> - </xsl:call-template> - <xsl:apply-templates select="exsl:node-set($nons)"/> - </xsl:when> - <!-- Can't process unless namespace removed --> - <xsl:when test="*/self::ng:* or */self::db:*"> - <xsl:message terminate="yes"> - <xsl:text>Unable to strip the namespace from DB5 document,</xsl:text> - <xsl:text> cannot proceed.</xsl:text> - </xsl:message> - </xsl:when> - <xsl:otherwise> - <xsl:choose> - <xsl:when test="$rootid != ''"> - <xsl:variable name="root.element" select="key('id', $rootid)"/> - <xsl:choose> - <xsl:when test="count($root.element) = 0"> - <xsl:message terminate="yes"> - <xsl:text>ID '</xsl:text> - <xsl:value-of select="$rootid"/> - <xsl:text>' not found in document.</xsl:text> - </xsl:message> - </xsl:when> - <xsl:when test="not(contains($root.elements, concat(' ', local-name($root.element), ' ')))"> - <xsl:message terminate="yes"> - <xsl:text>ERROR: Document root element ($rootid=</xsl:text> - <xsl:value-of select="$rootid"/> - <xsl:text>) for FO output </xsl:text> - <xsl:text>must be one of the following elements:</xsl:text> - <xsl:value-of select="$root.elements"/> - </xsl:message> - </xsl:when> - <!-- Otherwise proceed --> - <xsl:otherwise> - <xsl:if test="$collect.xref.targets = 'yes' or - $collect.xref.targets = 'only'"> - <xsl:apply-templates select="$root.element" - mode="collect.targets"/> - </xsl:if> - <xsl:if test="$collect.xref.targets != 'only'"> - <xsl:apply-templates select="$root.element" - mode="process.root"/> - </xsl:if> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <!-- Otherwise process the document root element --> - <xsl:otherwise> - <xsl:variable name="document.element" select="*[1]"/> - <xsl:choose> - <xsl:when test="not(contains($root.elements, - concat(' ', local-name($document.element), ' ')))"> - <xsl:message terminate="yes"> - <xsl:text>ERROR: Document root element for FO output </xsl:text> - <xsl:text>must be one of the following elements:</xsl:text> - <xsl:value-of select="$root.elements"/> - </xsl:message> - </xsl:when> - <!-- Otherwise proceed --> - <xsl:otherwise> - <xsl:if test="$collect.xref.targets = 'yes' or - $collect.xref.targets = 'only'"> - <xsl:apply-templates select="/" - mode="collect.targets"/> - </xsl:if> - <xsl:if test="$collect.xref.targets != 'only'"> - <xsl:apply-templates select="/" - mode="process.root"/> - </xsl:if> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="*" mode="process.root"> - <xsl:variable name="document.element" select="self::*"/> - - <xsl:call-template name="root.messages"/> - - <xsl:variable name="title"> - <xsl:choose> - <xsl:when test="$document.element/title[1]"> - <xsl:value-of select="$document.element/title[1]"/> - </xsl:when> - <xsl:otherwise>[could not find document title]</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <!-- Include all id values in XEP output --> - <xsl:if test="$xep.extensions != 0"> - <xsl:processing-instruction - name="xep-pdf-drop-unused-destinations">false</xsl:processing-instruction> - </xsl:if> - - <fo:root xsl:use-attribute-sets="root.properties"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"> - <xsl:with-param name="target" select="/*[1]"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:if test="$xep.extensions != 0"> - <xsl:call-template name="xep-pis"/> - <xsl:call-template name="xep-document-information"/> - </xsl:if> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-document-information"/> - </xsl:if> - - <xsl:call-template name="setup.pagemasters"/> - - <xsl:if test="$fop.extensions != 0"> - <xsl:apply-templates select="$document.element" mode="fop.outline"/> - </xsl:if> - - <xsl:if test="$fop1.extensions != 0"> - <xsl:variable name="bookmarks"> - <xsl:apply-templates select="$document.element" - mode="fop1.outline"/> - </xsl:variable> - <xsl:if test="string($bookmarks) != ''"> - <fo:bookmark-tree> - <xsl:copy-of select="$bookmarks"/> - </fo:bookmark-tree> - </xsl:if> - </xsl:if> - - <xsl:if test="$xep.extensions != 0"> - <xsl:variable name="bookmarks"> - <xsl:apply-templates select="$document.element" mode="xep.outline"/> - </xsl:variable> - <xsl:if test="string($bookmarks) != ''"> - <rx:outline xmlns:rx="http://www.renderx.com/XSL/Extensions"> - <xsl:copy-of select="$bookmarks"/> - </rx:outline> - </xsl:if> - </xsl:if> - - <xsl:if test="$arbortext.extensions != 0 and $ati.xsl11.bookmarks != 0"> - <xsl:variable name="bookmarks"> - <xsl:apply-templates select="$document.element" - mode="ati.xsl11.bookmarks"/> - </xsl:variable> - <xsl:if test="string($bookmarks) != ''"> - <fo:bookmark-tree> - <xsl:copy-of select="$bookmarks"/> - </fo:bookmark-tree> - </xsl:if> - </xsl:if> - - <xsl:apply-templates select="$document.element"/> - </fo:root> -</xsl:template> - -<xsl:template name="root.messages"> - <!-- redefine this any way you'd like to output messages --> - <!-- DO NOT OUTPUT ANYTHING FROM THIS TEMPLATE --> - <xsl:message> - <xsl:text>Making </xsl:text> - <xsl:value-of select="$page.orientation"/> - <xsl:text> pages on </xsl:text> - <xsl:value-of select="$paper.type"/> - <xsl:text> paper (</xsl:text> - <xsl:value-of select="$page.width"/> - <xsl:text>x</xsl:text> - <xsl:value-of select="$page.height"/> - <xsl:text>)</xsl:text> - </xsl:message> -</xsl:template> - -<!-- ==================================================================== --> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/ebnf.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/ebnf.xsl deleted file mode 100644 index d9cc04a28..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/ebnf.xsl +++ /dev/null @@ -1,325 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" - exclude-result-prefixes="doc" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<doc:reference xmlns=""> -<referenceinfo> -<releaseinfo role="meta"> -$Id$ -</releaseinfo> -<author><surname>Walsh</surname> -<firstname>Norman</firstname></author> -<copyright><year>1999</year><year>2000</year><year>2001</year> -<holder>Norman Walsh</holder> -</copyright> -</referenceinfo> -<title>HTML EBNF Reference</title> - -<partintro> -<section><title>Introduction</title> - -<para>This is technical reference documentation for the DocBook XSL -Stylesheets; it documents (some of) the parameters, templates, and -other elements of the stylesheets.</para> - -<para>This reference describes the templates and parameters relevant -to formatting EBNF markup.</para> - -<para>This is not intended to be <quote>user</quote> documentation. -It is provided for developers writing customization layers for the -stylesheets, and for anyone who's interested in <quote>how it -works</quote>.</para> - -<para>Although I am trying to be thorough, this documentation is known -to be incomplete. Don't forget to read the source, too :-)</para> -</section> -</partintro> -</doc:reference> - -<!-- ==================================================================== --> - -<xsl:template match="productionset"> - <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable> - - <xsl:choose> - <xsl:when test="title"> - <fo:block id="{$id}" xsl:use-attribute-sets="formal.object.properties"> - <xsl:call-template name="formal.object.heading"> - <xsl:with-param name="placement" select="'before'"/> - </xsl:call-template> - - <fo:table table-layout="fixed" width="100%"> - <fo:table-column column-number="1" column-width="3%"/> - <fo:table-column column-number="2" column-width="15%"/> - <fo:table-column column-number="3" column-width="5%"/> - <fo:table-column column-number="4" column-width="52%"/> - <fo:table-column column-number="5" column-width="25%"/> - <fo:table-body start-indent="0pt" end-indent="0pt"> - <xsl:apply-templates select="production|productionrecap"/> - </fo:table-body> - </fo:table> - </fo:block> - </xsl:when> - <xsl:otherwise> - <fo:table id="{$id}" table-layout="fixed" width="100%"> - <fo:table-column column-number="1" column-width="3%"/> - <fo:table-column column-number="2" column-width="15%"/> - <fo:table-column column-number="3" column-width="5%"/> - <fo:table-column column-number="4" column-width="52%"/> - <fo:table-column column-number="5" column-width="25%"/> - <fo:table-body start-indent="0pt" end-indent="0pt"> - <xsl:apply-templates select="production|productionrecap"/> - </fo:table-body> - </fo:table> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="productionset/title"> - <!-- suppressed --> -</xsl:template> - -<xsl:template match="production"> - <xsl:param name="recap" select="false()"/> - <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable> - <fo:table-row> - <fo:table-cell> - <fo:block text-align="start"> - <xsl:text>[</xsl:text> - <xsl:number count="production" level="any"/> - <xsl:text>]</xsl:text> - </fo:block> - </fo:table-cell> - <fo:table-cell> - <fo:block text-align="end"> - <xsl:choose> - <xsl:when test="$recap"> - <fo:basic-link internal-destination="{$id}" - xsl:use-attribute-sets="xref.properties"> - <xsl:apply-templates select="lhs"/> - </fo:basic-link> - </xsl:when> - <xsl:otherwise> - <fo:wrapper id="{$id}"> - <xsl:apply-templates select="lhs"/> - </fo:wrapper> - </xsl:otherwise> - </xsl:choose> - </fo:block> - </fo:table-cell> - <fo:table-cell> - <fo:block text-align="center"> - <xsl:copy-of select="$ebnf.assignment"/> - </fo:block> - </fo:table-cell> - <fo:table-cell> - <fo:block> - <xsl:apply-templates select="rhs"/> - <xsl:copy-of select="$ebnf.statement.terminator"/> - </fo:block> - </fo:table-cell> - <fo:table-cell border-start-width="3pt"> - <fo:block text-align="start"> - <xsl:choose> - <xsl:when test="rhs/lineannotation|constraint"> - <xsl:apply-templates select="rhs/lineannotation" mode="rhslo"/> - <xsl:apply-templates select="constraint"/> - </xsl:when> - <xsl:otherwise> - <xsl:text> </xsl:text> - </xsl:otherwise> - </xsl:choose> - </fo:block> - </fo:table-cell> - </fo:table-row> -</xsl:template> - -<xsl:template match="productionrecap"> - <xsl:variable name="targets" select="key('id',@linkend)"/> - <xsl:variable name="target" select="$targets[1]"/> - - <xsl:if test="count($targets)=0"> - <xsl:message> - <xsl:text>Error: no ID for productionrecap linkend: </xsl:text> - <xsl:value-of select="@linkend"/> - <xsl:text>.</xsl:text> - </xsl:message> - </xsl:if> - - <xsl:if test="count($targets)>1"> - <xsl:message> - <xsl:text>Warning: multiple "IDs" for productionrecap linkend: </xsl:text> - <xsl:value-of select="@linkend"/> - <xsl:text>.</xsl:text> - </xsl:message> - </xsl:if> - - <xsl:apply-templates select="$target"> - <xsl:with-param name="recap" select="true()"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="lhs"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="rhs"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="nonterminal"> - <xsl:variable name="linkend"> - <xsl:call-template name="xpointer.idref"> - <xsl:with-param name="xpointer" select="@def"/> - </xsl:call-template> - </xsl:variable> - - <xsl:call-template name="check.id.unique"> - <xsl:with-param name="linkend" select="$linkend"/> - </xsl:call-template> - - <xsl:call-template name="check.idref.targets"> - <xsl:with-param name="linkend" select="$linkend"/> - <xsl:with-param name="element-list">production</xsl:with-param> - </xsl:call-template> - - <!-- If you don't provide content, you can't point outside this doc. --> - <xsl:choose> - <xsl:when test="*|text()"><!--nop--></xsl:when> - <xsl:otherwise> - <xsl:if test="$linkend = ''"> - <xsl:message> - <xsl:text>Non-terminals with no content must point to </xsl:text> - <xsl:text>production elements in the current document.</xsl:text> - </xsl:message> - <xsl:message> - <xsl:text>Invalid xpointer for empty nt: </xsl:text> - <xsl:value-of select="@def"/> - </xsl:message> - </xsl:if> - </xsl:otherwise> - </xsl:choose> - - <xsl:variable name="href"> - <xsl:choose> - <xsl:when test="$linkend != ''"> - <xsl:variable name="targets" select="key('id',$linkend)"/> - <xsl:variable name="target" select="$targets[1]"/> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$target"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="@def"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <fo:basic-link internal-destination="{$href}" - xsl:use-attribute-sets="xref.properties"> - <xsl:choose> - <xsl:when test="*|text()"> - <xsl:apply-templates/> - </xsl:when> - <xsl:otherwise> - <xsl:choose> - <xsl:when test="$linkend != ''"> - <xsl:variable name="targets" select="key('id',$linkend)"/> - <xsl:variable name="target" select="$targets[1]"/> - <xsl:apply-templates select="$target/lhs"/> - </xsl:when> - <xsl:otherwise> - <xsl:text>???</xsl:text> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> - </fo:basic-link> -</xsl:template> - -<xsl:template match="rhs/lineannotation"> - <!--nop--> -</xsl:template> - -<xsl:template match="rhs/lineannotation" mode="rhslo"> - <xsl:text>/* </xsl:text> - <xsl:apply-templates/> - <xsl:text> */</xsl:text> -</xsl:template> - -<xsl:template match="constraint"> - <xsl:call-template name="check.id.unique"> - <xsl:with-param name="linkend" select="@linkend"/> - </xsl:call-template> - - <xsl:call-template name="check.idref.targets"> - <xsl:with-param name="linkend" select="@linkend"/> - <xsl:with-param name="element-list">constraintdef</xsl:with-param> - </xsl:call-template> - - <xsl:variable name="href"> - <xsl:variable name="targets" select="key('id',@linkend)"/> - <xsl:variable name="target" select="$targets[1]"/> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$target"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="preceding-sibling::constraint"> - <fo:inline linefeed-treatment="preserve">
</fo:inline> - </xsl:if> - <xsl:text>[ </xsl:text> - - <xsl:choose> - <xsl:when test="@role"> - <xsl:value-of select="@role"/> - <xsl:text>: </xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="targets" select="key('id',@linkend)"/> - <xsl:variable name="target" select="$targets[1]"/> - <xsl:if test="$target/@role"> - <xsl:value-of select="$target/@role"/> - <xsl:text>: </xsl:text> - </xsl:if> - </xsl:otherwise> - </xsl:choose> - - <fo:basic-link internal-destination="{$href}" - xsl:use-attribute-sets="xref.properties"> - <xsl:variable name="targets" select="key('id',@linkend)"/> - <xsl:variable name="target" select="$targets[1]"/> - <xsl:apply-templates select="$target" mode="title.markup"/> - </fo:basic-link> - <xsl:text> ]</xsl:text> -</xsl:template> - -<xsl:template match="constraintdef"> - <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable> - <fo:block id="{$id}"> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="constraintdef/title"> - <fo:block font-weight="bold"> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<!-- ==================================================================== --> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/fo-rtf.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/fo-rtf.xsl deleted file mode 100644 index 87f281857..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/fo-rtf.xsl +++ /dev/null @@ -1,154 +0,0 @@ -<?xml version="1.0"?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:exsl="http://exslt.org/common" - xmlns:set="http://exslt.org/sets" - exclude-result-prefixes="exsl set" - version="1.0"> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the DocBook XSL Stylesheet distribution. - See ../README or http://docbook.sf.net/ for copyright - copyright and other information. - - ******************************************************************** --> - -<!-- This module contains templates that match against FO nodes. It is used - to post-process result tree fragments for some sorts of cleanup. - These templates can only ever be fired by a processor that supports - exslt:node-set(). --> - -<!-- ==================================================================== --> - -<!-- insert.fo.fnum mode templates insert a particular RTF at the beginning - of the first paragraph in the primary RTF. In fact, they are inserting - a footnote-number, so we tinker a few other things too, like spacing and - font-sizes. --> - -<xsl:template match="/" mode="insert.fo.fnum"> - <xsl:param name="mark" select="'?'"/> - <xsl:apply-templates mode="insert.fo.fnum"> - <xsl:with-param name="mark" select="$mark"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="*" mode="insert.fo.fnum"> - <xsl:param name="mark" select="'?'"/> - <xsl:copy> - <xsl:copy-of select="@*"/> - <xsl:apply-templates mode="insert.fo.fnum"> - <xsl:with-param name="mark" select="$mark"/> - </xsl:apply-templates> - </xsl:copy> -</xsl:template> - -<xsl:template match="fo:block" mode="insert.fo.fnum"> - <xsl:param name="mark" select="'?'"/> - <xsl:copy> - <xsl:for-each select="@*"> - <xsl:choose> - <xsl:when test="starts-with(name(.), 'space-before')"/> - <xsl:when test="starts-with(name(.), 'space-after')"/> - <xsl:when test="starts-with(name(.), 'font-size')"/> - <xsl:otherwise> - <xsl:copy-of select="."/> - </xsl:otherwise> - </xsl:choose> - </xsl:for-each> - <xsl:if test="not(preceding::fo:block)"> - <xsl:copy-of select="$mark"/> - </xsl:if> - <xsl:apply-templates mode="insert.fo.fnum"> - <xsl:with-param name="mark" select="$mark"/> - </xsl:apply-templates> - </xsl:copy> -</xsl:template> - -<xsl:template match="text()|processing-instruction()|comment()" mode="insert.fo.fnum"> - <xsl:param name="mark" select="'?'"/> - <xsl:copy/> -</xsl:template> - -<!-- ==================================================================== --> - -<!-- insert.fo.block mode templates insert a particular RTF at the beginning - of the first paragraph in the primary RTF. --> - -<xsl:template match="/" mode="insert.fo.block"> - <xsl:param name="mark" select="'?'"/> - <xsl:apply-templates mode="insert.fo.block"> - <xsl:with-param name="mark" select="$mark"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="*" mode="insert.fo.block"> - <xsl:param name="mark" select="'?'"/> - <xsl:copy> - <xsl:copy-of select="@*"/> - <xsl:apply-templates mode="insert.fo.block"> - <xsl:with-param name="mark" select="$mark"/> - </xsl:apply-templates> - </xsl:copy> -</xsl:template> - -<xsl:template match="fo:block" mode="insert.fo.block"> - <xsl:param name="mark" select="'?'"/> - <xsl:copy> - <xsl:copy-of select="@*"/> - <xsl:if test="not(preceding::fo:block)"> - <xsl:copy-of select="$mark"/> - </xsl:if> - <xsl:apply-templates mode="insert.fo.block"> - <xsl:with-param name="mark" select="$mark"/> - </xsl:apply-templates> - </xsl:copy> -</xsl:template> - -<xsl:template match="text()|processing-instruction()|comment()" mode="insert.fo.block"> - <xsl:param name="mark" select="'?'"/> - <xsl:copy/> -</xsl:template> - -<!-- ==================================================================== --> - -<!-- insert.fo.text mode templates insert a particular RTF at the beginning - of the first text-node in the primary RTF. --> - -<xsl:template match="/" mode="insert.fo.text"> - <xsl:param name="mark" select="'?'"/> - <xsl:apply-templates mode="insert.fo.text"> - <xsl:with-param name="mark" select="$mark"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="*" mode="insert.fo.text"> - <xsl:param name="mark" select="'?'"/> - <xsl:copy> - <xsl:copy-of select="@*"/> - <xsl:apply-templates mode="insert.fo.text"> - <xsl:with-param name="mark" select="$mark"/> - </xsl:apply-templates> - </xsl:copy> -</xsl:template> - -<xsl:template match="text()|processing-instruction()|comment()" mode="insert.fo.text"> - <xsl:param name="mark" select="'?'"/> - - <xsl:if test="not(preceding::text())"> - <xsl:copy-of select="$mark"/> - </xsl:if> - - <xsl:copy/> -</xsl:template> - -<xsl:template match="processing-instruction()|comment()" mode="insert.fo.text"> - <xsl:param name="mark" select="'?'"/> - <xsl:copy/> -</xsl:template> - -<!-- ==================================================================== --> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/fo.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/fo.xsl deleted file mode 100644 index e1441c742..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/fo.xsl +++ /dev/null @@ -1,71 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<xsl:template name="anchor"> - <xsl:param name="node" select="."/> - <xsl:param name="conditional" select="1"/> - <xsl:variable name="id"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$node"/> - </xsl:call-template> - </xsl:variable> - <xsl:if test="$conditional = 0 or $node/@id or $node/@xml:id"> - <xsl:attribute name="id"><xsl:value-of select="$id"/></xsl:attribute> - </xsl:if> -</xsl:template> - -<xsl:template name="dingbat"> - <xsl:param name="dingbat">bullet</xsl:param> - <xsl:variable name="symbol"> - <xsl:choose> - <xsl:when test="$dingbat='bullet'">o</xsl:when> - <xsl:when test="$dingbat='copyright'">©</xsl:when> - <xsl:when test="$dingbat='trademark'">™</xsl:when> - <xsl:when test="$dingbat='trade'">™</xsl:when> - <xsl:when test="$dingbat='registered'">®</xsl:when> - <xsl:when test="$dingbat='service'">(SM)</xsl:when> - <xsl:when test="$dingbat='ldquo'">"</xsl:when> - <xsl:when test="$dingbat='rdquo'">"</xsl:when> - <xsl:when test="$dingbat='lsquo'">'</xsl:when> - <xsl:when test="$dingbat='rsquo'">'</xsl:when> - <xsl:when test="$dingbat='em-dash'">—</xsl:when> - <xsl:when test="$dingbat='en-dash'">-</xsl:when> - <xsl:otherwise>o</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$dingbat.font.family = ''"> - <xsl:copy-of select="$symbol"/> - </xsl:when> - <xsl:otherwise> - <fo:inline font-family="{$dingbat.font.family}"> - <xsl:copy-of select="$symbol"/> - </fo:inline> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="href.target"> - <xsl:param name="context" select="."/> - <xsl:param name="object" select="."/> - <xsl:text>#</xsl:text> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$object"/> - </xsl:call-template> -</xsl:template> - -</xsl:stylesheet> - diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/footnote.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/footnote.xsl deleted file mode 100644 index 3340b322d..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/footnote.xsl +++ /dev/null @@ -1,186 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:exsl="http://exslt.org/common" - exclude-result-prefixes="exsl" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<xsl:template name="format.footnote.mark"> - <xsl:param name="mark" select="'?'"/> - <fo:inline xsl:use-attribute-sets="footnote.mark.properties"> - <xsl:choose> - <xsl:when test="$fop.extensions != 0"> - <xsl:attribute name="vertical-align">super</xsl:attribute> - </xsl:when> - <xsl:otherwise> - <xsl:attribute name="baseline-shift">super</xsl:attribute> - </xsl:otherwise> - </xsl:choose> - <xsl:copy-of select="$mark"/> - </fo:inline> -</xsl:template> - -<xsl:template match="footnote"> - <xsl:choose> - <xsl:when test="ancestor::table or ancestor::informaltable"> - <xsl:call-template name="format.footnote.mark"> - <xsl:with-param name="mark"> - <xsl:apply-templates select="." mode="footnote.number"/> - </xsl:with-param> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <fo:footnote> - <fo:inline> - <xsl:call-template name="format.footnote.mark"> - <xsl:with-param name="mark"> - <xsl:apply-templates select="." mode="footnote.number"/> - </xsl:with-param> - </xsl:call-template> - </fo:inline> - <fo:footnote-body xsl:use-attribute-sets="footnote.properties"> - <xsl:apply-templates/> - </fo:footnote-body> - </fo:footnote> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="footnoteref"> - <xsl:variable name="footnote" select="key('id',@linkend)"/> - <xsl:call-template name="format.footnote.mark"> - <xsl:with-param name="mark"> - <xsl:apply-templates select="$footnote" mode="footnote.number"/> - </xsl:with-param> - </xsl:call-template> -</xsl:template> - -<xsl:template match="footnote" mode="footnote.number"> - <xsl:choose> - <xsl:when test="string-length(@label) != 0"> - <xsl:value-of select="@label"/> - </xsl:when> - <xsl:when test="ancestor::table or ancestor::informaltable"> - <xsl:variable name="tfnum"> - <xsl:number level="any" from="table|informaltable" format="1"/> - </xsl:variable> - - <xsl:choose> - <xsl:when test="string-length($table.footnote.number.symbols) >= $tfnum"> - <xsl:value-of select="substring($table.footnote.number.symbols, $tfnum, 1)"/> - </xsl:when> - <xsl:otherwise> - <xsl:number level="any" from="table|informaltable" - format="{$table.footnote.number.format}"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="fnum"> - <!-- FIXME: list in @from is probably not complete --> - <xsl:number level="any" - from="chapter|appendix|preface|article|refentry|bibliography" - count="footnote[not(@label)][not(ancestor::table) and not(ancestor::informaltable)]|ulink[$ulink.footnotes != 0][node()][@url != .][not(ancestor::footnote)][$ulink.show != 0]" - format="1"/> - </xsl:variable> - <xsl:choose> - <xsl:when test="string-length($footnote.number.symbols) >= $fnum"> - <xsl:value-of select="substring($footnote.number.symbols, $fnum, 1)"/> - </xsl:when> - <xsl:otherwise> - <xsl:number value="$fnum" format="{$footnote.number.format}"/> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="*" mode="footnote.body.number"> - <xsl:variable name="footnote.mark"> - <xsl:call-template name="format.footnote.mark"> - <xsl:with-param name="mark"> - <xsl:apply-templates select="ancestor::footnote" mode="footnote.number"/> - </xsl:with-param> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="fo"> - <xsl:apply-templates select="."/> - </xsl:variable> - - <xsl:variable name="fo-nodes" select="exsl:node-set($fo)"/> - - <xsl:choose> - <xsl:when test="$fo-nodes//fo:block"> - <xsl:apply-templates select="$fo-nodes" mode="insert.fo.fnum"> - <xsl:with-param name="mark" select="$footnote.mark"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="$fo-nodes" mode="insert.fo.text"> - <xsl:with-param name="mark" select="$footnote.mark"/> - </xsl:apply-templates> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="footnote/para[1] - |footnote/simpara[1] - |footnote/formalpara[1]" - priority="2"> - <!-- this only works if the first thing in a footnote is a para, --> - <!-- which is ok, because it usually is. --> - <fo:block> - <xsl:call-template name="format.footnote.mark"> - <xsl:with-param name="mark"> - <xsl:apply-templates select="ancestor::footnote" mode="footnote.number"/> - </xsl:with-param> - </xsl:call-template> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="footnote" mode="table.footnote.mode"> - <xsl:choose> - <xsl:when test="local-name(*[1]) = 'para' or local-name(*[1]) = 'simpara'"> - <fo:block xsl:use-attribute-sets="table.footnote.properties"> - <xsl:apply-templates/> - </fo:block> - </xsl:when> - - <xsl:when test="function-available('exsl:node-set')"> - <fo:block xsl:use-attribute-sets="table.footnote.properties"> - <xsl:apply-templates select="*[1]" mode="footnote.body.number"/> - <xsl:apply-templates select="*[position() > 1]"/> - </fo:block> - </xsl:when> - - <xsl:otherwise> - <xsl:message> - <xsl:text>Warning: footnote number may not be generated </xsl:text> - <xsl:text>correctly; </xsl:text> - <xsl:value-of select="local-name(*[1])"/> - <xsl:text> unexpected as first child of footnote.</xsl:text> - </xsl:message> - <fo:block xsl:use-attribute-sets="table.footnote.properties"> - <xsl:apply-templates/> - </fo:block> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/fop.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/fop.xsl deleted file mode 100644 index c3a06bab5..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/fop.xsl +++ /dev/null @@ -1,92 +0,0 @@ -<?xml version='1.0' encoding="utf-8"?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:fox="http://xml.apache.org/fop/extensions" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - (c) Stephane Bline Peregrine Systems 2001 - Driver file to allow pdf bookmarking (based on fop implementation). - ******************************************************************** --> -<!-- -In PDF bookmarks can't be used characters with code>255. This version of file -translates characters with code>255 back to ASCII. - - Pavel Zampach (zampach@volny.cz) ---> - -<xsl:variable name="a-dia" select= -"'āăąćĉċčďđēĕėęěœĝğġģĥħĩīĭįıĵķĺļľŀłńņňŋōŏőŕŗřśŝşšţťŧũūŭůűųŵŷźżžĀĂĄĆĈĊČĎĐĒĔĖĘĚŒĜĞĠĢĤĦĨĪĬĮİĴĶĹĻĽĿŁŃŅŇŊŌŎŐŔŖŘŚŜŞŠŢŤŦŨŪŬŮŰŲŴŶŸŹŻŽ'"/> -<xsl:variable name="a-asc" select= -"'aaaccccddeeeeeegggghhiiiiijklllllnnnnooorrrsssstttuuuuuuwyzzzAAACCCCDDEEEEEEGGGGHHIIIIIJKLLLLLNNNNOOORRRSSSSTTTUUUUUUWYYZZZ'"/> - -<xsl:template match="*" mode="fop.outline"> - <xsl:variable name="id"> - <xsl:value-of select="(@id|@xml:id)[1]"/> - </xsl:variable> - <xsl:if test="$id != ''"> - <fox:destination internal-destination="{$id}"/> - </xsl:if> - <xsl:apply-templates select="*" mode="fop.outline"/> -</xsl:template> - -<xsl:template match="set|book|part|reference|preface|chapter|appendix|article - |glossary|bibliography|index|setindex - |refentry - |sect1|sect2|sect3|sect4|sect5|section" - mode="fop.outline"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <xsl:variable name="bookmark-label"> - <xsl:apply-templates select="." mode="object.title.markup"/> - </xsl:variable> - - <!-- Put the root element bookmark at the same level as its children --> - <!-- If the object is a set or book, generate a bookmark for the toc --> - - <xsl:choose> - <xsl:when test="parent::*"> - <fox:outline internal-destination="{$id}"> - <fox:label> - <xsl:value-of select="normalize-space(translate($bookmark-label, $a-dia, $a-asc))"/> - </fox:label> - <xsl:apply-templates select="*" mode="fop.outline"/> - </fox:outline> - </xsl:when> - <xsl:otherwise> - <fox:outline internal-destination="{$id}"> - <fox:label> - <xsl:value-of select="normalize-space(translate($bookmark-label, $a-dia, $a-asc))"/> - </fox:label> - </fox:outline> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="contains($toc.params, 'toc') - and (book|part|reference|preface|chapter|appendix|article - |glossary|bibliography|index|setindex - |refentry - |sect1|sect2|sect3|sect4|sect5|section)"> - <fox:outline internal-destination="toc...{$id}"> - <fox:label> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'TableofContents'"/> - </xsl:call-template> - </fox:label> - </fox:outline> - </xsl:if> - <xsl:apply-templates select="*" mode="fop.outline"/> - </xsl:otherwise> - </xsl:choose> - <fox:destination internal-destination="{$id}"/> -</xsl:template> - -</xsl:stylesheet> - diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/fop1.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/fop1.xsl deleted file mode 100644 index 4e262e57c..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/fop1.xsl +++ /dev/null @@ -1,71 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<xsl:template match="*" mode="fop1.outline"> - <xsl:apply-templates select="*" mode="fop1.outline"/> -</xsl:template> - -<xsl:template match="set|book|part|reference| - preface|chapter|appendix|article - |glossary|bibliography|index|setindex - |refentry - |sect1|sect2|sect3|sect4|sect5|section" - mode="fop1.outline"> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <xsl:variable name="bookmark-label"> - <xsl:apply-templates select="." mode="object.title.markup"/> - </xsl:variable> - - <!-- Put the root element bookmark at the same level as its children --> - <!-- If the object is a set or book, generate a bookmark for the toc --> - - <xsl:choose> - <xsl:when test="parent::*"> - <fo:bookmark internal-destination="{$id}"> - <fo:bookmark-title> - <xsl:value-of select="normalize-space(translate($bookmark-label, $a-dia, $a-asc))"/> - </fo:bookmark-title> - <xsl:apply-templates select="*" mode="fop1.outline"/> - </fo:bookmark> - </xsl:when> - <xsl:otherwise> - <fo:bookmark internal-destination="{$id}"> - <fo:bookmark-title> - <xsl:value-of select="normalize-space(translate($bookmark-label, $a-dia, $a-asc))"/> - </fo:bookmark-title> - </fo:bookmark> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="contains($toc.params, 'toc') - and (book|part|reference|preface|chapter|appendix|article - |glossary|bibliography|index|setindex - |refentry - |sect1|sect2|sect3|sect4|sect5|section)"> - <fo:bookmark internal-destination="toc...{$id}"> - <fo:bookmark-title> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'TableofContents'"/> - </xsl:call-template> - </fo:bookmark-title> - </fo:bookmark> - </xsl:if> - <xsl:apply-templates select="*" mode="fop1.outline"/> - </xsl:otherwise> - </xsl:choose> -<!-- - <fo:bookmark internal-destination="{$id}"/> ---> -</xsl:template> - - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/formal.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/formal.xsl deleted file mode 100644 index 0233d79f3..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/formal.xsl +++ /dev/null @@ -1,534 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- formal.object creates a basic block containing the - result of processing the object, including its title - and any keep-together properties. - The template calling formal.object may wrap these results in a - float or pgwide block. --> - -<xsl:template name="formal.object"> - <xsl:param name="placement" select="'before'"/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="content"> - <xsl:if test="$placement = 'before'"> - <xsl:call-template name="formal.object.heading"> - <xsl:with-param name="placement" select="$placement"/> - </xsl:call-template> - </xsl:if> - <xsl:apply-templates/> - <xsl:if test="$placement != 'before'"> - <xsl:call-template name="formal.object.heading"> - <xsl:with-param name="placement" select="$placement"/> - </xsl:call-template> - </xsl:if> - </xsl:variable> - - <xsl:variable name="keep.together"> - <xsl:call-template name="pi.dbfo_keep-together"/> - </xsl:variable> - - <xsl:choose> - <!-- tables have their own templates and - are not handled by formal.object --> - <xsl:when test="self::figure"> - <fo:block id="{$id}" - xsl:use-attribute-sets="figure.properties"> - <xsl:if test="$keep.together != ''"> - <xsl:attribute name="keep-together.within-column"><xsl:value-of - select="$keep.together"/></xsl:attribute> - </xsl:if> - <xsl:copy-of select="$content"/> - </fo:block> - </xsl:when> - <xsl:when test="self::example"> - <fo:block id="{$id}" - xsl:use-attribute-sets="example.properties"> - <xsl:if test="$keep.together != ''"> - <xsl:attribute name="keep-together.within-column"><xsl:value-of - select="$keep.together"/></xsl:attribute> - </xsl:if> - <xsl:copy-of select="$content"/> - </fo:block> - </xsl:when> - <xsl:when test="self::equation"> - <fo:block id="{$id}" - xsl:use-attribute-sets="equation.properties"> - <xsl:if test="$keep.together != ''"> - <xsl:attribute name="keep-together.within-column"><xsl:value-of - select="$keep.together"/></xsl:attribute> - </xsl:if> - <xsl:copy-of select="$content"/> - </fo:block> - </xsl:when> - <xsl:when test="self::procedure"> - <fo:block id="{$id}" - xsl:use-attribute-sets="procedure.properties"> - <xsl:if test="$keep.together != ''"> - <xsl:attribute name="keep-together.within-column"><xsl:value-of - select="$keep.together"/></xsl:attribute> - </xsl:if> - <xsl:copy-of select="$content"/> - </fo:block> - </xsl:when> - <xsl:otherwise> - <fo:block id="{$id}" - xsl:use-attribute-sets="formal.object.properties"> - <xsl:if test="$keep.together != ''"> - <xsl:attribute name="keep-together.within-column"><xsl:value-of - select="$keep.together"/></xsl:attribute> - </xsl:if> - <xsl:copy-of select="$content"/> - </fo:block> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="formal.object.heading"> - <xsl:param name="object" select="."/> - <xsl:param name="placement" select="'before'"/> - - <fo:block xsl:use-attribute-sets="formal.title.properties"> - <xsl:choose> - <xsl:when test="$placement = 'before'"> - <xsl:attribute - name="keep-with-next.within-column">always</xsl:attribute> - </xsl:when> - <xsl:otherwise> - <xsl:attribute - name="keep-with-previous.within-column">always</xsl:attribute> - </xsl:otherwise> - </xsl:choose> - <xsl:apply-templates select="$object" mode="object.title.markup"> - <xsl:with-param name="allow-anchors" select="1"/> - </xsl:apply-templates> - </fo:block> -</xsl:template> - -<xsl:template name="informal.object"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="keep.together"> - <xsl:call-template name="pi.dbfo_keep-together"/> - </xsl:variable> - - <xsl:choose> - <!-- informaltables have their own templates and - are not handled by formal.object --> - <xsl:when test="local-name(.) = 'equation'"> - <fo:block id="{$id}" - xsl:use-attribute-sets="equation.properties"> - <xsl:if test="$keep.together != ''"> - <xsl:attribute name="keep-together.within-column"><xsl:value-of - select="$keep.together"/></xsl:attribute> - </xsl:if> - <xsl:apply-templates/> - </fo:block> - </xsl:when> - <xsl:when test="local-name(.) = 'procedure'"> - <fo:block id="{$id}" - xsl:use-attribute-sets="procedure.properties"> - <xsl:if test="$keep.together != ''"> - <xsl:attribute name="keep-together.within-column"><xsl:value-of - select="$keep.together"/></xsl:attribute> - </xsl:if> - <xsl:apply-templates/> - </fo:block> - </xsl:when> - <xsl:when test="local-name(.) = 'informalfigure'"> - <fo:block id="{$id}" - xsl:use-attribute-sets="informalfigure.properties"> - <xsl:if test="$keep.together != ''"> - <xsl:attribute name="keep-together.within-column"><xsl:value-of - select="$keep.together"/></xsl:attribute> - </xsl:if> - <xsl:apply-templates/> - </fo:block> - </xsl:when> - <xsl:when test="local-name(.) = 'informalexample'"> - <fo:block id="{$id}" - xsl:use-attribute-sets="informalexample.properties"> - <xsl:if test="$keep.together != ''"> - <xsl:attribute name="keep-together.within-column"><xsl:value-of - select="$keep.together"/></xsl:attribute> - </xsl:if> - <xsl:apply-templates/> - </fo:block> - </xsl:when> - <xsl:when test="local-name(.) = 'informalequation'"> - <fo:block id="{$id}" - xsl:use-attribute-sets="informalequation.properties"> - <xsl:apply-templates/> - </fo:block> - </xsl:when> - <xsl:otherwise> - <fo:block id="{$id}" - xsl:use-attribute-sets="informal.object.properties"> - <xsl:if test="$keep.together != ''"> - <xsl:attribute name="keep-together.within-column"><xsl:value-of - select="$keep.together"/></xsl:attribute> - </xsl:if> - <xsl:apply-templates/> - </fo:block> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="semiformal.object"> - <xsl:param name="placement" select="'before'"/> - <xsl:choose> - <xsl:when test="./title"> - <xsl:call-template name="formal.object"> - <xsl:with-param name="placement" select="$placement"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="informal.object"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="figure"> - <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> - - <xsl:variable name="figure"> - <xsl:choose> - <xsl:when test="@pgwide = '1'"> - <fo:block xsl:use-attribute-sets="pgwide.properties"> - <xsl:call-template name="formal.object"> - <xsl:with-param name="placement" select="$placement"/> - </xsl:call-template> - </fo:block> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="formal.object"> - <xsl:with-param name="placement" select="$placement"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="floatstyle"> - <xsl:call-template name="floatstyle"/> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$floatstyle != ''"> - <xsl:call-template name="floater"> - <xsl:with-param name="position" select="$floatstyle"/> - <xsl:with-param name="content" select="$figure"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$figure"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="example"> - <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> - - <!-- Example doesn't have a pgwide attribute, so may use a PI --> - <xsl:variable name="pgwide.pi"> - <xsl:call-template name="pi.dbfo_pgwide"/> - </xsl:variable> - - <xsl:variable name="pgwide"> - <xsl:choose> - <xsl:when test="$pgwide.pi"> - <xsl:value-of select="$pgwide.pi"/> - </xsl:when> - <!-- child element may set pgwide --> - <xsl:when test="*[@pgwide]"> - <xsl:value-of select="*[@pgwide][1]/@pgwide"/> - </xsl:when> - </xsl:choose> - </xsl:variable> - - <!-- Get align value from internal mediaobject --> - <xsl:variable name="align"> - <xsl:if test="mediaobject|mediaobjectco"> - <xsl:variable name="olist" select="mediaobject/imageobject - |mediaobjectco/imageobjectco - |mediaobject/videoobject - |mediaobject/audioobject - |mediaobject/textobject"/> - - <xsl:variable name="object.index"> - <xsl:call-template name="select.mediaobject.index"> - <xsl:with-param name="olist" select="$olist"/> - <xsl:with-param name="count" select="1"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="object" select="$olist[position() = $object.index]"/> - - <xsl:value-of select="$object/descendant::imagedata[@align][1]/@align"/> - </xsl:if> - </xsl:variable> - - <xsl:variable name="example"> - <xsl:choose> - <xsl:when test="$pgwide = '1'"> - <fo:block xsl:use-attribute-sets="pgwide.properties"> - <xsl:if test="$align != ''"> - <xsl:attribute name="text-align"> - <xsl:value-of select="$align"/> - </xsl:attribute> - </xsl:if> - <xsl:call-template name="formal.object"> - <xsl:with-param name="placement" select="$placement"/> - </xsl:call-template> - </fo:block> - </xsl:when> - <xsl:otherwise> - <fo:block> - <xsl:if test="$align != ''"> - <xsl:attribute name="text-align"> - <xsl:value-of select="$align"/> - </xsl:attribute> - </xsl:if> - <xsl:call-template name="formal.object"> - <xsl:with-param name="placement" select="$placement"/> - </xsl:call-template> - </fo:block> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="floatstyle"> - <xsl:call-template name="floatstyle"/> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$floatstyle != ''"> - <xsl:call-template name="floater"> - <xsl:with-param name="position" select="$floatstyle"/> - <xsl:with-param name="content" select="$example"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$example"/> - </xsl:otherwise> - </xsl:choose> - -</xsl:template> - -<!-- Unified handling of CALS and HTML tables, formal and not --> -<!-- Creates a hierarchy of nested containers: - - Outer container does a float. - - Nested container does block-container for rotation - - Nested block contains title, layout table and footnotes - - Nested layout table placeholder template supports extensions. - - fo:table is innermost. - Created from the innermost and working out. - Not all layers apply to every table. ---> -<xsl:template match="table|informaltable"> - <xsl:if test="tgroup/tbody/tr - |tgroup/thead/tr - |tgroup/tfoot/tr"> - <xsl:message terminate="yes"> - <xsl:text>Broken table: tr descendent of CALS Table.</xsl:text> - <xsl:text>The text in the first tr is: </xsl:text> - <xsl:value-of - select="(tgroup//tr)[1]"/> - </xsl:message> - </xsl:if> - <xsl:if test="not(tgroup) and .//row"> - <xsl:message terminate="yes"> - <xsl:text>Broken table: row descendent of HTML table.</xsl:text> - <xsl:text>The text in the first row is: </xsl:text> - <xsl:value-of - select=".//row[1]"/> - </xsl:message> - </xsl:if> - - <!-- Contains fo:table, not title or footnotes --> - <xsl:variable name="table.content"> - <xsl:call-template name="make.table.content"/> - </xsl:variable> - - <!-- Optional layout table template for extensions --> - <xsl:variable name="table.layout"> - <xsl:call-template name="table.layout"> - <xsl:with-param name="table.content" select="$table.content"/> - </xsl:call-template> - </xsl:variable> - - <!-- fo:block contains title, layout table, and footnotes --> - <xsl:variable name="table.block"> - <xsl:call-template name="table.block"> - <xsl:with-param name="table.layout" select="$table.layout"/> - </xsl:call-template> - </xsl:variable> - - <!-- pgwide or orient container --> - <xsl:variable name="table.container"> - <xsl:call-template name="table.container"> - <xsl:with-param name="table.block" select="$table.block"/> - </xsl:call-template> - </xsl:variable> - - <!-- float or not --> - <xsl:variable name="floatstyle"> - <xsl:call-template name="floatstyle"/> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$floatstyle != ''"> - <xsl:call-template name="floater"> - <xsl:with-param name="position" select="$floatstyle"/> - <xsl:with-param name="content" select="$table.container"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$table.container"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - - -<xsl:template match="equation"> - <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> - - <!-- Equation doesn't have a pgwide attribute, so may use a PI --> - <xsl:variable name="pgwide"> - <xsl:call-template name="pi.dbfo_pgwide"/> - </xsl:variable> - - <xsl:variable name="equation"> - <xsl:choose> - <xsl:when test="$pgwide = '1'"> - <fo:block xsl:use-attribute-sets="pgwide.properties"> - <xsl:call-template name="semiformal.object"> - <xsl:with-param name="placement" select="$placement"/> - </xsl:call-template> - </fo:block> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="semiformal.object"> - <xsl:with-param name="placement" select="$placement"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="floatstyle"> - <xsl:call-template name="floatstyle"/> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$floatstyle != ''"> - <xsl:call-template name="floater"> - <xsl:with-param name="position" select="$floatstyle"/> - <xsl:with-param name="content" select="$equation"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$equation"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="figure/title"></xsl:template> -<xsl:template match="figure/titleabbrev"></xsl:template> -<xsl:template match="table/title"></xsl:template> -<xsl:template match="table/titleabbrev"></xsl:template> -<xsl:template match="table/textobject"></xsl:template> -<xsl:template match="example/title"></xsl:template> -<xsl:template match="example/titleabbrev"></xsl:template> -<xsl:template match="equation/title"></xsl:template> -<xsl:template match="equation/titleabbrev"></xsl:template> - -<xsl:template match="informalfigure"> - <xsl:call-template name="informal.object"/> -</xsl:template> - -<xsl:template match="informalexample"> - <xsl:call-template name="informal.object"/> -</xsl:template> - -<xsl:template match="informaltable/textobject"></xsl:template> - -<xsl:template match="informalequation"> - <xsl:call-template name="informal.object"/> -</xsl:template> - -<xsl:template name="floatstyle"> - <xsl:if test="(@float and @float != '0') or @floatstyle != ''"> - <xsl:choose> - <xsl:when test="@floatstyle != ''"> - <xsl:value-of select="@floatstyle"/> - </xsl:when> - <xsl:when test="@float = '1'"> - <xsl:value-of select="$default.float.class"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="@float"/> - </xsl:otherwise> - </xsl:choose> - </xsl:if> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/glossary.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/glossary.xsl deleted file mode 100644 index 718bdb698..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/glossary.xsl +++ /dev/null @@ -1,1139 +0,0 @@ -<?xml version='1.0'?> -<!DOCTYPE xsl:stylesheet [ -<!ENTITY % common.entities SYSTEM "../common/entities.ent"> -%common.entities; -]> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<xsl:template match="glossary"> - <xsl:call-template name="make-glossary"/> -</xsl:template> - -<xsl:template match="glossdiv/title"/> -<xsl:template match="glossdiv/subtitle"/> -<xsl:template match="glossdiv/titleabbrev"/> - -<!-- ==================================================================== --> - -<xsl:template name="make-glossary"> - <xsl:param name="divs" select="glossdiv"/> - <xsl:param name="entries" select="glossentry"/> - <xsl:param name="preamble" select="*[not(self::title - or self::subtitle - or self::glossdiv - or self::glossentry)]"/> - - &setup-language-variable; - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="presentation"> - <xsl:call-template name="pi.dbfo_glossary-presentation"/> - </xsl:variable> - - <xsl:variable name="term-width"> - <xsl:call-template name="pi.dbfo_glossterm-width"/> - </xsl:variable> - - <xsl:variable name="width"> - <xsl:choose> - <xsl:when test="$term-width = ''"> - <xsl:value-of select="$glossterm.width"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$term-width"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <fo:block id="{$id}"> - <xsl:call-template name="glossary.titlepage"/> - </fo:block> - - <xsl:if test="$preamble"> - <xsl:apply-templates select="$preamble"/> - </xsl:if> - - <xsl:choose> - <xsl:when test="$presentation = 'list'"> - <xsl:apply-templates select="$divs" mode="glossary.as.list"> - <xsl:with-param name="width" select="$width"/> - </xsl:apply-templates> - <xsl:if test="$entries"> - <fo:list-block provisional-distance-between-starts="{$width}" - provisional-label-separation="{$glossterm.separation}" - xsl:use-attribute-sets="normal.para.spacing"> - <xsl:choose> - <xsl:when test="$glossary.sort != 0"> - <xsl:apply-templates select="$entries" mode="glossary.as.list"> - <xsl:sort lang="{$language}" - select="translate(glossterm, $lowercase, - $uppercase)"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="$entries" mode="glossary.as.list"/> - </xsl:otherwise> - </xsl:choose> - </fo:list-block> - </xsl:if> - </xsl:when> - <xsl:when test="$presentation = 'blocks'"> - <xsl:apply-templates select="$divs" mode="glossary.as.blocks"/> - <xsl:choose> - <xsl:when test="$glossary.sort != 0"> - <xsl:apply-templates select="$entries" mode="glossary.as.blocks"> - <xsl:sort lang="{$language}" - select="translate(glossterm, $lowercase, - $uppercase)"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="$entries" mode="glossary.as.blocks"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:when test="$glossary.as.blocks != 0"> - <xsl:apply-templates select="$divs" mode="glossary.as.blocks"/> - <xsl:choose> - <xsl:when test="$glossary.sort != 0"> - <xsl:apply-templates select="$entries" mode="glossary.as.blocks"> - <xsl:sort lang="{$language}" - select="translate(glossterm, $lowercase, - $uppercase)"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="$entries" mode="glossary.as.blocks"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="$divs" mode="glossary.as.list"> - <xsl:with-param name="width" select="$width"/> - </xsl:apply-templates> - <xsl:if test="$entries"> - <fo:list-block provisional-distance-between-starts="{$width}" - provisional-label-separation="{$glossterm.separation}" - xsl:use-attribute-sets="normal.para.spacing"> - <xsl:choose> - <xsl:when test="$glossary.sort != 0"> - <xsl:apply-templates select="$entries" mode="glossary.as.list"> - <xsl:sort lang="{$language}" - select="translate(glossterm, $lowercase, - $uppercase)"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="$entries" mode="glossary.as.list"/> - </xsl:otherwise> - </xsl:choose> - </fo:list-block> - </xsl:if> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="book/glossary|part/glossary|/glossary" priority="2"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"/> - </xsl:variable> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - - <xsl:call-template name="make-glossary"/> - </fo:flow> - </fo:page-sequence> -</xsl:template> - -<xsl:template match="glossary/glossaryinfo"></xsl:template> -<xsl:template match="glossary/info"></xsl:template> -<xsl:template match="glossary/title"></xsl:template> -<xsl:template match="glossary/subtitle"></xsl:template> -<xsl:template match="glossary/titleabbrev"></xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="glosslist"> - &setup-language-variable; - - <xsl:variable name="presentation"> - <xsl:call-template name="pi.dbfo_glosslist-presentation"/> - </xsl:variable> - - <xsl:variable name="term-width"> - <xsl:call-template name="pi.dbfo_glossterm-width"/> - </xsl:variable> - - <xsl:variable name="width"> - <xsl:choose> - <xsl:when test="$term-width = ''"> - <xsl:value-of select="$glossterm.width"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$term-width"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:if test="title or info/title"> - <xsl:apply-templates select="(title|info/title)[1]" mode="list.title.mode"/> - </xsl:if> - - <xsl:choose> - <xsl:when test="$presentation = 'list'"> - <fo:list-block provisional-distance-between-starts="{$width}" - provisional-label-separation="{$glossterm.separation}" - xsl:use-attribute-sets="normal.para.spacing"> - <xsl:choose> - <xsl:when test="$glossary.sort != 0"> - <xsl:apply-templates select="glossentry" mode="glossary.as.list"> - <xsl:sort lang="{$language}" - select="translate(glossterm, $lowercase, - $uppercase)"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="glossentry" mode="glossary.as.list"/> - </xsl:otherwise> - </xsl:choose> - </fo:list-block> - </xsl:when> - <xsl:when test="$presentation = 'blocks'"> - <xsl:choose> - <xsl:when test="$glossary.sort != 0"> - <xsl:apply-templates select="glossentry" mode="glossary.as.blocks"> - <xsl:sort lang="{$language}" - select="translate(glossterm, $lowercase, - $uppercase)"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="glossentry" mode="glossary.as.blocks"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:when test="$glosslist.as.blocks != 0"> - <xsl:choose> - <xsl:when test="$glossary.sort != 0"> - <xsl:apply-templates select="glossentry" mode="glossary.as.blocks"> - <xsl:sort lang="{$language}" - select="translate(glossterm, $lowercase, - $uppercase)"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="glossentry" mode="glossary.as.blocks"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <fo:list-block provisional-distance-between-starts="{$width}" - provisional-label-separation="{$glossterm.separation}" - xsl:use-attribute-sets="normal.para.spacing"> - <xsl:choose> - <xsl:when test="$glossary.sort != 0"> - <xsl:apply-templates select="glossentry" mode="glossary.as.list"> - <xsl:sort lang="{$language}" - select="translate(glossterm, $lowercase, - $uppercase)"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="glossentry" mode="glossary.as.list"/> - </xsl:otherwise> - </xsl:choose> - </fo:list-block> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> -<!-- Glossary collection --> - -<xsl:template match="glossary[@role='auto']" priority="2"> - <xsl:variable name="collection" select="document($glossary.collection, .)"/> - <xsl:if test="$glossary.collection = ''"> - <xsl:message> - <xsl:text>Warning: processing automatic glossary </xsl:text> - <xsl:text>without a glossary.collection file.</xsl:text> - </xsl:message> - </xsl:if> - - <xsl:if test="not($collection) and $glossary.collection != ''"> - <xsl:message> - <xsl:text>Warning: processing automatic glossary but unable to </xsl:text> - <xsl:text>open glossary.collection file '</xsl:text> - <xsl:value-of select="$glossary.collection"/> - <xsl:text>'</xsl:text> - </xsl:message> - </xsl:if> - - <xsl:call-template name="make-auto-glossary"/> -</xsl:template> - -<xsl:template name="make-auto-glossary"> - <xsl:param name="collection" select="document($glossary.collection, .)"/> - <xsl:param name="terms" select="//glossterm[not(parent::glossdef)]|//firstterm"/> - <xsl:param name="preamble" select="*[not(self::title - or self::subtitle - or self::glossdiv - or self::glossentry)]"/> - - &setup-language-variable; - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="presentation"> - <xsl:call-template name="pi.dbfo_glossary-presentation"/> - </xsl:variable> - - <xsl:variable name="term-width"> - <xsl:call-template name="pi.dbfo_glossterm-width"/> - </xsl:variable> - - <xsl:variable name="width"> - <xsl:choose> - <xsl:when test="$term-width = ''"> - <xsl:value-of select="$glossterm.width"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$term-width"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:if test="$glossary.collection = ''"> - <xsl:message> - <xsl:text>Warning: processing automatic glossary </xsl:text> - <xsl:text>without a glossary.collection file.</xsl:text> - </xsl:message> - </xsl:if> - - <fo:block id="{$id}"> - <xsl:call-template name="glossary.titlepage"/> - </fo:block> - - <xsl:if test="$preamble"> - <xsl:apply-templates select="$preamble"/> - </xsl:if> - - <xsl:choose> - <xsl:when test="glossdiv and $collection//glossdiv"> - <xsl:for-each select="$collection//glossdiv"> - <!-- first see if there are any in this div --> - <xsl:variable name="exist.test"> - <xsl:for-each select="glossentry"> - <xsl:variable name="cterm" select="glossterm"/> - <xsl:if test="$terms[@baseform = $cterm or . = $cterm]"> - <xsl:value-of select="glossterm"/> - </xsl:if> - </xsl:for-each> - </xsl:variable> - - <xsl:if test="$exist.test != ''"> - <xsl:choose> - <xsl:when test="$presentation = 'list'"> - <xsl:apply-templates select="." mode="auto-glossary-as-list"> - <xsl:with-param name="width" select="$width"/> - <xsl:with-param name="terms" select="$terms"/> - </xsl:apply-templates> - </xsl:when> - <xsl:when test="$presentation = 'blocks'"> - <xsl:apply-templates select="." mode="auto-glossary-as-blocks"> - <xsl:with-param name="terms" select="$terms"/> - </xsl:apply-templates> - </xsl:when> - <xsl:when test="$glossary.as.blocks != 0"> - <xsl:apply-templates select="." mode="auto-glossary-as-blocks"> - <xsl:with-param name="terms" select="$terms"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="." mode="auto-glossary-as-list"> - <xsl:with-param name="width" select="$width"/> - <xsl:with-param name="terms" select="$terms"/> - </xsl:apply-templates> - </xsl:otherwise> - </xsl:choose> - </xsl:if> - </xsl:for-each> - </xsl:when> - <xsl:otherwise> - <xsl:choose> - <xsl:when test="$presentation = 'list'"> - <fo:list-block provisional-distance-between-starts="{$width}" - provisional-label-separation="{$glossterm.separation}" - xsl:use-attribute-sets="normal.para.spacing"> - <xsl:choose> - <xsl:when test="$glossary.sort != 0"> - <xsl:for-each select="$collection//glossentry"> - <xsl:sort lang="{$language}" - select="translate(glossterm, $lowercase, - $uppercase)"/> - <xsl:variable name="cterm" select="glossterm"/> - <xsl:if test="$terms[@baseform = $cterm or . = $cterm]"> - <xsl:apply-templates select="." - mode="auto-glossary-as-list"/> - </xsl:if> - </xsl:for-each> - </xsl:when> - <xsl:otherwise> - <xsl:for-each select="$collection//glossentry"> - <xsl:variable name="cterm" select="glossterm"/> - <xsl:if test="$terms[@baseform = $cterm or . = $cterm]"> - <xsl:apply-templates select="." - mode="auto-glossary-as-list"/> - </xsl:if> - </xsl:for-each> - </xsl:otherwise> - </xsl:choose> - </fo:list-block> - </xsl:when> - <xsl:when test="$presentation = 'blocks' or - $glossary.as.blocks != 0"> - <xsl:choose> - <xsl:when test="$glossary.sort != 0"> - <xsl:for-each select="$collection//glossentry"> - <xsl:sort lang="{$language}" - select="translate(glossterm, $lowercase, - $uppercase)"/> - <xsl:variable name="cterm" select="glossterm"/> - <xsl:if test="$terms[@baseform = $cterm or . = $cterm]"> - <xsl:apply-templates select="." - mode="auto-glossary-as-blocks"/> - </xsl:if> - </xsl:for-each> - </xsl:when> - <xsl:otherwise> - <xsl:for-each select="$collection//glossentry"> - <xsl:variable name="cterm" select="glossterm"/> - <xsl:if test="$terms[@baseform = $cterm or . = $cterm]"> - <xsl:apply-templates select="." - mode="auto-glossary-as-blocks"/> - </xsl:if> - </xsl:for-each> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <fo:list-block provisional-distance-between-starts="{$width}" - provisional-label-separation="{$glossterm.separation}" - xsl:use-attribute-sets="normal.para.spacing"> - <xsl:choose> - <xsl:when test="$glossary.sort != 0"> - <xsl:for-each select="$collection//glossentry"> - <xsl:sort lang="{$language}" - select="translate(glossterm, $lowercase, - $uppercase)"/> - <xsl:variable name="cterm" select="glossterm"/> - <xsl:if test="$terms[@baseform = $cterm or . = $cterm]"> - <xsl:apply-templates select="." - mode="auto-glossary-as-list"/> - </xsl:if> - </xsl:for-each> - </xsl:when> - <xsl:otherwise> - <xsl:for-each select="$collection//glossentry"> - <xsl:variable name="cterm" select="glossterm"/> - <xsl:if test="$terms[@baseform = $cterm or . = $cterm]"> - <xsl:apply-templates select="." - mode="auto-glossary-as-list"/> - </xsl:if> - </xsl:for-each> - </xsl:otherwise> - </xsl:choose> - </fo:list-block> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="book/glossary[@role='auto']| - part/glossary[@role='auto']| - /glossary[@role='auto']" priority="2.5"> - <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable> - - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"/> - </xsl:variable> - - <xsl:if test="$glossary.collection = ''"> - <xsl:message> - <xsl:text>Warning: processing automatic glossary </xsl:text> - <xsl:text>without a glossary.collection file.</xsl:text> - </xsl:message> - </xsl:if> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - - <xsl:call-template name="make-auto-glossary"/> - </fo:flow> - </fo:page-sequence> -</xsl:template> - -<xsl:template match="glossdiv" mode="auto-glossary-as-list"> - <xsl:param name="width" select="$glossterm.width"/> - <xsl:param name="terms" select="."/> - - &setup-language-variable; - - <xsl:variable name="preamble" - select="*[not(self::title - or self::subtitle - or self::glossentry)]"/> - - <xsl:call-template name="glossdiv.titlepage"/> - - <xsl:apply-templates select="$preamble"/> - - <fo:list-block provisional-distance-between-starts="{$width}" - provisional-label-separation="{$glossterm.separation}" - xsl:use-attribute-sets="normal.para.spacing"> - <xsl:choose> - <xsl:when test="$glossary.sort != 0"> - <xsl:for-each select="glossentry"> - <xsl:sort lang="{$language}" - select="translate(glossterm, $lowercase, $uppercase)"/> - <xsl:variable name="cterm" select="glossterm"/> - <xsl:if test="$terms[@baseform = $cterm or . = $cterm]"> - <xsl:apply-templates select="." mode="auto-glossary-as-list"/> - </xsl:if> - </xsl:for-each> - </xsl:when> - <xsl:otherwise> - <xsl:for-each select="glossentry"> - <xsl:variable name="cterm" select="glossterm"/> - <xsl:if test="$terms[@baseform = $cterm or . = $cterm]"> - <xsl:apply-templates select="." mode="auto-glossary-as-list"/> - </xsl:if> - </xsl:for-each> - </xsl:otherwise> - </xsl:choose> - </fo:list-block> -</xsl:template> - -<xsl:template match="glossentry" mode="auto-glossary-as-list"> - <xsl:apply-templates select="." mode="glossary.as.list"/> -</xsl:template> - -<xsl:template match="glossdiv" mode="auto-glossary-as-blocks"> - <xsl:param name="terms" select="."/> - - &setup-language-variable; - - <xsl:variable name="preamble" - select="*[not(self::title - or self::subtitle - or self::glossentry)]"/> - - <xsl:call-template name="glossdiv.titlepage"/> - - <xsl:apply-templates select="$preamble"/> - - <xsl:choose> - <xsl:when test="$glossary.sort != 0"> - <xsl:for-each select="glossentry"> - <xsl:sort lang="{$language}" - select="translate(glossterm, $lowercase, $uppercase)"/> - <xsl:variable name="cterm" select="glossterm"/> - <xsl:if test="$terms[@baseform = $cterm or . = $cterm]"> - <xsl:apply-templates select="." mode="auto-glossary-as-blocks"/> - </xsl:if> - </xsl:for-each> - </xsl:when> - <xsl:otherwise> - <xsl:for-each select="glossentry"> - <xsl:variable name="cterm" select="glossterm"/> - <xsl:if test="$terms[@baseform = $cterm or . = $cterm]"> - <xsl:apply-templates select="." mode="auto-glossary-as-blocks"/> - </xsl:if> - </xsl:for-each> - </xsl:otherwise> - </xsl:choose> - -</xsl:template> - -<xsl:template match="glossentry" mode="auto-glossary-as-blocks"> - <xsl:apply-templates select="." mode="glossary.as.blocks"/> -</xsl:template> - -<!-- ==================================================================== --> -<!-- Format glossary as a list --> - -<xsl:template match="glossdiv" mode="glossary.as.list"> - <xsl:param name="width" select="$glossterm.width"/> - - &setup-language-variable; - - <xsl:variable name="entries" select="glossentry"/> - - <xsl:variable name="preamble" - select="*[not(self::title - or self::subtitle - or self::glossentry)]"/> - - <xsl:call-template name="glossdiv.titlepage"/> - - <xsl:apply-templates select="$preamble"/> - - <fo:list-block provisional-distance-between-starts="{$width}" - provisional-label-separation="{$glossterm.separation}" - xsl:use-attribute-sets="normal.para.spacing"> - <xsl:choose> - <xsl:when test="$glossary.sort != 0"> - <xsl:apply-templates select="$entries" mode="glossary.as.list"> - <xsl:sort lang="{$language}" - select="translate(glossterm, $lowercase, - $uppercase)"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="$entries" mode="glossary.as.list"/> - </xsl:otherwise> - </xsl:choose> - </fo:list-block> -</xsl:template> - -<!-- -GlossEntry ::= - GlossTerm, Acronym?, Abbrev?, - (IndexTerm)*, - RevHistory?, - (GlossSee | GlossDef+) ---> - -<xsl:template match="glossentry" mode="glossary.as.list"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:list-item xsl:use-attribute-sets="normal.para.spacing"> - <xsl:call-template name="anchor"> - <xsl:with-param name="conditional"> - <xsl:choose> - <xsl:when test="$glossterm.auto.link != 0 - or $glossary.collection != ''">0</xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:with-param> - </xsl:call-template> - - <fo:list-item-label end-indent="label-end()"> - <fo:block> - <xsl:choose> - <xsl:when test="$glossentry.show.acronym = 'primary'"> - <xsl:choose> - <xsl:when test="acronym|abbrev"> - <xsl:apply-templates select="acronym|abbrev" - mode="glossary.as.list"/> - <xsl:text> (</xsl:text> - <xsl:apply-templates select="glossterm" - mode="glossary.as.list"/> - <xsl:text>)</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="glossterm" - mode="glossary.as.list"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - - <xsl:when test="$glossentry.show.acronym = 'yes'"> - <xsl:apply-templates select="glossterm" mode="glossary.as.list"/> - - <xsl:if test="acronym|abbrev"> - <xsl:text> (</xsl:text> - <xsl:apply-templates select="acronym|abbrev" - mode="glossary.as.list"/> - <xsl:text>)</xsl:text> - </xsl:if> - </xsl:when> - - <xsl:otherwise> - <xsl:apply-templates select="glossterm" mode="glossary.as.list"/> - </xsl:otherwise> - </xsl:choose> - <xsl:apply-templates select="indexterm"/> - </fo:block> - </fo:list-item-label> - - <fo:list-item-body start-indent="body-start()"> - <xsl:apply-templates select="glosssee|glossdef" mode="glossary.as.list"/> - </fo:list-item-body> - </fo:list-item> -</xsl:template> - -<xsl:template match="glossentry/glossterm" mode="glossary.as.list"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <fo:inline id="{$id}"> - <xsl:apply-templates/> - </fo:inline> - <xsl:if test="following-sibling::glossterm">, </xsl:if> -</xsl:template> - -<xsl:template match="glossentry/acronym" mode="glossary.as.list"> - <xsl:apply-templates/> - <xsl:if test="following-sibling::acronym|following-sibling::abbrev">, </xsl:if> -</xsl:template> - -<xsl:template match="glossentry/abbrev" mode="glossary.as.list"> - <xsl:apply-templates/> - <xsl:if test="following-sibling::acronym|following-sibling::abbrev">, </xsl:if> -</xsl:template> - -<xsl:template match="glossentry/revhistory" mode="glossary.as.list"> -</xsl:template> - -<xsl:template match="glossentry/glosssee" mode="glossary.as.list"> - <xsl:variable name="otherterm" select="@otherterm"/> - <xsl:variable name="targets" select="key('id', $otherterm)"/> - <xsl:variable name="target" select="$targets[1]"/> - - <fo:block> - <xsl:variable name="template"> - <xsl:call-template name="gentext.template"> - <xsl:with-param name="context" select="'glossary'"/> - <xsl:with-param name="name" select="'see'"/> - </xsl:call-template> - </xsl:variable> - <xsl:variable name="title"> - <xsl:choose> - <xsl:when test="$target"> - <fo:basic-link internal-destination="{$otherterm}" - xsl:use-attribute-sets="xref.properties"> - <xsl:apply-templates select="$target" mode="xref-to"/> - </fo:basic-link> - </xsl:when> - <xsl:when test="$otherterm != '' and not($target)"> - <xsl:message> - <xsl:text>Warning: glosssee @otherterm reference not found: </xsl:text> - <xsl:value-of select="$otherterm"/> - </xsl:message> - <xsl:apply-templates mode="glossary.as.list"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates mode="glossary.as.list"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:call-template name="substitute-markup"> - <xsl:with-param name="template" select="$template"/> - <xsl:with-param name="title" select="$title"/> - </xsl:call-template> - - <xsl:text>.</xsl:text> - </fo:block> -</xsl:template> - -<xsl:template match="glossentry/glossdef" mode="glossary.as.list"> - <xsl:apply-templates select="*[local-name(.) != 'glossseealso']"/> - <xsl:if test="glossseealso"> - <fo:block> - <xsl:variable name="template"> - <xsl:call-template name="gentext.template"> - <xsl:with-param name="context" select="'glossary'"/> - <xsl:with-param name="name" select="'seealso'"/> - </xsl:call-template> - </xsl:variable> - <xsl:variable name="title"> - <xsl:apply-templates select="glossseealso" mode="glossary.as.list"/> - </xsl:variable> - <xsl:call-template name="substitute-markup"> - <xsl:with-param name="template" select="$template"/> - <xsl:with-param name="title" select="$title"/> - </xsl:call-template> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="glossentry/glossdef/para[1]|glossentry/glossdef/simpara[1]" - mode="glossary.as.list"> - <fo:block> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="glossseealso" mode="glossary.as.list"> - <xsl:variable name="otherterm" select="@otherterm"/> - <xsl:variable name="targets" select="key('id', $otherterm)"/> - <xsl:variable name="target" select="$targets[1]"/> - - <xsl:choose> - <xsl:when test="$target"> - <fo:basic-link internal-destination="{$otherterm}" - xsl:use-attribute-sets="xref.properties"> - <xsl:apply-templates select="$target" mode="xref-to"/> - </fo:basic-link> - </xsl:when> - <xsl:when test="$otherterm != '' and not($target)"> - <xsl:message> - <xsl:text>Warning: glossseealso @otherterm reference not found: </xsl:text> - <xsl:value-of select="$otherterm"/> - </xsl:message> - <xsl:apply-templates mode="glossary.as.list"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates mode="glossary.as.list"/> - </xsl:otherwise> - </xsl:choose> - - <xsl:choose> - <xsl:when test="position() = last()"> - <xsl:text>.</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text>, </xsl:text> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> -<!-- Format glossary blocks --> - -<xsl:template match="glossdiv" mode="glossary.as.blocks"> - &setup-language-variable; - <xsl:variable name="entries" select="glossentry"/> - <xsl:variable name="preamble" - select="*[not(self::title - or self::subtitle - or self::glossentry)]"/> - - <xsl:call-template name="glossdiv.titlepage"/> - - <xsl:apply-templates select="$preamble"/> - - <xsl:choose> - <xsl:when test="$glossary.sort != 0"> - <xsl:apply-templates select="$entries" mode="glossary.as.blocks"> - <xsl:sort lang="{$language}" - select="translate(glossterm, $lowercase, - $uppercase)"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="$entries" mode="glossary.as.blocks"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- -GlossEntry ::= - GlossTerm, Acronym?, Abbrev?, - (IndexTerm)*, - RevHistory?, - (GlossSee | GlossDef+) ---> - -<xsl:template match="glossentry" mode="glossary.as.blocks"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:block xsl:use-attribute-sets="list.item.spacing" - keep-with-next.within-column="always" - keep-together.within-column="always"> - <xsl:call-template name="anchor"> - <xsl:with-param name="conditional"> - <xsl:choose> - <xsl:when test="$glossterm.auto.link != 0 - or $glossary.collection != ''">0</xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:with-param> - </xsl:call-template> - - <xsl:choose> - <xsl:when test="$glossentry.show.acronym = 'primary'"> - <xsl:choose> - <xsl:when test="acronym|abbrev"> - <xsl:apply-templates select="acronym|abbrev" mode="glossary.as.blocks"/> - <xsl:text> (</xsl:text> - <xsl:apply-templates select="glossterm" mode="glossary.as.blocks"/> - <xsl:text>)</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="glossterm" mode="glossary.as.blocks"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - - <xsl:when test="$glossentry.show.acronym = 'yes'"> - <xsl:apply-templates select="glossterm" mode="glossary.as.blocks"/> - - <xsl:if test="acronym|abbrev"> - <xsl:text> (</xsl:text> - <xsl:apply-templates select="acronym|abbrev" mode="glossary.as.blocks"/> - <xsl:text>)</xsl:text> - </xsl:if> - </xsl:when> - - <xsl:otherwise> - <xsl:apply-templates select="glossterm" mode="glossary.as.blocks"/> - </xsl:otherwise> - </xsl:choose> - - <xsl:apply-templates select="indexterm"/> - </fo:block> - - <fo:block margin-left="0.25in"> - <xsl:apply-templates select="glosssee|glossdef" mode="glossary.as.blocks"/> - </fo:block> -</xsl:template> - -<xsl:template match="glossentry/glossterm" mode="glossary.as.blocks"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <fo:inline id="{$id}"> - <xsl:apply-templates/> - </fo:inline> - <xsl:if test="following-sibling::glossterm">, </xsl:if> -</xsl:template> - -<xsl:template match="glossentry/acronym" mode="glossary.as.blocks"> - <xsl:apply-templates/> - <xsl:if test="following-sibling::acronym|following-sibling::abbrev">, </xsl:if> -</xsl:template> - -<xsl:template match="glossentry/abbrev" mode="glossary.as.blocks"> - <xsl:apply-templates/> - <xsl:if test="following-sibling::acronym|following-sibling::abbrev">, </xsl:if> -</xsl:template> - -<xsl:template match="glossentry/glosssee" mode="glossary.as.blocks"> - <xsl:variable name="otherterm" select="@otherterm"/> - <xsl:variable name="targets" select="key('id', $otherterm)"/> - <xsl:variable name="target" select="$targets[1]"/> - - <xsl:variable name="template"> - <xsl:call-template name="gentext.template"> - <xsl:with-param name="context" select="'glossary'"/> - <xsl:with-param name="name" select="'see'"/> - </xsl:call-template> - </xsl:variable> - <xsl:variable name="title"> - <xsl:choose> - <xsl:when test="$target"> - <fo:basic-link internal-destination="{$otherterm}" - xsl:use-attribute-sets="xref.properties"> - <xsl:apply-templates select="$target" mode="xref-to"/> - </fo:basic-link> - </xsl:when> - <xsl:when test="$otherterm != '' and not($target)"> - <xsl:message> - <xsl:text>Warning: glosssee @otherterm reference not found: </xsl:text> - <xsl:value-of select="$otherterm"/> - </xsl:message> - <xsl:apply-templates mode="glossary.as.blocks"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates mode="glossary.as.blocks"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:call-template name="substitute-markup"> - <xsl:with-param name="template" select="$template"/> - <xsl:with-param name="title" select="$title"/> - </xsl:call-template> - - <xsl:text>.</xsl:text> -</xsl:template> - -<xsl:template match="glossentry/glossdef" mode="glossary.as.blocks"> - <xsl:apply-templates select="*[local-name(.) != 'glossseealso']" - mode="glossary.as.blocks"/> - <xsl:if test="glossseealso"> - <fo:block> - <xsl:variable name="template"> - <xsl:call-template name="gentext.template"> - <xsl:with-param name="context" select="'glossary'"/> - <xsl:with-param name="name" select="'seealso'"/> - </xsl:call-template> - </xsl:variable> - <xsl:variable name="title"> - <xsl:apply-templates select="glossseealso" mode="glossary.as.blocks"/> - </xsl:variable> - <xsl:call-template name="substitute-markup"> - <xsl:with-param name="template" select="$template"/> - <xsl:with-param name="title" select="$title"/> - </xsl:call-template> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="glossentry/glossdef/para[1]|glossentry/glossdef/simpara[1]" - mode="glossary.as.blocks"> - <fo:block> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<!-- Handle any other glossdef content normally --> -<xsl:template match="*" mode="glossary.as.blocks"> - <xsl:apply-templates select="." /> -</xsl:template> - -<xsl:template match="glossseealso" mode="glossary.as.blocks"> - <xsl:variable name="otherterm" select="@otherterm"/> - <xsl:variable name="targets" select="key('id', $otherterm)"/> - <xsl:variable name="target" select="$targets[1]"/> - - <xsl:choose> - <xsl:when test="$target"> - <fo:basic-link internal-destination="{$otherterm}" - xsl:use-attribute-sets="xref.properties"> - <xsl:apply-templates select="$target" mode="xref-to"/> - </fo:basic-link> - </xsl:when> - <xsl:when test="$otherterm != '' and not($target)"> - <xsl:message> - <xsl:text>Warning: glossseealso @otherterm reference not found: </xsl:text> - <xsl:value-of select="$otherterm"/> - </xsl:message> - <xsl:apply-templates mode="glossary.as.blocks"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates mode="glossary.as.blocks"/> - </xsl:otherwise> - </xsl:choose> - - <xsl:choose> - <xsl:when test="position() = last()"> - <xsl:text>.</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text>, </xsl:text> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/graphics.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/graphics.xsl deleted file mode 100644 index c2973762a..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/graphics.xsl +++ /dev/null @@ -1,637 +0,0 @@ -<?xml version='1.0'?> -<!DOCTYPE xsl:stylesheet [ -<!ENTITY lowercase "'abcdefghijklmnopqrstuvwxyz'"> -<!ENTITY uppercase "'ABCDEFGHIJKLMNOPQRSTUVWXYZ'"> - ]> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:xlink="http://www.w3.org/1999/xlink" - xmlns:stext="http://nwalsh.com/xslt/ext/com.nwalsh.saxon.TextFactory" - xmlns:xtext="com.nwalsh.xalan.Text" - xmlns:lxslt="http://xml.apache.org/xslt" - exclude-result-prefixes="xlink stext xtext lxslt" - extension-element-prefixes="stext xtext" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - Contributors: - Colin Paul Adams, <colin@colina.demon.co.uk> - Paul Grosso, <pgrosso@arbortext.com> - - ******************************************************************** --> - -<!-- ==================================================================== --> -<!-- Graphic format tests for the FO backend --> - -<xsl:param name="graphic.notations"> - <!-- n.b. exactly one leading space, one trailing space, and one inter-word space --> - <xsl:choose> - <xsl:when test="$passivetex.extensions != 0"> - <xsl:text> PNG PDF JPG JPEG linespecific </xsl:text> - </xsl:when> - <xsl:when test="$fop1.extensions != 0"> - <xsl:text> BMP GIF TIFF SVG PNG EPS JPG JPEG linespecific </xsl:text> - </xsl:when> - <xsl:when test="$fop.extensions != 0"> - <xsl:text> BMP GIF TIFF SVG PNG EPS JPG JPEG linespecific </xsl:text> - </xsl:when> - <xsl:when test="$arbortext.extensions != 0"> - <xsl:text> PNG PDF JPG JPEG linespecific GIF GIF87a GIF89a TIFF BMP </xsl:text> - </xsl:when> - <xsl:when test="$xep.extensions != 0"> - <xsl:text> SVG PNG PDF JPG JPEG linespecific GIF GIF87a GIF89a TIFF BMP </xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text> PNG PDF JPG JPEG linespecific GIF GIF87a GIF89a TIFF BMP </xsl:text> - </xsl:otherwise> - </xsl:choose> -</xsl:param> - -<xsl:template name="is.graphic.format"> - <xsl:param name="format"/> - <xsl:if test="contains($graphic.notations, concat(' ',$format,' '))">1</xsl:if> -</xsl:template> - -<xsl:param name="graphic.extensions"> - <!-- n.b. exactly one leading space, one trailing space, and one inter-word space --> - <xsl:choose> - <xsl:when test="$passivetex.extensions != 0"> - <xsl:text> png pdf jpg jpeg </xsl:text> - </xsl:when> - <xsl:when test="$fop1.extensions != 0"> - <xsl:text> bmp gif tif tiff svg png pdf jpg jpeg eps </xsl:text> - </xsl:when> - <xsl:when test="$fop.extensions != 0"> - <xsl:text> bmp gif tif tiff svg png pdf jpg jpeg eps </xsl:text> - </xsl:when> - <xsl:when test="$arbortext.extensions != 0"> - <xsl:text> png pdf jpg jpeg gif tif tiff bmp </xsl:text> - </xsl:when> - <xsl:when test="$xep.extensions != 0"> - <xsl:text> svg png pdf jpg jpeg gif tif tiff bmp eps </xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text> svg png pdf jpg jpeg gif tif tiff bmp eps </xsl:text> - </xsl:otherwise> - </xsl:choose> -</xsl:param> - -<xsl:template name="is.graphic.extension"> - <xsl:param name="ext"/> - <xsl:variable name="lcext" select="translate($ext, - 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', - 'abcdefghijklmnopqrstuvwxyz')"/> - - <xsl:if test="contains($graphic.extensions, - concat(' ', $lcext, ' '))">1</xsl:if> -</xsl:template> - -<xsl:template name="graphic.format.content-type"> - <xsl:param name="format"/> - <xsl:variable name="is.graphic.format"> - <xsl:call-template name="is.graphic.format"> - <xsl:with-param name="format" select="$format"/> - </xsl:call-template> - </xsl:variable> - <xsl:if test="$is.graphic.format"> - <xsl:choose> - <xsl:when test="$format = ''"></xsl:when> - <xsl:when test="$format = 'linespecific'"></xsl:when> - <xsl:when test="$format = 'PS'">application/postscript</xsl:when> - <xsl:when test="$format = 'PDF'">application/pdf</xsl:when> - <xsl:when test="$format = 'PNG'">image/png</xsl:when> - <xsl:when test="$format = 'SVG'">image/svg+xml</xsl:when> - <xsl:when test="$format = 'JPG'">image/jpeg</xsl:when> - <xsl:when test="$format = 'GIF87a'">image/gif</xsl:when> - <xsl:when test="$format = 'GIF89a'">image/gif</xsl:when> - <xsl:otherwise> - <xsl:value-of select="concat('image/', - translate($format, &uppercase;, &lowercase;))"/> - </xsl:otherwise> - </xsl:choose> - </xsl:if> -</xsl:template> - - -<!-- ==================================================================== --> - -<xsl:template match="screenshot"> - <fo:block> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="screeninfo"> -</xsl:template> - -<!-- ==================================================================== --> -<!-- Override these templates for FO --> -<!-- ==================================================================== --> - -<xsl:template name="process.image"> - <!-- When this template is called, the current node should be --> - <!-- a graphic, inlinegraphic, imagedata, or videodata. All --> - <!-- those elements have the same set of attributes, so we can --> - <!-- handle them all in one place. --> - - <xsl:variable name="scalefit"> - <xsl:choose> - <xsl:when test="$ignore.image.scaling != 0">0</xsl:when> - <xsl:when test="@contentwidth">0</xsl:when> - <xsl:when test="@contentdepth and - @contentdepth != '100%'">0</xsl:when> - <xsl:when test="@scale">0</xsl:when> - <xsl:when test="@scalefit"><xsl:value-of select="@scalefit"/></xsl:when> - <xsl:when test="@width or @depth">1</xsl:when> - <xsl:otherwise>0</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="scale"> - <xsl:choose> - <xsl:when test="$ignore.image.scaling != 0">0</xsl:when> - <xsl:when test="@contentwidth or @contentdepth">1.0</xsl:when> - <xsl:when test="@scale"> - <xsl:value-of select="@scale div 100.0"/> - </xsl:when> - <xsl:otherwise>1.0</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="filename"> - <xsl:choose> - <xsl:when test="local-name(.) = 'graphic' - or local-name(.) = 'inlinegraphic'"> - <!-- handle legacy graphic and inlinegraphic by new template --> - <xsl:call-template name="mediaobject.filename"> - <xsl:with-param name="object" select="."/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <!-- imagedata, videodata, audiodata --> - <xsl:call-template name="mediaobject.filename"> - <xsl:with-param name="object" select=".."/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="content-type"> - <xsl:if test="@format"> - <xsl:call-template name="graphic.format.content-type"> - <xsl:with-param name="format" select="@format"/> - </xsl:call-template> - </xsl:if> - </xsl:variable> - - <xsl:variable name="bgcolor"> - <xsl:call-template name="pi.dbfo_background-color"> - <xsl:with-param name="node" select=".."/> - </xsl:call-template> - </xsl:variable> - - <fo:external-graphic> - <xsl:attribute name="src"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename"> - <xsl:if test="$img.src.path != '' and - not(starts-with($filename, '/')) and - not(contains($filename, '://'))"> - <xsl:value-of select="$img.src.path"/> - </xsl:if> - <xsl:value-of select="$filename"/> - </xsl:with-param> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="width"> - <xsl:choose> - <xsl:when test="$ignore.image.scaling != 0">auto</xsl:when> - <xsl:when test="contains(@width,'%')"> - <xsl:value-of select="@width"/> - </xsl:when> - <xsl:when test="@width and not(@width = '')"> - <xsl:call-template name="length-spec"> - <xsl:with-param name="length" select="@width"/> - <xsl:with-param name="default.units" select="'px'"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="not(@depth) and $default.image.width != ''"> - <xsl:call-template name="length-spec"> - <xsl:with-param name="length" select="$default.image.width"/> - <xsl:with-param name="default.units" select="'px'"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise>auto</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - - <xsl:attribute name="height"> - <xsl:choose> - <xsl:when test="$ignore.image.scaling != 0">auto</xsl:when> - <xsl:when test="contains(@depth,'%')"> - <xsl:value-of select="@depth"/> - </xsl:when> - <xsl:when test="@depth"> - <xsl:call-template name="length-spec"> - <xsl:with-param name="length" select="@depth"/> - <xsl:with-param name="default.units" select="'px'"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise>auto</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - - <xsl:attribute name="content-width"> - <xsl:choose> - <xsl:when test="$ignore.image.scaling != 0">auto</xsl:when> - <xsl:when test="contains(@contentwidth,'%')"> - <xsl:value-of select="@contentwidth"/> - </xsl:when> - <xsl:when test="@contentwidth"> - <xsl:call-template name="length-spec"> - <xsl:with-param name="length" select="@contentwidth"/> - <xsl:with-param name="default.units" select="'px'"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="number($scale) != 1.0"> - <xsl:value-of select="$scale * 100"/> - <xsl:text>%</xsl:text> - </xsl:when> - <xsl:when test="$scalefit = 1">scale-to-fit</xsl:when> - <xsl:otherwise>auto</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - - <xsl:attribute name="content-height"> - <xsl:choose> - <xsl:when test="$ignore.image.scaling != 0">auto</xsl:when> - <xsl:when test="contains(@contentdepth,'%')"> - <xsl:value-of select="@contentdepth"/> - </xsl:when> - <xsl:when test="@contentdepth"> - <xsl:call-template name="length-spec"> - <xsl:with-param name="length" select="@contentdepth"/> - <xsl:with-param name="default.units" select="'px'"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="number($scale) != 1.0"> - <xsl:value-of select="$scale * 100"/> - <xsl:text>%</xsl:text> - </xsl:when> - <xsl:when test="$scalefit = 1">scale-to-fit</xsl:when> - <xsl:otherwise>auto</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - - <xsl:if test="$content-type != ''"> - <xsl:attribute name="content-type"> - <xsl:value-of select="concat('content-type:',$content-type)"/> - </xsl:attribute> - </xsl:if> - - <xsl:if test="$bgcolor != ''"> - <xsl:attribute name="background-color"> - <xsl:value-of select="$bgcolor"/> - </xsl:attribute> - </xsl:if> - - <xsl:if test="@align"> - <xsl:attribute name="text-align"> - <xsl:value-of select="@align"/> - </xsl:attribute> - </xsl:if> - - <xsl:if test="@valign"> - <xsl:attribute name="display-align"> - <xsl:choose> - <xsl:when test="@valign = 'top'">before</xsl:when> - <xsl:when test="@valign = 'middle'">center</xsl:when> - <xsl:when test="@valign = 'bottom'">after</xsl:when> - <xsl:otherwise>auto</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </xsl:if> - </fo:external-graphic> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="graphic"> - <xsl:choose> - <xsl:when test="parent::inlineequation"> - <xsl:call-template name="process.image"/> - </xsl:when> - <xsl:otherwise> - <fo:block> - <xsl:if test="@align"> - <xsl:attribute name="text-align"> - <xsl:value-of select="@align"/> - </xsl:attribute> - </xsl:if> - <xsl:call-template name="process.image"/> - </fo:block> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="inlinegraphic"> - <xsl:variable name="vendor" select="system-property('xsl:vendor')"/> - <xsl:variable name="filename"> - <xsl:choose> - <xsl:when test="@entityref"> - <xsl:value-of select="unparsed-entity-uri(@entityref)"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="@fileref"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:choose> - <xsl:when test="@format='linespecific'"> - <xsl:choose> - <xsl:when test="$use.extensions != '0' - and $textinsert.extension != '0'"> - <xsl:choose> - <xsl:when test="contains($vendor, 'SAXON')"> - <stext:insertfile href="{$filename}" encoding="{$textdata.default.encoding}"/> - </xsl:when> - <xsl:when test="contains($vendor, 'Apache Software Foundation')"> - <xtext:insertfile href="{$filename}"/> - </xsl:when> - <xsl:otherwise> - <xsl:message terminate="yes"> - <xsl:text>Don't know how to insert files with </xsl:text> - <xsl:value-of select="$vendor"/> - </xsl:message> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:message terminate="yes"> - <xsl:text>Cannot insert </xsl:text><xsl:value-of select="$filename"/> - <xsl:text>. Check use.extensions and textinsert.extension parameters.</xsl:text> - </xsl:message> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="process.image"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="mediaobject|mediaobjectco"> - - <xsl:variable name="olist" select="imageobject|imageobjectco - |videoobject|audioobject - |textobject"/> - - <xsl:variable name="object.index"> - <xsl:call-template name="select.mediaobject.index"> - <xsl:with-param name="olist" select="$olist"/> - <xsl:with-param name="count" select="1"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="object" select="$olist[position() = $object.index]"/> - - <xsl:variable name="align"> - <xsl:value-of select="$object/descendant::imagedata[@align][1]/@align"/> - </xsl:variable> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:block id="{$id}"> - <xsl:if test="$align != '' "> - <xsl:attribute name="text-align"> - <xsl:value-of select="$align"/> - </xsl:attribute> - </xsl:if> - - <xsl:apply-templates select="$object"/> - <xsl:apply-templates select="caption"/> - </fo:block> -</xsl:template> - -<xsl:template match="inlinemediaobject"> - <xsl:call-template name="select.mediaobject"/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="imageobjectco"> - <xsl:apply-templates select="imageobject"/> - <xsl:apply-templates select="calloutlist"/> -</xsl:template> - -<xsl:template match="imageobject"> - <xsl:choose> - <xsl:when test="imagedata"> - <xsl:apply-templates select="imagedata"/> - </xsl:when> - <xsl:otherwise> - <fo:instream-foreign-object> - <xsl:apply-templates mode="copy-all"/> - </fo:instream-foreign-object> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="*" mode="copy-all"> - <xsl:copy> - <xsl:for-each select="@*"> - <xsl:copy/> - </xsl:for-each> - <xsl:apply-templates mode="copy-all"/> - </xsl:copy> -</xsl:template> - -<xsl:template match="text()|comment()|processing-instruction()" mode="copy-all"> - <xsl:copy/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="imagedata"> - <xsl:variable name="vendor" select="system-property('xsl:vendor')"/> - <xsl:variable name="filename"> - <xsl:call-template name="mediaobject.filename"> - <xsl:with-param name="object" select=".."/> - </xsl:call-template> - </xsl:variable> - - <xsl:choose> - <xsl:when test="@format='linespecific'"> - <xsl:choose> - <xsl:when test="$use.extensions != '0' - and $textinsert.extension != '0'"> - <xsl:choose> - <xsl:when test="contains($vendor, 'SAXON')"> - <stext:insertfile href="{$filename}" encoding="{$textdata.default.encoding}"/> - </xsl:when> - <xsl:when test="contains($vendor, 'Apache Software Foundation')"> - <xtext:insertfile href="{$filename}"/> - </xsl:when> - <xsl:otherwise> - <xsl:message terminate="yes"> - <xsl:text>Don't know how to insert files with </xsl:text> - <xsl:value-of select="$vendor"/> - </xsl:message> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:message terminate="yes"> - <xsl:text>Cannot insert </xsl:text><xsl:value-of select="$filename"/> - <xsl:text>. Check use.extensions and textinsert.extension parameters.</xsl:text> - </xsl:message> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="process.image"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="videoobject"> - <xsl:apply-templates select="videodata"/> -</xsl:template> - -<xsl:template match="videodata"> - <xsl:call-template name="process.image"/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="audioobject"> - <xsl:apply-templates select="audiodata"/> -</xsl:template> - -<xsl:template match="audiodata"> - <xsl:call-template name="process.image"/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="textobject"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="textdata"> - <xsl:variable name="vendor" select="system-property('xsl:vendor')"/> - <xsl:variable name="filename"> - <xsl:choose> - <xsl:when test="@entityref"> - <xsl:value-of select="unparsed-entity-uri(@entityref)"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="@fileref"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="encoding"> - <xsl:choose> - <xsl:when test="@encoding"> - <xsl:value-of select="@encoding"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$textdata.default.encoding"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$use.extensions != '0' - and $textinsert.extension != '0'"> - <xsl:choose> - <xsl:when test="element-available('stext:insertfile')"> - <stext:insertfile href="{$filename}" encoding="{$encoding}"/> - </xsl:when> - <xsl:when test="element-available('xtext:insertfile')"> - <xtext:insertfile href="{$filename}"/> - </xsl:when> - <xsl:otherwise> - <xsl:message terminate="yes"> - <xsl:text>Don't know how to insert files with </xsl:text> - <xsl:value-of select="$vendor"/> - </xsl:message> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:message terminate="yes"> - <xsl:text>Cannot insert </xsl:text><xsl:value-of select="$filename"/> - <xsl:text>. Check use.extensions and textinsert.extension parameters.</xsl:text> - </xsl:message> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="caption"> - <fo:block> - <xsl:if test="@align = 'right' or @align = 'left' or @align='center'"> - <xsl:attribute name="text-align"><xsl:value-of - select="@align"/></xsl:attribute> - </xsl:if> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="fo-external-image"> - <xsl:param name="filename"/> - - <xsl:choose> - <xsl:when test="$passivetex.extensions != 0 - or $fop.extensions != 0"> - <xsl:value-of select="$filename"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="concat('url(', $filename, ')')"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- Resolve xml:base attributes --> -<xsl:template match="@fileref"> - <!-- need a check for absolute urls --> - <xsl:choose> - <xsl:when test="contains(., ':') or starts-with(.,'/')"> - <!-- it has a uri scheme or starts with '/', so it is an absolute uri --> - <xsl:value-of select="."/> - </xsl:when> - <xsl:when test="$keep.relative.image.uris != 0"> - <!-- leave it alone --> - <xsl:value-of select="."/> - </xsl:when> - <xsl:otherwise> - <!-- its a relative uri --> - <xsl:call-template name="relative-uri"> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/highlight.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/highlight.xsl deleted file mode 100644 index 829aad844..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/highlight.xsl +++ /dev/null @@ -1,57 +0,0 @@ -<?xml version='1.0'?>
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns:fo="http://www.w3.org/1999/XSL/Format"
- xmlns:xslthl="http://xslthl.sf.net"
- exclude-result-prefixes="xslthl"
- version='1.0'>
-
-<!-- ********************************************************************
- $Id$
- ********************************************************************
-
- This file is part of the XSL DocBook Stylesheet distribution.
- See ../README or http://docbook.sf.net/release/xsl/current/ for
- and other information.
-
- ******************************************************************** -->
-
-<xsl:template match='xslthl:keyword'>
- <fo:inline font-weight="bold"><xsl:apply-templates/></fo:inline>
-</xsl:template>
-
-<xsl:template match='xslthl:string'>
- <fo:inline font-weight="bold" font-style="italic"><xsl:apply-templates/></fo:inline>
-</xsl:template>
-
-<xsl:template match='xslthl:comment'>
- <fo:inline font-style="italic"><xsl:apply-templates/></fo:inline>
-</xsl:template>
-
-<xsl:template match='xslthl:tag'>
- <fo:inline font-weight="bold"><xsl:apply-templates/></fo:inline>
-</xsl:template>
-
-<xsl:template match='xslthl:attribute'>
- <fo:inline font-weight="bold"><xsl:apply-templates/></fo:inline>
-</xsl:template>
-
-<xsl:template match='xslthl:value'>
- <fo:inline font-weight="bold"><xsl:apply-templates/></fo:inline>
-</xsl:template>
-
-<!--
-<xsl:template match='xslthl:html'>
- <span style='background:#AFF'><font color='blue'><xsl:apply-templates/></font></span>
-</xsl:template>
-
-<xsl:template match='xslthl:xslt'>
- <span style='background:#AAA'><font color='blue'><xsl:apply-templates/></font></span>
-</xsl:template>
-
-<xsl:template match='xslthl:section'>
- <span style='background:yellow'><xsl:apply-templates/></span>
-</xsl:template>
--->
-
-</xsl:stylesheet>
-
diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/htmltbl.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/htmltbl.xsl deleted file mode 100644 index 1954d956b..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/htmltbl.xsl +++ /dev/null @@ -1,217 +0,0 @@ -<?xml version="1.0"?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version="1.0"> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<xsl:attribute-set name="th.style"> - <xsl:attribute name="font-weight">bold</xsl:attribute> -</xsl:attribute-set> - -<!-- Outputs an fo:table only, not the caption --> -<xsl:template match="table|informaltable" mode="htmlTable"> - - <xsl:variable name="numcols"> - <xsl:call-template name="widest-html-row"> - <xsl:with-param name="rows" select=".//tr"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="prop-columns" - select=".//col[contains(@width, '%')] | - .//colgroup[contains(@width, '%')]"/> - - <xsl:variable name="table.width"> - <xsl:call-template name="table.width"/> - </xsl:variable> - - <fo:table xsl:use-attribute-sets="table.table.properties"> - <xsl:choose> - <xsl:when test="$fop.extensions != 0 or - $passivetex.extensions != 0"> - <xsl:attribute name="table-layout">fixed</xsl:attribute> - </xsl:when> - </xsl:choose> - <xsl:attribute name="width"> - <xsl:choose> - <xsl:when test="@width"> - <xsl:value-of select="@width"/> - </xsl:when> - <xsl:when test="$table.width"> - <xsl:value-of select="$table.width"/> - </xsl:when> - <xsl:otherwise>100%</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - <xsl:call-template name="make-html-table-columns"> - <xsl:with-param name="count" select="$numcols"/> - </xsl:call-template> - <xsl:apply-templates select="thead" mode="htmlTable"/> - <xsl:apply-templates select="tfoot" mode="htmlTable"/> - <xsl:choose> - <xsl:when test="tbody"> - <xsl:apply-templates select="tbody" mode="htmlTable"/> - </xsl:when> - <xsl:otherwise> - <fo:table-body start-indent="0pt" end-indent="0pt"> - <xsl:apply-templates select="tr" mode="htmlTable"/> - </fo:table-body> - </xsl:otherwise> - </xsl:choose> - </fo:table> - -</xsl:template> - -<xsl:template match="caption" mode="htmlTable"> - <!-- Handled by formal.object.heading --> -</xsl:template> - -<xsl:template name="widest-html-row"> - <xsl:param name="rows" select="''"/> - <xsl:param name="count" select="0"/> - <xsl:choose> - <xsl:when test="count($rows) = 0"> - <xsl:value-of select="$count"/> - </xsl:when> - <xsl:otherwise> - <xsl:choose> - <xsl:when test="$count > count($rows[1]/*)"> - <xsl:call-template name="widest-html-row"> - <xsl:with-param name="rows" select="$rows[position() > 1]"/> - <xsl:with-param name="count" select="$count"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="widest-html-row"> - <xsl:with-param name="rows" select="$rows[position() > 1]"/> - <xsl:with-param name="count" select="count($rows[1]/*)"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="make-html-table-columns"> - <xsl:param name="count" select="0"/> - <xsl:param name="number" select="1"/> - - <xsl:choose> - <xsl:when test="col|colgroup/col"> - <xsl:for-each select="col|colgroup/col"> - <fo:table-column> - <xsl:attribute name="column-number"> - <xsl:number from="table|informaltable" level="any" format="1"/> - </xsl:attribute> - <xsl:if test="@width"> - <xsl:attribute name="column-width"> - <xsl:choose> - <xsl:when test="$fop.extensions != 0 and - contains(@width, '%')"> - <xsl:value-of select="concat('proportional-column-width(', - substring-before(@width, '%'), - ')')"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="@width"/> - </xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </xsl:if> - </fo:table-column> - </xsl:for-each> - </xsl:when> - <xsl:when test="$fop.extensions != 0"> - <xsl:if test="$number <= $count"> - <fo:table-column column-number="{$number}" - column-width="{6.5 div $count}in"/> - <xsl:call-template name="make-html-table-columns"> - <xsl:with-param name="count" select="$count"/> - <xsl:with-param name="number" select="$number + 1"/> - </xsl:call-template> - </xsl:if> - </xsl:when> - </xsl:choose> -</xsl:template> - -<xsl:template match="tbody" mode="htmlTable"> - <fo:table-body border-bottom-width="0.25pt" - border-bottom-style="solid" - border-bottom-color="black" - start-indent="0pt" - end-indent="0pt"> - <xsl:apply-templates mode="htmlTable"/> - </fo:table-body> -</xsl:template> - -<xsl:template match="td" mode="htmlTable"> - <xsl:variable name="bgcolor"> - <xsl:call-template name="pi.dbfo_bgcolor"/> - </xsl:variable> - <fo:table-cell xsl:use-attribute-sets="table.cell.padding"> - <xsl:call-template name="table.cell.properties"> - <xsl:with-param name="bgcolor.pi" select="$bgcolor"/> - <xsl:with-param name="rowsep.inherit" select="0"/> - <xsl:with-param name="colsep.inherit" select="0"/> - </xsl:call-template> - <fo:block> - <xsl:call-template name="table.cell.block.properties"/> - <xsl:apply-templates/> - </fo:block> - </fo:table-cell> -</xsl:template> - -<xsl:template match="tfoot" mode="htmlTable"> - <fo:table-footer start-indent="0pt" - end-indent="0pt"> - <xsl:apply-templates mode="htmlTable"/> - </fo:table-footer> -</xsl:template> - -<xsl:template match="th" mode="htmlTable"> - <xsl:variable name="bgcolor"> - <xsl:call-template name="pi.dbfo_bgcolor"/> - </xsl:variable> - <fo:table-cell xsl:use-attribute-sets="th.style table.cell.padding"> - <xsl:call-template name="table.cell.properties"> - <xsl:with-param name="bgcolor.pi" select="$bgcolor"/> - <xsl:with-param name="rowsep.inherit" select="0"/> - <xsl:with-param name="colsep.inherit" select="0"/> - </xsl:call-template> - <fo:block> - <xsl:call-template name="table.cell.block.properties"/> - <xsl:apply-templates/> - </fo:block> - </fo:table-cell> -</xsl:template> - -<xsl:template match="thead" mode="htmlTable"> - <fo:table-header border-bottom-width="0.25pt" - border-bottom-style="solid" - border-bottom-color="black" - start-indent="0pt" - end-indent="0pt" - font-weight="bold"> - <xsl:apply-templates mode="htmlTable"/> - </fo:table-header> -</xsl:template> - -<xsl:template match="tr" mode="htmlTable"> - <fo:table-row> - <xsl:call-template name="table.row.properties"/> - <xsl:apply-templates mode="htmlTable"/> - </fo:table-row> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/index.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/index.xsl deleted file mode 100644 index d50184466..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/index.xsl +++ /dev/null @@ -1,479 +0,0 @@ -<?xml version='1.0'?> -<!DOCTYPE xsl:stylesheet [ -<!ENTITY primary 'normalize-space(concat(primary/@sortas, primary[not(@sortas)]))'> -<!ENTITY secondary 'normalize-space(concat(secondary/@sortas, secondary[not(@sortas)]))'> -<!ENTITY tertiary 'normalize-space(concat(tertiary/@sortas, tertiary[not(@sortas)]))'> -]> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:rx="http://www.renderx.com/XSL/Extensions" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<xsl:template match="index"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:if test="$generate.index != 0"> - <xsl:choose> - <xsl:when test="$make.index.markup != 0"> - <fo:block> - <xsl:call-template name="generate-index-markup"> - <xsl:with-param name="scope" select="(ancestor::book|/)[last()]"/> - </xsl:call-template> - </fo:block> - </xsl:when> - <xsl:otherwise> - <fo:block id="{$id}"> - <xsl:call-template name="index.titlepage"/> - </fo:block> - <xsl:apply-templates/> - <xsl:if test="count(indexentry) = 0 and count(indexdiv) = 0"> - <xsl:call-template name="generate-index"> - <xsl:with-param name="scope" select="(ancestor::book|/)[last()]"/> - </xsl:call-template> - </xsl:if> - </xsl:otherwise> - </xsl:choose> - </xsl:if> -</xsl:template> - -<xsl:template match="book/index|part/index"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:if test="$generate.index != 0"> - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"> - <xsl:with-param name="pageclass"> - <xsl:if test="$make.index.markup != 0">body</xsl:if> - </xsl:with-param> - </xsl:call-template> - </xsl:variable> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - - <fo:block id="{$id}"> - <xsl:call-template name="index.titlepage"/> - </fo:block> - <xsl:apply-templates/> - <xsl:if test="count(indexentry) = 0 and count(indexdiv) = 0"> - - <xsl:choose> - <xsl:when test="$make.index.markup != 0"> - <fo:block wrap-option='no-wrap' - white-space-collapse='false' - xsl:use-attribute-sets="monospace.verbatim.properties" - linefeed-treatment="preserve"> - <xsl:call-template name="generate-index-markup"> - <xsl:with-param name="scope" select="(ancestor::book|/)[last()]"/> - </xsl:call-template> - </fo:block> - </xsl:when> - <xsl:when test="indexentry|indexdiv/indexentry"> - <xsl:apply-templates/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="generate-index"> - <xsl:with-param name="scope" select="(ancestor::book|/)[last()]"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:if> - </fo:flow> - </fo:page-sequence> - </xsl:if> -</xsl:template> - -<xsl:template match="setindex"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:if test="$generate.index != 0"> - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"> - <xsl:with-param name="pageclass"> - <xsl:choose> - <xsl:when test="$make.index.markup != 0">body</xsl:when> - <xsl:otherwise>index</xsl:otherwise> - </xsl:choose> - </xsl:with-param> - </xsl:call-template> - </xsl:variable> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - - <fo:block id="{$id}"> - <xsl:call-template name="setindex.titlepage"/> - </fo:block> - <xsl:apply-templates/> - <xsl:if test="count(indexentry) = 0 and count(indexdiv) = 0"> - - <xsl:choose> - <xsl:when test="$make.index.markup != 0"> - <fo:block wrap-option='no-wrap' - white-space-collapse='false' - xsl:use-attribute-sets="monospace.verbatim.properties" - linefeed-treatment="preserve"> - <xsl:call-template name="generate-index-markup"> - <xsl:with-param name="scope" select="/"/> - </xsl:call-template> - </fo:block> - </xsl:when> - <xsl:when test="indexentry|indexdiv/indexentry"> - <xsl:apply-templates/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="generate-index"> - <xsl:with-param name="scope" select="/"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:if> - </fo:flow> - </fo:page-sequence> - </xsl:if> -</xsl:template> - -<xsl:template match="index/indexinfo"></xsl:template> -<xsl:template match="index/info"></xsl:template> -<xsl:template match="index/title"></xsl:template> -<xsl:template match="index/subtitle"></xsl:template> -<xsl:template match="index/titleabbrev"></xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="indexdiv.title"> - <xsl:param name="title"/> - <xsl:param name="titlecontent"/> - - <fo:block xsl:use-attribute-sets="index.div.title.properties"> - <xsl:choose> - <xsl:when test="$title"> - <xsl:apply-templates select="." mode="object.title.markup"> - <xsl:with-param name="allow-anchors" select="1"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$titlecontent"/> - </xsl:otherwise> - </xsl:choose> - </fo:block> -</xsl:template> - -<xsl:template match="indexdiv"> - <fo:block> - <xsl:call-template name="indexdiv.titlepage"/> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="indexdiv/title"/> -<xsl:template match="indexdiv/subtitle"/> -<xsl:template match="indexdiv/titleabbrev"/> - -<!-- ==================================================================== --> - -<!-- Text used for distiguishing between normal and significant entries --> -<xsl:variable name="significant.flag">.tnacifingis</xsl:variable> - -<xsl:template match="indexterm" name="indexterm"> - <!-- Temporal workaround for bug in AXF --> - <xsl:variable name="wrapper.name"> - <xsl:choose> - <xsl:when test="$axf.extensions != 0"> - <xsl:call-template name="inline.or.block"/> - </xsl:when> - <xsl:otherwise>fo:wrapper</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:element name="{$wrapper.name}"> - <xsl:attribute name="id"> - <xsl:call-template name="object.id"/> - </xsl:attribute> - <xsl:choose> - <xsl:when test="$xep.extensions != 0"> - <xsl:attribute name="rx:key"> - <xsl:value-of select="&primary;"/> - <xsl:if test="@significance='preferred'"><xsl:value-of select="$significant.flag"/></xsl:if> - <xsl:if test="secondary"> - <xsl:text>, </xsl:text> - <xsl:value-of select="&secondary;"/> - </xsl:if> - <xsl:if test="tertiary"> - <xsl:text>, </xsl:text> - <xsl:value-of select="&tertiary;"/> - </xsl:if> - </xsl:attribute> - </xsl:when> - <xsl:otherwise> - <xsl:comment> - <xsl:call-template name="comment-escape-string"> - <xsl:with-param name="string"> - <xsl:value-of select="primary"/> - <xsl:if test="secondary"> - <xsl:text>, </xsl:text> - <xsl:value-of select="secondary"/> - </xsl:if> - <xsl:if test="tertiary"> - <xsl:text>, </xsl:text> - <xsl:value-of select="tertiary"/> - </xsl:if> - </xsl:with-param> - </xsl:call-template> - </xsl:comment> - </xsl:otherwise> - </xsl:choose> - </xsl:element> -</xsl:template> - -<xsl:template match="indexterm[@class='startofrange']"> - <xsl:choose> - <xsl:when test="$xep.extensions != 0"> - <rx:begin-index-range> - <xsl:call-template name="anchor"/> - <xsl:attribute name="rx:key"> - <xsl:value-of select="&primary;"/> - <xsl:if test="@significance='preferred'"><xsl:value-of select="$significant.flag"/></xsl:if> - <xsl:if test="secondary"> - <xsl:text>, </xsl:text> - <xsl:value-of select="&secondary;"/> - </xsl:if> - <xsl:if test="tertiary"> - <xsl:text>, </xsl:text> - <xsl:value-of select="&tertiary;"/> - </xsl:if> - </xsl:attribute> - </rx:begin-index-range> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="indexterm"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="indexterm[@class='endofrange']"> - <xsl:choose> - <xsl:when test="$xep.extensions != 0"> - <rx:end-index-range> - <xsl:attribute name="ref-id"> - <xsl:value-of select="@startref"/> - </xsl:attribute> - </rx:end-index-range> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="indexterm"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="indexentry"> - <fo:block> - <!-- don't process 'seeie's from here --> - <xsl:apply-templates select="primaryie|secondaryie|tertiaryie|seealsoie"/> - </fo:block> -</xsl:template> - -<xsl:template match="primaryie"> - <fo:block> - <xsl:apply-templates/> - <xsl:if test="following-sibling::seeie"> - <xsl:text> (</xsl:text> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'see'"/> - </xsl:call-template> - <xsl:text> </xsl:text> - <xsl:apply-templates select="following-sibling::seeie"/> - <xsl:text>)</xsl:text> - </xsl:if> - </fo:block> -</xsl:template> - -<xsl:template match="secondaryie"> - <fo:block start-indent="1pc"> - <xsl:apply-templates/> - <xsl:if test="following-sibling::seeie"> - <xsl:text> (</xsl:text> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'see'"/> - </xsl:call-template> - <xsl:text> </xsl:text> - <xsl:apply-templates select="following-sibling::seeie"/> - <xsl:text>)</xsl:text> - </xsl:if> - </fo:block> -</xsl:template> - -<xsl:template match="tertiaryie"> - <fo:block start-indent="2pc"> - <xsl:apply-templates/> - <xsl:if test="following-sibling::seeie"> - <xsl:text> (</xsl:text> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'see'"/> - </xsl:call-template> - <xsl:text> </xsl:text> - <xsl:apply-templates select="following-sibling::seeie"/> - <xsl:text>)</xsl:text> - </xsl:if> - </fo:block> -</xsl:template> - -<xsl:template match="seeie"> - <fo:inline> - <xsl:apply-templates/> - </fo:inline> -</xsl:template> - -<xsl:template match="seealsoie"> - <fo:block> - <xsl:attribute name="start-indent"> - <xsl:choose> - <xsl:when test="preceding-sibling::tertiaryie">3pc</xsl:when> - <xsl:when test="preceding-sibling::secondaryie">2pc</xsl:when> - <xsl:otherwise>1pc</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - <xsl:text>(</xsl:text> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'seealso'"/> - </xsl:call-template> - <xsl:text> </xsl:text> - <xsl:apply-templates/> - <xsl:text>)</xsl:text> - </fo:block> -</xsl:template> - -<!-- Determines if an object should be inserted as an fo:inline - or an fo:block. Used for indexterms --> -<xsl:template name="inline.or.block"> - <xsl:param name="parentnode" select=".."/> - - <xsl:variable name="parent" select="local-name($parentnode)"/> - - <xsl:variable name="block.parents" select="'|answer|appendix|appendixinfo|article|articleinfo|bibliodiv|bibliography|bibliographyinfo|blockinfo|blockquote|bookinfo|callout|caution|chapter|chapterinfo|dedication|example|figure|formalpara|funcsynopsisinfo|glossary|glossaryinfo|glossdef|glossdiv|glossentry|highlights|important|index|indexinfo|info|informalexample|informalfigure|informaltable|itemizedlist|legalnotice|listitem|msgexplan|msgtext|note|objectinfo|orderedlist|partinfo|partintro|preface|prefaceinfo|procedure|qandadiv|qandaset|question|refentry|refentryinfo|referenceinfo|refmeta|refmiscinfo|refsect1|refsect1info|refsect2|refsect2info|refsect3|refsect3info|refsection|refsectioninfo|refsynopsisdiv|refsynopsisdivinfo|revdescription|screeninfo|sect1|sect1info|sect2|sect2info|sect3|sect3info|sect4|sect4info|sect5|sect5info|section|sectioninfo|setindex|setindexinfo|setinfo|sidebar|sidebarinfo|simplesect|step|table|task|taskprerequisites|taskrelated|tasksummary|tip|variablelist|warning|'"/> - - <xsl:choose> - <xsl:when test="contains($parent, $block.parents)">fo:block</xsl:when> - <xsl:otherwise>fo:inline</xsl:otherwise> - </xsl:choose> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/info.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/info.xsl deleted file mode 100644 index 5bb00e2cf..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/info.xsl +++ /dev/null @@ -1,34 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- These templates define the "default behavior" for info - elements. Even if you don't process the *info wrappers, - some of these elements are needed because the elements are - processed from named templates that are called with modes. - Since modes aren't sticky, these rules apply. - (TODO: clarify this comment) --> - -<!-- ==================================================================== --> -<!-- called from named templates in a given mode --> - -<xsl:template match="corpauthor"> - <fo:inline> - <xsl:apply-templates/> - </fo:inline> -</xsl:template> - -<!-- ==================================================================== --> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/inline.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/inline.xsl deleted file mode 100644 index d398decda..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/inline.xsl +++ /dev/null @@ -1,1234 +0,0 @@ -<?xml version='1.0'?> -<!DOCTYPE xsl:stylesheet [ - <!ENTITY comment.block.parents "parent::answer|parent::appendix|parent::article|parent::bibliodiv| - parent::bibliography|parent::blockquote|parent::caution|parent::chapter| - parent::glossary|parent::glossdiv|parent::important|parent::index| - parent::indexdiv|parent::listitem|parent::note|parent::orderedlist| - parent::partintro|parent::preface|parent::procedure|parent::qandadiv| - parent::qandaset|parent::question|parent::refentry|parent::refnamediv| - parent::refsect1|parent::refsect2|parent::refsect3|parent::refsection| - parent::refsynopsisdiv|parent::sect1|parent::sect2|parent::sect3|parent::sect4| - parent::sect5|parent::section|parent::setindex|parent::sidebar| - parent::simplesect|parent::taskprerequisites|parent::taskrelated| - parent::tasksummary|parent::warning"> -]> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:xlink='http://www.w3.org/1999/xlink' - exclude-result-prefixes="xlink" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<xsl:template name="simple.xlink"> - <xsl:param name="node" select="."/> - <xsl:param name="content"> - <xsl:apply-templates/> - </xsl:param> - <xsl:param name="linkend" select="$node/@linkend"/> - <xsl:param name="xhref" select="$node/@xlink:href"/> - - <xsl:choose> - <xsl:when test="$xhref - and (not($node/@xlink:type) or - $node/@xlink:type='simple')"> - - <!-- Is it a local idref? --> - <xsl:variable name="is.idref"> - <xsl:choose> - <!-- if the href starts with # and does not contain an "(" --> - <!-- or if the href starts with #xpointer(id(, it's just an ID --> - <xsl:when test="starts-with($xhref,'#') - and (not(contains($xhref,'(')) - or starts-with($xhref, - '#xpointer(id('))">1</xsl:when> - <xsl:otherwise>0</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <!-- Is it an olink ? --> - <xsl:variable name="is.olink"> - <xsl:choose> - <!-- If xlink:role="http://docbook.org/xlink/role/olink" --> - <!-- and if the href contains # --> - <xsl:when test="contains($xhref,'#') and - @xlink:role = $xolink.role">1</xsl:when> - <xsl:otherwise>0</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$is.idref = 1"> - - <xsl:variable name="idref"> - <xsl:call-template name="xpointer.idref"> - <xsl:with-param name="xpointer" select="$xhref"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="targets" select="key('id',$idref)"/> - <xsl:variable name="target" select="$targets[1]"/> - - <xsl:call-template name="check.id.unique"> - <xsl:with-param name="linkend" select="$idref"/> - </xsl:call-template> - - <xsl:choose> - <xsl:when test="count($target) = 0"> - <xsl:message> - <xsl:text>XLink to nonexistent id: </xsl:text> - <xsl:value-of select="$idref"/> - </xsl:message> - <xsl:copy-of select="$content"/> - </xsl:when> - - <xsl:otherwise> - <fo:basic-link internal-destination="{$idref}"> - <xsl:copy-of select="$content"/> - </fo:basic-link> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - - <xsl:when test="$is.olink = 1"> - <xsl:call-template name="olink"> - <xsl:with-param name="content" select="$content"/> - </xsl:call-template> - </xsl:when> - - <!-- otherwise it's a URI --> - <xsl:otherwise> - <fo:basic-link external-destination="url({$xhref})"> - <xsl:copy-of select="$content"/> - </fo:basic-link> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - - <xsl:when test="$linkend"> - <xsl:variable name="targets" select="key('id',$linkend)"/> - <xsl:variable name="target" select="$targets[1]"/> - - <xsl:call-template name="check.id.unique"> - <xsl:with-param name="linkend" select="$linkend"/> - </xsl:call-template> - - <xsl:choose> - <xsl:when test="count($target) = 0"> - <xsl:message> - <xsl:text>XLink to nonexistent id: </xsl:text> - <xsl:value-of select="$linkend"/> - </xsl:message> - <xsl:copy-of select="$content"/> - </xsl:when> - - <xsl:otherwise> - <fo:basic-link internal-destination="{$linkend}"> - <xsl:copy-of select="$content"/> - </fo:basic-link> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - - <xsl:otherwise> - <xsl:copy-of select="$content"/> - </xsl:otherwise> - </xsl:choose> - -</xsl:template> - -<xsl:template name="inline.charseq"> - <xsl:param name="content"> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content"> - <xsl:apply-templates/> - </xsl:with-param> - </xsl:call-template> - </xsl:param> - - <xsl:choose> - <xsl:when test="@dir"> - <fo:inline> - <xsl:attribute name="direction"> - <xsl:choose> - <xsl:when test="@dir = 'ltr' or @dir = 'lro'">ltr</xsl:when> - <xsl:otherwise>rtl</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - <xsl:copy-of select="$content"/> - </fo:inline> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$content"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="inline.monoseq"> - <xsl:param name="content"> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content"> - <xsl:apply-templates/> - </xsl:with-param> - </xsl:call-template> - </xsl:param> - - <fo:inline xsl:use-attribute-sets="monospace.properties"> - <xsl:if test="@dir"> - <xsl:attribute name="direction"> - <xsl:choose> - <xsl:when test="@dir = 'ltr' or @dir = 'lro'">ltr</xsl:when> - <xsl:otherwise>rtl</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </xsl:if> - <xsl:copy-of select="$content"/> - </fo:inline> -</xsl:template> - -<xsl:template name="inline.boldseq"> - <xsl:param name="content"> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content"> - <xsl:apply-templates/> - </xsl:with-param> - </xsl:call-template> - </xsl:param> - - <fo:inline font-weight="bold"> - <xsl:if test="@dir"> - <xsl:attribute name="direction"> - <xsl:choose> - <xsl:when test="@dir = 'ltr' or @dir = 'lro'">ltr</xsl:when> - <xsl:otherwise>rtl</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </xsl:if> - <xsl:copy-of select="$content"/> - </fo:inline> -</xsl:template> - -<xsl:template name="inline.italicseq"> - <xsl:param name="content"> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content"> - <xsl:apply-templates/> - </xsl:with-param> - </xsl:call-template> - </xsl:param> - - <fo:inline font-style="italic"> - <xsl:call-template name="anchor"/> - <xsl:if test="@dir"> - <xsl:attribute name="direction"> - <xsl:choose> - <xsl:when test="@dir = 'ltr' or @dir = 'lro'">ltr</xsl:when> - <xsl:otherwise>rtl</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </xsl:if> - <xsl:copy-of select="$content"/> - </fo:inline> -</xsl:template> - -<xsl:template name="inline.boldmonoseq"> - <xsl:param name="content"> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content"> - <xsl:apply-templates/> - </xsl:with-param> - </xsl:call-template> - </xsl:param> - - <fo:inline font-weight="bold" xsl:use-attribute-sets="monospace.properties"> - <xsl:call-template name="anchor"/> - <xsl:if test="@dir"> - <xsl:attribute name="direction"> - <xsl:choose> - <xsl:when test="@dir = 'ltr' or @dir = 'lro'">ltr</xsl:when> - <xsl:otherwise>rtl</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </xsl:if> - <xsl:copy-of select="$content"/> - </fo:inline> -</xsl:template> - -<xsl:template name="inline.italicmonoseq"> - <xsl:param name="content"> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content"> - <xsl:apply-templates/> - </xsl:with-param> - </xsl:call-template> - </xsl:param> - - <fo:inline font-style="italic" xsl:use-attribute-sets="monospace.properties"> - <xsl:call-template name="anchor"/> - <xsl:if test="@dir"> - <xsl:attribute name="direction"> - <xsl:choose> - <xsl:when test="@dir = 'ltr' or @dir = 'lro'">ltr</xsl:when> - <xsl:otherwise>rtl</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </xsl:if> - <xsl:copy-of select="$content"/> - </fo:inline> -</xsl:template> - -<xsl:template name="inline.superscriptseq"> - <xsl:param name="content"> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content"> - <xsl:apply-templates/> - </xsl:with-param> - </xsl:call-template> - </xsl:param> - - <fo:inline xsl:use-attribute-sets="superscript.properties"> - <xsl:call-template name="anchor"/> - <xsl:if test="@dir"> - <xsl:attribute name="direction"> - <xsl:choose> - <xsl:when test="@dir = 'ltr' or @dir = 'lro'">ltr</xsl:when> - <xsl:otherwise>rtl</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </xsl:if> - <xsl:choose> - <xsl:when test="$fop.extensions != 0"> - <xsl:attribute name="vertical-align">super</xsl:attribute> - </xsl:when> - <xsl:otherwise> - <xsl:attribute name="baseline-shift">super</xsl:attribute> - </xsl:otherwise> - </xsl:choose> - <xsl:copy-of select="$content"/> - </fo:inline> -</xsl:template> - -<xsl:template name="inline.subscriptseq"> - <xsl:param name="content"> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content"> - <xsl:apply-templates/> - </xsl:with-param> - </xsl:call-template> - </xsl:param> - - <fo:inline xsl:use-attribute-sets="subscript.properties"> - <xsl:call-template name="anchor"/> - <xsl:if test="@dir"> - <xsl:attribute name="direction"> - <xsl:choose> - <xsl:when test="@dir = 'ltr' or @dir = 'lro'">ltr</xsl:when> - <xsl:otherwise>rtl</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </xsl:if> - <xsl:choose> - <xsl:when test="$fop.extensions != 0"> - <xsl:attribute name="vertical-align">sub</xsl:attribute> - </xsl:when> - <xsl:otherwise> - <xsl:attribute name="baseline-shift">sub</xsl:attribute> - </xsl:otherwise> - </xsl:choose> - <xsl:copy-of select="$content"/> - </fo:inline> -</xsl:template> - -<!-- ==================================================================== --> -<!-- some special cases --> - -<xsl:template match="author"> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content"> - <xsl:call-template name="person.name"/> - </xsl:with-param> - </xsl:call-template> -</xsl:template> - -<xsl:template match="editor"> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content"> - <xsl:call-template name="person.name"/> - </xsl:with-param> - </xsl:call-template> -</xsl:template> - -<xsl:template match="othercredit"> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content"> - <xsl:call-template name="person.name"/> - </xsl:with-param> - </xsl:call-template> -</xsl:template> - -<xsl:template match="authorinitials"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="accel"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="action"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="application"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="classname"> - <xsl:call-template name="inline.monoseq"/> -</xsl:template> - -<xsl:template match="exceptionname"> - <xsl:call-template name="inline.monoseq"/> -</xsl:template> - -<xsl:template match="interfacename"> - <xsl:call-template name="inline.monoseq"/> -</xsl:template> - -<xsl:template match="methodname"> - <xsl:call-template name="inline.monoseq"/> -</xsl:template> - -<xsl:template match="command"> - <xsl:call-template name="inline.boldseq"/> -</xsl:template> - -<xsl:template match="computeroutput"> - <xsl:call-template name="inline.monoseq"/> -</xsl:template> - -<xsl:template match="constant"> - <xsl:call-template name="inline.monoseq"/> -</xsl:template> - -<xsl:template match="database"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="date"> - <!-- should this support locale-specific formatting? how? --> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="errorcode"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="errorname"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="errortype"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="errortext"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="envar"> - <xsl:call-template name="inline.monoseq"/> -</xsl:template> - -<xsl:template match="filename"> - <xsl:call-template name="inline.monoseq"/> -</xsl:template> - -<xsl:template match="function"> - <xsl:choose> - <xsl:when test="$function.parens != '0' - and (parameter or function or replaceable)"> - <xsl:variable name="nodes" select="text()|*"/> - <xsl:call-template name="inline.monoseq"> - <xsl:with-param name="content"> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content"> - <xsl:apply-templates select="$nodes[1]"/> - </xsl:with-param> - </xsl:call-template> - </xsl:with-param> - </xsl:call-template> - <xsl:text>(</xsl:text> - <xsl:apply-templates select="$nodes[position()>1]"/> - <xsl:text>)</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="inline.monoseq"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="function/parameter" priority="2"> - <xsl:call-template name="inline.italicmonoseq"/> - <xsl:if test="following-sibling::*"> - <xsl:text>, </xsl:text> - </xsl:if> -</xsl:template> - -<xsl:template match="function/replaceable" priority="2"> - <xsl:call-template name="inline.italicmonoseq"/> - <xsl:if test="following-sibling::*"> - <xsl:text>, </xsl:text> - </xsl:if> -</xsl:template> - -<xsl:template match="guibutton"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="guiicon"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="guilabel"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="guimenu"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="guimenuitem"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="guisubmenu"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="hardware"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="interface"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="interfacedefinition"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="keycap"> - <xsl:call-template name="inline.boldseq"/> -</xsl:template> - -<xsl:template match="keycode"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="keysym"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="literal"> - <xsl:call-template name="inline.monoseq"/> -</xsl:template> - -<xsl:template match="code"> - <xsl:call-template name="inline.monoseq"/> -</xsl:template> - -<xsl:template match="medialabel"> - <xsl:call-template name="inline.italicseq"/> -</xsl:template> - -<xsl:template match="shortcut"> - <xsl:call-template name="inline.boldseq"/> -</xsl:template> - -<xsl:template match="mousebutton"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="option"> - <xsl:call-template name="inline.monoseq"/> -</xsl:template> - -<xsl:template match="package"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="parameter"> - <xsl:call-template name="inline.italicmonoseq"/> -</xsl:template> - -<xsl:template match="property"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="prompt"> - <xsl:call-template name="inline.monoseq"/> -</xsl:template> - -<xsl:template match="replaceable"> - <xsl:call-template name="inline.italicmonoseq"/> -</xsl:template> - -<xsl:template match="returnvalue"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="structfield"> - <xsl:call-template name="inline.italicmonoseq"/> -</xsl:template> - -<xsl:template match="structname"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="symbol"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="systemitem"> - <xsl:call-template name="inline.monoseq"/> -</xsl:template> - -<xsl:template match="token"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="type"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="userinput"> - <xsl:call-template name="inline.boldmonoseq"/> -</xsl:template> - -<xsl:template match="abbrev"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="acronym"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="citerefentry"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="citetitle"> - <xsl:choose> - <xsl:when test="@pubwork = 'article'"> - <xsl:call-template name="gentext.startquote"/> - <xsl:call-template name="inline.charseq"/> - <xsl:call-template name="gentext.endquote"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="inline.italicseq"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="emphasis"> - <xsl:variable name="depth"> - <xsl:call-template name="dot.count"> - <xsl:with-param name="string"> - <xsl:number level="multiple"/> - </xsl:with-param> - </xsl:call-template> - </xsl:variable> - - <xsl:choose> - <xsl:when test="@role='bold' or @role='strong'"> - <xsl:call-template name="inline.boldseq"/> - </xsl:when> - <xsl:when test="@role='underline'"> - <fo:inline text-decoration="underline"> - <xsl:call-template name="inline.charseq"/> - </fo:inline> - </xsl:when> - <xsl:when test="@role='strikethrough'"> - <fo:inline text-decoration="line-through"> - <xsl:call-template name="inline.charseq"/> - </fo:inline> - </xsl:when> - <xsl:otherwise> - <xsl:choose> - <xsl:when test="$depth mod 2 = 1"> - <fo:inline font-style="normal"> - <xsl:apply-templates/> - </fo:inline> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="inline.italicseq"/> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="foreignphrase"> - <xsl:call-template name="inline.italicseq"/> -</xsl:template> - -<xsl:template match="markup"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="phrase"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="quote"> - <xsl:variable name="depth"> - <xsl:call-template name="dot.count"> - <xsl:with-param name="string"><xsl:number level="multiple"/></xsl:with-param> - </xsl:call-template> - </xsl:variable> - <xsl:choose> - <xsl:when test="$depth mod 2 = 0"> - <xsl:call-template name="gentext.startquote"/> - <xsl:call-template name="inline.charseq"/> - <xsl:call-template name="gentext.endquote"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="gentext.nestedstartquote"/> - <xsl:call-template name="inline.charseq"/> - <xsl:call-template name="gentext.nestedendquote"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="varname"> - <xsl:call-template name="inline.monoseq"/> -</xsl:template> - -<xsl:template match="wordasword"> - <xsl:call-template name="inline.italicseq"/> -</xsl:template> - -<xsl:template match="lineannotation"> - <fo:inline font-style="italic"> - <xsl:call-template name="inline.charseq"/> - </fo:inline> -</xsl:template> - -<xsl:template match="superscript"> - <xsl:call-template name="inline.superscriptseq"/> -</xsl:template> - -<xsl:template match="subscript"> - <xsl:call-template name="inline.subscriptseq"/> -</xsl:template> - -<xsl:template match="trademark"> - <xsl:call-template name="inline.charseq"/> - <xsl:choose> - <xsl:when test="@class = 'copyright' - or @class = 'registered'"> - <xsl:call-template name="dingbat"> - <xsl:with-param name="dingbat" select="@class"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="@class = 'service'"> - <xsl:call-template name="inline.superscriptseq"> - <xsl:with-param name="content" select="'SM'"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="dingbat"> - <xsl:with-param name="dingbat" select="'trademark'"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="firstterm"> - <xsl:call-template name="glossterm"> - <xsl:with-param name="firstterm" select="1"/> - </xsl:call-template> -</xsl:template> - -<xsl:template match="glossterm" name="glossterm"> - <xsl:param name="firstterm" select="0"/> - - <xsl:choose> - <xsl:when test="($firstterm.only.link = 0 or $firstterm = 1) and @linkend"> - <xsl:variable name="targets" select="key('id',@linkend)"/> - <xsl:variable name="target" select="$targets[1]"/> - - <xsl:choose> - <xsl:when test="$target"> - <fo:basic-link internal-destination="{@linkend}" - xsl:use-attribute-sets="xref.properties"> - <xsl:call-template name="inline.italicseq"/> - </fo:basic-link> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="inline.italicseq"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - - <xsl:when test="not(@linkend) - and ($firstterm.only.link = 0 or $firstterm = 1) - and ($glossterm.auto.link != 0) - and $glossary.collection != ''"> - <xsl:variable name="term"> - <xsl:choose> - <xsl:when test="@baseform"><xsl:value-of select="@baseform"/></xsl:when> - <xsl:otherwise><xsl:value-of select="."/></xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:variable name="cterm" - select="(document($glossary.collection,.)//glossentry[glossterm=$term])[1]"/> - - <xsl:choose> - <xsl:when test="not($cterm)"> - <xsl:message> - <xsl:text>There's no entry for </xsl:text> - <xsl:value-of select="$term"/> - <xsl:text> in </xsl:text> - <xsl:value-of select="$glossary.collection"/> - </xsl:message> - <xsl:call-template name="inline.italicseq"/> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="id"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$cterm"/> - </xsl:call-template> - </xsl:variable> - <fo:basic-link internal-destination="{$id}" - xsl:use-attribute-sets="xref.properties"> - <xsl:call-template name="inline.italicseq"/> - </fo:basic-link> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - - <xsl:when test="not(@linkend) - and ($firstterm.only.link = 0 or $firstterm = 1) - and $glossterm.auto.link != 0"> - <xsl:variable name="term"> - <xsl:choose> - <xsl:when test="@baseform"> - <xsl:value-of select="@baseform"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="."/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="targets" - select="//glossentry[glossterm=$term or glossterm/@baseform=$term]"/> - - <xsl:variable name="target" select="$targets[1]"/> - - <xsl:choose> - <xsl:when test="count($targets)=0"> - <xsl:message> - <xsl:text>Error: no glossentry for glossterm: </xsl:text> - <xsl:value-of select="."/> - <xsl:text>.</xsl:text> - </xsl:message> - <xsl:call-template name="inline.italicseq"/> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="termid"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$target"/> - </xsl:call-template> - </xsl:variable> - - <fo:basic-link internal-destination="{$termid}" - xsl:use-attribute-sets="xref.properties"> - <xsl:call-template name="inline.charseq"/> - </fo:basic-link> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="inline.italicseq"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="termdef"> - <fo:inline> - <xsl:call-template name="gentext.template"> - <xsl:with-param name="context" select="'termdef'"/> - <xsl:with-param name="name" select="'prefix'"/> - </xsl:call-template> - <xsl:apply-templates/> - <xsl:call-template name="gentext.template"> - <xsl:with-param name="context" select="'termdef'"/> - <xsl:with-param name="name" select="'suffix'"/> - </xsl:call-template> - </fo:inline> -</xsl:template> - -<xsl:template match="sgmltag|tag"> - <xsl:variable name="class"> - <xsl:choose> - <xsl:when test="@class"> - <xsl:value-of select="@class"/> - </xsl:when> - <xsl:otherwise>element</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$class='attribute'"> - <xsl:call-template name="inline.monoseq"/> - </xsl:when> - <xsl:when test="$class='attvalue'"> - <xsl:call-template name="inline.monoseq"/> - </xsl:when> - <xsl:when test="$class='element'"> - <xsl:call-template name="inline.monoseq"/> - </xsl:when> - <xsl:when test="$class='endtag'"> - <xsl:call-template name="inline.monoseq"> - <xsl:with-param name="content"> - <xsl:text></</xsl:text> - <xsl:apply-templates/> - <xsl:text>></xsl:text> - </xsl:with-param> - </xsl:call-template> - </xsl:when> - <xsl:when test="$class='genentity'"> - <xsl:call-template name="inline.monoseq"> - <xsl:with-param name="content"> - <xsl:text>&</xsl:text> - <xsl:apply-templates/> - <xsl:text>;</xsl:text> - </xsl:with-param> - </xsl:call-template> - </xsl:when> - <xsl:when test="$class='numcharref'"> - <xsl:call-template name="inline.monoseq"> - <xsl:with-param name="content"> - <xsl:text>&#</xsl:text> - <xsl:apply-templates/> - <xsl:text>;</xsl:text> - </xsl:with-param> - </xsl:call-template> - </xsl:when> - <xsl:when test="$class='paramentity'"> - <xsl:call-template name="inline.monoseq"> - <xsl:with-param name="content"> - <xsl:text>%</xsl:text> - <xsl:apply-templates/> - <xsl:text>;</xsl:text> - </xsl:with-param> - </xsl:call-template> - </xsl:when> - <xsl:when test="$class='pi'"> - <xsl:call-template name="inline.monoseq"> - <xsl:with-param name="content"> - <xsl:text><?</xsl:text> - <xsl:apply-templates/> - <xsl:text>></xsl:text> - </xsl:with-param> - </xsl:call-template> - </xsl:when> - <xsl:when test="$class='xmlpi'"> - <xsl:call-template name="inline.monoseq"> - <xsl:with-param name="content"> - <xsl:text><?</xsl:text> - <xsl:apply-templates/> - <xsl:text>?></xsl:text> - </xsl:with-param> - </xsl:call-template> - </xsl:when> - <xsl:when test="$class='starttag'"> - <xsl:call-template name="inline.monoseq"> - <xsl:with-param name="content"> - <xsl:text><</xsl:text> - <xsl:apply-templates/> - <xsl:text>></xsl:text> - </xsl:with-param> - </xsl:call-template> - </xsl:when> - <xsl:when test="$class='emptytag'"> - <xsl:call-template name="inline.monoseq"> - <xsl:with-param name="content"> - <xsl:text><</xsl:text> - <xsl:apply-templates/> - <xsl:text>/></xsl:text> - </xsl:with-param> - </xsl:call-template> - </xsl:when> - <xsl:when test="$class='sgmlcomment' or $class='comment'"> - <xsl:call-template name="inline.monoseq"> - <xsl:with-param name="content"> - <xsl:text><!--</xsl:text> - <xsl:apply-templates/> - <xsl:text>--></xsl:text> - </xsl:with-param> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="inline.charseq"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="email"> - <xsl:call-template name="inline.monoseq"> - <xsl:with-param name="content"> - <fo:inline keep-together.within-line="always" hyphenate="false"> - <xsl:if test="not($email.delimiters.enabled = 0)"> - <xsl:text><</xsl:text> - </xsl:if> - <xsl:apply-templates/> - <xsl:if test="not($email.delimiters.enabled = 0)"> - <xsl:text>></xsl:text> - </xsl:if> - </fo:inline> - </xsl:with-param> - </xsl:call-template> -</xsl:template> - -<xsl:template match="keycombo"> - <xsl:variable name="action" select="@action"/> - <xsl:variable name="joinchar"> - <xsl:choose> - <xsl:when test="$action='seq'"><xsl:text> </xsl:text></xsl:when> - <xsl:when test="$action='simul'">+</xsl:when> - <xsl:when test="$action='press'">-</xsl:when> - <xsl:when test="$action='click'">-</xsl:when> - <xsl:when test="$action='double-click'">-</xsl:when> - <xsl:when test="$action='other'"></xsl:when> - <xsl:otherwise>+</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:for-each select="*"> - <xsl:if test="position()>1"><xsl:value-of select="$joinchar"/></xsl:if> - <xsl:apply-templates select="."/> - </xsl:for-each> -</xsl:template> - -<xsl:template match="uri"> - <xsl:call-template name="inline.monoseq"/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="menuchoice"> - <xsl:variable name="shortcut" select="./shortcut"/> - <xsl:call-template name="process.menuchoice"/> - <xsl:if test="$shortcut"> - <xsl:text> (</xsl:text> - <xsl:apply-templates select="$shortcut"/> - <xsl:text>)</xsl:text> - </xsl:if> -</xsl:template> - -<xsl:template name="process.menuchoice"> - <xsl:param name="nodelist" select="guibutton|guiicon|guilabel|guimenu|guimenuitem|guisubmenu|interface"/><!-- not(shortcut) --> - <xsl:param name="count" select="1"/> - - <xsl:variable name="mm.separator"> - <xsl:choose> - <xsl:when test="($fop.extensions != 0 or $fop1.extensions != 0 ) and - contains($menuchoice.menu.separator, '→')"> - <fo:inline font-family="Symbol"> - <xsl:copy-of select="$menuchoice.menu.separator"/> - </fo:inline> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$menuchoice.menu.separator"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$count>count($nodelist)"></xsl:when> - <xsl:when test="$count=1"> - <xsl:apply-templates select="$nodelist[$count=position()]"/> - <xsl:call-template name="process.menuchoice"> - <xsl:with-param name="nodelist" select="$nodelist"/> - <xsl:with-param name="count" select="$count+1"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="node" select="$nodelist[$count=position()]"/> - <xsl:choose> - <xsl:when test="local-name($node)='guimenuitem' - or local-name($node)='guisubmenu'"> - <xsl:copy-of select="$mm.separator"/> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$menuchoice.separator"/> - </xsl:otherwise> - </xsl:choose> - <xsl:apply-templates select="$node"/> - <xsl:call-template name="process.menuchoice"> - <xsl:with-param name="nodelist" select="$nodelist"/> - <xsl:with-param name="count" select="$count+1"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="optional"> - <xsl:value-of select="$arg.choice.opt.open.str"/> - <xsl:call-template name="inline.charseq"/> - <xsl:value-of select="$arg.choice.opt.close.str"/> -</xsl:template> - -<xsl:template match="citation"> - <!-- todo: integrate with bibliography collection --> - <xsl:variable name="targets" select="(//biblioentry | //bibliomixed)[abbrev = string(current())]"/> - <xsl:variable name="target" select="$targets[1]"/> - - <xsl:choose> - <!-- try automatic linking based on match to abbrev --> - <xsl:when test="$target and not(xref) and not(link)"> - - <xsl:text>[</xsl:text> - <fo:basic-link> - <xsl:attribute name="internal-destination"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$target"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:choose> - <xsl:when test="$bibliography.numbered != 0"> - <xsl:apply-templates select="$target" mode="citation"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="inline.charseq"/> - </xsl:otherwise> - </xsl:choose> - - </fo:basic-link> - <xsl:text>]</xsl:text> - </xsl:when> - - <xsl:otherwise> - <xsl:text>[</xsl:text> - <xsl:call-template name="inline.charseq"/> - <xsl:text>]</xsl:text> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="biblioentry|bibliomixed" mode="citation"> - <xsl:number from="bibliography" count="biblioentry|bibliomixed" - level="any" format="1"/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="comment[&comment.block.parents;]|remark[&comment.block.parents;]"> - <xsl:if test="$show.comments != 0"> - <fo:block font-style="italic"> - <xsl:call-template name="inline.charseq"/> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="comment|remark"> - <xsl:if test="$show.comments != 0"> - <fo:inline font-style="italic"> - <xsl:call-template name="inline.charseq"/> - </fo:inline> - </xsl:if> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="productname"> - <xsl:call-template name="inline.charseq"/> - <xsl:if test="@class"> - <xsl:call-template name="dingbat"> - <xsl:with-param name="dingbat" select="@class"/> - </xsl:call-template> - </xsl:if> -</xsl:template> - -<xsl:template match="productnumber"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="pob|street|city|state|postcode|country|otheraddr"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="phone|fax"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<!-- in Addresses, for example --> -<xsl:template match="honorific|firstname|surname|lineage|othername"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="person"> - <xsl:apply-templates select="personname"/> -</xsl:template> - -<xsl:template match="personname"> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content"> - <xsl:call-template name="person.name"/> - </xsl:with-param> - </xsl:call-template> -</xsl:template> - -<xsl:template match="jobtitle"> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content"> - <xsl:apply-templates/> - </xsl:with-param> - </xsl:call-template> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="org"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="orgname"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="orgdiv"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="affiliation"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="beginpage"> - <!-- does nothing; this *is not* markup to force a page break. --> -</xsl:template> - -</xsl:stylesheet> - diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/keywords.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/keywords.xsl deleted file mode 100644 index 6e4b156a8..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/keywords.xsl +++ /dev/null @@ -1,21 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<xsl:template match="keywordset"></xsl:template> -<xsl:template match="subjectset"></xsl:template> - -<!-- ==================================================================== --> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/lists.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/lists.xsl deleted file mode 100644 index 1ee666eaf..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/lists.xsl +++ /dev/null @@ -1,1287 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<xsl:template match="itemizedlist"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="pi-label-width"> - <xsl:call-template name="pi.dbfo_label-width"/> - </xsl:variable> - - <xsl:variable name="label-width"> - <xsl:choose> - <xsl:when test="$pi-label-width = ''"> - <xsl:value-of select="$itemizedlist.label.width"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$pi-label-width"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:if test="title"> - <xsl:apply-templates select="title" mode="list.title.mode"/> - </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)]"/> - - <xsl:variable name="content"> - <xsl:apply-templates - select="listitem - |comment()[preceding-sibling::listitem] - |processing-instruction()[preceding-sibling::listitem]"/> - </xsl:variable> - - <!-- nested lists don't add extra list-block spacing --> - <xsl:choose> - <xsl:when test="ancestor::listitem"> - <fo:list-block id="{$id}" xsl:use-attribute-sets="itemizedlist.properties"> - <xsl:attribute name="provisional-distance-between-starts"> - <xsl:value-of select="$label-width"/> - </xsl:attribute> - <xsl:copy-of select="$content"/> - </fo:list-block> - </xsl:when> - <xsl:otherwise> - <fo:list-block id="{$id}" xsl:use-attribute-sets="list.block.spacing itemizedlist.properties"> - <xsl:attribute name="provisional-distance-between-starts"> - <xsl:value-of select="$label-width"/> - </xsl:attribute> - <xsl:copy-of select="$content"/> - </fo:list-block> - </xsl:otherwise> - </xsl:choose> - -</xsl:template> - -<xsl:template match="itemizedlist/title|orderedlist/title"> - <!--nop--> -</xsl:template> - -<xsl:template match="variablelist/title" mode="vl.as.list"> - <!--nop--> -</xsl:template> - -<xsl:template match="variablelist/title" mode="vl.as.blocks"> - <!--nop--> -</xsl:template> - -<xsl:template match="itemizedlist/titleabbrev|orderedlist/titleabbrev"> - <!--nop--> -</xsl:template> - -<xsl:template match="procedure/titleabbrev"> - <!--nop--> -</xsl:template> - -<xsl:template match="variablelist/titleabbrev" mode="vl.as.list"> - <!--nop--> -</xsl:template> - -<xsl:template match="variablelist/titleabbrev" mode="vl.as.blocks"> - <!--nop--> -</xsl:template> - -<xsl:template match="itemizedlist/listitem"> - <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable> - - <xsl:variable name="item.contents"> - <fo:list-item-label end-indent="label-end()" xsl:use-attribute-sets="itemizedlist.label.properties"> - <fo:block> - <xsl:call-template name="itemizedlist.label.markup"> - <xsl:with-param name="itemsymbol"> - <xsl:call-template name="list.itemsymbol"> - <xsl:with-param name="node" select="parent::itemizedlist"/> - </xsl:call-template> - </xsl:with-param> - </xsl:call-template> - </fo:block> - </fo:list-item-label> - <fo:list-item-body start-indent="body-start()"> - <xsl:choose> - <!-- * work around broken passivetex list-item-body rendering --> - <xsl:when test="$passivetex.extensions = '1'"> - <xsl:apply-templates/> - </xsl:when> - <xsl:otherwise> - <fo:block> - <xsl:apply-templates/> - </fo:block> - </xsl:otherwise> - </xsl:choose> - </fo:list-item-body> - </xsl:variable> - - <xsl:choose> - <xsl:when test="parent::*/@spacing = 'compact'"> - <fo:list-item id="{$id}" xsl:use-attribute-sets="compact.list.item.spacing"> - <xsl:copy-of select="$item.contents"/> - </fo:list-item> - </xsl:when> - <xsl:otherwise> - <fo:list-item id="{$id}" xsl:use-attribute-sets="list.item.spacing"> - <xsl:copy-of select="$item.contents"/> - </fo:list-item> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="itemizedlist.label.markup"> - <xsl:param name="itemsymbol" select="'disc'"/> - - <xsl:choose> - <xsl:when test="$itemsymbol='none'"></xsl:when> - <xsl:when test="$itemsymbol='disc'">•</xsl:when> - <xsl:when test="$itemsymbol='bullet'">•</xsl:when> - <xsl:when test="$itemsymbol='endash'">–</xsl:when> - <xsl:when test="$itemsymbol='emdash'">—</xsl:when> - <!-- Some of these may work in your XSL-FO processor and fonts --> - <!-- - <xsl:when test="$itemsymbol='square'">■</xsl:when> - <xsl:when test="$itemsymbol='box'">■</xsl:when> - <xsl:when test="$itemsymbol='smallblacksquare'">▪</xsl:when> - <xsl:when test="$itemsymbol='circle'">○</xsl:when> - <xsl:when test="$itemsymbol='opencircle'">○</xsl:when> - <xsl:when test="$itemsymbol='whitesquare'">□</xsl:when> - <xsl:when test="$itemsymbol='smallwhitesquare'">▫</xsl:when> - <xsl:when test="$itemsymbol='round'">●</xsl:when> - <xsl:when test="$itemsymbol='blackcircle'">●</xsl:when> - <xsl:when test="$itemsymbol='whitebullet'">◦</xsl:when> - <xsl:when test="$itemsymbol='triangle'">‣</xsl:when> - <xsl:when test="$itemsymbol='point'">›</xsl:when> - <xsl:when test="$itemsymbol='hand'"><fo:inline - font-family="Wingdings 2">A</fo:inline></xsl:when> - --> - <xsl:otherwise>•</xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="orderedlist"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="pi-label-width"> - <xsl:call-template name="pi.dbfo_label-width"/> - </xsl:variable> - - <xsl:variable name="label-width"> - <xsl:choose> - <xsl:when test="$pi-label-width = ''"> - <xsl:value-of select="$orderedlist.label.width"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$pi-label-width"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:if test="title"> - <xsl:apply-templates select="title" mode="list.title.mode"/> - </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)]"/> - - <xsl:variable name="content"> - <xsl:apply-templates - select="listitem - |comment()[preceding-sibling::listitem] - |processing-instruction()[preceding-sibling::listitem]"/> - </xsl:variable> - - <!-- nested lists don't add extra list-block spacing --> - <xsl:choose> - <xsl:when test="ancestor::listitem"> - <fo:list-block id="{$id}" xsl:use-attribute-sets="orderedlist.properties"> - <xsl:attribute name="provisional-distance-between-starts"> - <xsl:value-of select="$label-width"/> - </xsl:attribute> - <xsl:copy-of select="$content"/> - </fo:list-block> - </xsl:when> - <xsl:otherwise> - <fo:list-block id="{$id}" xsl:use-attribute-sets="list.block.spacing orderedlist.properties"> - <xsl:attribute name="provisional-distance-between-starts"> - <xsl:value-of select="$label-width"/> - </xsl:attribute> - <xsl:copy-of select="$content"/> - </fo:list-block> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="orderedlist/listitem" mode="item-number"> - <xsl:variable name="numeration"> - <xsl:call-template name="list.numeration"> - <xsl:with-param name="node" select="parent::orderedlist"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="type"> - <xsl:choose> - <xsl:when test="$numeration='arabic'">1.</xsl:when> - <xsl:when test="$numeration='loweralpha'">a.</xsl:when> - <xsl:when test="$numeration='lowerroman'">i.</xsl:when> - <xsl:when test="$numeration='upperalpha'">A.</xsl:when> - <xsl:when test="$numeration='upperroman'">I.</xsl:when> - <!-- What!? This should never happen --> - <xsl:otherwise> - <xsl:message> - <xsl:text>Unexpected numeration: </xsl:text> - <xsl:value-of select="$numeration"/> - </xsl:message> - <xsl:value-of select="1."/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="item-number"> - <xsl:call-template name="orderedlist-item-number"/> - </xsl:variable> - - <xsl:if test="parent::orderedlist/@inheritnum='inherit' - and ancestor::listitem[parent::orderedlist]"> - <xsl:apply-templates select="ancestor::listitem[parent::orderedlist][1]" - mode="item-number"/> - </xsl:if> - - <xsl:number value="$item-number" format="{$type}"/> -</xsl:template> - -<xsl:template match="orderedlist/listitem"> - <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable> - - <xsl:variable name="item.contents"> - <fo:list-item-label end-indent="label-end()" xsl:use-attribute-sets="orderedlist.label.properties"> - <fo:block> - <xsl:apply-templates select="." mode="item-number"/> - </fo:block> - </fo:list-item-label> - <fo:list-item-body start-indent="body-start()"> - <fo:block> - <xsl:apply-templates/> - </fo:block> - </fo:list-item-body> - </xsl:variable> - - <xsl:choose> - <xsl:when test="parent::*/@spacing = 'compact'"> - <fo:list-item id="{$id}" xsl:use-attribute-sets="compact.list.item.spacing"> - <xsl:copy-of select="$item.contents"/> - </fo:list-item> - </xsl:when> - <xsl:otherwise> - <fo:list-item id="{$id}" xsl:use-attribute-sets="list.item.spacing"> - <xsl:copy-of select="$item.contents"/> - </fo:list-item> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="listitem/*[1][local-name()='para' or - local-name()='simpara' or - local-name()='formalpara'] - |glossdef/*[1][local-name()='para' or - local-name()='simpara' or - local-name()='formalpara'] - |step/*[1][local-name()='para' or - local-name()='simpara' or - local-name()='formalpara'] - |callout/*[1][local-name()='para' or - local-name()='simpara' or - local-name()='formalpara']" - priority="2"> - <fo:block> - <xsl:call-template name="anchor"/> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="variablelist"> - <xsl:variable name="presentation"> - <xsl:call-template name="pi.dbfo_list-presentation"/> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$presentation = 'list'"> - <xsl:apply-templates select="." mode="vl.as.list"/> - </xsl:when> - <xsl:when test="$presentation = 'blocks'"> - <xsl:apply-templates select="." mode="vl.as.blocks"/> - </xsl:when> - <xsl:when test="$variablelist.as.blocks != 0"> - <xsl:apply-templates select="." mode="vl.as.blocks"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="." mode="vl.as.list"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="variablelist" mode="vl.as.list"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="term-width"> - <xsl:call-template name="pi.dbfo_term-width"/> - </xsl:variable> - - <xsl:variable name="termlength"> - <xsl:choose> - <xsl:when test="$term-width != ''"> - <xsl:value-of select="$term-width"/> - </xsl:when> - <xsl:when test="@termlength"> - <xsl:variable name="termlength.is.number"> - <xsl:value-of select="@termlength + 0"/> - </xsl:variable> - <xsl:choose> - <xsl:when test="string($termlength.is.number) = 'NaN'"> - <!-- if the term length isn't just a number, assume it's a measurement --> - <xsl:value-of select="@termlength"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="@termlength"/> - <xsl:choose> - <!-- workaround for passivetex lack of support for non-constant expressions --> - <xsl:when test="$passivetex.extensions != 0"> - <xsl:text>em</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text>em * 0.60</xsl:text> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="longest.term"> - <xsl:with-param name="terms" select="varlistentry/term"/> - <xsl:with-param name="maxlength" select="$variablelist.max.termlength"/> - </xsl:call-template> - <xsl:choose> - <!-- workaround for passivetex lack of support for non-constant expressions --> - <xsl:when test="$passivetex.extensions != 0"> - <xsl:text>em</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text>em * 0.60</xsl:text> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - -<!-- - <xsl:message> - <xsl:text>term width: </xsl:text> - <xsl:value-of select="$termlength"/> - </xsl:message> ---> - - <xsl:variable name="label-separation">1em</xsl:variable> - <xsl:variable name="distance-between-starts"> - <xsl:choose> - <!-- workaround for passivetex lack of support for non-constant expressions --> - <xsl:when test="$passivetex.extensions != 0"> - <xsl:value-of select="$termlength"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$termlength"/> - <xsl:text>+</xsl:text> - <xsl:value-of select="$label-separation"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:if test="title"> - <xsl:apply-templates select="title" mode="list.title.mode"/> - </xsl:if> - - <!-- Preserve order of PIs and comments --> - <xsl:apply-templates - select="*[not(self::varlistentry - or self::title - or self::titleabbrev)] - |comment()[not(preceding-sibling::varlistentry)] - |processing-instruction()[not(preceding-sibling::varlistentry)]"/> - - <xsl:variable name="content"> - <xsl:apply-templates mode="vl.as.list" - select="varlistentry - |comment()[preceding-sibling::varlistentry] - |processing-instruction()[preceding-sibling::varlistentry]"/> - </xsl:variable> - - <!-- nested lists don't add extra list-block spacing --> - <xsl:choose> - <xsl:when test="ancestor::listitem"> - <fo:list-block id="{$id}" - provisional-distance-between-starts= - "{$distance-between-starts}" - provisional-label-separation="{$label-separation}"> - <xsl:copy-of select="$content"/> - </fo:list-block> - </xsl:when> - <xsl:otherwise> - <fo:list-block id="{$id}" - provisional-distance-between-starts= - "{$distance-between-starts}" - provisional-label-separation="{$label-separation}" - xsl:use-attribute-sets="list.block.spacing"> - <xsl:copy-of select="$content"/> - </fo:list-block> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="longest.term"> - <xsl:param name="longest" select="0"/> - <xsl:param name="terms" select="."/> - <xsl:param name="maxlength" select="-1"/> - - <!-- Process out any indexterms in the term --> - <xsl:variable name="term.text"> - <xsl:apply-templates select="$terms[1]"/> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$longest > $maxlength and $maxlength > 0"> - <xsl:value-of select="$maxlength"/> - </xsl:when> - <xsl:when test="not($terms)"> - <xsl:value-of select="$longest"/> - </xsl:when> - <xsl:when test="string-length($term.text) > $longest"> - <xsl:call-template name="longest.term"> - <xsl:with-param name="longest" - select="string-length($term.text)"/> - <xsl:with-param name="maxlength" select="$maxlength"/> - <xsl:with-param name="terms" select="$terms[position() > 1]"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="longest.term"> - <xsl:with-param name="longest" select="$longest"/> - <xsl:with-param name="maxlength" select="$maxlength"/> - <xsl:with-param name="terms" select="$terms[position() > 1]"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="varlistentry" mode="vl.as.list"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <xsl:variable name="item.contents"> - <fo:list-item-label end-indent="label-end()" text-align="start"> - <fo:block> - <xsl:apply-templates select="term"/> - </fo:block> - </fo:list-item-label> - <fo:list-item-body start-indent="body-start()"> - <fo:block> - <xsl:apply-templates select="listitem"/> - </fo:block> - </fo:list-item-body> - </xsl:variable> - - <xsl:choose> - <xsl:when test="parent::*/@spacing = 'compact'"> - <fo:list-item id="{$id}" - xsl:use-attribute-sets="compact.list.item.spacing"> - <xsl:copy-of select="$item.contents"/> - </fo:list-item> - </xsl:when> - <xsl:otherwise> - <fo:list-item id="{$id}" xsl:use-attribute-sets="list.item.spacing"> - <xsl:copy-of select="$item.contents"/> - </fo:list-item> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - - -<xsl:template match="variablelist" mode="vl.as.blocks"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <!-- termlength is irrelevant --> - - <xsl:if test="title"> - <xsl:apply-templates select="title" mode="list.title.mode"/> - </xsl:if> - - <!-- Preserve order of PIs and comments --> - <xsl:apply-templates - select="*[not(self::varlistentry - or self::title - or self::titleabbrev)] - |comment()[not(preceding-sibling::varlistentry)] - |processing-instruction()[not(preceding-sibling::varlistentry)]"/> - - <xsl:variable name="content"> - <xsl:apply-templates mode="vl.as.blocks" - select="varlistentry - |comment()[preceding-sibling::varlistentry] - |processing-instruction()[preceding-sibling::varlistentry]"/> - </xsl:variable> - - <!-- nested lists don't add extra list-block spacing --> - <xsl:choose> - <xsl:when test="ancestor::listitem"> - <fo:block id="{$id}"> - <xsl:copy-of select="$content"/> - </fo:block> - </xsl:when> - <xsl:otherwise> - <fo:block id="{$id}" xsl:use-attribute-sets="list.block.spacing"> - <xsl:copy-of select="$content"/> - </fo:block> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="varlistentry" mode="vl.as.blocks"> - <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable> - - <fo:block id="{$id}" xsl:use-attribute-sets="list.item.spacing" - keep-together.within-column="auto" - keep-with-next.within-column="always"> - <xsl:apply-templates select="term"/> - </fo:block> - - <fo:block margin-left="0.25in"> - <xsl:apply-templates select="listitem"/> - </fo:block> -</xsl:template> - -<xsl:template match="varlistentry/term"> - <fo:inline> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content"> - <xsl:apply-templates/> - </xsl:with-param> - </xsl:call-template> - </fo:inline> - <xsl:choose> - <xsl:when test="not(following-sibling::term)"/> <!-- do nothing --> - <xsl:otherwise> - <!-- * if we have multiple terms in the same varlistentry, generate --> - <!-- * a separator (", " by default) and/or an additional line --> - <!-- * break after each one except the last --> - <fo:inline><xsl:value-of select="$variablelist.term.separator"/></fo:inline> - <xsl:if test="not($variablelist.term.break.after = '0')"> - <fo:block/> - </xsl:if> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="varlistentry/listitem"> - <xsl:apply-templates/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="title" mode="list.title.mode"> - <xsl:call-template name="formal.object.heading"> - <xsl:with-param name="object" select=".."/> - </xsl:call-template> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="simplelist|simplelist[@type='vert']"> - <!-- with no type specified, the default is 'vert' --> - - <xsl:variable name="explicit.table.width"> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" - select="processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'list-width'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="table.width"> - <xsl:choose> - <xsl:when test="$explicit.table.width != ''"> - <xsl:value-of select="$explicit.table.width"/> - </xsl:when> - <xsl:when test="$default.table.width = ''"> - <xsl:text>100%</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$default.table.width"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <fo:table xsl:use-attribute-sets="normal.para.spacing"> - - <xsl:choose> - <xsl:when test="$axf.extensions != 0 or $xep.extensions != 0"> - <xsl:attribute name="table-layout">auto</xsl:attribute> - <xsl:if test="$explicit.table.width != ''"> - <xsl:attribute name="width"><xsl:value-of - select="$explicit.table.width"/></xsl:attribute> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <xsl:attribute name="table-layout">fixed</xsl:attribute> - <xsl:attribute name="width"><xsl:value-of - select="$table.width"/></xsl:attribute> - </xsl:otherwise> - </xsl:choose> - - <xsl:call-template name="simplelist.table.columns"> - <xsl:with-param name="cols"> - <xsl:choose> - <xsl:when test="@columns"> - <xsl:value-of select="@columns"/> - </xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:with-param> - </xsl:call-template> - <fo:table-body start-indent="0pt" end-indent="0pt"> - <xsl:call-template name="simplelist.vert"> - <xsl:with-param name="cols"> - <xsl:choose> - <xsl:when test="@columns"> - <xsl:value-of select="@columns"/> - </xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:with-param> - </xsl:call-template> - </fo:table-body> - </fo:table> -</xsl:template> - -<xsl:template match="simplelist[@type='inline']"> - <!-- if dbchoice PI exists, use that to determine the choice separator --> - <!-- (that is, equivalent of "and" or "or" in current locale), or literal --> - <!-- value of "choice" otherwise --> - <fo:inline><xsl:variable name="localized-choice-separator"> - <xsl:choose> - <xsl:when test="processing-instruction('dbchoice')"> - <xsl:call-template name="select.choice.separator"/> - </xsl:when> - <xsl:otherwise> - <!-- empty --> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:for-each select="member"> - <xsl:apply-templates/> - <xsl:choose> - <xsl:when test="position() = last()"/> <!-- do nothing --> - <xsl:otherwise> - <xsl:text>, </xsl:text> - <xsl:if test="position() = last() - 1"> - <xsl:if test="$localized-choice-separator != ''"> - <xsl:value-of select="$localized-choice-separator"/> - <xsl:text> </xsl:text> - </xsl:if> - </xsl:if> - </xsl:otherwise> - </xsl:choose> - </xsl:for-each></fo:inline> -</xsl:template> - -<xsl:template match="simplelist[@type='horiz']"> - - <xsl:variable name="explicit.table.width"> - <xsl:call-template name="pi.dbfo_list-width"/> - </xsl:variable> - - <xsl:variable name="table.width"> - <xsl:choose> - <xsl:when test="$explicit.table.width != ''"> - <xsl:value-of select="$explicit.table.width"/> - </xsl:when> - <xsl:when test="$default.table.width = ''"> - <xsl:text>100%</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$default.table.width"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <fo:table xsl:use-attribute-sets="normal.para.spacing"> - <xsl:choose> - <xsl:when test="$axf.extensions != 0 or $xep.extensions != 0"> - <xsl:attribute name="table-layout">auto</xsl:attribute> - <xsl:if test="$explicit.table.width != ''"> - <xsl:attribute name="width"><xsl:value-of - select="$explicit.table.width"/></xsl:attribute> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <xsl:attribute name="table-layout">fixed</xsl:attribute> - <xsl:attribute name="width"><xsl:value-of - select="$table.width"/></xsl:attribute> - </xsl:otherwise> - </xsl:choose> - <xsl:call-template name="simplelist.table.columns"> - <xsl:with-param name="cols"> - <xsl:choose> - <xsl:when test="@columns"> - <xsl:value-of select="@columns"/> - </xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:with-param> - </xsl:call-template> - <fo:table-body start-indent="0pt" end-indent="0pt"> - <xsl:call-template name="simplelist.horiz"> - <xsl:with-param name="cols"> - <xsl:choose> - <xsl:when test="@columns"> - <xsl:value-of select="@columns"/> - </xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:with-param> - </xsl:call-template> - </fo:table-body> - </fo:table> -</xsl:template> - -<xsl:template name="simplelist.table.columns"> - <xsl:param name="cols" select="1"/> - <xsl:param name="curcol" select="1"/> - <fo:table-column column-number="{$curcol}" - column-width="proportional-column-width(1)"/> - <xsl:if test="$curcol < $cols"> - <xsl:call-template name="simplelist.table.columns"> - <xsl:with-param name="cols" select="$cols"/> - <xsl:with-param name="curcol" select="$curcol + 1"/> - </xsl:call-template> - </xsl:if> -</xsl:template> - -<xsl:template name="simplelist.horiz"> - <xsl:param name="cols">1</xsl:param> - <xsl:param name="cell">1</xsl:param> - <xsl:param name="members" select="./member"/> - - <xsl:if test="$cell <= count($members)"> - <fo:table-row> - <xsl:call-template name="simplelist.horiz.row"> - <xsl:with-param name="cols" select="$cols"/> - <xsl:with-param name="cell" select="$cell"/> - <xsl:with-param name="members" select="$members"/> - </xsl:call-template> - </fo:table-row> - <xsl:call-template name="simplelist.horiz"> - <xsl:with-param name="cols" select="$cols"/> - <xsl:with-param name="cell" select="$cell + $cols"/> - <xsl:with-param name="members" select="$members"/> - </xsl:call-template> - </xsl:if> -</xsl:template> - -<xsl:template name="simplelist.horiz.row"> - <xsl:param name="cols">1</xsl:param> - <xsl:param name="cell">1</xsl:param> - <xsl:param name="members" select="./member"/> - <xsl:param name="curcol">1</xsl:param> - - <xsl:if test="$curcol <= $cols"> - <fo:table-cell> - <fo:block> - <xsl:if test="$members[position()=$cell]"> - <xsl:apply-templates select="$members[position()=$cell]"/> - </xsl:if> - </fo:block> - </fo:table-cell> - <xsl:call-template name="simplelist.horiz.row"> - <xsl:with-param name="cols" select="$cols"/> - <xsl:with-param name="cell" select="$cell+1"/> - <xsl:with-param name="members" select="$members"/> - <xsl:with-param name="curcol" select="$curcol+1"/> - </xsl:call-template> - </xsl:if> -</xsl:template> - -<xsl:template name="simplelist.vert"> - <xsl:param name="cols">1</xsl:param> - <xsl:param name="cell">1</xsl:param> - <xsl:param name="members" select="./member"/> - <xsl:param name="rows" - select="floor((count($members)+$cols - 1) div $cols)"/> - - <xsl:if test="$cell <= $rows"> - <fo:table-row> - <xsl:call-template name="simplelist.vert.row"> - <xsl:with-param name="cols" select="$cols"/> - <xsl:with-param name="rows" select="$rows"/> - <xsl:with-param name="cell" select="$cell"/> - <xsl:with-param name="members" select="$members"/> - </xsl:call-template> - </fo:table-row> - <xsl:call-template name="simplelist.vert"> - <xsl:with-param name="cols" select="$cols"/> - <xsl:with-param name="cell" select="$cell+1"/> - <xsl:with-param name="members" select="$members"/> - <xsl:with-param name="rows" select="$rows"/> - </xsl:call-template> - </xsl:if> -</xsl:template> - -<xsl:template name="simplelist.vert.row"> - <xsl:param name="cols">1</xsl:param> - <xsl:param name="rows">1</xsl:param> - <xsl:param name="cell">1</xsl:param> - <xsl:param name="members" select="./member"/> - <xsl:param name="curcol">1</xsl:param> - - <xsl:if test="$curcol <= $cols"> - <fo:table-cell> - <fo:block> - <xsl:if test="$members[position()=$cell]"> - <xsl:apply-templates select="$members[position()=$cell]"/> - </xsl:if> - </fo:block> - </fo:table-cell> - <xsl:call-template name="simplelist.vert.row"> - <xsl:with-param name="cols" select="$cols"/> - <xsl:with-param name="rows" select="$rows"/> - <xsl:with-param name="cell" select="$cell+$rows"/> - <xsl:with-param name="members" select="$members"/> - <xsl:with-param name="curcol" select="$curcol+1"/> - </xsl:call-template> - </xsl:if> -</xsl:template> - -<xsl:template match="member"> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content"> - <xsl:apply-templates/> - </xsl:with-param> - </xsl:call-template> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="procedure"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <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)]"/> - - <xsl:variable name="steps" - select="step - |comment()[preceding-sibling::step] - |processing-instruction()[preceding-sibling::step]"/> - - <fo:block id="{$id}" xsl:use-attribute-sets="procedure.properties list.block.spacing"> - <xsl:if test="./title and $placement = 'before'"> - <!-- n.b. gentext code tests for $formal.procedures and may make an "informal" --> - <!-- heading even though we called formal.object.heading. odd but true. --> - <xsl:call-template name="formal.object.heading"/> - </xsl:if> - - <xsl:apply-templates select="$preamble"/> - - <fo:list-block xsl:use-attribute-sets="list.block.spacing" - provisional-distance-between-starts="2em" - provisional-label-separation="0.2em"> - <xsl:apply-templates select="$steps"/> - </fo:list-block> - - <xsl:if test="./title and $placement != 'before'"> - <!-- n.b. gentext code tests for $formal.procedures and may make an "informal" --> - <!-- heading even though we called formal.object.heading. odd but true. --> - <xsl:call-template name="formal.object.heading"/> - </xsl:if> - </fo:block> -</xsl:template> - -<xsl:template match="procedure/title"> -</xsl:template> - -<xsl:template match="substeps"> - <fo:list-block xsl:use-attribute-sets="list.block.spacing" - provisional-distance-between-starts="2em" - provisional-label-separation="0.2em"> - <xsl:apply-templates/> - </fo:list-block> -</xsl:template> - -<xsl:template match="procedure/step|substeps/step"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:list-item xsl:use-attribute-sets="list.item.spacing"> - <fo:list-item-label end-indent="label-end()"> - <fo:block id="{$id}"> - <!-- dwc: fix for one step procedures. Use a bullet if there's no step 2 --> - <xsl:choose> - <xsl:when test="count(../step) = 1"> - <xsl:text>•</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="." mode="number"> - <xsl:with-param name="recursive" select="0"/> - </xsl:apply-templates>. - </xsl:otherwise> - </xsl:choose> - </fo:block> - </fo:list-item-label> - <fo:list-item-body start-indent="body-start()"> - <fo:block> - <xsl:apply-templates/> - </fo:block> - </fo:list-item-body> - </fo:list-item> -</xsl:template> - -<xsl:template match="stepalternatives"> - <fo:list-block provisional-distance-between-starts="2em" - provisional-label-separation="0.2em"> - <xsl:apply-templates select="step"/> - </fo:list-block> -</xsl:template> - -<xsl:template match="stepalternatives/step"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:list-item xsl:use-attribute-sets="list.item.spacing"> - <fo:list-item-label end-indent="label-end()"> - <fo:block id="{$id}"> - <xsl:text>•</xsl:text> - </fo:block> - </fo:list-item-label> - <fo:list-item-body start-indent="body-start()"> - <fo:block> - <xsl:apply-templates/> - </fo:block> - </fo:list-item-body> - </fo:list-item> -</xsl:template> - -<xsl:template match="step/title"> - <fo:block font-weight="bold" - keep-together.within-column="always" - keep-with-next.within-column="always"> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="segmentedlist"> - <xsl:variable name="presentation"> - <xsl:call-template name="pi.dbfo_list-presentation"/> - </xsl:variable> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$presentation = 'table'"> - <fo:block id="{$id}"> - <xsl:apply-templates select="." mode="seglist-table"/> - </fo:block> - </xsl:when> - <xsl:when test="$presentation = 'list'"> - <fo:block id="{$id}"> - <xsl:apply-templates/> - </fo:block> - </xsl:when> - <xsl:when test="$segmentedlist.as.table != 0"> - <fo:block id="{$id}"> - <xsl:apply-templates select="." mode="seglist-table"/> - </fo:block> - </xsl:when> - <xsl:otherwise> - <fo:block id="{$id}"> - <xsl:apply-templates/> - </fo:block> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="segmentedlist/title"> - <xsl:apply-templates select="." mode="list.title.mode" /> -</xsl:template> - -<xsl:template match="segtitle"> -</xsl:template> - -<xsl:template match="segtitle" mode="segtitle-in-seg"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="seglistitem"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <fo:block id="{$id}"> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="seg"> - <xsl:variable name="segnum" select="count(preceding-sibling::seg)+1"/> - <xsl:variable name="seglist" select="ancestor::segmentedlist"/> - <xsl:variable name="segtitles" select="$seglist/segtitle"/> - - <!-- - Note: segtitle is only going to be the right thing in a well formed - SegmentedList. If there are too many Segs or too few SegTitles, - you'll get something odd...maybe an error - --> - - <fo:block> - <fo:inline font-weight="bold"> - <xsl:apply-templates select="$segtitles[$segnum=position()]" - mode="segtitle-in-seg"/> - <xsl:text>: </xsl:text> - </fo:inline> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="segmentedlist" mode="seglist-table"> - <xsl:apply-templates select="title" mode="list.title.mode" /> - <fo:table> - <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-header start-indent="0pt" end-indent="0pt"> - <fo:table-row> - <xsl:apply-templates select="segtitle" mode="seglist-table"/> - </fo:table-row> - </fo:table-header> - <fo:table-body start-indent="0pt" end-indent="0pt"> - <xsl:apply-templates select="seglistitem" mode="seglist-table"/> - </fo:table-body> - </fo:table> -</xsl:template> - -<xsl:template match="segtitle" mode="seglist-table"> - <fo:table-cell> - <fo:block font-weight="bold"> - <xsl:apply-templates/> - </fo:block> - </fo:table-cell> -</xsl:template> - -<xsl:template match="seglistitem" mode="seglist-table"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <fo:table-row id="{$id}"> - <xsl:apply-templates mode="seglist-table"/> - </fo:table-row> -</xsl:template> - -<xsl:template match="seg" mode="seglist-table"> - <fo:table-cell> - <fo:block> - <xsl:apply-templates/> - </fo:block> - </fo:table-cell> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="calloutlist"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:block id="{$id}" - text-align="{$alignment}"> - <!-- The above restores alignment altered by image align attribute --> - <xsl:if test="title|info/title"> - <xsl:apply-templates select="(title|info/title)[1]" - mode="list.title.mode"/> - </xsl:if> - - <!-- Preserve order of PIs and comments --> - <xsl:apply-templates - select="*[not(self::callout or self::title or self::titleabbrev)] - |comment()[not(preceding-sibling::callout)] - |processing-instruction()[not(preceding-sibling::callout)]"/> - - <fo:list-block space-before.optimum="1em" - space-before.minimum="0.8em" - space-before.maximum="1.2em" - provisional-distance-between-starts="2.2em" - provisional-label-separation="0.2em"> - <xsl:apply-templates select="callout - |comment()[preceding-sibling::callout] - |processing-instruction()[preceding-sibling::callout]"/> - </fo:list-block> - </fo:block> -</xsl:template> - -<xsl:template match="calloutlist/title"> -</xsl:template> - -<xsl:template match="callout"> - <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable> - <fo:list-item id="{$id}"> - <fo:list-item-label end-indent="label-end()"> - <fo:block> - <xsl:call-template name="callout.arearefs"> - <xsl:with-param name="arearefs" select="@arearefs"/> - </xsl:call-template> - </fo:block> - </fo:list-item-label> - <fo:list-item-body start-indent="body-start()"> - <fo:block> - <xsl:apply-templates/> - </fo:block> - </fo:list-item-body> - </fo:list-item> -</xsl:template> - -<xsl:template name="callout.arearefs"> - <xsl:param name="arearefs"></xsl:param> - <xsl:if test="$arearefs!=''"> - <xsl:choose> - <xsl:when test="substring-before($arearefs,' ')=''"> - <xsl:call-template name="callout.arearef"> - <xsl:with-param name="arearef" select="$arearefs"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="callout.arearef"> - <xsl:with-param name="arearef" - select="substring-before($arearefs,' ')"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - <xsl:call-template name="callout.arearefs"> - <xsl:with-param name="arearefs" - select="substring-after($arearefs,' ')"/> - </xsl:call-template> - </xsl:if> -</xsl:template> - -<xsl:template name="callout.arearef"> - <xsl:param name="arearef"></xsl:param> - <xsl:variable name="targets" select="key('id',$arearef)"/> - <xsl:variable name="target" select="$targets[1]"/> - - <xsl:choose> - <xsl:when test="count($target)=0"> - <xsl:value-of select="$arearef"/> - <xsl:text>: ???</xsl:text> - </xsl:when> - <xsl:when test="local-name($target)='co'"> - <xsl:apply-templates select="$target" mode="callout-bug"/> - </xsl:when> - <xsl:when test="local-name($target)='areaset'"> - <xsl:call-template name="callout-bug"> - <xsl:with-param name="conum"> - <xsl:apply-templates select="$target" mode="conumber"/> - </xsl:with-param> - </xsl:call-template> - </xsl:when> - <xsl:when test="local-name($target)='area'"> - <xsl:choose> - <xsl:when test="$target/parent::areaset"> - <xsl:call-template name="callout-bug"> - <xsl:with-param name="conum"> - <xsl:apply-templates select="$target/parent::areaset" - mode="conumber"/> - </xsl:with-param> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="callout-bug"> - <xsl:with-param name="conum"> - <xsl:apply-templates select="$target" mode="conumber"/> - </xsl:with-param> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:text>???</xsl:text> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="orderedlist-starting-number"> - <xsl:param name="list" select="."/> - <xsl:variable name="pi-start"> - <xsl:call-template name="pi.dbfo_start"> - <xsl:with-param name="node" select="$list"/> - </xsl:call-template> - </xsl:variable> - <xsl:call-template name="output-orderedlist-starting-number"> - <xsl:with-param name="list" select="$list"/> - <xsl:with-param name="pi-start" select="$pi-start"/> - </xsl:call-template> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/math.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/math.xsl deleted file mode 100644 index 77ec2d5ec..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/math.xsl +++ /dev/null @@ -1,128 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:mml="http://www.w3.org/1998/Math/MathML" - exclude-result-prefixes="mml" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<xsl:template match="inlineequation"> - <xsl:choose> - <xsl:when test="$passivetex.extensions != 0 and $tex.math.in.alt != ''"> - <xsl:apply-templates select="alt[@role='tex'] | inlinemediaobject/textobject[@role='tex']"> - <xsl:with-param name="output.delims"> - <xsl:call-template name="tex.math.output.delims"/> - </xsl:with-param> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="alt"> -</xsl:template> - -<xsl:template match="mathphrase"> - <fo:inline> - <xsl:apply-templates/> - </fo:inline> -</xsl:template> - -<!-- "Support" for MathML --> - -<xsl:template match="mml:math" xmlns:mml="http://www.w3.org/1998/Math/MathML"> - <fo:instream-foreign-object> - <xsl:copy> - <xsl:copy-of select="@*"/> - <xsl:apply-templates/> - </xsl:copy> - </fo:instream-foreign-object> -</xsl:template> - -<xsl:template match="mml:*" xmlns:mml="http://www.w3.org/1998/Math/MathML"> - <xsl:copy> - <xsl:copy-of select="@*"/> - <xsl:apply-templates/> - </xsl:copy> -</xsl:template> - -<xsl:template match="equation/graphic | informalequation/graphic"> - <xsl:if test="$passivetex.extensions = 0 or $tex.math.in.alt = ''"> - <fo:block> - <xsl:call-template name="process.image"/> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="inlineequation/alt[@role='tex'] | - inlineequation/inlinemediaobject/textobject[@role='tex']" priority="1"> - <xsl:param name="output.delims" select="1"/> - <xsl:if test="$passivetex.extensions != 0 and $tex.math.in.alt != ''"> - <xsl:processing-instruction name="xmltex"> - <xsl:if test="$output.delims != 0"> - <xsl:text>$</xsl:text> - </xsl:if> - <xsl:value-of select="."/> - <xsl:if test="$output.delims != 0"> - <xsl:text>$</xsl:text> - </xsl:if> - </xsl:processing-instruction> - </xsl:if> -</xsl:template> - -<xsl:template match="equation/alt[@role='tex'] | informalequation/alt[@role='tex'] | - equation/mediaobject/textobject[@role='tex'] | - informalequation/mediaobject/textobject[@role='tex']" priority="1"> - <xsl:variable name="output.delims"> - <xsl:call-template name="tex.math.output.delims"/> - </xsl:variable> - <xsl:if test="$passivetex.extensions != 0 and $tex.math.in.alt != ''"> - <xsl:processing-instruction name="xmltex"> - <xsl:if test="$output.delims != 0"> - <xsl:text>$$</xsl:text> - </xsl:if> - <xsl:value-of select="."/> - <xsl:if test="$output.delims != 0"> - <xsl:text>$$</xsl:text> - </xsl:if> - </xsl:processing-instruction> - </xsl:if> -</xsl:template> - -<xsl:template match="alt[@role='tex']"> - <xsl:if test="$passivetex.extensions != 0 and $tex.math.in.alt != ''"> - <xsl:message> - Your equation is misplaced. It should be in inlineequation, equation or informalequation. - </xsl:message> - </xsl:if> -</xsl:template> - -<xsl:template name="tex.math.output.delims"> - <xsl:variable name="pi.delims"> - <xsl:call-template name="pi-attribute"> - <xsl:with-param name="pis" select=".//processing-instruction('dbtex')"/> - <xsl:with-param name="attribute" select="'delims'"/> - </xsl:call-template> - </xsl:variable> - <xsl:variable name="result"> - <xsl:choose> - <xsl:when test="$pi.delims = 'no'">0</xsl:when> - <xsl:when test="$pi.delims = '' and $tex.math.delims = 0">0</xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:value-of select="$result"/> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/pagesetup.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/pagesetup.xsl deleted file mode 100644 index 798a93721..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/pagesetup.xsl +++ /dev/null @@ -1,2314 +0,0 @@ -<?xml version="1.0"?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version="1.0"> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the DocBook XSL Stylesheet distribution. - See ../README or http://docbook.sf.net/ for copyright - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<xsl:param name="body.fontset"> - <xsl:value-of select="$body.font.family"/> - <xsl:if test="$body.font.family != '' - and $symbol.font.family != ''">,</xsl:if> - <xsl:value-of select="$symbol.font.family"/> -</xsl:param> - -<xsl:param name="title.fontset"> - <xsl:value-of select="$title.font.family"/> - <xsl:if test="$title.font.family != '' - and $symbol.font.family != ''">,</xsl:if> - <xsl:value-of select="$symbol.font.family"/> -</xsl:param> - -<!-- PassiveTeX can't handle the math expression for - title.margin.left being negative, so ignore it. - margin-left="{$page.margin.outer} - {$title.margin.left}" ---> -<xsl:param name="margin.left.outer"> - <xsl:choose> - <xsl:when test="$passivetex.extensions != 0"> - <xsl:value-of select="$page.margin.outer"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$page.margin.outer"/> - <xsl:text> - </xsl:text> - <xsl:value-of select="$title.margin.left"/> - </xsl:otherwise> - </xsl:choose> -</xsl:param> - -<xsl:param name="margin.left.inner"> - <xsl:choose> - <xsl:when test="$passivetex.extensions != 0"> - <xsl:value-of select="$page.margin.inner"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$page.margin.inner"/> - <xsl:text> - </xsl:text> - <xsl:value-of select="$title.margin.left"/> - </xsl:otherwise> - </xsl:choose> -</xsl:param> - -<xsl:template name="setup.pagemasters"> - <fo:layout-master-set> - <!-- blank pages --> - <fo:simple-page-master master-name="blank" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.outer}" - margin-right="{$page.margin.inner}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">blank</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body display-align="center" - margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}"> - <xsl:if test="$fop.extensions = 0 and $fop1.extensions = 0"> - <xsl:attribute name="region-name">blank-body</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-blank" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-blank" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <!-- title pages --> - <fo:simple-page-master master-name="titlepage-first" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">titlepage-first</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.titlepage}" - column-count="{$column.count.titlepage}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-first" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-first" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="titlepage-odd" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">titlepage-odd</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.titlepage}" - column-count="{$column.count.titlepage}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-odd" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-odd" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="titlepage-even" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.outer}" - margin-right="{$page.margin.inner}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">titlepage-even</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.titlepage}" - column-count="{$column.count.titlepage}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-even" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-even" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <!-- list-of-title pages --> - <fo:simple-page-master master-name="lot-first" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">lot-first</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.lot}" - column-count="{$column.count.lot}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-first" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-first" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="lot-odd" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">lot-odd</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.lot}" - column-count="{$column.count.lot}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-odd" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-odd" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="lot-even" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.outer}" - margin-right="{$page.margin.inner}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">lot-even</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.lot}" - column-count="{$column.count.lot}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-even" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-even" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <!-- frontmatter pages --> - <fo:simple-page-master master-name="front-first" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">front-first</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.front}" - column-count="{$column.count.front}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-first" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-first" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="front-odd" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">front-odd</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.front}" - column-count="{$column.count.front}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-odd" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-odd" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="front-even" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.outer}" - margin-right="{$page.margin.inner}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">front-even</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.front}" - column-count="{$column.count.front}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-even" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-even" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <!-- body pages --> - <fo:simple-page-master master-name="body-first" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">body-first</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.body}" - column-count="{$column.count.body}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-first" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-first" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="body-odd" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">body-odd</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.body}" - column-count="{$column.count.body}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-odd" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-odd" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="body-even" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.outer}" - margin-right="{$page.margin.inner}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">body-even</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.body}" - column-count="{$column.count.body}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-even" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-even" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <!-- backmatter pages --> - <fo:simple-page-master master-name="back-first" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">back-first</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.back}" - column-count="{$column.count.back}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-first" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-first" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="back-odd" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">back-odd</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.back}" - column-count="{$column.count.back}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-odd" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-odd" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="back-even" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.outer}" - margin-right="{$page.margin.inner}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">back-even</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.back}" - column-count="{$column.count.back}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-even" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-even" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <!-- index pages --> - <fo:simple-page-master master-name="index-first" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$page.margin.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">index-first</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.index}" - column-count="{$column.count.index}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-first" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-first" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="index-odd" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$page.margin.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">index-odd</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.index}" - column-count="{$column.count.index}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-odd" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-odd" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="index-even" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$page.margin.outer}" - margin-right="{$page.margin.inner}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">index-even</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.index}" - column-count="{$column.count.index}"> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-even" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-even" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <xsl:if test="$draft.mode != 'no'"> - <!-- draft blank pages --> - <fo:simple-page-master master-name="blank-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.outer}" - margin-right="{$page.margin.inner}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">blank-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-blank" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-blank" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <!-- draft title pages --> - <fo:simple-page-master master-name="titlepage-first-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">titlepage-first-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.titlepage}" - column-count="{$column.count.titlepage}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-first" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-first" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="titlepage-odd-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">titlepage-odd-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.titlepage}" - column-count="{$column.count.titlepage}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-odd" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-odd" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="titlepage-even-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.outer}" - margin-right="{$page.margin.inner}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">titlepage-even-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.titlepage}" - column-count="{$column.count.titlepage}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-even" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-even" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <!-- draft list-of-title pages --> - <fo:simple-page-master master-name="lot-first-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">lot-first-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.lot}" - column-count="{$column.count.lot}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-first" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-first" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="lot-odd-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">lot-odd-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.lot}" - column-count="{$column.count.lot}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-odd" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-odd" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="lot-even-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.outer}" - margin-right="{$page.margin.inner}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">lot-even-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.lot}" - column-count="{$column.count.lot}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-even" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-even" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <!-- draft frontmatter pages --> - <fo:simple-page-master master-name="front-first-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">front-first-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.front}" - column-count="{$column.count.front}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-first" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-first" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="front-odd-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">front-odd-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.front}" - column-count="{$column.count.front}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-odd" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-odd" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="front-even-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.outer}" - margin-right="{$page.margin.inner}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">front-even-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.front}" - column-count="{$column.count.front}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-even" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-even" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <!-- draft body pages --> - <fo:simple-page-master master-name="body-first-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">body-first-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.body}" - column-count="{$column.count.body}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-first" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-first" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="body-odd-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">body-odd-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.body}" - column-count="{$column.count.body}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-odd" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-odd" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="body-even-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.outer}" - margin-right="{$page.margin.inner}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">body-even-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.body}" - column-count="{$column.count.body}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-even" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-even" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <!-- draft backmatter pages --> - <fo:simple-page-master master-name="back-first-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">back-first-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.back}" - column-count="{$column.count.back}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-first" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-first" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="back-odd-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">back-odd-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.back}" - column-count="{$column.count.back}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-odd" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-odd" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="back-even-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$margin.left.outer}" - margin-right="{$page.margin.inner}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">back-even-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.back}" - column-count="{$column.count.back}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-even" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-even" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <!-- draft index pages --> - <fo:simple-page-master master-name="index-first-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$page.margin.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">index-first-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.index}" - column-count="{$column.count.index}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-first" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-first" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="index-odd-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-left="{$page.margin.inner}" - margin-right="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">index-odd-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.index}" - column-count="{$column.count.index}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-odd" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-odd" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - - <fo:simple-page-master master-name="index-even-draft" - page-width="{$page.width}" - page-height="{$page.height}" - margin-top="{$page.margin.top}" - margin-bottom="{$page.margin.bottom}" - margin-right="{$page.margin.inner}" - margin-left="{$page.margin.outer}"> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-page-master-properties"> - <xsl:with-param name="page.master">index-even-draft</xsl:with-param> - </xsl:call-template> - </xsl:if> - <fo:region-body margin-bottom="{$body.margin.bottom}" - margin-top="{$body.margin.top}" - column-gap="{$column.gap.index}" - column-count="{$column.count.index}"> - <xsl:if test="$draft.watermark.image != ''"> - <xsl:attribute name="background-image"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$draft.watermark.image"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="background-attachment">fixed</xsl:attribute> - <xsl:attribute name="background-repeat">no-repeat</xsl:attribute> - <xsl:attribute name="background-position-horizontal">center</xsl:attribute> - <xsl:attribute name="background-position-vertical">center</xsl:attribute> - </xsl:if> - </fo:region-body> - <fo:region-before region-name="xsl-region-before-even" - extent="{$region.before.extent}" - display-align="before"/> - <fo:region-after region-name="xsl-region-after-even" - extent="{$region.after.extent}" - display-align="after"/> - </fo:simple-page-master> - </xsl:if> - - <!-- setup for title page(s) --> - <fo:page-sequence-master master-name="titlepage"> - <fo:repeatable-page-master-alternatives> - <fo:conditional-page-master-reference master-reference="blank" - blank-or-not-blank="blank"/> - <fo:conditional-page-master-reference master-reference="titlepage-first" - page-position="first"/> - <fo:conditional-page-master-reference master-reference="titlepage-odd" - odd-or-even="odd"/> - <fo:conditional-page-master-reference - odd-or-even="even"> - <xsl:attribute name="master-reference"> - <xsl:choose> - <xsl:when test="$double.sided != 0">titlepage-even</xsl:when> - <xsl:otherwise>titlepage-odd</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </fo:conditional-page-master-reference> - </fo:repeatable-page-master-alternatives> - </fo:page-sequence-master> - - <!-- setup for lots --> - <fo:page-sequence-master master-name="lot"> - <fo:repeatable-page-master-alternatives> - <fo:conditional-page-master-reference master-reference="blank" - blank-or-not-blank="blank"/> - <fo:conditional-page-master-reference master-reference="lot-first" - page-position="first"/> - <fo:conditional-page-master-reference master-reference="lot-odd" - odd-or-even="odd"/> - <fo:conditional-page-master-reference - odd-or-even="even"> - <xsl:attribute name="master-reference"> - <xsl:choose> - <xsl:when test="$double.sided != 0">lot-even</xsl:when> - <xsl:otherwise>lot-odd</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </fo:conditional-page-master-reference> - </fo:repeatable-page-master-alternatives> - </fo:page-sequence-master> - - <!-- setup front matter --> - <fo:page-sequence-master master-name="front"> - <fo:repeatable-page-master-alternatives> - <fo:conditional-page-master-reference master-reference="blank" - blank-or-not-blank="blank"/> - <fo:conditional-page-master-reference master-reference="front-first" - page-position="first"/> - <fo:conditional-page-master-reference master-reference="front-odd" - odd-or-even="odd"/> - <fo:conditional-page-master-reference - odd-or-even="even"> - <xsl:attribute name="master-reference"> - <xsl:choose> - <xsl:when test="$double.sided != 0">front-even</xsl:when> - <xsl:otherwise>front-odd</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </fo:conditional-page-master-reference> - </fo:repeatable-page-master-alternatives> - </fo:page-sequence-master> - - <!-- setup for body pages --> - <fo:page-sequence-master master-name="body"> - <fo:repeatable-page-master-alternatives> - <fo:conditional-page-master-reference master-reference="blank" - blank-or-not-blank="blank"/> - <fo:conditional-page-master-reference master-reference="body-first" - page-position="first"/> - <fo:conditional-page-master-reference master-reference="body-odd" - odd-or-even="odd"/> - <fo:conditional-page-master-reference - odd-or-even="even"> - <xsl:attribute name="master-reference"> - <xsl:choose> - <xsl:when test="$double.sided != 0">body-even</xsl:when> - <xsl:otherwise>body-odd</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </fo:conditional-page-master-reference> - </fo:repeatable-page-master-alternatives> - </fo:page-sequence-master> - - <!-- setup back matter --> - <fo:page-sequence-master master-name="back"> - <fo:repeatable-page-master-alternatives> - <fo:conditional-page-master-reference master-reference="blank" - blank-or-not-blank="blank"/> - <fo:conditional-page-master-reference master-reference="back-first" - page-position="first"/> - <fo:conditional-page-master-reference master-reference="back-odd" - odd-or-even="odd"/> - <fo:conditional-page-master-reference - odd-or-even="even"> - <xsl:attribute name="master-reference"> - <xsl:choose> - <xsl:when test="$double.sided != 0">back-even</xsl:when> - <xsl:otherwise>back-odd</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </fo:conditional-page-master-reference> - </fo:repeatable-page-master-alternatives> - </fo:page-sequence-master> - - <!-- setup back matter --> - <fo:page-sequence-master master-name="index"> - <fo:repeatable-page-master-alternatives> - <fo:conditional-page-master-reference master-reference="blank" - blank-or-not-blank="blank"/> - <fo:conditional-page-master-reference master-reference="index-first" - page-position="first"/> - <fo:conditional-page-master-reference master-reference="index-odd" - odd-or-even="odd"/> - <fo:conditional-page-master-reference - odd-or-even="even"> - <xsl:attribute name="master-reference"> - <xsl:choose> - <xsl:when test="$double.sided != 0">index-even</xsl:when> - <xsl:otherwise>index-odd</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </fo:conditional-page-master-reference> - </fo:repeatable-page-master-alternatives> - </fo:page-sequence-master> - - <xsl:if test="$draft.mode != 'no'"> - <!-- setup for draft title page(s) --> - <fo:page-sequence-master master-name="titlepage-draft"> - <fo:repeatable-page-master-alternatives> - <fo:conditional-page-master-reference master-reference="blank-draft" - blank-or-not-blank="blank"/> - <fo:conditional-page-master-reference master-reference="titlepage-first-draft" - page-position="first"/> - <fo:conditional-page-master-reference master-reference="titlepage-odd-draft" - odd-or-even="odd"/> - <fo:conditional-page-master-reference - odd-or-even="even"> - <xsl:attribute name="master-reference"> - <xsl:choose> - <xsl:when test="$double.sided != 0">titlepage-even-draft</xsl:when> - <xsl:otherwise>titlepage-odd-draft</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </fo:conditional-page-master-reference> - </fo:repeatable-page-master-alternatives> - </fo:page-sequence-master> - - <!-- setup for draft lots --> - <fo:page-sequence-master master-name="lot-draft"> - <fo:repeatable-page-master-alternatives> - <fo:conditional-page-master-reference master-reference="blank-draft" - blank-or-not-blank="blank"/> - <fo:conditional-page-master-reference master-reference="lot-first-draft" - page-position="first"/> - <fo:conditional-page-master-reference master-reference="lot-odd-draft" - odd-or-even="odd"/> - <fo:conditional-page-master-reference - odd-or-even="even"> - <xsl:attribute name="master-reference"> - <xsl:choose> - <xsl:when test="$double.sided != 0">lot-even-draft</xsl:when> - <xsl:otherwise>lot-odd-draft</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </fo:conditional-page-master-reference> - </fo:repeatable-page-master-alternatives> - </fo:page-sequence-master> - - <!-- setup draft front matter --> - <fo:page-sequence-master master-name="front-draft"> - <fo:repeatable-page-master-alternatives> - <fo:conditional-page-master-reference master-reference="blank-draft" - blank-or-not-blank="blank"/> - <fo:conditional-page-master-reference master-reference="front-first-draft" - page-position="first"/> - <fo:conditional-page-master-reference master-reference="front-odd-draft" - odd-or-even="odd"/> - <fo:conditional-page-master-reference - odd-or-even="even"> - <xsl:attribute name="master-reference"> - <xsl:choose> - <xsl:when test="$double.sided != 0">front-even-draft</xsl:when> - <xsl:otherwise>front-odd-draft</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </fo:conditional-page-master-reference> - </fo:repeatable-page-master-alternatives> - </fo:page-sequence-master> - - <!-- setup for draft body pages --> - <fo:page-sequence-master master-name="body-draft"> - <fo:repeatable-page-master-alternatives> - <fo:conditional-page-master-reference master-reference="blank-draft" - blank-or-not-blank="blank"/> - <fo:conditional-page-master-reference master-reference="body-first-draft" - page-position="first"/> - <fo:conditional-page-master-reference master-reference="body-odd-draft" - odd-or-even="odd"/> - <fo:conditional-page-master-reference - odd-or-even="even"> - <xsl:attribute name="master-reference"> - <xsl:choose> - <xsl:when test="$double.sided != 0">body-even-draft</xsl:when> - <xsl:otherwise>body-odd-draft</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </fo:conditional-page-master-reference> - </fo:repeatable-page-master-alternatives> - </fo:page-sequence-master> - - <!-- setup draft back matter --> - <fo:page-sequence-master master-name="back-draft"> - <fo:repeatable-page-master-alternatives> - <fo:conditional-page-master-reference master-reference="blank-draft" - blank-or-not-blank="blank"/> - <fo:conditional-page-master-reference master-reference="back-first-draft" - page-position="first"/> - <fo:conditional-page-master-reference master-reference="back-odd-draft" - odd-or-even="odd"/> - <fo:conditional-page-master-reference - odd-or-even="even"> - <xsl:attribute name="master-reference"> - <xsl:choose> - <xsl:when test="$double.sided != 0">back-even-draft</xsl:when> - <xsl:otherwise>back-odd-draft</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </fo:conditional-page-master-reference> - </fo:repeatable-page-master-alternatives> - </fo:page-sequence-master> - - <!-- setup draft index pages --> - <fo:page-sequence-master master-name="index-draft"> - <fo:repeatable-page-master-alternatives> - <fo:conditional-page-master-reference master-reference="blank-draft" - blank-or-not-blank="blank"/> - <fo:conditional-page-master-reference master-reference="index-first-draft" - page-position="first"/> - <fo:conditional-page-master-reference master-reference="index-odd-draft" - odd-or-even="odd"/> - <fo:conditional-page-master-reference - odd-or-even="even"> - <xsl:attribute name="master-reference"> - <xsl:choose> - <xsl:when test="$double.sided != 0">index-even-draft</xsl:when> - <xsl:otherwise>index-odd-draft</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </fo:conditional-page-master-reference> - </fo:repeatable-page-master-alternatives> - </fo:page-sequence-master> - </xsl:if> - - <xsl:call-template name="user.pagemasters"/> - - </fo:layout-master-set> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="user.pagemasters"/> <!-- intentionally empty --> - -<!-- ==================================================================== --> - -<xsl:template name="select.pagemaster"> - <xsl:param name="element" select="local-name(.)"/> - <xsl:param name="pageclass" select="''"/> - - <xsl:variable name="pagemaster"> - <xsl:choose> - <xsl:when test="$pageclass != ''"> - <xsl:value-of select="$pageclass"/> - </xsl:when> - <xsl:when test="$pageclass = 'lot'">lot</xsl:when> - <xsl:when test="$element = 'dedication'">front</xsl:when> - <xsl:when test="$element = 'preface'">front</xsl:when> - <xsl:when test="$element = 'appendix'">back</xsl:when> - <xsl:when test="$element = 'glossary'">back</xsl:when> - <xsl:when test="$element = 'bibliography'">back</xsl:when> - <xsl:when test="$element = 'index'">index</xsl:when> - <xsl:when test="$element = 'colophon'">back</xsl:when> - <xsl:otherwise>body</xsl:otherwise> - </xsl:choose> - - <xsl:choose> - <xsl:when test="$draft.mode = 'yes'"> - <xsl:text>-draft</xsl:text> - </xsl:when> - <xsl:when test="$draft.mode = 'no'"> - <!-- nop --> - </xsl:when> - <xsl:when test="ancestor-or-self::*[@status][1]/@status = 'draft'"> - <xsl:text>-draft</xsl:text> - </xsl:when> - <xsl:otherwise> - <!-- nop --> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:call-template name="select.user.pagemaster"> - <xsl:with-param name="element" select="$element"/> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="default-pagemaster" select="$pagemaster"/> - </xsl:call-template> -</xsl:template> - -<xsl:template name="select.user.pagemaster"> - <xsl:param name="element"/> - <xsl:param name="pageclass"/> - <xsl:param name="default-pagemaster"/> - - <!-- by default, return the default. But if you've created your own - pagemasters in user.pagemasters, you might want to select one here. --> - <xsl:value-of select="$default-pagemaster"/> -</xsl:template> - -<!-- ==================================================================== --> - -<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">black</xsl:attribute> - </xsl:if> -</xsl:template> - -<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">black</xsl:attribute> - </xsl:if> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="*" mode="running.head.mode"> - <xsl:param name="master-reference" select="'unknown'"/> - <xsl:param name="gentext-key" select="local-name(.)"/> - - <!-- remove -draft from reference --> - <xsl:variable name="pageclass"> - <xsl:choose> - <xsl:when test="contains($master-reference, '-draft')"> - <xsl:value-of select="substring-before($master-reference, '-draft')"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$master-reference"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <fo:static-content flow-name="xsl-region-before-first"> - <fo:block xsl:use-attribute-sets="header.content.properties"> - <xsl:call-template name="header.table"> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="sequence" select="'first'"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:call-template> - </fo:block> - </fo:static-content> - - <fo:static-content flow-name="xsl-region-before-odd"> - <fo:block xsl:use-attribute-sets="header.content.properties"> - <xsl:call-template name="header.table"> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="sequence" select="'odd'"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:call-template> - </fo:block> - </fo:static-content> - - <fo:static-content flow-name="xsl-region-before-even"> - <fo:block xsl:use-attribute-sets="header.content.properties"> - <xsl:call-template name="header.table"> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="sequence" select="'even'"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:call-template> - </fo:block> - </fo:static-content> - - <fo:static-content flow-name="xsl-region-before-blank"> - <fo:block xsl:use-attribute-sets="header.content.properties"> - <xsl:call-template name="header.table"> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="sequence" select="'blank'"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:call-template> - </fo:block> - </fo:static-content> - - <xsl:call-template name="footnote-separator"/> - - <xsl:if test="$fop.extensions = 0 and $fop1.extensions = 0"> - <xsl:call-template name="blank.page.content"/> - </xsl:if> -</xsl:template> - -<xsl:template name="footnote-separator"> - <fo:static-content flow-name="xsl-footnote-separator"> - <fo:block> - <fo:leader xsl:use-attribute-sets="footnote.sep.leader.properties"/> - </fo:block> - </fo:static-content> -</xsl:template> - -<xsl:template name="blank.page.content"> - <fo:static-content flow-name="blank-body"> - <fo:block text-align="center"/> - </fo:static-content> -</xsl:template> - -<xsl:template name="header.table"> - <xsl:param name="pageclass" select="''"/> - <xsl:param name="sequence" select="''"/> - <xsl:param name="gentext-key" select="''"/> - - <!-- default is a single table style for all headers --> - <!-- Customize it for different page classes or sequence location --> - - <xsl:choose> - <xsl:when test="$pageclass = 'index'"> - <xsl:attribute name="margin-left">0pt</xsl:attribute> - </xsl:when> - </xsl:choose> - - <xsl:variable name="column1"> - <xsl:choose> - <xsl:when test="$double.sided = 0">1</xsl:when> - <xsl:when test="$sequence = 'first' or $sequence = 'odd'">1</xsl:when> - <xsl:otherwise>3</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="column3"> - <xsl:choose> - <xsl:when test="$double.sided = 0">3</xsl:when> - <xsl:when test="$sequence = 'first' or $sequence = 'odd'">3</xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="candidate"> - <fo:table xsl:use-attribute-sets="header.table.properties"> - <xsl:call-template name="head.sep.rule"> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="sequence" select="$sequence"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:call-template> - - <fo:table-column column-number="1"> - <xsl:attribute name="column-width"> - <xsl:text>proportional-column-width(</xsl:text> - <xsl:call-template name="header.footer.width"> - <xsl:with-param name="location">header</xsl:with-param> - <xsl:with-param name="position" select="$column1"/> - </xsl:call-template> - <xsl:text>)</xsl:text> - </xsl:attribute> - </fo:table-column> - <fo:table-column column-number="2"> - <xsl:attribute name="column-width"> - <xsl:text>proportional-column-width(</xsl:text> - <xsl:call-template name="header.footer.width"> - <xsl:with-param name="location">header</xsl:with-param> - <xsl:with-param name="position" select="2"/> - </xsl:call-template> - <xsl:text>)</xsl:text> - </xsl:attribute> - </fo:table-column> - <fo:table-column column-number="3"> - <xsl:attribute name="column-width"> - <xsl:text>proportional-column-width(</xsl:text> - <xsl:call-template name="header.footer.width"> - <xsl:with-param name="location">header</xsl:with-param> - <xsl:with-param name="position" select="$column3"/> - </xsl:call-template> - <xsl:text>)</xsl:text> - </xsl:attribute> - </fo:table-column> - - <fo:table-body> - <fo:table-row> - <xsl:attribute name="block-progression-dimension.minimum"> - <xsl:value-of select="$header.table.height"/> - </xsl:attribute> - <fo:table-cell text-align="left" - display-align="before"> - <xsl:if test="$fop.extensions = 0"> - <xsl:attribute name="relative-align">baseline</xsl:attribute> - </xsl:if> - <fo:block> - <xsl:call-template name="header.content"> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="sequence" select="$sequence"/> - <xsl:with-param name="position" select="'left'"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:call-template> - </fo:block> - </fo:table-cell> - <fo:table-cell text-align="center" - display-align="before"> - <xsl:if test="$fop.extensions = 0"> - <xsl:attribute name="relative-align">baseline</xsl:attribute> - </xsl:if> - <fo:block> - <xsl:call-template name="header.content"> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="sequence" select="$sequence"/> - <xsl:with-param name="position" select="'center'"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:call-template> - </fo:block> - </fo:table-cell> - <fo:table-cell text-align="right" - display-align="before"> - <xsl:if test="$fop.extensions = 0"> - <xsl:attribute name="relative-align">baseline</xsl:attribute> - </xsl:if> - <fo:block> - <xsl:call-template name="header.content"> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="sequence" select="$sequence"/> - <xsl:with-param name="position" select="'right'"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:call-template> - </fo:block> - </fo:table-cell> - </fo:table-row> - </fo:table-body> - </fo:table> - </xsl:variable> - - <!-- Really output a header? --> - <xsl:choose> - <xsl:when test="$pageclass = 'titlepage' and $gentext-key = 'book' - and $sequence='first'"> - <!-- no, book titlepages have no headers at all --> - </xsl:when> - <xsl:when test="$sequence = 'blank' and $headers.on.blank.pages = 0"> - <!-- no output --> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$candidate"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<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="''"/> - -<!-- - <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> ---> - - <fo:block> - - <!-- sequence can be odd, even, first, blank --> - <!-- position can be left, center, right --> - <xsl:choose> - <xsl:when test="$sequence = 'blank'"> - <!-- nothing --> - </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="($sequence='odd' or $sequence='even') and $position='center'"> - <xsl:if test="$pageclass != 'titlepage'"> - <xsl:choose> - <xsl:when test="ancestor::book and ($double.sided != 0)"> - <fo:retrieve-marker retrieve-class-name="section.head.marker" - retrieve-position="first-including-carryover" - retrieve-boundary="page-sequence"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="." mode="titleabbrev.markup"/> - </xsl:otherwise> - </xsl:choose> - </xsl:if> - </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> - </fo:block> -</xsl:template> - -<xsl:template name="header.footer.width"> - <xsl:param name="location" select="'header'"/> - <xsl:param name="position" select="1"/> - - <xsl:variable name="width.set"> - <xsl:choose> - <xsl:when test="$location = 'header'"> - <xsl:value-of select="normalize-space($header.column.widths)"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="normalize-space($footer.column.widths)"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - - <xsl:variable name="width"> - <xsl:choose> - <xsl:when test="$position = 1"> - <xsl:value-of select="substring-before($width.set, ' ')"/> - </xsl:when> - <xsl:when test="$position = 2"> - <xsl:value-of select="substring-before(substring-after($width.set, ' '), ' ')"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="substring-after(substring-after($width.set, ' '), ' ')"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <!-- Make sure it is a number --> - <xsl:choose> - <xsl:when test = "$width = number($width)"> - <xsl:value-of select="$width"/> - </xsl:when> - <xsl:otherwise> - <xsl:message>Error: value in <xsl:value-of select="$location"/>.column.widths at position <xsl:value-of select="$position"/> is not a number.</xsl:message> - <xsl:text>1</xsl:text> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="draft.text"> - <xsl:choose> - <xsl:when test="$draft.mode = 'yes'"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'Draft'"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="$draft.mode = 'no'"> - <!-- nop --> - </xsl:when> - <xsl:when test="ancestor-or-self::*[@status][1]/@status = 'draft'"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'Draft'"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <!-- nop --> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="*" mode="running.foot.mode"> - <xsl:param name="master-reference" select="'unknown'"/> - <xsl:param name="gentext-key" select="local-name(.)"/> - - <!-- remove -draft from reference --> - <xsl:variable name="pageclass"> - <xsl:choose> - <xsl:when test="contains($master-reference, '-draft')"> - <xsl:value-of select="substring-before($master-reference, '-draft')"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$master-reference"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <fo:static-content flow-name="xsl-region-after-first"> - <fo:block xsl:use-attribute-sets="footer.content.properties"> - <xsl:call-template name="footer.table"> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="sequence" select="'first'"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:call-template> - </fo:block> - </fo:static-content> - - <fo:static-content flow-name="xsl-region-after-odd"> - <fo:block xsl:use-attribute-sets="footer.content.properties"> - <xsl:call-template name="footer.table"> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="sequence" select="'odd'"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:call-template> - </fo:block> - </fo:static-content> - - <fo:static-content flow-name="xsl-region-after-even"> - <fo:block xsl:use-attribute-sets="footer.content.properties"> - <xsl:call-template name="footer.table"> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="sequence" select="'even'"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:call-template> - </fo:block> - </fo:static-content> - - <fo:static-content flow-name="xsl-region-after-blank"> - <fo:block xsl:use-attribute-sets="footer.content.properties"> - <xsl:call-template name="footer.table"> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="sequence" select="'blank'"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:call-template> - </fo:block> - </fo:static-content> -</xsl:template> - -<xsl:template name="footer.table"> - <xsl:param name="pageclass" select="''"/> - <xsl:param name="sequence" select="''"/> - <xsl:param name="gentext-key" select="''"/> - - <!-- default is a single table style for all footers --> - <!-- Customize it for different page classes or sequence location --> - - <xsl:choose> - <xsl:when test="$pageclass = 'index'"> - <xsl:attribute name="margin-left">0pt</xsl:attribute> - </xsl:when> - </xsl:choose> - - <xsl:variable name="column1"> - <xsl:choose> - <xsl:when test="$double.sided = 0">1</xsl:when> - <xsl:when test="$sequence = 'first' or $sequence = 'odd'">1</xsl:when> - <xsl:otherwise>3</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="column3"> - <xsl:choose> - <xsl:when test="$double.sided = 0">3</xsl:when> - <xsl:when test="$sequence = 'first' or $sequence = 'odd'">3</xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="candidate"> - <fo:table xsl:use-attribute-sets="footer.table.properties"> - <xsl:call-template name="foot.sep.rule"> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="sequence" select="$sequence"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:call-template> - <fo:table-column column-number="1"> - <xsl:attribute name="column-width"> - <xsl:text>proportional-column-width(</xsl:text> - <xsl:call-template name="header.footer.width"> - <xsl:with-param name="location">footer</xsl:with-param> - <xsl:with-param name="position" select="$column1"/> - </xsl:call-template> - <xsl:text>)</xsl:text> - </xsl:attribute> - </fo:table-column> - <fo:table-column column-number="2"> - <xsl:attribute name="column-width"> - <xsl:text>proportional-column-width(</xsl:text> - <xsl:call-template name="header.footer.width"> - <xsl:with-param name="location">footer</xsl:with-param> - <xsl:with-param name="position" select="2"/> - </xsl:call-template> - <xsl:text>)</xsl:text> - </xsl:attribute> - </fo:table-column> - <fo:table-column column-number="3"> - <xsl:attribute name="column-width"> - <xsl:text>proportional-column-width(</xsl:text> - <xsl:call-template name="header.footer.width"> - <xsl:with-param name="location">footer</xsl:with-param> - <xsl:with-param name="position" select="$column3"/> - </xsl:call-template> - <xsl:text>)</xsl:text> - </xsl:attribute> - </fo:table-column> - - <fo:table-body> - <fo:table-row> - <xsl:attribute name="block-progression-dimension.minimum"> - <xsl:value-of select="$footer.table.height"/> - </xsl:attribute> - <fo:table-cell text-align="left" - display-align="after"> - <xsl:if test="$fop.extensions = 0"> - <xsl:attribute name="relative-align">baseline</xsl:attribute> - </xsl:if> - <fo:block> - <xsl:call-template name="footer.content"> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="sequence" select="$sequence"/> - <xsl:with-param name="position" select="'left'"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:call-template> - </fo:block> - </fo:table-cell> - <fo:table-cell text-align="center" - display-align="after"> - <xsl:if test="$fop.extensions = 0"> - <xsl:attribute name="relative-align">baseline</xsl:attribute> - </xsl:if> - <fo:block> - <xsl:call-template name="footer.content"> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="sequence" select="$sequence"/> - <xsl:with-param name="position" select="'center'"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:call-template> - </fo:block> - </fo:table-cell> - <fo:table-cell text-align="right" - display-align="after"> - <xsl:if test="$fop.extensions = 0"> - <xsl:attribute name="relative-align">baseline</xsl:attribute> - </xsl:if> - <fo:block> - <xsl:call-template name="footer.content"> - <xsl:with-param name="pageclass" select="$pageclass"/> - <xsl:with-param name="sequence" select="$sequence"/> - <xsl:with-param name="position" select="'right'"/> - <xsl:with-param name="gentext-key" select="$gentext-key"/> - </xsl:call-template> - </fo:block> - </fo:table-cell> - </fo:table-row> - </fo:table-body> - </fo:table> - </xsl:variable> - - <!-- Really output a footer? --> - <xsl:choose> - <xsl:when test="$pageclass='titlepage' and $gentext-key='book' - and $sequence='first'"> - <!-- no, book titlepages have no footers at all --> - </xsl:when> - <xsl:when test="$sequence = 'blank' and $footers.on.blank.pages = 0"> - <!-- no output --> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$candidate"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="footer.content"> - <xsl:param name="pageclass" select="''"/> - <xsl:param name="sequence" select="''"/> - <xsl:param name="position" select="''"/> - <xsl:param name="gentext-key" select="''"/> - -<!-- - <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> ---> - - <fo:block> - <!-- pageclass can be front, body, back --> - <!-- sequence can be odd, even, first, blank --> - <!-- position can be left, center, right --> - <xsl:choose> - <xsl:when test="$pageclass = 'titlepage'"> - <!-- nop; no footer on title pages --> - </xsl:when> - - <xsl:when test="$double.sided != 0 and $sequence = 'even' - and $position='left'"> - <fo:page-number/> - </xsl:when> - - <xsl:when test="$double.sided != 0 and ($sequence = 'odd' or $sequence = 'first') - and $position='right'"> - <fo:page-number/> - </xsl:when> - - <xsl:when test="$double.sided = 0 and $position='center'"> - <fo:page-number/> - </xsl:when> - - <xsl:when test="$sequence='blank'"> - <xsl:choose> - <xsl:when test="$double.sided != 0 and $position = 'left'"> - <fo:page-number/> - </xsl:when> - <xsl:when test="$double.sided = 0 and $position = 'center'"> - <fo:page-number/> - </xsl:when> - <xsl:otherwise> - <!-- nop --> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - - - <xsl:otherwise> - <!-- nop --> - </xsl:otherwise> - </xsl:choose> - </fo:block> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="page.number.format"> - <xsl:param name="element" select="local-name(.)"/> - <xsl:param name="master-reference" select="''"/> - - <xsl:choose> - <xsl:when test="$element = 'toc' and self::book">i</xsl:when> - <xsl:when test="$element = 'preface'">i</xsl:when> - <xsl:when test="$element = 'dedication'">i</xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="initial.page.number"> - <xsl:param name="element" select="local-name(.)"/> - <xsl:param name="master-reference" select="''"/> - - <!-- Select the first content that the stylesheet places - after the TOC --> - <xsl:variable name="first.book.content" - select="ancestor::book/*[ - not(self::title or - self::subtitle or - self::titleabbrev or - self::bookinfo or - self::info or - self::dedication or - self::preface or - self::toc or - self::lot)][1]"/> - <xsl:choose> - <!-- double-sided output --> - <xsl:when test="$double.sided != 0"> - <xsl:choose> - <xsl:when test="$element = 'toc'">auto-odd</xsl:when> - <xsl:when test="$element = 'book'">1</xsl:when> - <!-- preface typically continues TOC roman numerals --> - <!-- Change page.number.format if not --> - <xsl:when test="$element = 'preface'">auto-odd</xsl:when> - <xsl:when test="($element = 'dedication' or $element = 'article') - and not(preceding::chapter - or preceding::preface - or preceding::appendix - or preceding::article - or preceding::dedication - or parent::part - or parent::reference)">1</xsl:when> - <xsl:when test="generate-id($first.book.content) = - generate-id(.)">1</xsl:when> - <xsl:otherwise>auto-odd</xsl:otherwise> - </xsl:choose> - </xsl:when> - - <!-- single-sided output --> - <xsl:otherwise> - <xsl:choose> - <xsl:when test="$element = 'toc'">auto</xsl:when> - <xsl:when test="$element = 'book'">1</xsl:when> - <xsl:when test="$element = 'preface'">auto</xsl:when> - <xsl:when test="($element = 'dedication' or $element = 'article') and - not(preceding::chapter - or preceding::preface - or preceding::appendix - or preceding::article - or preceding::dedication - or parent::part - or parent::reference)">1</xsl:when> - <xsl:when test="generate-id($first.book.content) = - generate-id(.)">1</xsl:when> - <xsl:otherwise>auto</xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="force.page.count"> - <xsl:param name="element" select="local-name(.)"/> - <xsl:param name="master-reference" select="''"/> - - <xsl:choose> - <!-- double-sided output --> - <xsl:when test="$double.sided != 0">end-on-even</xsl:when> - <!-- single-sided output --> - <xsl:otherwise>no-force</xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="set.flow.properties"> - <xsl:param name="element" select="local-name(.)"/> - <xsl:param name="master-reference" select="''"/> - - <!-- This template is called after each <fo:flow> starts. --> - <!-- Customize this template to set attributes on fo:flow --> - - <!-- remove -draft from reference --> - <xsl:variable name="pageclass"> - <xsl:choose> - <xsl:when test="contains($master-reference, '-draft')"> - <xsl:value-of select="substring-before($master-reference, '-draft')"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$master-reference"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$fop.extensions != 0 or $passivetex.extensions != 0"> - <!-- body.start.indent does not work well with these processors --> - </xsl:when> - <xsl:when test="starts-with($pageclass, 'body') or - starts-with($pageclass, 'lot') or - starts-with($pageclass, 'front') or - $element = 'preface' or - (starts-with($pageclass, 'back') and - $element = 'appendix')"> - <xsl:attribute name="start-indent"> - <xsl:value-of select="$body.start.indent"/> - </xsl:attribute> - <xsl:attribute name="end-indent"> - <xsl:value-of select="$body.end.indent"/> - </xsl:attribute> - </xsl:when> - </xsl:choose> - -</xsl:template> -<!-- ==================================================================== --> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/param.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/param.xsl deleted file mode 100644 index c6b7ef477..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/param.xsl +++ /dev/null @@ -1,891 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> - -<!-- This file is generated from param.xweb --> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<xsl:attribute-set name="abstract.properties"> - <xsl:attribute name="start-indent">0.0in</xsl:attribute> - <xsl:attribute name="end-indent">0.0in</xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="abstract.title.properties"> - <xsl:attribute name="font-family"><xsl:value-of select="$title.fontset"/></xsl:attribute> - <xsl:attribute name="font-weight">bold</xsl:attribute> - <xsl:attribute name="keep-with-next.within-column">always</xsl:attribute> - <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 * 0.8')"/></xsl:attribute> - <xsl:attribute name="space-before.maximum"><xsl:value-of select="concat($body.font.master, 'pt * 1.2')"/></xsl:attribute> - <xsl:attribute name="hyphenate">false</xsl:attribute> - <xsl:attribute name="text-align">center</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="admon.graphics.extension">.png</xsl:param> -<xsl:param name="admon.graphics" select="0"/> -<xsl:param name="admon.graphics.path">images/</xsl:param> -<xsl:param name="admon.textlabel" select="1"/> -<xsl:attribute-set name="admonition.properties"/> -<xsl:attribute-set name="admonition.title.properties"> - <xsl:attribute name="font-size">14pt</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="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">1.2em</xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="nongraphical.admonition.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="margin-left">0.25in</xsl:attribute> - <xsl:attribute name="margin-right">0.25in</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="alignment">justify</xsl:param> -<xsl:param name="appendix.autolabel">A</xsl:param> -<xsl:param name="arbortext.extensions" select="0"/> -<xsl:attribute-set name="article.appendix.title.properties" use-attribute-sets="section.title.properties section.title.level1.properties"> - <xsl:attribute name="margin-left"> - <xsl:value-of select="$title.margin.left"/> - </xsl:attribute> -</xsl:attribute-set> -<xsl:param name="author.othername.in.middle" select="1"/> -<xsl:param name="autotoc.label.separator">. </xsl:param> -<xsl:param name="axf.extensions" select="0"/> -<xsl:param name="biblioentry.item.separator">. </xsl:param> -<xsl:attribute-set name="biblioentry.properties" use-attribute-sets="normal.para.spacing"> - <xsl:attribute name="start-indent">0.5in</xsl:attribute> - <xsl:attribute name="text-indent">-0.5in</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="bibliography.collection">http://docbook.sourceforge.net/release/bibliography/bibliography.xml</xsl:param> - -<xsl:param name="bibliography.numbered" select="0"/> -<xsl:param name="bibliography.style">normal</xsl:param> -<xsl:attribute-set name="blockquote.properties"> -<xsl:attribute name="margin-left">0.5in</xsl:attribute> -<xsl:attribute name="margin-right">0.5in</xsl:attribute> -<xsl:attribute name="space-after.minimum">0.5em</xsl:attribute> -<xsl:attribute name="space-after.optimum">1em</xsl:attribute> -<xsl:attribute name="space-after.maximum">2em</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="body.font.family">serif</xsl:param> -<xsl:param name="body.font.master">10</xsl:param> -<xsl:param name="body.font.size"> - <xsl:value-of select="$body.font.master"/><xsl:text>pt</xsl:text> -</xsl:param> -<xsl:param name="body.margin.bottom">0.5in</xsl:param> -<xsl:param name="body.margin.top">0.5in</xsl:param> -<xsl:param name="body.start.indent"> - <xsl:choose> - <xsl:when test="$fop.extensions != 0">0pt</xsl:when> - <xsl:when test="$passivetex.extensions != 0">0pt</xsl:when> - <xsl:otherwise>4pc</xsl:otherwise> - </xsl:choose> -</xsl:param> -<xsl:param name="body.end.indent">0pt</xsl:param> -<xsl:param name="bridgehead.in.toc" select="0"/> -<xsl:param name="callout.defaultcolumn">60</xsl:param> - -<xsl:param name="callout.graphics.extension">.svg</xsl:param> -<xsl:param name="callout.graphics" select="1"/> -<xsl:param name="callout.icon.size">7pt</xsl:param> - -<xsl:param name="callout.graphics.number.limit">30</xsl:param> -<xsl:param name="callout.graphics.path">images/callouts/</xsl:param> -<xsl:param name="callout.unicode.font">ZapfDingbats</xsl:param> -<xsl:param name="callout.unicode" select="0"/> -<xsl:param name="callout.unicode.number.limit">10</xsl:param> -<xsl:param name="callout.unicode.start.character">10102</xsl:param> -<xsl:param name="callouts.extension" select="1"/> -<xsl:param name="chapter.autolabel" select="1"/> -<xsl:param name="collect.xref.targets">no</xsl:param> -<xsl:param name="column.count.back" select="1"/> -<xsl:param name="column.count.body" select="1"/> -<xsl:param name="column.count.front" select="1"/> -<xsl:param name="column.count.index">2</xsl:param> -<xsl:param name="column.count.lot" select="1"/> -<xsl:param name="column.count.titlepage" select="1"/> -<xsl:param name="column.gap.back">12pt</xsl:param> -<xsl:param name="column.gap.body">12pt</xsl:param> -<xsl:param name="column.gap.front">12pt</xsl:param> -<xsl:param name="column.gap.index">12pt</xsl:param> -<xsl:param name="column.gap.lot">12pt</xsl:param> -<xsl:param name="column.gap.titlepage">12pt</xsl:param> -<xsl:attribute-set name="compact.list.item.spacing"> - <xsl:attribute name="space-before.optimum">0em</xsl:attribute> - <xsl:attribute name="space-before.minimum">0em</xsl:attribute> - <xsl:attribute name="space-before.maximum">0.2em</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="component.label.includes.part.label" select="0"/> -<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 * 0.8')"/></xsl:attribute> - <xsl:attribute name="space-before.maximum"><xsl:value-of select="concat($body.font.master, 'pt * 1.2')"/></xsl:attribute> - <xsl:attribute name="hyphenate">false</xsl:attribute> - <xsl:attribute name="text-align"> - <xsl:choose> - <xsl:when test="((parent::article | parent::articleinfo | parent::info/parent::article) 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="component.titlepage.properties"> -</xsl:attribute-set> -<xsl:param name="crop.marks" select="0"/> -<xsl:param name="crop.mark.width">0.5pt</xsl:param> -<xsl:param name="crop.mark.offset">24pt</xsl:param> -<xsl:param name="crop.mark.bleed">6pt</xsl:param> -<xsl:param name="current.docid"/> -<xsl:param name="default.float.class"> - <xsl:choose> - <xsl:when test="contains($stylesheet.result.type,'html')">left</xsl:when> - <xsl:otherwise>before</xsl:otherwise> - </xsl:choose> -</xsl:param> -<xsl:param name="default.image.width"/> -<xsl:param name="default.table.width"/> -<xsl:param name="default.table.frame">all</xsl:param> -<xsl:param name="default.units">pt</xsl:param> -<xsl:param name="dingbat.font.family">serif</xsl:param> -<xsl:param name="double.sided" select="0"/> -<xsl:param name="draft.mode">maybe</xsl:param> -<xsl:param name="draft.watermark.image">http://docbook.sourceforge.net/release/images/draft.png</xsl:param> - -<xsl:param name="ebnf.assignment"> - <fo:inline xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="{$monospace.font.family}"> - <xsl:text>::=</xsl:text> - </fo:inline> -</xsl:param> - -<xsl:param name="ebnf.statement.terminator"/> -<xsl:param name="email.delimiters.enabled" select="1"/> -<xsl:attribute-set name="equation.properties" use-attribute-sets="formal.object.properties"/> -<xsl:attribute-set name="example.properties" use-attribute-sets="formal.object.properties"/> -<xsl:attribute-set name="figure.properties" use-attribute-sets="formal.object.properties"/> -<xsl:param name="firstterm.only.link" select="0"/> -<xsl:attribute-set name="footer.content.properties"> - <xsl:attribute name="font-family"> - <xsl:value-of select="$body.fontset"/> - </xsl:attribute> - <xsl:attribute name="margin-left"> - <xsl:value-of select="$title.margin.left"/> - </xsl:attribute> -</xsl:attribute-set> -<xsl:param name="footer.rule" select="1"/> -<xsl:param name="footer.column.widths">1 1 1</xsl:param> -<xsl:param name="footer.table.height">14pt</xsl:param> -<xsl:attribute-set name="footer.table.properties"> - <xsl:attribute name="table-layout">fixed</xsl:attribute> - <xsl:attribute name="width">100%</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="footers.on.blank.pages" select="1"/> -<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">1</xsl:param> -<xsl:param name="footnote.number.symbols"/> -<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="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 name="text-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:param name="fop.extensions" select="0"/> -<xsl:param name="fop1.extensions" select="0"/> -<xsl:attribute-set name="formal.object.properties"> - <xsl:attribute name="space-before.minimum">0.5em</xsl:attribute> - <xsl:attribute name="space-before.optimum">1em</xsl:attribute> - <xsl:attribute name="space-before.maximum">2em</xsl:attribute> - <xsl:attribute name="space-after.minimum">0.5em</xsl:attribute> - <xsl:attribute name="space-after.optimum">1em</xsl:attribute> - <xsl:attribute name="space-after.maximum">2em</xsl:attribute> - <xsl:attribute name="keep-together.within-column">always</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="formal.procedures" select="1"/> -<xsl:param name="formal.title.placement"> -figure before -example before -equation before -table before -procedure before -task before -</xsl:param> -<xsl:attribute-set name="formal.title.properties" use-attribute-sets="normal.para.spacing"> - <xsl:attribute name="font-weight">bold</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 name="hyphenate">false</xsl:attribute> - <xsl:attribute name="space-after.minimum">0.4em</xsl:attribute> - <xsl:attribute name="space-after.optimum">0.6em</xsl:attribute> - <xsl:attribute name="space-after.maximum">0.8em</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="funcsynopsis.decoration" select="1"/> -<xsl:param name="funcsynopsis.style">kr</xsl:param> -<xsl:param name="function.parens" select="0"/> -<xsl:param name="generate.index" select="1"/> -<xsl:param name="generate.section.toc.level" select="0"/> - -<xsl:param name="generate.toc"> -/appendix toc,title -article/appendix nop -/article toc,title -book toc,title,figure,table,example,equation -/chapter toc,title -part toc,title -/preface toc,title -reference toc,title -/sect1 toc -/sect2 toc -/sect3 toc -/sect4 toc -/sect5 toc -/section toc -set toc,title -</xsl:param> -<xsl:param name="glossary.as.blocks" select="0"/> -<xsl:param name="glossary.collection"/> -<xsl:param name="glossary.sort" select="0"/> -<xsl:param name="glossentry.show.acronym">no</xsl:param> -<xsl:param name="glosslist.as.blocks" select="0"/> -<xsl:param name="glossterm.auto.link" select="0"/> -<xsl:param name="glossterm.separation">0.25in</xsl:param> -<xsl:param name="glossterm.width">2in</xsl:param> -<xsl:param name="graphic.default.extension"/> -<xsl:attribute-set name="header.content.properties"> - <xsl:attribute name="font-family"> - <xsl:value-of select="$body.fontset"/> - </xsl:attribute> - <xsl:attribute name="margin-left"> - <xsl:value-of select="$title.margin.left"/> - </xsl:attribute> -</xsl:attribute-set> -<xsl:param name="header.rule" select="1"/> -<xsl:param name="header.column.widths">1 1 1</xsl:param> -<xsl:param name="header.table.height">14pt</xsl:param> -<xsl:attribute-set name="header.table.properties"> - <xsl:attribute name="table-layout">fixed</xsl:attribute> - <xsl:attribute name="width">100%</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="headers.on.blank.pages" select="1"/> -<xsl:param name="highlight.default.language"/> -<xsl:param name="highlight.source" select="0"/> -<xsl:param name="hyphenate">true</xsl:param> -<xsl:param name="hyphenate.verbatim" select="0"/> -<xsl:param name="hyphenate.verbatim.characters"/> -<xsl:param name="ignore.image.scaling" select="0"/> -<xsl:param name="img.src.path"/> -<xsl:param name="index.method">basic</xsl:param> -<xsl:param name="index.on.role" select="0"/> -<xsl:param name="index.on.type" select="0"/> -<xsl:attribute-set name="index.page.number.properties"> -</xsl:attribute-set> -<xsl:attribute-set name="informalequation.properties" use-attribute-sets="informal.object.properties"/> -<xsl:attribute-set name="informalexample.properties" use-attribute-sets="informal.object.properties"/> -<xsl:attribute-set name="informalfigure.properties" use-attribute-sets="informal.object.properties"/> -<xsl:attribute-set name="informal.object.properties"> - <xsl:attribute name="space-before.minimum">0.5em</xsl:attribute> - <xsl:attribute name="space-before.optimum">1em</xsl:attribute> - <xsl:attribute name="space-before.maximum">2em</xsl:attribute> - <xsl:attribute name="space-after.minimum">0.5em</xsl:attribute> - <xsl:attribute name="space-after.optimum">1em</xsl:attribute> - <xsl:attribute name="space-after.maximum">2em</xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="informaltable.properties" use-attribute-sets="informal.object.properties"/> -<xsl:attribute-set name="index.preferred.page.properties"> - <xsl:attribute name="font-weight">bold</xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="index.div.title.properties"> - <xsl:attribute name="margin-left">0pt</xsl:attribute> - <xsl:attribute name="font-size">14.4pt</xsl:attribute> - <xsl:attribute name="font-family"><xsl:value-of select="$title.fontset"/></xsl:attribute> - <xsl:attribute name="font-weight">bold</xsl:attribute> - <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 * 0.8')"/></xsl:attribute> - <xsl:attribute name="space-before.maximum"><xsl:value-of select="concat($body.font.master,'pt * 1.2')"/></xsl:attribute> - <xsl:attribute name="start-indent">0pt</xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="index.entry.properties"> - <xsl:attribute name="start-indent">0pt</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="index.number.separator"/> -<xsl:param name="index.range.separator"/> -<xsl:param name="index.term.separator"/> -<xsl:param name="insert.link.page.number">no</xsl:param> -<xsl:param name="insert.xref.page.number">no</xsl:param> -<xsl:attribute-set name="itemizedlist.properties" use-attribute-sets="list.block.properties"> -</xsl:attribute-set> -<xsl:attribute-set name="itemizedlist.label.properties"> -</xsl:attribute-set> - <xsl:param name="itemizedlist.label.width">1.0em</xsl:param> - - -<xsl:param name="keep.relative.image.uris" select="0"/> -<xsl:param name="l10n.gentext.default.language">en</xsl:param> -<xsl:param name="l10n.gentext.language"/> -<xsl:param name="l10n.gentext.use.xref.language" select="0"/> -<xsl:param name="l10n.lang.value.rfc.compliant" select="1"/> -<xsl:param name="label.from.part" select="0"/> -<xsl:param name="line-height">normal</xsl:param> -<xsl:param name="linenumbering.everyNth">5</xsl:param> -<xsl:param name="linenumbering.extension" select="1"/> -<xsl:param name="linenumbering.separator"><xsl:text> </xsl:text></xsl:param> -<xsl:param name="linenumbering.width">3</xsl:param> -<xsl:attribute-set name="list.block.properties"> - <xsl:attribute name="provisional-label-separation">0.2em</xsl:attribute> - <xsl:attribute name="provisional-distance-between-starts">1.5em</xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="list.block.spacing"> - <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">1.2em</xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="list.item.spacing"> - <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-set> -<xsl:param name="make.index.markup" select="0"/> -<xsl:param name="make.single.year.ranges" select="0"/> -<xsl:param name="make.year.ranges" select="0"/> -<xsl:attribute-set name="margin.note.properties"> - <xsl:attribute name="font-size">90%</xsl:attribute> - <xsl:attribute name="text-align">start</xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="margin.note.title.properties"> - <xsl:attribute name="font-weight">bold</xsl:attribute> - <xsl:attribute name="hyphenate">false</xsl:attribute> - <xsl:attribute name="text-align">start</xsl:attribute> - <xsl:attribute name="keep-with-next.within-column">always</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="margin.note.float.type">none</xsl:param> -<xsl:param name="margin.note.width">1in</xsl:param> -<xsl:param name="marker.section.level">2</xsl:param> -<xsl:param name="menuchoice.menu.separator"> → </xsl:param> -<xsl:param name="menuchoice.separator">+</xsl:param> -<xsl:param name="monospace.font.family">monospace</xsl:param> -<xsl:attribute-set name="monospace.properties"> - <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">no-wrap</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="nominal.table.width">6in</xsl:param> -<xsl:attribute-set name="normal.para.spacing"> - <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-set> -<xsl:param name="olink.doctitle">no</xsl:param> -<xsl:param name="olink.base.uri"/> -<xsl:param name="olink.debug" select="0"/> -<xsl:attribute-set name="olink.properties"> - <xsl:attribute name="show-destination">replace</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="olink.lang.fallback.sequence"/> -<xsl:attribute-set name="orderedlist.properties" use-attribute-sets="list.block.properties"> - <xsl:attribute name="provisional-distance-between-starts">2em</xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="orderedlist.label.properties"> -</xsl:attribute-set> -<xsl:param name="orderedlist.label.width">1.2em</xsl:param> -<xsl:param name="prefer.internal.olink" select="0"/> -<xsl:param name="insert.olink.page.number">no</xsl:param> -<xsl:param name="insert.olink.pdf.frag" select="0"/> -<xsl:param name="page.height"> - <xsl:choose> - <xsl:when test="$page.orientation = 'portrait'"> - <xsl:value-of select="$page.height.portrait"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$page.width.portrait"/> - </xsl:otherwise> - </xsl:choose> -</xsl:param> -<xsl:param name="page.height.portrait"> - <xsl:choose> - <xsl:when test="$paper.type = 'A4landscape'">210mm</xsl:when> - <xsl:when test="$paper.type = 'USletter'">11in</xsl:when> - <xsl:when test="$paper.type = 'USlandscape'">8.5in</xsl:when> - <xsl:when test="$paper.type = '4A0'">2378mm</xsl:when> - <xsl:when test="$paper.type = '2A0'">1682mm</xsl:when> - <xsl:when test="$paper.type = 'A0'">1189mm</xsl:when> - <xsl:when test="$paper.type = 'A1'">841mm</xsl:when> - <xsl:when test="$paper.type = 'A2'">594mm</xsl:when> - <xsl:when test="$paper.type = 'A3'">420mm</xsl:when> - <xsl:when test="$paper.type = 'A4'">297mm</xsl:when> - <xsl:when test="$paper.type = 'A5'">210mm</xsl:when> - <xsl:when test="$paper.type = 'A6'">148mm</xsl:when> - <xsl:when test="$paper.type = 'A7'">105mm</xsl:when> - <xsl:when test="$paper.type = 'A8'">74mm</xsl:when> - <xsl:when test="$paper.type = 'A9'">52mm</xsl:when> - <xsl:when test="$paper.type = 'A10'">37mm</xsl:when> - <xsl:when test="$paper.type = 'B0'">1414mm</xsl:when> - <xsl:when test="$paper.type = 'B1'">1000mm</xsl:when> - <xsl:when test="$paper.type = 'B2'">707mm</xsl:when> - <xsl:when test="$paper.type = 'B3'">500mm</xsl:when> - <xsl:when test="$paper.type = 'B4'">353mm</xsl:when> - <xsl:when test="$paper.type = 'B5'">250mm</xsl:when> - <xsl:when test="$paper.type = 'B6'">176mm</xsl:when> - <xsl:when test="$paper.type = 'B7'">125mm</xsl:when> - <xsl:when test="$paper.type = 'B8'">88mm</xsl:when> - <xsl:when test="$paper.type = 'B9'">62mm</xsl:when> - <xsl:when test="$paper.type = 'B10'">44mm</xsl:when> - <xsl:when test="$paper.type = 'C0'">1297mm</xsl:when> - <xsl:when test="$paper.type = 'C1'">917mm</xsl:when> - <xsl:when test="$paper.type = 'C2'">648mm</xsl:when> - <xsl:when test="$paper.type = 'C3'">458mm</xsl:when> - <xsl:when test="$paper.type = 'C4'">324mm</xsl:when> - <xsl:when test="$paper.type = 'C5'">229mm</xsl:when> - <xsl:when test="$paper.type = 'C6'">162mm</xsl:when> - <xsl:when test="$paper.type = 'C7'">114mm</xsl:when> - <xsl:when test="$paper.type = 'C8'">81mm</xsl:when> - <xsl:when test="$paper.type = 'C9'">57mm</xsl:when> - <xsl:when test="$paper.type = 'C10'">40mm</xsl:when> - <xsl:otherwise>11in</xsl:otherwise> - </xsl:choose> -</xsl:param> -<xsl:param name="page.margin.bottom">0.5in</xsl:param> -<xsl:param name="page.margin.inner"> - <xsl:choose> - <xsl:when test="$double.sided != 0">1.25in</xsl:when> - <xsl:otherwise>1in</xsl:otherwise> - </xsl:choose> -</xsl:param> -<xsl:param name="page.margin.outer"> - <xsl:choose> - <xsl:when test="$double.sided != 0">0.75in</xsl:when> - <xsl:otherwise>1in</xsl:otherwise> - </xsl:choose> -</xsl:param> -<xsl:param name="page.margin.top">0.5in</xsl:param> -<xsl:param name="page.orientation">portrait</xsl:param> -<xsl:param name="page.width"> - <xsl:choose> - <xsl:when test="$page.orientation = 'portrait'"> - <xsl:value-of select="$page.width.portrait"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$page.height.portrait"/> - </xsl:otherwise> - </xsl:choose> -</xsl:param> -<xsl:param name="page.width.portrait"> - <xsl:choose> - <xsl:when test="$paper.type = 'USletter'">8.5in</xsl:when> - <xsl:when test="$paper.type = '4A0'">1682mm</xsl:when> - <xsl:when test="$paper.type = '2A0'">1189mm</xsl:when> - <xsl:when test="$paper.type = 'A0'">841mm</xsl:when> - <xsl:when test="$paper.type = 'A1'">594mm</xsl:when> - <xsl:when test="$paper.type = 'A2'">420mm</xsl:when> - <xsl:when test="$paper.type = 'A3'">297mm</xsl:when> - <xsl:when test="$paper.type = 'A4'">210mm</xsl:when> - <xsl:when test="$paper.type = 'A5'">148mm</xsl:when> - <xsl:when test="$paper.type = 'A6'">105mm</xsl:when> - <xsl:when test="$paper.type = 'A7'">74mm</xsl:when> - <xsl:when test="$paper.type = 'A8'">52mm</xsl:when> - <xsl:when test="$paper.type = 'A9'">37mm</xsl:when> - <xsl:when test="$paper.type = 'A10'">26mm</xsl:when> - <xsl:when test="$paper.type = 'B0'">1000mm</xsl:when> - <xsl:when test="$paper.type = 'B1'">707mm</xsl:when> - <xsl:when test="$paper.type = 'B2'">500mm</xsl:when> - <xsl:when test="$paper.type = 'B3'">353mm</xsl:when> - <xsl:when test="$paper.type = 'B4'">250mm</xsl:when> - <xsl:when test="$paper.type = 'B5'">176mm</xsl:when> - <xsl:when test="$paper.type = 'B6'">125mm</xsl:when> - <xsl:when test="$paper.type = 'B7'">88mm</xsl:when> - <xsl:when test="$paper.type = 'B8'">62mm</xsl:when> - <xsl:when test="$paper.type = 'B9'">44mm</xsl:when> - <xsl:when test="$paper.type = 'B10'">31mm</xsl:when> - <xsl:when test="$paper.type = 'C0'">917mm</xsl:when> - <xsl:when test="$paper.type = 'C1'">648mm</xsl:when> - <xsl:when test="$paper.type = 'C2'">458mm</xsl:when> - <xsl:when test="$paper.type = 'C3'">324mm</xsl:when> - <xsl:when test="$paper.type = 'C4'">229mm</xsl:when> - <xsl:when test="$paper.type = 'C5'">162mm</xsl:when> - <xsl:when test="$paper.type = 'C6'">114mm</xsl:when> - <xsl:when test="$paper.type = 'C7'">81mm</xsl:when> - <xsl:when test="$paper.type = 'C8'">57mm</xsl:when> - <xsl:when test="$paper.type = 'C9'">40mm</xsl:when> - <xsl:when test="$paper.type = 'C10'">28mm</xsl:when> - <xsl:otherwise>8.5in</xsl:otherwise> - </xsl:choose> -</xsl:param> -<xsl:param name="paper.type">USletter</xsl:param> -<xsl:param name="part.autolabel">I</xsl:param> -<xsl:param name="passivetex.extensions" select="0"/> -<xsl:attribute-set name="pgwide.properties"> - <xsl:attribute name="start-indent">0pt</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="preface.autolabel" select="0"/> -<xsl:param name="preferred.mediaobject.role"/> -<xsl:attribute-set name="procedure.properties" use-attribute-sets="formal.object.properties"> - <xsl:attribute name="keep-together.within-column">auto</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="process.empty.source.toc" select="0"/> -<xsl:param name="process.source.toc" select="0"/> -<xsl:param name="profile.arch"/> -<xsl:param name="profile.audience"/> -<xsl:param name="profile.attribute"/> -<xsl:param name="profile.condition"/> -<xsl:param name="profile.conformance"/> -<xsl:param name="profile.lang"/> -<xsl:param name="profile.os"/> -<xsl:param name="profile.revision"/> -<xsl:param name="profile.revisionflag"/> -<xsl:param name="profile.role"/> -<xsl:param name="profile.security"/> -<xsl:param name="profile.separator">;</xsl:param> -<xsl:param name="profile.status"/> -<xsl:param name="profile.userlevel"/> -<xsl:param name="profile.value"/> -<xsl:param name="profile.vendor"/> -<xsl:param name="profile.wordsize"/> -<xsl:param name="punct.honorific">.</xsl:param> -<xsl:param name="qanda.defaultlabel">number</xsl:param> -<xsl:param name="qanda.in.toc" select="0"/> -<xsl:param name="qanda.nested.in.toc" select="0"/> -<xsl:param name="qanda.inherit.numeration" select="1"/> -<xsl:param name="qandadiv.autolabel" select="1"/> -<xsl:attribute-set name="qanda.title.level1.properties"> - <xsl:attribute name="font-size"> - <xsl:value-of select="$body.font.master * 2.0736"/> - <xsl:text>pt</xsl:text> - </xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="qanda.title.level2.properties"> - <xsl:attribute name="font-size"> - <xsl:value-of select="$body.font.master * 1.728"/> - <xsl:text>pt</xsl:text> - </xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="qanda.title.level3.properties"> - <xsl:attribute name="font-size"> - <xsl:value-of select="$body.font.master * 1.44"/> - <xsl:text>pt</xsl:text> - </xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="qanda.title.level4.properties"> - <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="qanda.title.level5.properties"> - <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="qanda.title.level6.properties"> - <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="qanda.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 qanda.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-set> -<xsl:param name="refentry.generate.name" select="1"/> -<xsl:param name="refentry.generate.title" select="0"/> -<xsl:param name="refentry.pagebreak" select="1"/> -<xsl:attribute-set name="refentry.title.properties"> - <xsl:attribute name="font-family"> - <xsl:value-of select="$title.font.family"/> - </xsl:attribute> - <xsl:attribute name="font-size">18pt</xsl:attribute> - <xsl:attribute name="font-weight">bold</xsl:attribute> - <xsl:attribute name="space-after">1em</xsl:attribute> - <xsl:attribute name="hyphenate">false</xsl:attribute> - <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="space-after.optimum">0.5em</xsl:attribute> - <xsl:attribute name="space-after.minimum">0.4em</xsl:attribute> - <xsl:attribute name="space-after.maximum">0.6em</xsl:attribute> - <xsl:attribute name="start-indent"><xsl:value-of select="$title.margin.left"/></xsl:attribute> -</xsl:attribute-set> -<xsl:param name="refentry.xref.manvolnum" select="1"/> - <xsl:param name="reference.autolabel">I</xsl:param> -<xsl:param name="refclass.suppress" select="0"/> -<xsl:param name="region.after.extent">0.4in</xsl:param> -<xsl:param name="region.before.extent">0.4in</xsl:param> -<xsl:attribute-set name="revhistory.table.properties"> -</xsl:attribute-set> -<xsl:attribute-set name="revhistory.table.cell.properties"> -</xsl:attribute-set> -<xsl:attribute-set name="revhistory.title.properties"> -</xsl:attribute-set> -<xsl:attribute-set name="root.properties"> - <xsl:attribute name="font-family"> - <xsl:value-of select="$body.fontset"/> - </xsl:attribute> - <xsl:attribute name="font-size"> - <xsl:value-of select="$body.font.size"/> - </xsl:attribute> - <xsl:attribute name="text-align"> - <xsl:value-of select="$alignment"/> - </xsl:attribute> - <xsl:attribute name="line-height"> - <xsl:value-of select="$line-height"/> - </xsl:attribute> - <xsl:attribute name="font-selection-strategy">character-by-character</xsl:attribute> - <xsl:attribute name="line-height-shift-adjustment">disregard-shifts</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="rootid"/> -<xsl:param name="runinhead.default.title.end.punct">.</xsl:param> -<xsl:param name="runinhead.title.end.punct">.!?:</xsl:param> -<xsl:param name="sans.font.family">sans-serif</xsl:param> -<xsl:param name="section.autolabel" select="0"/> -<xsl:param name="section.autolabel.max.depth">8</xsl:param> -<xsl:param name="section.container.element">block</xsl:param> -<xsl:param name="section.label.includes.component.label" select="0"/> -<xsl:attribute-set name="section.title.level1.properties"> - <xsl:attribute name="font-size"> - <xsl:value-of select="$body.font.master * 2.0736"/> - <xsl:text>pt</xsl:text> - </xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="section.title.level2.properties"> - <xsl:attribute name="font-size"> - <xsl:value-of select="$body.font.master * 1.728"/> - <xsl:text>pt</xsl:text> - </xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="section.title.level3.properties"> - <xsl:attribute name="font-size"> - <xsl:value-of select="$body.font.master * 1.44"/> - <xsl:text>pt</xsl:text> - </xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="section.title.level4.properties"> - <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="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.level6.properties"> - <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:attribute-set name="section.level1.properties" use-attribute-sets="section.properties"> -</xsl:attribute-set> -<xsl:attribute-set name="section.level2.properties" use-attribute-sets="section.properties"> -</xsl:attribute-set> -<xsl:attribute-set name="section.level3.properties" use-attribute-sets="section.properties"> -</xsl:attribute-set> -<xsl:attribute-set name="section.level4.properties" use-attribute-sets="section.properties"> -</xsl:attribute-set> -<xsl:attribute-set name="section.level5.properties" use-attribute-sets="section.properties"> -</xsl:attribute-set> -<xsl:attribute-set name="section.level6.properties" use-attribute-sets="section.properties"> -</xsl:attribute-set> -<xsl:attribute-set name="section.properties"> -</xsl:attribute-set> -<xsl:param name="segmentedlist.as.table" select="0"/> -<xsl:param name="shade.verbatim" select="0"/> - -<xsl:attribute-set name="shade.verbatim.style"> - <xsl:attribute name="background-color">#E0E0E0</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="show.comments" select="1"/> -<xsl:attribute-set name="sidebar.properties" use-attribute-sets="formal.object.properties"> - <xsl:attribute name="border-style">solid</xsl:attribute> - <xsl:attribute name="border-width">1pt</xsl:attribute> - <xsl:attribute name="border-color">black</xsl:attribute> - <xsl:attribute name="background-color">#DDDDDD</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">0pt</xsl:attribute> - <xsl:attribute name="margin-right">0pt</xsl:attribute> -<!-- - <xsl:attribute name="margin-top">6pt</xsl:attribute> - <xsl:attribute name="margin-bottom">6pt</xsl:attribute> ---> -</xsl:attribute-set> -<xsl:attribute-set name="sidebar.title.properties"> - <xsl:attribute name="font-weight">bold</xsl:attribute> - <xsl:attribute name="hyphenate">false</xsl:attribute> - <xsl:attribute name="text-align">start</xsl:attribute> - <xsl:attribute name="keep-with-next.within-column">always</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="sidebar.float.type">none</xsl:param> -<xsl:param name="sidebar.float.width">1in</xsl:param> -<xsl:param name="simplesect.in.toc" select="0"/> -<xsl:attribute-set name="subscript.properties"> - <xsl:attribute name="font-size">75%</xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="superscript.properties"> - <xsl:attribute name="font-size">75%</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="symbol.font.family">Symbol,ZapfDingbats</xsl:param> - -<xsl:param name="table.cell.border.color">black</xsl:param> -<xsl:param name="table.cell.border.style">solid</xsl:param> -<xsl:param name="table.cell.border.thickness">0.5pt</xsl:param> -<xsl:attribute-set name="table.cell.padding"> - <xsl:attribute name="padding-left">2pt</xsl:attribute> - <xsl:attribute name="padding-right">2pt</xsl:attribute> - <xsl:attribute name="padding-top">2pt</xsl:attribute> - <xsl:attribute name="padding-bottom">2pt</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="table.footnote.number.format">a</xsl:param> -<xsl:param name="table.footnote.number.symbols"/> -<xsl:attribute-set name="table.footnote.properties"> - <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="space-before">2pt</xsl:attribute> - <xsl:attribute name="text-align"><xsl:value-of select="$alignment"/></xsl:attribute> -</xsl:attribute-set> - -<xsl:param name="table.frame.border.color">black</xsl:param> -<xsl:param name="table.frame.border.style">solid</xsl:param> -<xsl:param name="table.frame.border.thickness">0.5pt</xsl:param> -<xsl:attribute-set name="table.properties" use-attribute-sets="formal.object.properties"/> -<xsl:param name="tablecolumns.extension" select="1"/> -<xsl:attribute-set name="table.table.properties"> - <xsl:attribute name="border-before-width.conditionality">retain</xsl:attribute> - <xsl:attribute name="border-collapse">collapse</xsl:attribute> -</xsl:attribute-set> - <xsl:param name="target.database.document">olinkdb.xml</xsl:param> -<xsl:param name="targets.filename">target.db</xsl:param> -<xsl:param name="textdata.default.encoding"/> -<xsl:param name="tex.math.delims" select="1"/> -<xsl:param name="tex.math.in.alt"/> - <xsl:param name="textinsert.extension" select="1"/> -<xsl:param name="title.font.family">sans-serif</xsl:param> -<xsl:param name="title.margin.left"> - <xsl:choose> - <xsl:when test="$fop.extensions != 0">-4pc</xsl:when> - <xsl:when test="$passivetex.extensions != 0">0pt</xsl:when> - <xsl:otherwise>0pt</xsl:otherwise> - </xsl:choose> -</xsl:param> -<xsl:param name="toc.indent.width">24</xsl:param> -<!-- inconsistent point specification? --> -<xsl:attribute-set name="toc.line.properties"> - <xsl:attribute name="text-align-last">justify</xsl:attribute> - <xsl:attribute name="text-align">start</xsl:attribute> - <xsl:attribute name="end-indent"><xsl:value-of select="concat($toc.indent.width, 'pt')"/></xsl:attribute> - <xsl:attribute name="last-line-end-indent"><xsl:value-of select="concat('-', $toc.indent.width, 'pt')"/></xsl:attribute> -</xsl:attribute-set> -<xsl:attribute-set name="toc.margin.properties"> - <xsl:attribute name="space-before.minimum">0.5em</xsl:attribute> - <xsl:attribute name="space-before.optimum">1em</xsl:attribute> - <xsl:attribute name="space-before.maximum">2em</xsl:attribute> - <xsl:attribute name="space-after.minimum">0.5em</xsl:attribute> - <xsl:attribute name="space-after.optimum">1em</xsl:attribute> - <xsl:attribute name="space-after.maximum">2em</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="toc.max.depth">8</xsl:param> -<xsl:param name="toc.section.depth">2</xsl:param> -<xsl:param name="ulink.footnotes" select="0"/> -<xsl:param name="ulink.hyphenate"/> -<xsl:param name="ulink.hyphenate.chars">/</xsl:param> -<xsl:param name="ulink.show" select="1"/> -<xsl:param name="use.extensions" select="0"/> -<xsl:param name="use.local.olink.style" select="0"/> -<xsl:param name="use.role.as.xrefstyle" select="1"/> -<xsl:param name="use.role.for.mediaobject" select="1"/> -<xsl:param name="use.svg" select="1"/> -<xsl:param name="variablelist.as.blocks" select="0"/> -<xsl:param name="variablelist.max.termlength">24</xsl:param> -<xsl:param name="variablelist.term.separator">, </xsl:param> -<xsl:param name="variablelist.term.break.after">0</xsl:param> -<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">no-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="xep.extensions" select="0"/> -<xsl:attribute-set name="xep.index.item.properties" use-attribute-sets="index.page.number.properties"> - <xsl:attribute name="merge-subsequent-page-numbers">true</xsl:attribute> - <xsl:attribute name="link-back">true</xsl:attribute> -</xsl:attribute-set> -<xsl:param name="xref.label-page.separator"><xsl:text> </xsl:text></xsl:param> -<xsl:param name="xref.label-title.separator">: </xsl:param> -<xsl:attribute-set name="xref.properties"> -</xsl:attribute-set> -<xsl:param name="xref.title-page.separator"><xsl:text> </xsl:text></xsl:param> -<xsl:param name="xref.with.number.and.title" select="1"/> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/passivetex.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/passivetex.xsl deleted file mode 100644 index 9fa13dd7a..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/passivetex.xsl +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version='1.0' encoding="utf-8"?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - This extension stops PassiveTeX from merging subsequent '-' to - dashes. You must set passivetex.extensions to '1' if you want get - this functionality. - ******************************************************************** --> - -<xsl:template name="passivetex.dash.subst"> - <xsl:param name="string"/> - - <xsl:choose> - <xsl:when test="contains($string, '--')"> - <xsl:variable name="rest"> - <xsl:call-template name="passivetex.dash.subst"> - <xsl:with-param name="string" - select="concat('-', substring-after($string, '--'))"/> - </xsl:call-template> - </xsl:variable> - <xsl:value-of select="concat(substring-before($string, '--'), - '-​', - $rest)"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$string"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -</xsl:stylesheet> - diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/pdf2index b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/pdf2index deleted file mode 100755 index c14d8ecdb..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/pdf2index +++ /dev/null @@ -1,140 +0,0 @@ -#!/usr/bin/perl -- # -*- Perl -*- - -# this needs some cleanup... - -my $PSTOTEXT = "pstotext"; - -my $pdf = shift @ARGV; - -my $index = ""; -my $inindex = 0; -open (F, "$PSTOTEXT $pdf |"); -while (<F>) { - if (/^<\/index/) { - $index .= $_; - $inindex = 0; - } - $inindex = 1 if /^<index/; - - if ($inindex) { - $index .= $_ if /^\s*</; - } -} - -my $cindex = ""; -while ($index =~ /^(.*?)((<phrase role=\"pageno\">.*?<\/phrase>\s*)+)/s) { - $cindex .= $1; - $_ = $2; - $index = $'; # ' - - my @pages = m/<phrase role=\"pageno\">.*?<\/phrase>\s*/sg; - - # Expand ranges - if ($#pages >= 0) { - my @mpages = (); - foreach my $page (@pages) { - my $pageno = &pageno($page); - if ($pageno =~ /^([0-9]+)[^0-9]([0-9]+)$/) { # funky - - for (my $count = $1; $count <= $2; $count++) { - push (@mpages, "<phrase role=\"$pageno\">$count</phrase>"); - } - } else { - push (@mpages, $page); - } - } - @pages = sort rangesort @mpages; - } - - # Remove duplicates... - if ($#pages > 0) { - my @mpages = (); - my $current = ""; - foreach my $page (@pages) { - my $pageno = &pageno($page); - if ($pageno ne $current) { - push (@mpages, $page); - $current = $pageno; - } - } - @pages = @mpages; - } - - # Collapse ranges... - if ($#pages > 1) { - my @cpages = (); - while (@pages) { - my $count = 0; - my $len = &rangelen($count, @pages); - if ($len <= 2) { - my $page = shift @pages; - push (@cpages, $page); - } else { - my $fpage = shift @pages; - my $lpage = ""; - while ($len > 1) { - $lpage = shift @pages; - $len--; - } - my $fpno = &pageno($fpage); - my $lpno = &pageno($lpage); - $fpage =~ s/>$fpno</>${fpno}-$lpno</s; - push (@cpages, $fpage); - } - } - @pages = @cpages; - } - - my $page = shift @pages; - $page =~ s/\s*$//s; - $cindex .= $page; - while (@pages) { - $page = shift @pages; - $page =~ s/\s*$//s; - $cindex .= ", $page"; - } -} -$cindex .= $index; - -print "$cindex\n"; - -sub pageno { - my $page = shift; - - $page =~ s/^<phrase.*?>//; - $page =~ s/^<link.*?>//; - - return $1 if $page =~ /^([^<>]+)/; - return "?"; -} - -sub rangesort { - my $apno = &pageno($a); - my $bpno = &pageno($b); - - # Make sure roman pages come before arabic ones, otherwise sort them in order - return -1 if ($apno !~ /^\d+/ && $bpno =~ /^\d+/); - return 1 if ($apno =~ /^\d+/ && $bpno !~ /^\d+/); - return $apno <=> $bpno; -} - -sub rangelen { - my $count = shift; - my @pages = @_; - my $len = 1; - my $inrange = 1; - - my $current = &pageno($pages[$count]); - while ($count < $#pages && $inrange) { - $count++; - my $next = &pageno($pages[$count]); - if ($current + 1 eq $next) { - $current = $next; - $inrange = 1; - $len++; - } else { - $inrange = 0; - } - } - - return $len; -} diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/pi.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/pi.xsl deleted file mode 100644 index afcf558d8..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/pi.xsl +++ /dev/null @@ -1,1008 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet - xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:xlink="http://www.w3.org/1999/xlink" - exclude-result-prefixes="doc" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<doc:reference xmlns=""><info><title>FO Processing Instruction Reference</title> - <releaseinfo role="meta"> - $Id$ - </releaseinfo> - </info> - - <partintro id="partintro"> - <title>Introduction</title> - - <para>This is generated reference documentation for all - user-specifiable processing instructions (PIs) in the DocBook - XSL stylesheets for FO output. - <note> - <para>You add these PIs at particular points in a document to - cause specific “exceptions†to formatting/output behavior. To - make global changes in formatting/output behavior across an - entire document, it’s better to do it by setting an - appropriate stylesheet parameter (if there is one).</para> - </note> - </para> - </partintro> -</doc:reference> - -<!-- ==================================================================== --> - -<doc:pi name="dbfo_background-color" xmlns=""> - <refpurpose>Sets background color for an image</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo background-color</tag> PI before or - after an image (<tag>graphic</tag>, <tag>inlinegraphic</tag>, - <tag>imagedata</tag>, or <tag>videodata</tag> element) as a - sibling to the element, to set a background color for the - image.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo background-color="<replaceable>color</replaceable>"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>background-color="<replaceable>color</replaceable>"</term> - <listitem> - <para>An HTML color value</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="tcg"> - <para><link role="tcg" - xlink:href="BGcolor.html" - >Background color</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_background-color"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'background-color'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_bgcolor" xmlns=""> - <refpurpose>Sets background color on a table row or table cell</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo bgcolor</tag> PI as child of a table row - or cell to set a background color for that table row or cell.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo bgcolor="<replaceable>color</replaceable>"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>bgcolor="<replaceable>color</replaceable>"</term> - <listitem> - <para>An HTML color value</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="tcg"> - <para><link role="tcg" - xlink:href="BGtableColor.html#CellBGColor" - >Cell background color</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_bgcolor"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'bgcolor'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_float-type" xmlns=""> - <refpurpose>Specifies float behavior for a sidebar</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo float-type</tag> PI to specify the float - behavior for a <tag>sidebar</tag> (to cause the sidebar to be - displayed as a marginal note).</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo float-type="margin.note"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>float-type="margin.note"</term> - <listitem> - <para>Specifies that the <tag>sidebar</tag> should be - displayed as a marginal note.</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="params"> - <para><parameter>sidebar.float.type parameter</parameter>, - <parameter>sidebar.float.width parameter</parameter>, - <parameter>sidebar.properties attribute-set</parameter>, - <parameter>sidebar.title.properties</parameter> - </para> - </refsee> - <refsee role="tcg"> - <para><link xlink:href="SideFloats.html#SidebarFloats" >A sidebar as - side float</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_float-type"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'float-type'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_glossary-presentation" xmlns=""> - <refpurpose>Specifies presentation style for a glossary</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo glossary-presentation</tag> PI as a child of - a <tag>glossary</tag> to control its presentation style.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo glossary-presentation="list"|"blocks"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>glossary-presentation="list"</term> - <listitem> - <para>Displays the glossary as a list</para> - </listitem> - </varlistentry> - <varlistentry><term>glossary-presentation="blocks"</term> - <listitem> - <para>Displays the glossary as blocks</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="params"> - <para><parameter>glossary.as.blocks</parameter></para> - </refsee> - <refsee role="tcg"> - <para><link xlink:href="Glossaries.html#GlossaryFormatPrint" >Glossary - formatting in print</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_glossary-presentation"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'glossary-presentation'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_glosslist-presentation" xmlns=""> - <refpurpose>Specifies presentation style for a glosslist</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo glosslist-presentation</tag> PI as a child of - a <tag>glosslist</tag> to control its presentation style.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo glosslist-presentation="list"|"blocks"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>glosslist-presentation="list"</term> - <listitem> - <para>Displays the glosslist as a list</para> - </listitem> - </varlistentry> - <varlistentry><term>glosslist-presentation="blocks"</term> - <listitem> - <para>Displays the glosslist as blocks</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="params"> - <para><parameter>glosslist.as.blocks</parameter> </para> - </refsee> - <refsee role="tcg"> - <para><link xlink:href="Glossaries.html#GlossaryFormatPrint" >Glossary - formatting in print</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_glosslist-presentation"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'glosslist-presentation'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_glossterm-width" xmlns=""> - <refpurpose>Specifies the glossterm width for a glossary or - glosslist</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo glossterm-width</tag> PI as a child of a - <tag>glossary</tag> or <tag>glosslist</tag> to specify the - width for output of <tag>glossterm</tag> instances in the - output.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo glossterm-width="<replaceable>width</replaceable>"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>glossterm-width="<replaceable>width</replaceable>"</term> - <listitem> - <para>Specifies the glossterm width (including units)</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="params"> - <para><parameter>glossterm.width</parameter>, - <parameter>glossterm.separation</parameter> - </para> - </refsee> - <refsee role="tcg"> - <para><link xlink:href="Glossaries.html#GlossaryFormatPrint" >Glossary - formatting in print</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_glossterm-width"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'glossterm-width'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_keep-together" xmlns=""> - <refpurpose>Specifies “keep†behavior for a table, example, - figure, or equation</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo keep-together</tag> PI as a child of a - formal object (<tag>table</tag>, <tag>example</tag>, - <tag>figure</tag>, or <tag>equation</tag>) or their informal - equivalents) to specify “keep†behavior for the object (to - allow the object to “break†across a page).</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo keep-together="auto"|"always"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>keep-together="auto"</term> - <listitem> - <para>Enables the object to break across a page</para> - </listitem> - </varlistentry> - <varlistentry><term>keep-together="always"</term> - <listitem> - <para>Prevents the object from breaking across a page (the - default stylesheet behavior)</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="params"> - <para>formal.object.properties</para> - </refsee> - <refsee role="tcg"> - <para><link xlink:href="PageBreaking.html#KeepTogetherPI" - >Keep-together processing instruction</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_keep-together"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'keep-together'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_label-width" xmlns=""> - <refpurpose>Specifies the label width for a qandaset</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo label-width</tag> PI as a child of a - <tag>qandaset</tag> to specify the width of labels.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo label-width="<replaceable>width</replaceable>"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>label-width="<replaceable>width</replaceable>"</term> - <listitem> - <para>Specifies the label width (including units)</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="tcg"> - <para><link role="tcg" - xlink:href="QandAformat.html" - >Q and A formatting</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_label-width"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'label-width'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_linenumbering.everyNth" xmlns=""> - <refpurpose>Specifies interval for lines numbers in verbatims</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo linenumbering.everyNth</tag> PI as a child - of a “verbatim†element – <tag>programlisting</tag>, - <tag>screen</tag>, <tag>synopsis</tag> — to specify - the interval at which lines are numbered.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo linenumbering.everyNth="<replaceable>N</replaceable>"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>linenumbering.everyNth="<replaceable>N</replaceable>"</term> - <listitem> - <para>Specifies numbering interval; a number is output - before every <replaceable>N</replaceable>th line</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="params"> - <para><parameter>linenumbering.everyNth</parameter></para> - </refsee> - <refsee role="tcg"> - <para><link role="tcg" - xlink:href="AnnotateListing.html#LineNumbering" - >Line numbering</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_linenumbering.everyNth"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'linenumbering.everyNth'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_linenumbering.separator" xmlns=""> - <refpurpose>Specifies separator text for line numbers in verbatims</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo linenumbering.separator</tag> PI as a child - of a “verbatim†element – <tag>programlisting</tag>, - <tag>screen</tag>, <tag>synopsis</tag> — to specify - the separator text output between the line numbers and content.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo linenumbering.separator="<replaceable>text</replaceable>"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>linenumbering.separator="<replaceable>text</replaceable>"</term> - <listitem> - <para>Specifies the text (zero or more characters)</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="params"> - <para><parameter>linenumbering.separator</parameter></para> - </refsee> - <refsee role="tcg"> - <para><link role="tcg" - xlink:href="AnnotateListing.html#LineNumbering" - >Line numbering</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_linenumbering.separator"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'linenumbering.separator'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_linenumbering.width" xmlns=""> - <refpurpose>Specifies width for line numbers in verbatims</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo linenumbering.width</tag> PI as a child - of a “verbatim†element – <tag>programlisting</tag>, - <tag>screen</tag>, <tag>synopsis</tag> — to specify - the width set aside for line numbers.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo linenumbering.width="<replaceable>width</replaceable>"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>linenumbering.width="<replaceable>width</replaceable>"</term> - <listitem> - <para>Specifies the width (inluding units)</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="params"> - <para><parameter>linenumbering.width</parameter></para> - </refsee> - <refsee role="tcg"> - <para><link role="tcg" - xlink:href="AnnotateListing.html#LineNumbering" - >Line numbering</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_linenumbering.width"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'linenumbering.width'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_list-presentation" xmlns=""> - <refpurpose>Specifies presentation style for a variablelist or - segmentedlist</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo list-presentation</tag> PI as a child of - a <tag>variablelist</tag> or <tag>segmentedlist</tag> to - control the presentation style for the list (to cause it, for - example, to be displayed as a table).</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo list-presentation="list"|"blocks"|"table"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>list-presentation="list"</term> - <listitem> - <para>Displays the list as a list</para> - </listitem> - </varlistentry> - <varlistentry><term>list-presentation="blocks"</term> - <listitem> - <para>(<tag>variablelist</tag> only) Displays the list as blocks</para> - </listitem> - </varlistentry> - <varlistentry><term>list-presentation="table"</term> - <listitem> - <para>(<tag>segmentedlist</tag> only) Displays the list as a table</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="params"> - <itemizedlist> - <listitem> - <para><parameter>variablelist.as.blocks</parameter></para> - </listitem> - <listitem> - <para><parameter>variablelist.as.table</parameter></para> - </listitem> - </itemizedlist> - </refsee> - <refsee role="tcg"> - <para><link role="tcg" - xlink:href="Variablelists.html#ListIndents" - >Variable list formatting in print</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_list-presentation"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'list-presentation'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_list-width" xmlns=""> - <refpurpose>Specifies the width of a horizontal simplelist</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo list-width</tag> PI as a child of a - <tag>simplelist</tag> whose <tag class="attribute">class</tag> - value is <literal>horizontal</literal>, to specify the width - of the <tag>simplelist</tag>.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo list-width="<replaceable>width</replaceable>"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>list-width="<replaceable>width</replaceable>"</term> - <listitem> - <para>Specifies the <tag>simplelist</tag> width (including units)</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> -</doc:pi> -<xsl:template name="pi.dbfo_list-width"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'list-width'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_orientation" xmlns=""> - <refpurpose>Specifies the orientation for table row or cell</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo orientation</tag> PI as a child of an - <tag>table</tag> row or cell to specify the orientation - (rotation) for the row or cell.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo orientation="0"|"90"|"180"|"270"|"-90"|"-180"|"-270"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>orientation="0"|"90"|"180"|"270"|"-90"|"-180"|"-270"</term> - <listitem> - <para>Specifies the number of degrees by which the cell or - row is rotated</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> -</doc:pi> -<xsl:template name="pi.dbfo_orientation"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'orientation'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_pgwide" xmlns=""> - <refpurpose>Specifies if an <tag>equation</tag> or <tag>example</tag> goes across full page width</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo pgwide</tag> PI as a child of an - <tag>equation</tag> or <tag>example</tag> to specify that the - content should rendered across the full width of the page.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo pgwide="0"|"1"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>pgwide="0"</term> - <listitem> - <para>If zero, the content is rendered across the current - text flow</para> - </listitem> - </varlistentry> - <varlistentry><term>pgwide="1"</term> - <listitem> - <para>If <code>1</code> (or any non-zero value), the - content is rendered across the full width of the page</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="params"> - <para><parameter>pgwide.properties</parameter></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_pgwide"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'pgwide'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_rotated-width" xmlns=""> - <refpurpose>Specifies the width for a table <tag>entry</tag> or - <tag>row</tag></refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo rotated-width</tag> PI as a child of an - <tag>entry</tag> or <tag>row</tag> instance to specify the - width of that the <tag>entry</tag> or <tag>row</tag>; or - use it higher up in table to cause the width to be inherited - recursively down.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo rotated-width="<replaceable>width</replaceable>"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>rotated-width="<replaceable>width</replaceable>"</term> - <listitem> - <para>Specifies the width of a row or cell (including units)</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> -</doc:pi> -<xsl:template name="pi.dbfo_rotated-width"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'rotated-width'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_sidebar-width" xmlns=""> - <refpurpose>Specifies the width of a sidebar</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo sidebar-width</tag> PI as a child of a - <tag>sidebar</tag> to specify the width of the sidebar.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo sidebar-width="<replaceable>width</replaceable>"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>sidebar-width="<replaceable>width</replaceable>"</term> - <listitem> - <para>Specifies the <tag>sidebar</tag> width (including units)</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="params"> - <para><parameter>sidebar.float.type parameter</parameter>, - <parameter>sidebar.float.width parameter</parameter>, - <parameter>sidebar.properties attribute-set</parameter>, - <parameter>sidebar.title.properties</parameter> - </para> - </refsee> - <refsee role="tcg"> - <para><link xlink:href="SideFloats.html#SidebarFloats" >A sidebar as - side float</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_sidebar-width"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'sidebar-width'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_start" xmlns=""> - <refpurpose>(obsolete) Sets the starting number on an ordered list</refpurpose> - <refdescription> - <para><emphasis>This PI is obsolete</emphasis>. The intent of - it was to provide a means for setting a specific starting - number for an ordered list. Instead of this PI, set a value - for the <literal>override</literal> attribute on the first - <tag>listitem</tag> in the list; that will have the same - effect as what this PI was intended for.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo start="<replaceable>character</replaceable>"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>start="<replaceable>character</replaceable>"</term> - <listitem> - <para>Specifies the character to use as the starting - number; use 0-9, a-z, A-Z, or lowercase or uppercase - Roman numerals</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="tcg"> - <para><link role="tcg" - xlink:href="Orderedlists.html#ListStartNum" - >List starting number</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_start"> - <xsl:param name="node" select="."/> - <xsl:call-template name="pi-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'start'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_table-width" xmlns=""> - <refpurpose>Specifies the width for a table or for revhistory - output</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo table-width</tag> PI as a child or - sibling of a <tag>table</tag>, or as a child of an - <tag>informaltable</tag>, <tag>entrybl</tag>, or - <tag>revhistory</tag> instance (which is rendered as a table - in output) to specify the width of the table in output.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo table-width="<replaceable>width</replaceable>"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>table-width="<replaceable>width</replaceable>"</term> - <listitem> - <para>Specifies the table width (including units or as a percentage)</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="tcg"> - <para><link role="tcg" - xlink:href="Tables.html#TableWidth" - >Table width</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_table-width"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'table-width'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_term-width" xmlns=""> - <refpurpose>Specifies the term width for a variablelist</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo term-width</tag> PI as a child of a - <tag>variablelist</tag> to specify the width for - <tag>term</tag> output.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo term-width="<replaceable>width</replaceable>"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>term-width="<replaceable>width</replaceable>"</term> - <listitem> - <para>Specifies the term width (including units)</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="tcg"> - <para><link role="tcg" - xlink:href="Variablelists.html#ListIndents" - >Variable list formatting in print</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_term-width"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'term-width'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo_toc" xmlns=""> - <refpurpose>Specifies whether a TOC should be generated for a qandaset</refpurpose> - <refdescription> - <para>Use the <tag class="xmlpi">dbfo toc</tag> PI as a child of a - <tag>qandaset</tag> to specify whether a table of contents - (TOC) is generated for the <tag>qandaset</tag>.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo toc="0"|"1"</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>toc="0"</term> - <listitem> - <para>If zero, no TOC is generated</para> - </listitem> - </varlistentry> - <varlistentry><term>toc="1"</term> - <listitem> - <para>If <code>1</code> (or any non-zero value), - a TOC is generated</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="tcg"> - <para><link role="tcg" - xlink:href="QandAtoc.html" - >Q and A list of questions</link>, - <link role="tcg" - xlink:href="QandAformat.html" - >Q and A formatting</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo_toc"> - <xsl:param name="node" select="."/> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="$node/processing-instruction('dbfo')"/> - <xsl:with-param name="attribute" select="'toc'"/> - </xsl:call-template> -</xsl:template> - -<doc:pi name="dbfo-need" xmlns=""> - <refpurpose>Specify a need for space (a kind of soft page break)</refpurpose> - <refdescription> - <para>A “need†is a request for space on a page. If the - requested space is not available, the page breaks and the - content that follows the need request appears on the next - page. If the requested space is available, then no page break - is inserted.</para> - </refdescription> - <refsynopsisdiv> - <synopsis><tag class="xmlpi">dbfo-need height="<replaceable>n</replaceable>" [space-before="<replaceable>n</replaceable>"]</tag></synopsis> - </refsynopsisdiv> - <refparameter> - <variablelist> - <varlistentry><term>height="<replaceable>n</replaceable>"</term> - <listitem> - <para>The amount of height needed (including units)</para> - </listitem> - </varlistentry> - <varlistentry><term>space-before="<replaceable>n</replaceable>"</term> - <listitem> - <para>The amount of extra vertical space to add (including units)</para> - </listitem> - </varlistentry> - </variablelist> - </refparameter> - <refsee role="tcg"> - <para><link role="tcg" - xlink:href="PageBreaking.html#SoftPageBreaks" - >Soft page breaks</link></para> - </refsee> -</doc:pi> -<xsl:template name="pi.dbfo-need"> - <xsl:variable name="pi-height"> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="."/> - <xsl:with-param name="attribute" select="'height'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="height"> - <xsl:choose> - <xsl:when test="$pi-height != ''"> - <xsl:value-of select="$pi-height"/> - </xsl:when> - <xsl:otherwise>0pt</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="pi-before"> - <xsl:call-template name="dbfo-attribute"> - <xsl:with-param name="pis" select="."/> - <xsl:with-param name="attribute" select="'space-before'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="spacer"> - <fo:block-container width="100%" height="{$height}"> - <fo:block><fo:leader leader-length="0pt"/></fo:block> - </fo:block-container> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$fop.extensions != 0"> - <!-- Doesn't work in fop --> - </xsl:when> - <xsl:when test="$pi-before != '' and - not(following-sibling::listitem) and - not(following-sibling::step)"> - <fo:block space-after="0pt" space-before="{$pi-before}"> - <xsl:copy-of select="$spacer"/> - </fo:block> - </xsl:when> - <xsl:when test="following-sibling::para"> - <fo:block space-after="0pt" - xsl:use-attribute-sets="normal.para.spacing"> - <xsl:copy-of select="$spacer"/> - </fo:block> - </xsl:when> - <xsl:when test="following-sibling::table or - following-sibling::figure or - following-sibling::example or - following-sibling::equation"> - <fo:block space-after="0pt" - xsl:use-attribute-sets="formal.object.properties"> - <xsl:copy-of select="$spacer"/> - </fo:block> - </xsl:when> - <xsl:when test="following-sibling::informaltable or - following-sibling::informalfigure or - following-sibling::informalexample or - following-sibling::informalequation"> - <fo:block space-after="0pt" - xsl:use-attribute-sets="informal.object.properties"> - <xsl:copy-of select="$spacer"/> - </fo:block> - </xsl:when> - <xsl:when test="following-sibling::itemizedlist or - following-sibling::orderedlist or - following-sibling::variablelist or - following-sibling::simplelist"> - <fo:block space-after="0pt" - xsl:use-attribute-sets="informal.object.properties"> - <xsl:copy-of select="$spacer"/> - </fo:block> - </xsl:when> - <xsl:when test="following-sibling::listitem or - following-sibling::step"> - <fo:list-item space-after="0pt" - xsl:use-attribute-sets="informal.object.properties"> - <fo:list-item-label/> - <fo:list-item-body start-indent="0pt" end-indent="0pt"> - <xsl:copy-of select="$spacer"/> - </fo:list-item-body> - </fo:list-item> - </xsl:when> - <xsl:when test="following-sibling::sect1 or - following-sibling::sect2 or - following-sibling::sect3 or - following-sibling::sect4 or - following-sibling::sect5 or - following-sibling::section"> - <fo:block space-after="0pt" - xsl:use-attribute-sets="section.title.properties"> - <xsl:copy-of select="$spacer"/> - </fo:block> - </xsl:when> - <xsl:otherwise> - <fo:block space-after="0pt" space-before="0em"> - <xsl:copy-of select="$spacer"/> - </fo:block> - </xsl:otherwise> - </xsl:choose> - - <xsl:choose> - <xsl:when test="$fop.extensions != 0"> - <!-- Doesn't work in fop --> - </xsl:when> - <xsl:when test="following-sibling::listitem or - following-sibling::step"> - <fo:list-item space-before.precedence="force" - space-before="-{$height}" - space-after="0pt" - space-after.precedence="force"> - <fo:list-item-label/> - <fo:list-item-body start-indent="0pt" end-indent="0pt"/> - </fo:list-item> - </xsl:when> - <xsl:otherwise> - <fo:block space-before.precedence="force" - space-before="-{$height}" - space-after="0pt" - space-after.precedence="force"> - </fo:block> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="dbfo-attribute"> - <!-- * dbfo-attribute is an interal utility template for retrieving --> - <!-- * pseudo-attributes/parameters from PIs --> - <xsl:param name="pis" select="processing-instruction('dbfo')"/> - <xsl:param name="attribute">filename</xsl:param> - <xsl:call-template name="pi-attribute"> - <xsl:with-param name="pis" select="$pis"/> - <xsl:with-param name="attribute" select="$attribute"/> - </xsl:call-template> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="processing-instruction()"> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="processing-instruction('dbfo-need')"> - <xsl:call-template name="pi.dbfo-need"/> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/profile-docbook.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/profile-docbook.xsl deleted file mode 100644 index 5778e404b..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/profile-docbook.xsl +++ /dev/null @@ -1,284 +0,0 @@ -<?xml version="1.0" encoding="US-ASCII"?> -<!--This file was created automatically by xsl2profile--> -<!--from the DocBook XSL stylesheets.--> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:exsl="http://exslt.org/common" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:ng="http://docbook.org/docbook-ng" xmlns:db="http://docbook.org/ns/docbook" xmlns:exslt="http://exslt.org/common" exslt:dummy="dummy" ng:dummy="dummy" db:dummy="dummy" extension-element-prefixes="exslt" exclude-result-prefixes="db ng exsl exslt" version="1.0"> - -<!-- It is important to use indent="no" here, otherwise verbatim --> -<!-- environments get broken by indented tags...at least when the --> -<!-- callout extension is used...at least with some processors --> -<xsl:output method="xml" indent="no"/> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<xsl:include href="../VERSION"/> -<xsl:include href="param.xsl"/> -<xsl:include href="../lib/lib.xsl"/> -<xsl:include href="../common/l10n.xsl"/> -<xsl:include href="../common/common.xsl"/> -<xsl:include href="../common/utility.xsl"/> -<xsl:include href="../common/labels.xsl"/> -<xsl:include href="../common/titles.xsl"/> -<xsl:include href="../common/subtitles.xsl"/> -<xsl:include href="../common/gentext.xsl"/> -<xsl:include href="../common/olink.xsl"/> -<xsl:include href="../common/targets.xsl"/> -<xsl:include href="../common/pi.xsl"/> -<xsl:include href="autotoc.xsl"/> -<xsl:include href="autoidx.xsl"/> -<xsl:include href="lists.xsl"/> -<xsl:include href="callout.xsl"/> -<xsl:include href="verbatim.xsl"/> -<xsl:include href="graphics.xsl"/> -<xsl:include href="xref.xsl"/> -<xsl:include href="formal.xsl"/> -<xsl:include href="table.xsl"/> -<xsl:include href="htmltbl.xsl"/> -<xsl:include href="sections.xsl"/> -<xsl:include href="inline.xsl"/> -<xsl:include href="footnote.xsl"/> -<xsl:include href="fo.xsl"/> -<xsl:include href="fo-rtf.xsl"/> -<xsl:include href="info.xsl"/> -<xsl:include href="keywords.xsl"/> -<xsl:include href="division.xsl"/> -<xsl:include href="index.xsl"/> -<xsl:include href="toc.xsl"/> -<xsl:include href="refentry.xsl"/> -<xsl:include href="math.xsl"/> -<xsl:include href="admon.xsl"/> -<xsl:include href="component.xsl"/> -<xsl:include href="biblio.xsl"/> -<xsl:include href="biblio-iso690.xsl"/> -<xsl:include href="glossary.xsl"/> -<xsl:include href="block.xsl"/> -<xsl:include href="task.xsl"/> -<xsl:include href="qandaset.xsl"/> -<xsl:include href="synop.xsl"/> -<xsl:include href="titlepage.xsl"/> -<xsl:include href="titlepage.templates.xsl"/> -<xsl:include href="pagesetup.xsl"/> -<xsl:include href="pi.xsl"/> -<xsl:include href="spaces.xsl"/> -<xsl:include href="ebnf.xsl"/> -<xsl:include href="../html/chunker.xsl"/> -<xsl:include href="annotations.xsl"/> -<xsl:include href="../common/stripns.xsl"/> - -<xsl:include href="fop.xsl"/> -<xsl:include href="fop1.xsl"/> -<xsl:include href="passivetex.xsl"/> -<xsl:include href="xep.xsl"/> -<xsl:include href="axf.xsl"/> -<xsl:include href="ptc.xsl"/> - -<xsl:param name="stylesheet.result.type" select="'fo'"/> - -<!-- ==================================================================== --> - -<xsl:key name="id" match="*" use="@id|@xml:id"/> - -<!-- ==================================================================== --> - -<xsl:template match="*"> - <xsl:message> - <xsl:value-of select="name(.)"/> - <xsl:text> encountered</xsl:text> - <xsl:if test="parent::*"> - <xsl:text> in </xsl:text> - <xsl:value-of select="name(parent::*)"/> - </xsl:if> - <xsl:text>, but no template matches.</xsl:text> - </xsl:message> - <fo:block color="red"> - <xsl:text><</xsl:text> - <xsl:value-of select="name(.)"/> - <xsl:text>></xsl:text> - <xsl:apply-templates/> - <xsl:text></</xsl:text> - <xsl:value-of select="name(.)"/> - <xsl:text>></xsl:text> - </fo:block> -</xsl:template> - -<!-- Update this list if new root elements supported --> -<xsl:variable name="root.elements" select="' appendix article bibliography book chapter colophon dedication glossary index part preface qandaset refentry reference sect1 section set setindex '"/> - -<xslo:include xmlns:xslo="http://www.w3.org/1999/XSL/Transform" href="../profiling/profile-mode.xsl"/><xslo:variable xmlns:xslo="http://www.w3.org/1999/XSL/Transform" name="profiled-content"><xslo:choose><xslo:when test="*/self::ng:* or */self::db:*"><xslo:message>Note: namesp. cut : stripped namespace before processing</xslo:message><xslo:variable name="stripped-content"><xslo:apply-templates select="/" mode="stripNS"/></xslo:variable><xslo:message>Note: namesp. cut : processing stripped document</xslo:message><xslo:apply-templates select="exslt:node-set($stripped-content)" mode="profile"/></xslo:when><xslo:otherwise><xslo:apply-templates select="/" mode="profile"/></xslo:otherwise></xslo:choose></xslo:variable><xslo:variable xmlns:xslo="http://www.w3.org/1999/XSL/Transform" name="profiled-nodes" select="exslt:node-set($profiled-content)"/><xsl:template match="/"> - <!-- * Get a title for current doc so that we let the user --> - <!-- * know what document we are processing at this point. --> - <xsl:variable name="doc.title"> - <xsl:call-template name="get.doc.title"/> - </xsl:variable> - <xsl:choose> - <!-- Hack! If someone hands us a DocBook V5.x or DocBook NG document, - toss the namespace and continue. Use the docbook5 namespaced - stylesheets for DocBook5 if you don't want to use this feature.--> - <!-- include extra test for Xalan quirk --> - <xsl:when test="false()"/> - <!-- Can't process unless namespace removed --> - <xsl:when test="false()"/> - <xsl:otherwise> - <xsl:choose> - <xsl:when test="$rootid != ''"> - <xsl:variable name="root.element" select="key('id', $rootid)"/> - <xsl:choose> - <xsl:when test="count($root.element) = 0"> - <xsl:message terminate="yes"> - <xsl:text>ID '</xsl:text> - <xsl:value-of select="$rootid"/> - <xsl:text>' not found in document.</xsl:text> - </xsl:message> - </xsl:when> - <xsl:when test="not(contains($root.elements, concat(' ', local-name($root.element), ' ')))"> - <xsl:message terminate="yes"> - <xsl:text>ERROR: Document root element ($rootid=</xsl:text> - <xsl:value-of select="$rootid"/> - <xsl:text>) for FO output </xsl:text> - <xsl:text>must be one of the following elements:</xsl:text> - <xsl:value-of select="$root.elements"/> - </xsl:message> - </xsl:when> - <!-- Otherwise proceed --> - <xsl:otherwise> - <xsl:if test="$collect.xref.targets = 'yes' or $collect.xref.targets = 'only'"> - <xsl:apply-templates select="$root.element" mode="collect.targets"/> - </xsl:if> - <xsl:if test="$collect.xref.targets != 'only'"> - <xsl:apply-templates select="$root.element" mode="process.root"/> - </xsl:if> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <!-- Otherwise process the document root element --> - <xsl:otherwise> - <xsl:variable name="document.element" select="*[1]"/> - <xsl:choose> - <xsl:when test="not(contains($root.elements, concat(' ', local-name($document.element), ' ')))"> - <xsl:message terminate="yes"> - <xsl:text>ERROR: Document root element for FO output </xsl:text> - <xsl:text>must be one of the following elements:</xsl:text> - <xsl:value-of select="$root.elements"/> - </xsl:message> - </xsl:when> - <!-- Otherwise proceed --> - <xsl:otherwise> - <xsl:if test="$collect.xref.targets = 'yes' or $collect.xref.targets = 'only'"> - <xsl:apply-templates select="$profiled-nodes" mode="collect.targets"/> - </xsl:if> - <xsl:if test="$collect.xref.targets != 'only'"> - <xsl:apply-templates select="$profiled-nodes" mode="process.root"/> - </xsl:if> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="*" mode="process.root"> - <xsl:variable name="document.element" select="self::*"/> - - <xsl:call-template name="root.messages"/> - - <xsl:variable name="title"> - <xsl:choose> - <xsl:when test="$document.element/title[1]"> - <xsl:value-of select="$document.element/title[1]"/> - </xsl:when> - <xsl:otherwise>[could not find document title]</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <!-- Include all id values in XEP output --> - <xsl:if test="$xep.extensions != 0"> - <xsl:processing-instruction name="xep-pdf-drop-unused-destinations">false</xsl:processing-instruction> - </xsl:if> - - <fo:root xsl:use-attribute-sets="root.properties"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"> - <xsl:with-param name="target" select="/*[1]"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:if test="$xep.extensions != 0"> - <xsl:call-template name="xep-pis"/> - <xsl:call-template name="xep-document-information"/> - </xsl:if> - <xsl:if test="$axf.extensions != 0"> - <xsl:call-template name="axf-document-information"/> - </xsl:if> - - <xsl:call-template name="setup.pagemasters"/> - - <xsl:if test="$fop.extensions != 0"> - <xsl:apply-templates select="$document.element" mode="fop.outline"/> - </xsl:if> - - <xsl:if test="$fop1.extensions != 0"> - <xsl:variable name="bookmarks"> - <xsl:apply-templates select="$document.element" mode="fop1.outline"/> - </xsl:variable> - <xsl:if test="string($bookmarks) != ''"> - <fo:bookmark-tree> - <xsl:copy-of select="$bookmarks"/> - </fo:bookmark-tree> - </xsl:if> - </xsl:if> - - <xsl:if test="$xep.extensions != 0"> - <xsl:variable name="bookmarks"> - <xsl:apply-templates select="$document.element" mode="xep.outline"/> - </xsl:variable> - <xsl:if test="string($bookmarks) != ''"> - <rx:outline xmlns:rx="http://www.renderx.com/XSL/Extensions"> - <xsl:copy-of select="$bookmarks"/> - </rx:outline> - </xsl:if> - </xsl:if> - - <xsl:if test="$arbortext.extensions != 0 and $ati.xsl11.bookmarks != 0"> - <xsl:variable name="bookmarks"> - <xsl:apply-templates select="$document.element" mode="ati.xsl11.bookmarks"/> - </xsl:variable> - <xsl:if test="string($bookmarks) != ''"> - <fo:bookmark-tree> - <xsl:copy-of select="$bookmarks"/> - </fo:bookmark-tree> - </xsl:if> - </xsl:if> - - <xsl:apply-templates select="$document.element"/> - </fo:root> -</xsl:template> - -<xsl:template name="root.messages"> - <!-- redefine this any way you'd like to output messages --> - <!-- DO NOT OUTPUT ANYTHING FROM THIS TEMPLATE --> - <xsl:message> - <xsl:text>Making </xsl:text> - <xsl:value-of select="$page.orientation"/> - <xsl:text> pages on </xsl:text> - <xsl:value-of select="$paper.type"/> - <xsl:text> paper (</xsl:text> - <xsl:value-of select="$page.width"/> - <xsl:text>x</xsl:text> - <xsl:value-of select="$page.height"/> - <xsl:text>)</xsl:text> - </xsl:message> -</xsl:template> - -<!-- ==================================================================== --> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/ptc.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/ptc.xsl deleted file mode 100644 index f3e25e304..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/ptc.xsl +++ /dev/null @@ -1,76 +0,0 @@ -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version="1.0"> - -<!-- ================================================================ --> -<!-- --> -<!-- PTC/Arbortext Code for XSL 1.1 bookmark support --> -<!-- --> -<!-- ================================================================ --> - -<xsl:param name="ati.xsl11.bookmarks" select="1"/> - -<xsl:variable name="ati-a-dia" select= -"'āăąćĉċčďđēĕėęěœĝğġģĥħĩīĭįıĵķĺļľŀłńņňŋōŏőŕŗřśŝşšţťŧũūŭůűųŵŷźżžĀĂĄĆĈĊČĎĐĒĔĖĘĚŒĜĞĠĢĤĦĨĪĬĮİĴĶĹĻĽĿŁŃŅŇŊŌŎŐŔŖŘŚŜŞŠŢŤŦŨŪŬŮŰŲŴŶŸŹŻŽ'"/> - -<xsl:variable name="ati-a-asc" select= -"'aaaccccddeeeeeegggghhiiiiijklllllnnnnooorrrsssstttuuuuuuwyzzzAAACCCCDDEEEEEEGGGGHHIIIIIJKLLLLLNNNNOOORRRSSSSTTTUUUUUUWYYZZZ'"/> - -<xsl:template match="*" mode="ati.xsl11.bookmarks"> - <xsl:apply-templates select="*" mode="ati.xsl11.bookmarks"/> -</xsl:template> - -<xsl:template match="set|book|part|reference|preface|chapter|appendix|article - |glossary|bibliography|index|setindex - |refentry - |sect1|sect2|sect3|sect4|sect5|section" - mode="ati.xsl11.bookmarks"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <xsl:variable name="bookmark-label"> - <xsl:apply-templates select="." mode="object.title.markup"/> - </xsl:variable> - - <!-- Put the root element bookmark at the same level as its children --> - <!-- If the object is a set or book, generate a bookmark for the toc --> - - <xsl:choose> - <xsl:when test="parent::*"> - <fo:bookmark internal-destination="{$id}"> - <fo:bookmark-title> - <xsl:value-of select="translate($bookmark-label, $ati-a-dia, $ati-a-asc)"/> - </fo:bookmark-title> - <xsl:apply-templates select="*" mode="ati.xsl11.bookmarks"/> - </fo:bookmark> - </xsl:when> - <xsl:otherwise> - <fo:bookmark internal-destination="{$id}"> - <fo:bookmark-title> - <xsl:value-of select="translate($bookmark-label, $ati-a-dia, $ati-a-asc)"/> - </fo:bookmark-title> - </fo:bookmark> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - <xsl:if test="contains($toc.params, 'toc') - and section|sect1|refentry - |article|bibliography|glossary - |appendix"> - <fo:bookmark internal-destination="toc...{$id}"> - <fo:bookmark-title> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'TableofContents'"/> - </xsl:call-template> - </fo:bookmark-title> - </fo:bookmark> - </xsl:if> - <xsl:apply-templates select="*" mode="ati.xsl11.bookmarks"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/qandaset.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/qandaset.xsl deleted file mode 100644 index a29692f67..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/qandaset.xsl +++ /dev/null @@ -1,393 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<xsl:template match="qandaset" name="process.qandaset"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="label-width"> - <xsl:call-template name="pi.dbfo_label-width"/> - </xsl:variable> - - <xsl:variable name="label-length"> - <xsl:choose> - <xsl:when test="$label-width != ''"> - <xsl:value-of select="$label-width"/> - </xsl:when> - <xsl:when test="descendant::label"> - <xsl:call-template name="longest.term"> - <xsl:with-param name="terms" select="descendant::label"/> - <xsl:with-param name="maxlength" select="20"/> - </xsl:call-template> - <xsl:text>em * 0.50</xsl:text> - </xsl:when> - <xsl:otherwise>2.5em</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="toc"> - <xsl:call-template name="pi.dbfo_toc"/> - </xsl:variable> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="content"> - <fo:block id="{$id}"> - <xsl:choose> - <xsl:when test="parent::*"> - <xsl:if test="blockinfo/title|info/title|title"> - <xsl:apply-templates select="(blockinfo/title| - info/title|title)[1]"/> - </xsl:if> - </xsl:when> - <!-- If it is the root element --> - <xsl:otherwise> - <xsl:call-template name="qandaset.titlepage"/> - </xsl:otherwise> - </xsl:choose> - - <xsl:if test="(contains($toc.params, 'toc') and $toc != '0') - or $toc = '1'"> - <xsl:call-template name="qandaset.toc"> - <xsl:with-param name="toc.title.p" - select="contains($toc.params, 'title')"/> - </xsl:call-template> - </xsl:if> - - <xsl:call-template name="qandaset.toc.separator"/> - - <xsl:apply-templates select="*[local-name(.) != 'title' - and local-name(.) != 'titleabbrev' - and local-name(.) != 'qandadiv' - and local-name(.) != 'qandaentry']"/> - <xsl:apply-templates select="qandadiv"/> - - <xsl:if test="qandaentry"> - <fo:list-block xsl:use-attribute-sets="list.block.spacing" - provisional-label-separation="0.2em"> - <xsl:attribute name="provisional-distance-between-starts"> - <xsl:choose> - <xsl:when test="$label-length != ''"> - <xsl:value-of select="$label-length"/> - </xsl:when> - <xsl:otherwise>2.5em</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - <xsl:apply-templates select="qandaentry"/> - </fo:list-block> - </xsl:if> - </fo:block> - </xsl:variable> - - <xsl:choose> - <xsl:when test="parent::*"> - <xsl:copy-of select="$content"/> - </xsl:when> - <!-- Otherwise create a page sequence --> - <xsl:otherwise> - <xsl:apply-templates select="." mode="page.sequence"> - <xsl:with-param name="content" select="$content"/> - <xsl:with-param name="master-reference" select="'body'"/> - </xsl:apply-templates> - </xsl:otherwise> - </xsl:choose> - -</xsl:template> - -<xsl:template match="qandaset/blockinfo/title|qandset/info/title|qandaset/title"> - <xsl:variable name="enclsect" select="(ancestor::section - | ancestor::simplesect - | ancestor::sect5 - | ancestor::sect4 - | ancestor::sect3 - | ancestor::sect2 - | ancestor::sect1 - | ancestor::refsect3 - | ancestor::refsect2 - | ancestor::refsect1)[last()]"/> - <xsl:variable name="sectlvl"> - <xsl:call-template name="section.level"> - <xsl:with-param name="node" select="$enclsect"/> - </xsl:call-template> - </xsl:variable> - - <xsl:call-template name="qanda.heading"> - <xsl:with-param name="level" select="$sectlvl + 1"/> - <xsl:with-param name="marker" select="0"/> - <xsl:with-param name="title"> - <xsl:apply-templates/> - </xsl:with-param> - </xsl:call-template> -</xsl:template> - -<xsl:template match="qandaset/blockinfo|qandaset/info"> - <!-- what should this template really do? --> - <xsl:apply-templates select="legalnotice" mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="qandadiv"> - <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable> - - <xsl:variable name="label-width"> - <xsl:call-template name="pi.dbfo_label-width"/> - </xsl:variable> - - <xsl:variable name="label-length"> - <xsl:choose> - <xsl:when test="$label-width != ''"> - <xsl:value-of select="$label-width"/> - </xsl:when> - <xsl:when test="descendant::label"> - <xsl:call-template name="longest.term"> - <xsl:with-param name="terms" select="descendant::label"/> - <xsl:with-param name="maxlength" select="20"/> - </xsl:call-template> - <xsl:text>*0.6em</xsl:text> - </xsl:when> - <xsl:otherwise>2.5em</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <fo:block id="{$id}"> - <xsl:apply-templates select="(blockinfo/title|info/title|title)[1]"/> - <xsl:apply-templates select="*[local-name(.) != 'title' - and local-name(.) != 'titleabbrev' - and local-name(.) != 'qandadiv' - and local-name(.) != 'qandaentry']"/> - <fo:block> - <xsl:apply-templates select="qandadiv"/> - - <xsl:if test="qandaentry"> - <fo:list-block xsl:use-attribute-sets="list.block.spacing" - provisional-label-separation="0.2em"> - <xsl:attribute name="provisional-distance-between-starts"> - <xsl:choose> - <xsl:when test="$label-length != ''"> - <xsl:value-of select="$label-length"/> - </xsl:when> - <xsl:otherwise>2.5em</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - <xsl:apply-templates select="qandaentry"/> - </fo:list-block> - </xsl:if> - </fo:block> - </fo:block> -</xsl:template> - -<xsl:template match="qandadiv/blockinfo/title|qandadiv/info/title|qandadiv/title"> - <xsl:variable name="enclsect" select="(ancestor::section - | ancestor::simplesect - | ancestor::sect5 - | ancestor::sect4 - | ancestor::sect3 - | ancestor::sect2 - | ancestor::sect1 - | ancestor::refsect3 - | ancestor::refsect2 - | ancestor::refsect1)[last()]"/> - <xsl:variable name="sectlvl"> - <xsl:call-template name="section.level"> - <xsl:with-param name="node" select="$enclsect"/> - </xsl:call-template> - </xsl:variable> - - <xsl:call-template name="qanda.heading"> - <xsl:with-param name="level" select="$sectlvl + 1 + count(ancestor::qandadiv)"/> - <xsl:with-param name="marker" select="0"/> - <xsl:with-param name="title"> - <xsl:apply-templates select="parent::qandadiv" mode="label.markup"/> - <xsl:if test="$qandadiv.autolabel != 0"> - <xsl:apply-templates select="." mode="intralabel.punctuation"/> - <xsl:text> </xsl:text> - </xsl:if> - <xsl:apply-templates/> - </xsl:with-param> - </xsl:call-template> -</xsl:template> - -<xsl:template match="qandaentry"> - <!-- Omit revhistory from fo:list-block because it is a table --> - <xsl:apply-templates select="question|answer"/> -</xsl:template> - -<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> - - - <xsl:variable name="label.content"> - <xsl:apply-templates select="." mode="label.markup"/> - <xsl:if test="$deflabel = 'number' and not(label)"> - <xsl:apply-templates select="." mode="intralabel.punctuation"/> - </xsl:if> - </xsl:variable> - - <fo:list-item id="{$entry.id}" xsl:use-attribute-sets="list.item.spacing"> - <fo:list-item-label id="{$id}" end-indent="label-end()"> - <xsl:if test="string-length($label.content) > 0"> - <fo:block font-weight="bold"> - <xsl:copy-of select="$label.content"/> - </fo:block> - </xsl:if> - </fo:list-item-label> - <fo:list-item-body start-indent="body-start()"> - <xsl:choose> - <xsl:when test="$deflabel = 'none' and not(label)"> - <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> - -<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> - - <xsl:variable name="answer.label"> - <xsl:apply-templates select="." mode="label.markup"/> - </xsl:variable> - - <fo:list-item xsl:use-attribute-sets="list.item.spacing"> - <fo:list-item-label id="{$id}" end-indent="label-end()"> - <xsl:choose> - <xsl:when test="string-length($answer.label) > 0"> - <fo:block font-weight="bold"> - <xsl:copy-of select="$answer.label"/> - </fo:block> - </xsl:when> - <xsl:otherwise> - <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' and local-name(.) != 'qandaentry']"/> - <!-- * handle nested answer/qandaentry instances --> - <!-- * (bug 1509043 from Daniel Leidert) --> - <xsl:if test="descendant::question"> - <xsl:call-template name="process.qandaset"/> - </xsl:if> - </fo:list-item-body> - </fo:list-item> -</xsl:template> - -<xsl:template match="label"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template name="qanda.heading"> - <xsl:param name="level" select="1"/> - <xsl:param name="marker" select="0"/> - <xsl:param name="title"/> - <xsl:param name="titleabbrev"/> - - <fo:block xsl:use-attribute-sets="qanda.title.properties"> - <xsl:if test="$marker != 0"> - <fo:marker marker-class-name="section.head.marker"> - <xsl:choose> - <xsl:when test="$titleabbrev = ''"> - <xsl:value-of select="$title"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$titleabbrev"/> - </xsl:otherwise> - </xsl:choose> - </fo:marker> - </xsl:if> - <xsl:choose> - <xsl:when test="$level=1"> - <fo:block xsl:use-attribute-sets="qanda.title.level1.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:when> - <xsl:when test="$level=2"> - <fo:block xsl:use-attribute-sets="qanda.title.level2.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:when> - <xsl:when test="$level=3"> - <fo:block xsl:use-attribute-sets="qanda.title.level3.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:when> - <xsl:when test="$level=4"> - <fo:block xsl:use-attribute-sets="qanda.title.level4.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:when> - <xsl:when test="$level=5"> - <fo:block xsl:use-attribute-sets="qanda.title.level5.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:when> - <xsl:otherwise> - <fo:block xsl:use-attribute-sets="qanda.title.level6.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:otherwise> - </xsl:choose> - </fo:block> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/refentry.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/refentry.xsl deleted file mode 100644 index 7dfb9dbc6..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/refentry.xsl +++ /dev/null @@ -1,637 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<xsl:template match="reference"> - <xsl:if test="not(partintro)"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"/> - </xsl:variable> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - - <fo:block id="{$id}"> - <xsl:call-template name="reference.titlepage"/> - </fo:block> - <!-- Create one page sequence if no pagebreaks needed --> - <xsl:if test="$refentry.pagebreak = 0"> - <xsl:apply-templates select="refentry"/> - </xsl:if> - </fo:flow> - </fo:page-sequence> - </xsl:if> - <xsl:apply-templates select="partintro"/> - <xsl:if test="$refentry.pagebreak != 0"> - <xsl:apply-templates select="refentry"/> - </xsl:if> -</xsl:template> - -<xsl:template match="reference" mode="reference.titlepage.mode"> - <xsl:call-template name="reference.titlepage"/> -</xsl:template> - -<xsl:template match="reference/partintro"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="ancestor::reference"/> - </xsl:call-template> - </xsl:variable> - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"/> - </xsl:variable> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - <fo:block id="{$id}"> - <xsl:apply-templates select=".." mode="reference.titlepage.mode"/> - </fo:block> - <xsl:if test="title"> - <xsl:call-template name="partintro.titlepage"/> - </xsl:if> - <xsl:apply-templates/> - <!-- Create one page sequence if no pagebreaks needed --> - <xsl:if test="$refentry.pagebreak = 0"> - <xsl:apply-templates select="../refentry"/> - </xsl:if> - </fo:flow> - </fo:page-sequence> -</xsl:template> - -<xsl:template match="reference/docinfo|refentry/refentryinfo"></xsl:template> -<xsl:template match="reference/info"></xsl:template> -<xsl:template match="reference/title"></xsl:template> -<xsl:template match="reference/subtitle"></xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="refentry"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"/> - </xsl:variable> - - <xsl:variable name="refentry.content"> - <fo:block id="{$id}"> - <xsl:apply-templates/> - </fo:block> - </xsl:variable> - - <xsl:choose> - <xsl:when test="not(parent::*) or - (parent::reference and $refentry.pagebreak != 0) or - parent::part"> - <!-- make a page sequence --> - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - - <xsl:copy-of select="$refentry.content"/> - </fo:flow> - </fo:page-sequence> - </xsl:when> - <xsl:otherwise> - <fo:block> - <xsl:if test="$refentry.pagebreak != 0"> - <xsl:attribute name="break-before">page</xsl:attribute> - </xsl:if> - <xsl:copy-of select="$refentry.content"/> - </fo:block> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="refmeta"> -</xsl:template> - -<xsl:template match="manvolnum"> - <xsl:if test="$refentry.xref.manvolnum != 0"> - <xsl:text>(</xsl:text> - <xsl:apply-templates/> - <xsl:text>)</xsl:text> - </xsl:if> -</xsl:template> - -<xsl:template match="refmiscinfo"> -</xsl:template> - -<xsl:template match="refentrytitle"> - <xsl:call-template name="inline.charseq"/> -</xsl:template> - -<xsl:template match="refnamediv"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:block id="{$id}"> - - <!-- if refentry.generate.name is non-zero, then we need to generate a --> - <!-- localized "Name" subheading for this refnamdiv (unless it has a --> - <!-- preceding sibling that is a refnamediv, in which case we have already --> - <!-- generated a "Name" subheading, so we don't need to do it again --> - <xsl:if test="$refentry.generate.name != 0"> - <xsl:choose> - <xsl:when test="preceding-sibling::refnamediv"> - <!-- no generated title on secondary refnamedivs! --> - </xsl:when> - <xsl:otherwise> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" - xsl:use-attribute-sets="refnamediv.titlepage.recto.style" - font-family="{$title.fontset}"> - <!-- Contents of what is now the format.refentry.subheading --> - <!-- template were formerly intended to be used only to --> - <!-- process those subsections of Refentry that have "real" --> - <!-- title children. So as a kludge to get around the fact --> - <!-- that the template still basically "expects" to be --> - <!-- processing that kind of a node, when we call the --> - <!-- template to process generated titles, we must call it --> - <!-- with values for the "offset" and "section" parameters --> - <!-- that are different from the default values in the --> - <!-- format.refentry.subheading template itself. Because --> - <!-- those defaults are the values appropriate for processing --> - <!-- "real" title nodes. --> - <xsl:call-template name="format.refentry.subheading"> - <xsl:with-param name="section" select="self::*"/> - <xsl:with-param name="offset" select="1"/> - <xsl:with-param name="gentext.key" select="'RefName'"/> - </xsl:call-template> - </fo:block> - </xsl:otherwise> - </xsl:choose> - </xsl:if> - - <xsl:if test="$refentry.generate.title != 0"> - <xsl:variable name="section.level"> - <xsl:call-template name="refentry.level"> - <xsl:with-param name="node" select="ancestor::refentry"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="reftitle"> - <xsl:choose> - <xsl:when test="../refmeta/refentrytitle"> - <xsl:apply-templates select="../refmeta/refentrytitle"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="refname[1]"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <!-- xsl:use-attribute-sets takes only a Qname, not a variable --> - <xsl:choose> - <xsl:when test="preceding-sibling::refnamediv"> - <!-- no title on secondary refnamedivs! --> - </xsl:when> - <xsl:when test="$section.level = 1"> - <fo:block xsl:use-attribute-sets="refentry.title.properties"> - <fo:block xsl:use-attribute-sets="section.title.level1.properties"> - <xsl:value-of select="$reftitle"/> - </fo:block> - </fo:block> - </xsl:when> - <xsl:when test="$section.level = 2"> - <fo:block xsl:use-attribute-sets="refentry.title.properties"> - <fo:block xsl:use-attribute-sets="section.title.level2.properties"> - <xsl:value-of select="$reftitle"/> - </fo:block> - </fo:block> - </xsl:when> - <xsl:when test="$section.level = 3"> - <fo:block xsl:use-attribute-sets="refentry.title.properties"> - <fo:block xsl:use-attribute-sets="section.title.level3.properties"> - <xsl:value-of select="$reftitle"/> - </fo:block> - </fo:block> - </xsl:when> - <xsl:when test="$section.level = 4"> - <fo:block xsl:use-attribute-sets="refentry.title.properties"> - <fo:block xsl:use-attribute-sets="section.title.level4.properties"> - <xsl:value-of select="$reftitle"/> - </fo:block> - </fo:block> - </xsl:when> - <xsl:when test="$section.level = 5"> - <fo:block xsl:use-attribute-sets="refentry.title.properties"> - <fo:block xsl:use-attribute-sets="section.title.level5.properties"> - <xsl:value-of select="$reftitle"/> - </fo:block> - </fo:block> - </xsl:when> - <xsl:otherwise> - <fo:block xsl:use-attribute-sets="refentry.title.properties"> - <fo:block xsl:use-attribute-sets="section.title.level6.properties"> - <xsl:value-of select="$reftitle"/> - </fo:block> - </fo:block> - </xsl:otherwise> - </xsl:choose> - </xsl:if> - - <fo:block> - <xsl:if test="not(following-sibling::refnamediv)"> - <xsl:attribute name="space-after">1em</xsl:attribute> - </xsl:if> - <xsl:apply-templates/> - </fo:block> - </fo:block> -</xsl:template> - -<xsl:template match="refname"> - <xsl:if test="not(preceding-sibling::refdescriptor)"> - <xsl:apply-templates/> - <xsl:if test="following-sibling::refname"> - <xsl:text>, </xsl:text> - </xsl:if> - </xsl:if> -</xsl:template> - -<xsl:template match="refpurpose"> - <xsl:if test="node()"> - <xsl:text> </xsl:text> - <xsl:call-template name="dingbat"> - <xsl:with-param name="dingbat">em-dash</xsl:with-param> - </xsl:call-template> - <xsl:text> </xsl:text> - <xsl:apply-templates/> - </xsl:if> -</xsl:template> - -<xsl:template match="refdescriptor"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="refclass"> - <xsl:if test="$refclass.suppress = 0"> - <fo:block font-weight="bold"> - <xsl:if test="@role"> - <xsl:value-of select="@role"/> - <xsl:text>: </xsl:text> - </xsl:if> - <xsl:apply-templates/> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="refsynopsisdiv"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:block id="{$id}"> - <xsl:if test="not(refsynopsisdivinfo/title|docinfo/title|info/title|title)"> - <!-- * if we there is no appropriate title for this Refsynopsisdiv, --> - <!-- * then we need to call format.refentry.subheading to generate one --> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" - xsl:use-attribute-sets="refsynopsisdiv.titlepage.recto.style" - font-family="{$title.fontset}"> - <!-- Contents of what is now the format.refentry.subheading --> - <!-- template were formerly intended to be used only to --> - <!-- process those subsections of Refentry that have "real" --> - <!-- title children. So as a kludge to get around the fact --> - <!-- that the template still basically "expects" to be --> - <!-- processing that kind of a node, when we call the --> - <!-- template to process generated titles, we must call it --> - <!-- with values for the "offset" and "section" parameters --> - <!-- that are different from the default values in the --> - <!-- format.refentry.subheading template itself. Because --> - <!-- those defaults are the values appropriate for processing --> - <!-- "real" title nodes. --> - <xsl:call-template name="format.refentry.subheading"> - <xsl:with-param name="section" select="parent::*"/> - <xsl:with-param name="offset" select="1"/> - <xsl:with-param name="gentext.key" select="'RefSynopsisDiv'"/> - </xsl:call-template> - </fo:block> - </xsl:if> - <xsl:call-template name="refsynopsisdiv.titlepage"/> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="refsection"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:block id="{$id}"> - <xsl:call-template name="refsection.titlepage"/> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="refsect1"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:block id="{$id}"> - <xsl:call-template name="refsect1.titlepage"/> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="refsect2"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:block id="{$id}"> - <xsl:call-template name="refsect2.titlepage"/> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="refsect3"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:block id="{$id}"> - <xsl:call-template name="refsect3.titlepage"/> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="refsynopsisdiv/title - |refsection/title - |refsect1/title - |refsect2/title - |refsect3/title"> - <!-- nop; titlepage.mode instead --> -</xsl:template> - -<xsl:template match="refsynopsisdiv/title - |refsection/title - |refsect1/title - |refsect2/title - |refsect3/title - |refsynopsisdiv/info/title - |refsection/info/title - |refsect1/info/title - |refsect2/info/title - |refsect3/info/title" - mode="titlepage.mode" - priority="2"> - <xsl:call-template name="format.refentry.subheading"/> -</xsl:template> - -<xsl:template name="format.refentry.subheading"> -<!-- This template is now called to process generated titles for --> -<!-- Refnamediv and Refsynopsisdiv, as well as "real" titles for --> -<!-- Refsynopsisdiv, Refsection, and Refsect[1-3]. --> -<!-- --> -<!-- But the contents of this template were formerly intended to be used --> -<!-- only to process those subsections of Refentry that have "real" title --> -<!-- children. So as a kludge to get around the fact that the template --> -<!-- still basically "expects" to be processing that kind of a node, the --> -<!-- "offset" parameter was added and the "section" variable was changed to --> -<!-- a parameter so that when called for a generated title on a Refnamediv --> -<!-- or Refsynopsisdiv, we can call it like this: --> -<!-- --> -<!-- <xsl:call-template name="format.refentry.subheading"> --> -<!-- <xsl:with-param name="section" select="self::*"/> --> -<!-- <xsl:with-param name="offset" select="1"/> --> -<!-- <xsl:with-param name="gentext.key" select="'RefName'"/> --> -<!-- </xsl:call-template> --> -<!-- --> - <xsl:param name="section" - select="(ancestor::refsynopsysdiv - |ancestor::refsection - |ancestor::refsect1 - |ancestor::refsect2 - |ancestor::refsect3)[last()]"/> - <xsl:param name="offset" select="0"/> - <xsl:param name="gentext.key"/> - - <fo:block keep-with-next.within-column="always"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$section"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="level"> - <xsl:call-template name="section.level"> - <xsl:with-param name="node" select="$section"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="title"> - <!-- If we have a non-empty value for the $gentext.key param, then we --> - <!-- generate an appropriate title here. Otherwise, we have a real --> - <!-- title child, so we copy contents of that to the result tree. --> - <xsl:choose> - <xsl:when test="$gentext.key != ''"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="$gentext.key"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="$section" mode="object.title.markup"> - <xsl:with-param name="allow-anchors" select="1"/> - </xsl:apply-templates> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:if test="$passivetex.extensions != 0"> - <fotex:bookmark xmlns:fotex="http://www.tug.org/fotex" - fotex-bookmark-level="{$level + 2 + $offset}" - fotex-bookmark-label="{$id}"> - <xsl:value-of select="$title"/> - </fotex:bookmark> - </xsl:if> - - <xsl:if test="$axf.extensions != 0"> - <xsl:attribute name="axf:outline-level"> - <xsl:value-of select="count(ancestor::*)-1 + $offset"/> - </xsl:attribute> - <xsl:attribute name="axf:outline-expand">false</xsl:attribute> - <xsl:attribute name="axf:outline-title"> - <xsl:value-of select="$title"/> - </xsl:attribute> - </xsl:if> - - <xsl:call-template name="section.heading"> - <xsl:with-param name="level" select="$level + $offset"/> - <xsl:with-param name="title" select="$title"/> - </xsl:call-template> - </fo:block> -</xsl:template> - -<xsl:template match="refsectioninfo|refsection/info"></xsl:template> -<xsl:template match="refsect1info|refsect1/info"></xsl:template> -<xsl:template match="refsect2info|refsect2/info"></xsl:template> -<xsl:template match="refsect3info|refsect3/info"></xsl:template> - -<!-- ==================================================================== --> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/sections.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/sections.xsl deleted file mode 100644 index 54d2bbe7e..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/sections.xsl +++ /dev/null @@ -1,764 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<xsl:template match="section"> - <xsl:choose> - <xsl:when test="$rootid = @id or $rootid = @xml:id"> - <xsl:call-template name="section.page.sequence"/> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="renderas"> - <xsl:choose> - <xsl:when test="@renderas = 'sect1'">1</xsl:when> - <xsl:when test="@renderas = 'sect2'">2</xsl:when> - <xsl:when test="@renderas = 'sect3'">3</xsl:when> - <xsl:when test="@renderas = 'sect4'">4</xsl:when> - <xsl:when test="@renderas = 'sect5'">5</xsl:when> - <xsl:otherwise><xsl:value-of select="''"/></xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="level"> - <xsl:choose> - <xsl:when test="$renderas != ''"> - <xsl:value-of select="$renderas"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="section.level"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <!-- xsl:use-attribute-sets takes only a Qname, not a variable --> - <xsl:choose> - <xsl:when test="$level = 1"> - <xsl:element name="fo:{$section.container.element}" - use-attribute-sets="section.level1.properties"> - <xsl:attribute name="id"><xsl:value-of - select="$id"/></xsl:attribute> - <xsl:call-template name="section.content"/> - </xsl:element> - </xsl:when> - <xsl:when test="$level = 2"> - <xsl:element name="fo:{$section.container.element}" - use-attribute-sets="section.level2.properties"> - <xsl:attribute name="id"><xsl:value-of - select="$id"/></xsl:attribute> - <xsl:call-template name="section.content"/> - </xsl:element> - </xsl:when> - <xsl:when test="$level = 3"> - <xsl:element name="fo:{$section.container.element}" - use-attribute-sets="section.level3.properties"> - <xsl:attribute name="id"><xsl:value-of - select="$id"/></xsl:attribute> - <xsl:call-template name="section.content"/> - </xsl:element> - </xsl:when> - <xsl:when test="$level = 4"> - <xsl:element name="fo:{$section.container.element}" - use-attribute-sets="section.level4.properties"> - <xsl:attribute name="id"><xsl:value-of - select="$id"/></xsl:attribute> - <xsl:call-template name="section.content"/> - </xsl:element> - </xsl:when> - <xsl:when test="$level = 5"> - <xsl:element name="fo:{$section.container.element}" - use-attribute-sets="section.level5.properties"> - <xsl:attribute name="id"><xsl:value-of - select="$id"/></xsl:attribute> - <xsl:call-template name="section.content"/> - </xsl:element> - </xsl:when> - <xsl:otherwise> - <xsl:element name="fo:{$section.container.element}" - use-attribute-sets="section.level6.properties"> - <xsl:attribute name="id"><xsl:value-of - select="$id"/></xsl:attribute> - <xsl:call-template name="section.content"/> - </xsl:element> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="section.content"> - <xsl:call-template name="section.titlepage"/> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="contains($toc.params, 'toc') - and (count(ancestor::section)+1) <= - $generate.section.toc.level"> - <xsl:call-template name="section.toc"> - <xsl:with-param name="toc.title.p" - select="contains($toc.params, 'title')"/> - </xsl:call-template> - <xsl:call-template name="section.toc.separator"/> - </xsl:if> - - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="/section" name="section.page.sequence"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"/> - </xsl:variable> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - - <fo:block id="{$id}" - xsl:use-attribute-sets="section.level1.properties"> - <xsl:call-template name="section.titlepage"/> - </fo:block> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="contains($toc.params, 'toc') - and (count(ancestor::section)+1) <= - $generate.section.toc.level"> - <xsl:call-template name="section.toc"> - <xsl:with-param name="toc.title.p" - select="contains($toc.params, 'title')"/> - </xsl:call-template> - <xsl:call-template name="section.toc.separator"/> - </xsl:if> - - <xsl:apply-templates/> - </fo:flow> - </fo:page-sequence> -</xsl:template> - -<xsl:template match="section/title - |simplesect/title - |sect1/title - |sect2/title - |sect3/title - |sect4/title - |sect5/title - |section/info/title - |simplesect/info/title - |sect1/info/title - |sect2/info/title - |sect3/info/title - |sect4/info/title - |sect5/info/title - |section/sectioninfo/title - |sect1/sect1info/title - |sect2/sect2info/title - |sect3/sect3info/title - |sect4/sect4info/title - |sect5/sect5info/title" - mode="titlepage.mode" - priority="2"> - - <xsl:variable name="section" - select="(ancestor::section | - ancestor::simplesect | - ancestor::sect1 | - ancestor::sect2 | - ancestor::sect3 | - ancestor::sect4 | - ancestor::sect5)[position() = last()]"/> - - <fo:block keep-with-next.within-column="always"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"> - <xsl:with-param name="object" select="$section"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="renderas"> - <xsl:choose> - <xsl:when test="$section/@renderas = 'sect1'">1</xsl:when> - <xsl:when test="$section/@renderas = 'sect2'">2</xsl:when> - <xsl:when test="$section/@renderas = 'sect3'">3</xsl:when> - <xsl:when test="$section/@renderas = 'sect4'">4</xsl:when> - <xsl:when test="$section/@renderas = 'sect5'">5</xsl:when> - <xsl:otherwise><xsl:value-of select="''"/></xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="level"> - <xsl:choose> - <xsl:when test="$renderas != ''"> - <xsl:value-of select="$renderas"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="section.level"> - <xsl:with-param name="node" select="$section"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="marker"> - <xsl:choose> - <xsl:when test="$level <= $marker.section.level">1</xsl:when> - <xsl:otherwise>0</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="title"> - <xsl:apply-templates select="$section" mode="object.title.markup"> - <xsl:with-param name="allow-anchors" select="1"/> - </xsl:apply-templates> - </xsl:variable> - - <xsl:variable name="marker.title"> - <xsl:apply-templates select="$section" mode="titleabbrev.markup"> - <xsl:with-param name="allow-anchors" select="0"/> - </xsl:apply-templates> - </xsl:variable> - - <xsl:if test="$passivetex.extensions != 0"> - <fotex:bookmark xmlns:fotex="http://www.tug.org/fotex" - fotex-bookmark-level="{$level + 2}" - fotex-bookmark-label="{$id}"> - <xsl:value-of select="$marker.title"/> - </fotex:bookmark> - </xsl:if> - - <xsl:if test="$axf.extensions != 0"> - <xsl:attribute name="axf:outline-level"> - <xsl:value-of select="count(ancestor::*)-1"/> - </xsl:attribute> - <xsl:attribute name="axf:outline-expand">false</xsl:attribute> - <xsl:attribute name="axf:outline-title"> - <xsl:value-of select="normalize-space($title)"/> - </xsl:attribute> - </xsl:if> - - <xsl:call-template name="section.heading"> - <xsl:with-param name="level" select="$level"/> - <xsl:with-param name="title" select="$title"/> - <xsl:with-param name="marker" select="$marker"/> - <xsl:with-param name="marker.title" select="$marker.title"/> - </xsl:call-template> - </fo:block> -</xsl:template> - -<xsl:template match="sect1"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:element name="fo:{$section.container.element}" - use-attribute-sets="section.level1.properties"> - <xsl:attribute name="id"><xsl:value-of - select="$id"/></xsl:attribute> - <xsl:call-template name="sect1.titlepage"/> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="contains($toc.params, 'toc') - and $generate.section.toc.level >= 1"> - <xsl:call-template name="section.toc"> - <xsl:with-param name="toc.title.p" - select="contains($toc.params, 'title')"/> - </xsl:call-template> - <xsl:call-template name="section.toc.separator"/> - </xsl:if> - - <xsl:apply-templates/> - </xsl:element> -</xsl:template> - -<xsl:template match="/sect1"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"/> - </xsl:variable> - - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:call-template> - - <fo:block id="{$id}" - xsl:use-attribute-sets="section.level1.properties"> - <xsl:call-template name="sect1.titlepage"/> - </fo:block> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="contains($toc.params, 'toc') - and $generate.section.toc.level >= 1"> - <xsl:call-template name="section.toc"> - <xsl:with-param name="toc.title.p" - select="contains($toc.params, 'title')"/> - </xsl:call-template> - <xsl:call-template name="section.toc.separator"/> - </xsl:if> - - <xsl:apply-templates/> - </fo:flow> - </fo:page-sequence> -</xsl:template> - -<xsl:template match="sect2"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:element name="fo:{$section.container.element}" - use-attribute-sets="section.level2.properties"> - <xsl:attribute name="id"><xsl:value-of - select="$id"/></xsl:attribute> - <xsl:call-template name="sect2.titlepage"/> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="contains($toc.params, 'toc') - and $generate.section.toc.level >= 2"> - <xsl:call-template name="section.toc"> - <xsl:with-param name="toc.title.p" - select="contains($toc.params, 'title')"/> - </xsl:call-template> - <xsl:call-template name="section.toc.separator"/> - </xsl:if> - - <xsl:apply-templates/> - </xsl:element> -</xsl:template> - -<xsl:template match="sect3"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:element name="fo:{$section.container.element}" - use-attribute-sets="section.level3.properties"> - <xsl:attribute name="id"><xsl:value-of - select="$id"/></xsl:attribute> - <xsl:call-template name="sect3.titlepage"/> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="contains($toc.params, 'toc') - and $generate.section.toc.level >= 3"> - <xsl:call-template name="section.toc"> - <xsl:with-param name="toc.title.p" - select="contains($toc.params, 'title')"/> - </xsl:call-template> - <xsl:call-template name="section.toc.separator"/> - </xsl:if> - - <xsl:apply-templates/> - </xsl:element> -</xsl:template> - -<xsl:template match="sect4"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:element name="fo:{$section.container.element}" - use-attribute-sets="section.level4.properties"> - <xsl:attribute name="id"><xsl:value-of - select="$id"/></xsl:attribute> - <xsl:call-template name="sect4.titlepage"/> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="contains($toc.params, 'toc') - and $generate.section.toc.level >= 4"> - <xsl:call-template name="section.toc"> - <xsl:with-param name="toc.title.p" - select="contains($toc.params, 'title')"/> - </xsl:call-template> - <xsl:call-template name="section.toc.separator"/> - </xsl:if> - - <xsl:apply-templates/> - </xsl:element> -</xsl:template> - -<xsl:template match="sect5"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:element name="fo:{$section.container.element}" - use-attribute-sets="section.level5.properties"> - <xsl:attribute name="id"><xsl:value-of - select="$id"/></xsl:attribute> - <xsl:call-template name="sect5.titlepage"/> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="contains($toc.params, 'toc') - and $generate.section.toc.level >= 5"> - <xsl:call-template name="section.toc"> - <xsl:with-param name="toc.title.p" - select="contains($toc.params, 'title')"/> - </xsl:call-template> - <xsl:call-template name="section.toc.separator"/> - </xsl:if> - - <xsl:apply-templates/> - </xsl:element> -</xsl:template> - -<xsl:template match="simplesect"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <xsl:element name="fo:{$section.container.element}"> - <xsl:attribute name="id"><xsl:value-of - select="$id"/></xsl:attribute> - <xsl:call-template name="simplesect.titlepage"/> - <xsl:apply-templates/> - </xsl:element> -</xsl:template> - -<xsl:template match="sectioninfo"></xsl:template> -<xsl:template match="section/info"></xsl:template> -<xsl:template match="section/title"></xsl:template> -<xsl:template match="section/titleabbrev"></xsl:template> -<xsl:template match="section/subtitle"></xsl:template> - -<xsl:template match="sect1info"></xsl:template> -<xsl:template match="sect1/info"></xsl:template> -<xsl:template match="sect1/title"></xsl:template> -<xsl:template match="sect1/titleabbrev"></xsl:template> -<xsl:template match="sect1/subtitle"></xsl:template> - -<xsl:template match="sect2info"></xsl:template> -<xsl:template match="sect2/info"></xsl:template> -<xsl:template match="sect2/title"></xsl:template> -<xsl:template match="sect2/titleabbrev"></xsl:template> -<xsl:template match="sect2/subtitle"></xsl:template> - -<xsl:template match="sect3info"></xsl:template> -<xsl:template match="sect3/info"></xsl:template> -<xsl:template match="sect3/title"></xsl:template> -<xsl:template match="sect3/titleabbrev"></xsl:template> -<xsl:template match="sect3/subtitle"></xsl:template> - -<xsl:template match="sect4info"></xsl:template> -<xsl:template match="sect4/info"></xsl:template> -<xsl:template match="sect4/title"></xsl:template> -<xsl:template match="sect4/titleabbrev"></xsl:template> -<xsl:template match="sect4/subtitle"></xsl:template> - -<xsl:template match="sect5info"></xsl:template> -<xsl:template match="sect5/info"></xsl:template> -<xsl:template match="sect5/title"></xsl:template> -<xsl:template match="sect5/titleabbrev"></xsl:template> -<xsl:template match="sect5/subtitle"></xsl:template> - -<xsl:template match="simplesect/info"></xsl:template> -<xsl:template match="simplesect/title"></xsl:template> -<xsl:template match="simplesect/titleabbrev"></xsl:template> -<xsl:template match="simplesect/subtitle"></xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="section.heading"> - <xsl:param name="level" select="1"/> - <xsl:param name="marker" select="1"/> - <xsl:param name="title"/> - <xsl:param name="marker.title"/> - - <fo:block xsl:use-attribute-sets="section.title.properties"> - <xsl:if test="$marker != 0"> - <fo:marker marker-class-name="section.head.marker"> - <xsl:copy-of select="$marker.title"/> - </fo:marker> - </xsl:if> - - <xsl:choose> - <xsl:when test="$level=1"> - <fo:block xsl:use-attribute-sets="section.title.level1.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:when> - <xsl:when test="$level=2"> - <fo:block xsl:use-attribute-sets="section.title.level2.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:when> - <xsl:when test="$level=3"> - <fo:block xsl:use-attribute-sets="section.title.level3.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:when> - <xsl:when test="$level=4"> - <fo:block xsl:use-attribute-sets="section.title.level4.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:when> - <xsl:when test="$level=5"> - <fo:block xsl:use-attribute-sets="section.title.level5.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:when> - <xsl:otherwise> - <fo:block xsl:use-attribute-sets="section.title.level6.properties"> - <xsl:copy-of select="$title"/> - </fo:block> - </xsl:otherwise> - </xsl:choose> - </fo:block> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="bridgehead"> - <xsl:variable name="container" - select="(ancestor::appendix - |ancestor::article - |ancestor::bibliography - |ancestor::chapter - |ancestor::glossary - |ancestor::glossdiv - |ancestor::index - |ancestor::partintro - |ancestor::preface - |ancestor::refsect1 - |ancestor::refsect2 - |ancestor::refsect3 - |ancestor::sect1 - |ancestor::sect2 - |ancestor::sect3 - |ancestor::sect4 - |ancestor::sect5 - |ancestor::section - |ancestor::setindex - |ancestor::simplesect)[last()]"/> - - <xsl:variable name="clevel"> - <xsl:choose> - <xsl:when test="local-name($container) = 'appendix' - or local-name($container) = 'chapter' - or local-name($container) = 'article' - or local-name($container) = 'bibliography' - or local-name($container) = 'glossary' - or local-name($container) = 'index' - or local-name($container) = 'partintro' - or local-name($container) = 'preface' - or local-name($container) = 'setindex'">2</xsl:when> - <xsl:when test="local-name($container) = 'glossdiv'"> - <xsl:value-of select="count(ancestor::glossdiv)+2"/> - </xsl:when> - <xsl:when test="local-name($container) = 'sect1' - or local-name($container) = 'sect2' - or local-name($container) = 'sect3' - or local-name($container) = 'sect4' - or local-name($container) = 'sect5' - or local-name($container) = 'refsect1' - or local-name($container) = 'refsect2' - or local-name($container) = 'refsect3' - or local-name($container) = 'section' - or local-name($container) = 'simplesect'"> - <xsl:variable name="slevel"> - <xsl:call-template name="section.level"> - <xsl:with-param name="node" select="$container"/> - </xsl:call-template> - </xsl:variable> - <xsl:value-of select="$slevel + 1"/> - </xsl:when> - <xsl:otherwise>2</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="level"> - <xsl:choose> - <xsl:when test="@renderas = 'sect1'">1</xsl:when> - <xsl:when test="@renderas = 'sect2'">2</xsl:when> - <xsl:when test="@renderas = 'sect3'">3</xsl:when> - <xsl:when test="@renderas = 'sect4'">4</xsl:when> - <xsl:when test="@renderas = 'sect5'">5</xsl:when> - <xsl:otherwise> - <xsl:value-of select="$clevel"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="marker"> - <xsl:choose> - <xsl:when test="$level <= $marker.section.level">1</xsl:when> - <xsl:otherwise>0</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="marker.title"> - <xsl:apply-templates/> - </xsl:variable> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:block id="{$id}"> - <xsl:call-template name="section.heading"> - <xsl:with-param name="level" select="$level"/> - <xsl:with-param name="title"> - <xsl:apply-templates/> - </xsl:with-param> - <xsl:with-param name="marker" select="$marker"/> - <xsl:with-param name="marker.title" select="$marker.title"/> - </xsl:call-template> - </fo:block> -</xsl:template> - -</xsl:stylesheet> - diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/spaces.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/spaces.xsl deleted file mode 100644 index 13c5d87aa..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/spaces.xsl +++ /dev/null @@ -1,273 +0,0 @@ -<?xml version='1.0' encoding="utf-8"?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - XSL-FO specification treats all space characters like ordinary spaces. - We need to map them to fo:leader with different widths in order to - simulate desired behaviour. - ******************************************************************** --> - -<xsl:template match="text()[namespace-uri(..) = '']"> - <xsl:choose> - <xsl:when test="$passivetex.extensions != 0"> - <xsl:call-template name="passivetex.dash.subst"> - <xsl:with-param name="string"> - <xsl:call-template name="space.2000.subst"> - <xsl:with-param name="string" select="."/> - </xsl:call-template> - </xsl:with-param> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="space.2000.subst"> - <xsl:with-param name="string" select="."/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:param name="space.enquad.width">0.5em</xsl:param> <!-- U+2000 --> -<xsl:param name="space.emquad.width">1em</xsl:param> <!-- U+2001 --> -<xsl:param name="space.enspace.width">0.5em</xsl:param> <!-- U+2002 --> -<xsl:param name="space.emspace.width">1em</xsl:param> <!-- U+2003 --> -<xsl:param name="space.3emspace.width">0.33em</xsl:param><!-- U+2004 --> -<xsl:param name="space.4emspace.width">0.25em</xsl:param><!-- U+2005 --> -<xsl:param name="space.6emspace.width">0.16em</xsl:param><!-- U+2006 --> -<xsl:param name="space.figspace.width"></xsl:param> <!-- U+2007 --> -<xsl:param name="space.punctspace.width"></xsl:param> <!-- U+2008 --> -<xsl:param name="space.thinspace.width">0.2em</xsl:param><!-- U+2009 --> -<xsl:param name="space.hairspace.width">0.1em</xsl:param><!-- U+200A --> - -<xsl:template name="space.2000.subst"> - <xsl:param name="string"/> - - <xsl:choose> - <xsl:when test="contains($string, ' ') and $space.enquad.width != ''"> - <xsl:call-template name="space.2001.subst"> - <xsl:with-param name="string" select="substring-before($string, ' ')"/> - </xsl:call-template> - <fo:leader leader-length="{$space.enquad.width}"/> - <xsl:call-template name="space.2000.subst"> - <xsl:with-param name="string" select="substring-after($string, ' ')"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="space.2001.subst"> - <xsl:with-param name="string" select="$string"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="space.2001.subst"> - <xsl:param name="string"/> - - <xsl:choose> - <xsl:when test="contains($string, ' ') and $space.emquad.width != ''"> - <xsl:call-template name="space.2002.subst"> - <xsl:with-param name="string" select="substring-before($string, ' ')"/> - </xsl:call-template> - <fo:leader leader-length="{$space.emquad.width}"/> - <xsl:call-template name="space.2001.subst"> - <xsl:with-param name="string" select="substring-after($string, ' ')"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="space.2002.subst"> - <xsl:with-param name="string" select="$string"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="space.2002.subst"> - <xsl:param name="string"/> - - <xsl:choose> - <xsl:when test="contains($string, ' ') and $space.enspace.width != ''"> - <xsl:call-template name="space.2003.subst"> - <xsl:with-param name="string" select="substring-before($string, ' ')"/> - </xsl:call-template> - <fo:leader leader-length="{$space.enspace.width}"/> - <xsl:call-template name="space.2002.subst"> - <xsl:with-param name="string" select="substring-after($string, ' ')"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="space.2003.subst"> - <xsl:with-param name="string" select="$string"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="space.2003.subst"> - <xsl:param name="string"/> - - <xsl:choose> - <xsl:when test="contains($string, ' ') and $space.emspace.width != ''"> - <xsl:call-template name="space.2004.subst"> - <xsl:with-param name="string" select="substring-before($string, ' ')"/> - </xsl:call-template> - <fo:leader leader-length="{$space.emspace.width}"/> - <xsl:call-template name="space.2003.subst"> - <xsl:with-param name="string" select="substring-after($string, ' ')"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="space.2004.subst"> - <xsl:with-param name="string" select="$string"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="space.2004.subst"> - <xsl:param name="string"/> - - <xsl:choose> - <xsl:when test="contains($string, ' ') and $space.3emspace.width != ''"> - <xsl:call-template name="space.2005.subst"> - <xsl:with-param name="string" select="substring-before($string, ' ')"/> - </xsl:call-template> - <fo:leader leader-length="{$space.3emspace.width}"/> - <xsl:call-template name="space.2004.subst"> - <xsl:with-param name="string" select="substring-after($string, ' ')"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="space.2005.subst"> - <xsl:with-param name="string" select="$string"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="space.2005.subst"> - <xsl:param name="string"/> - - <xsl:choose> - <xsl:when test="contains($string, ' ') and $space.4emspace.width != ''"> - <xsl:call-template name="space.2006.subst"> - <xsl:with-param name="string" select="substring-before($string, ' ')"/> - </xsl:call-template> - <fo:leader leader-length="{$space.4emspace.width}"/> - <xsl:call-template name="space.2005.subst"> - <xsl:with-param name="string" select="substring-after($string, ' ')"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="space.2006.subst"> - <xsl:with-param name="string" select="$string"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="space.2006.subst"> - <xsl:param name="string"/> - - <xsl:choose> - <xsl:when test="contains($string, ' ') and $space.6emspace.width != ''"> - <xsl:call-template name="space.2007.subst"> - <xsl:with-param name="string" select="substring-before($string, ' ')"/> - </xsl:call-template> - <fo:leader leader-length="{$space.6emspace.width}"/> - <xsl:call-template name="space.2006.subst"> - <xsl:with-param name="string" select="substring-after($string, ' ')"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="space.2007.subst"> - <xsl:with-param name="string" select="$string"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="space.2007.subst"> - <xsl:param name="string"/> - - <xsl:choose> - <xsl:when test="contains($string, ' ') and $space.figspace.width != ''"> - <xsl:call-template name="space.2008.subst"> - <xsl:with-param name="string" select="substring-before($string, ' ')"/> - </xsl:call-template> - <fo:leader leader-length="{$space.figspace.width}"/> - <xsl:call-template name="space.2007.subst"> - <xsl:with-param name="string" select="substring-after($string, ' ')"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="space.2008.subst"> - <xsl:with-param name="string" select="$string"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="space.2008.subst"> - <xsl:param name="string"/> - - <xsl:choose> - <xsl:when test="contains($string, ' ') and $space.punctspace.width != ''"> - <xsl:call-template name="space.2009.subst"> - <xsl:with-param name="string" select="substring-before($string, ' ')"/> - </xsl:call-template> - <fo:leader leader-length="{$space.punctspace.width}"/> - <xsl:call-template name="space.2008.subst"> - <xsl:with-param name="string" select="substring-after($string, ' ')"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="space.2009.subst"> - <xsl:with-param name="string" select="$string"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="space.2009.subst"> - <xsl:param name="string"/> - - <xsl:choose> - <xsl:when test="contains($string, ' ') and $space.thinspace.width != ''"> - <xsl:call-template name="space.200A.subst"> - <xsl:with-param name="string" select="substring-before($string, ' ')"/> - </xsl:call-template> - <fo:leader leader-length="{$space.thinspace.width}"/> - <xsl:call-template name="space.2009.subst"> - <xsl:with-param name="string" select="substring-after($string, ' ')"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="space.200A.subst"> - <xsl:with-param name="string" select="$string"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="space.200A.subst"> - <xsl:param name="string"/> - - <xsl:choose> - <xsl:when test="contains($string, ' ') and $space.hairspace.width != ''"> - <xsl:value-of select="substring-before($string, ' ')"/> - <fo:leader leader-length="{$space.hairspace.width}"/> - <xsl:call-template name="space.200A.subst"> - <xsl:with-param name="string" select="substring-after($string, ' ')"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$string"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -</xsl:stylesheet> - diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/synop.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/synop.xsl deleted file mode 100644 index 493c18195..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/synop.xsl +++ /dev/null @@ -1,967 +0,0 @@ -<?xml version='1.0'?> -<!DOCTYPE xsl:stylesheet [ -<!ENTITY RE " "> -<!ENTITY nbsp " "> -]> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<!-- synopsis is in verbatim --> - -<!-- ==================================================================== --> - -<xsl:template match="cmdsynopsis"> - <fo:block xsl:use-attribute-sets="normal.para.spacing"> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="cmdsynopsis/command"> - <xsl:call-template name="inline.monoseq"/> - <xsl:text> </xsl:text> -</xsl:template> - -<xsl:template match="cmdsynopsis/command[1]" priority="2"> - <xsl:call-template name="inline.monoseq"/> - <xsl:text> </xsl:text> -</xsl:template> - -<xsl:template match="group|arg" name="group-or-arg"> - <xsl:variable name="choice" select="@choice"/> - <xsl:variable name="rep" select="@rep"/> - <xsl:variable name="sepchar"> - <xsl:choose> - <xsl:when test="ancestor-or-self::*/@sepchar"> - <xsl:value-of select="ancestor-or-self::*/@sepchar"/> - </xsl:when> - <xsl:otherwise> - <xsl:text> </xsl:text> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="preceding-sibling::*"> - <xsl:value-of select="$sepchar"/> - </xsl:if> - <xsl:choose> - <xsl:when test="$choice='plain'"> - <xsl:value-of select="$arg.choice.plain.open.str"/> - </xsl:when> - <xsl:when test="$choice='req'"> - <xsl:value-of select="$arg.choice.req.open.str"/> - </xsl:when> - <xsl:when test="$choice='opt'"> - <xsl:value-of select="$arg.choice.opt.open.str"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$arg.choice.def.open.str"/> - </xsl:otherwise> - </xsl:choose> - <xsl:apply-templates/> - <xsl:choose> - <xsl:when test="$rep='repeat'"> - <xsl:value-of select="$arg.rep.repeat.str"/> - </xsl:when> - <xsl:when test="$rep='norepeat'"> - <xsl:value-of select="$arg.rep.norepeat.str"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$arg.rep.def.str"/> - </xsl:otherwise> - </xsl:choose> - <xsl:choose> - <xsl:when test="$choice='plain'"> - <xsl:value-of select="$arg.choice.plain.close.str"/> - </xsl:when> - <xsl:when test="$choice='req'"> - <xsl:value-of select="$arg.choice.req.close.str"/> - </xsl:when> - <xsl:when test="$choice='opt'"> - <xsl:value-of select="$arg.choice.opt.close.str"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$arg.choice.def.close.str"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="group/arg"> - <xsl:variable name="choice" select="@choice"/> - <xsl:variable name="rep" select="@rep"/> - <xsl:if test="preceding-sibling::*"> - <xsl:value-of select="$arg.or.sep"/> - </xsl:if> - <xsl:call-template name="group-or-arg"/> -</xsl:template> - -<xsl:template match="sbr"> - <fo:block/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="synopfragmentref"> - <xsl:variable name="target" select="key('id',@linkend)"/> - <xsl:variable name="snum"> - <xsl:apply-templates select="$target" mode="synopfragment.number"/> - </xsl:variable> - <fo:inline font-style="italic"> - <fo:basic-link internal-destination="{@linkend}" - xsl:use-attribute-sets="xref.properties"> - <xsl:text>(</xsl:text> - <xsl:value-of select="$snum"/> - <xsl:text>)</xsl:text> - </fo:basic-link> - <xsl:text> </xsl:text> - <xsl:apply-templates/> - </fo:inline> -</xsl:template> - -<xsl:template match="synopfragment" mode="synopfragment.number"> - <xsl:number format="1"/> -</xsl:template> - -<xsl:template match="synopfragment"> - <xsl:variable name="snum"> - <xsl:apply-templates select="." mode="synopfragment.number"/> - </xsl:variable> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <fo:block id="{$id}"> - <xsl:text>(</xsl:text> - <xsl:value-of select="$snum"/> - <xsl:text>)</xsl:text> - <xsl:text> </xsl:text> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="funcsynopsis"> - <xsl:call-template name="informal.object"/> -</xsl:template> - -<xsl:template match="funcsynopsisinfo"> - <fo:block space-after.minimum="0.8em" - space-after.optimum="1em" - space-after.maximum="1.2em"> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="funcprototype"> - <fo:block font-family="{$monospace.font.family}" - space-before.minimum="0.8em" - space-before.optimum="1em" - space-before.maximum="1.2em"> - <xsl:apply-templates/> - <xsl:if test="$funcsynopsis.style='kr'"> - <fo:block - space-before.minimum="0.8em" - space-before.optimum="1em" - space-before.maximum="1.2em"> - <xsl:apply-templates select="./paramdef" mode="kr-funcsynopsis-mode"/> - </fo:block> - </xsl:if> - </fo:block> -</xsl:template> - -<xsl:template match="funcdef"> - <fo:inline font-family="{$monospace.font.family}"> - <xsl:apply-templates/> - </fo:inline> -</xsl:template> - -<xsl:template match="funcdef/function"> - <xsl:choose> - <xsl:when test="$funcsynopsis.decoration != 0"> - <fo:inline font-weight="bold"> - <xsl:apply-templates/> - </fo:inline> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="void"> - <xsl:choose> - <xsl:when test="$funcsynopsis.style='ansi'"> - <xsl:text>(void);</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text>();</xsl:text> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="varargs"> - <xsl:text>(...);</xsl:text> -</xsl:template> - -<xsl:template match="paramdef"> - <xsl:variable name="paramnum"> - <xsl:number count="paramdef" format="1"/> - </xsl:variable> - <xsl:if test="$paramnum=1">(</xsl:if> - <xsl:choose> - <xsl:when test="$funcsynopsis.style='ansi'"> - <xsl:apply-templates/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="./parameter"/> - </xsl:otherwise> - </xsl:choose> - <xsl:choose> - <xsl:when test="following-sibling::paramdef"> - <xsl:text>, </xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text>);</xsl:text> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="paramdef/parameter"> - <xsl:choose> - <xsl:when test="$funcsynopsis.decoration != 0"> - <xsl:call-template name="inline.italicseq"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates/> - </xsl:otherwise> - </xsl:choose> - <xsl:if test="following-sibling::parameter"> - <xsl:text>, </xsl:text> - </xsl:if> -</xsl:template> - -<xsl:template match="paramdef" mode="kr-funcsynopsis-mode"> - <fo:block> - <xsl:apply-templates/> - <xsl:text>;</xsl:text> - </fo:block> -</xsl:template> - -<xsl:template match="funcparams"> - <xsl:text>(</xsl:text> - <xsl:apply-templates/> - <xsl:text>)</xsl:text> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:variable name="default-classsynopsis-language">java</xsl:variable> - -<xsl:template match="classsynopsis - |fieldsynopsis - |methodsynopsis - |constructorsynopsis - |destructorsynopsis"> - <xsl:param name="language"> - <xsl:choose> - <xsl:when test="@language"> - <xsl:value-of select="@language"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$default-classsynopsis-language"/> - </xsl:otherwise> - </xsl:choose> - </xsl:param> - - <!-- - <xsl:message>process <xsl:value-of select="local-name(.)"/> in <xsl:value-of select="$language"/></xsl:message> - --> - - <xsl:choose> - <xsl:when test="$language='java' or $language='Java'"> - <xsl:apply-templates select="." mode="java"/> - </xsl:when> - <xsl:when test="$language='perl' or $language='Perl'"> - <xsl:apply-templates select="." mode="perl"/> - </xsl:when> - <xsl:when test="$language='idl' or $language='IDL'"> - <xsl:apply-templates select="." mode="idl"/> - </xsl:when> - <xsl:when test="$language='cpp' or $language='c++' or $language='C++'"> - <xsl:apply-templates select="." mode="cpp"/> - </xsl:when> - <xsl:otherwise> - <xsl:message> - <xsl:text>Unrecognized language on </xsl:text> - <xsl:value-of select="local-name(.)"/> - <xsl:text>: </xsl:text> - <xsl:value-of select="$language"/> - </xsl:message> - <xsl:apply-templates select="."> - <xsl:with-param name="language" - select="$default-classsynopsis-language"/> - </xsl:apply-templates> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="synop-break"> - <xsl:if test="parent::classsynopsis - or (following-sibling::fieldsynopsis - |following-sibling::methodsynopsis - |following-sibling::constructorsynopsis - |following-sibling::destructorsynopsis)"> - <fo:inline>&RE;</fo:inline> - </xsl:if> -</xsl:template> - -<!-- ===== Java ======================================================== --> - -<xsl:template match="classsynopsis" mode="java"> - <fo:block wrap-option='no-wrap' - white-space-collapse='false' - linefeed-treatment="preserve" - xsl:use-attribute-sets="monospace.verbatim.properties"> - <xsl:apply-templates select="ooclass[1]" mode="java"/> - <xsl:if test="ooclass[preceding-sibling::*]"> - <xsl:text> extends</xsl:text> - <xsl:apply-templates select="ooclass[preceding-sibling::*]" mode="java"/> - <xsl:if test="oointerface|ooexception"> - <xsl:text>&RE; </xsl:text> - </xsl:if> - </xsl:if> - <xsl:if test="oointerface"> - <xsl:text>implements</xsl:text> - <xsl:apply-templates select="oointerface" mode="java"/> - <xsl:if test="ooexception"> - <xsl:text>&RE; </xsl:text> - </xsl:if> - </xsl:if> - <xsl:if test="ooexception"> - <xsl:text>throws</xsl:text> - <xsl:apply-templates select="ooexception" mode="java"/> - </xsl:if> - <xsl:text> {&RE;</xsl:text> - <xsl:apply-templates select="constructorsynopsis - |destructorsynopsis - |fieldsynopsis - |methodsynopsis - |classsynopsisinfo" mode="java"/> - <xsl:text>}</xsl:text> - </fo:block> -</xsl:template> - -<xsl:template match="classsynopsisinfo" mode="java"> - <xsl:apply-templates mode="java"/> -</xsl:template> - -<xsl:template match="ooclass|oointerface|ooexception" mode="java"> - <xsl:choose> - <xsl:when test="preceding-sibling::*"> - <xsl:text>, </xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text> </xsl:text> - </xsl:otherwise> - </xsl:choose> - <xsl:apply-templates mode="java"/> -</xsl:template> - -<xsl:template match="modifier|package" mode="java"> - <xsl:apply-templates mode="java"/> - <xsl:if test="following-sibling::*"> - <xsl:text> </xsl:text> - </xsl:if> -</xsl:template> - -<xsl:template match="classname" mode="java"> - <xsl:if test="local-name(preceding-sibling::*[1]) = 'classname'"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="java"/> -</xsl:template> - -<xsl:template match="interfacename" mode="java"> - <xsl:if test="local-name(preceding-sibling::*[1]) = 'interfacename'"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="java"/> -</xsl:template> - -<xsl:template match="exceptionname" mode="java"> - <xsl:if test="local-name(preceding-sibling::*[1]) = 'exceptionname'"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="java"/> -</xsl:template> - -<xsl:template match="fieldsynopsis" mode="java"> - <fo:block wrap-option='no-wrap' - white-space-collapse='false' - linefeed-treatment="preserve" - xsl:use-attribute-sets="monospace.verbatim.properties"> - <xsl:text> </xsl:text> - <xsl:apply-templates mode="java"/> - <xsl:text>;</xsl:text> - <xsl:call-template name="synop-break"/> - </fo:block> -</xsl:template> - -<xsl:template match="type" mode="java"> - <xsl:apply-templates mode="java"/> - <xsl:text> </xsl:text> -</xsl:template> - -<xsl:template match="varname" mode="java"> - <xsl:apply-templates mode="java"/> - <xsl:text> </xsl:text> -</xsl:template> - -<xsl:template match="initializer" mode="java"> - <xsl:text>= </xsl:text> - <xsl:apply-templates mode="java"/> -</xsl:template> - -<xsl:template match="void" mode="java"> - <xsl:text>void </xsl:text> -</xsl:template> - -<xsl:template match="methodname" mode="java"> - <xsl:apply-templates mode="java"/> -</xsl:template> - -<xsl:template match="methodparam" mode="java"> - <xsl:param name="indent">0</xsl:param> - <xsl:if test="preceding-sibling::methodparam"> - <xsl:text>,&RE;</xsl:text> - <xsl:if test="$indent > 0"> - <xsl:call-template name="copy-string"> - <xsl:with-param name="string"> </xsl:with-param> - <xsl:with-param name="count" select="$indent + 1"/> - </xsl:call-template> - </xsl:if> - </xsl:if> - <xsl:apply-templates mode="java"/> -</xsl:template> - -<xsl:template match="parameter" mode="java"> - <xsl:apply-templates mode="java"/> -</xsl:template> - -<xsl:template mode="java" - match="constructorsynopsis|destructorsynopsis|methodsynopsis"> - <xsl:variable name="start-modifiers" select="modifier[following-sibling::*[local-name(.) != 'modifier']]"/> - <xsl:variable name="notmod" select="*[local-name(.) != 'modifier']"/> - <xsl:variable name="end-modifiers" select="modifier[preceding-sibling::*[local-name(.) != 'modifier']]"/> - <xsl:variable name="decl"> - <xsl:text> </xsl:text> - <xsl:apply-templates select="$start-modifiers" mode="java"/> - - <!-- type --> - <xsl:if test="local-name($notmod[1]) != 'methodname'"> - <xsl:apply-templates select="$notmod[1]" mode="java"/> - </xsl:if> - - <xsl:apply-templates select="methodname" mode="java"/> - </xsl:variable> - - <fo:block wrap-option='no-wrap' - white-space-collapse='false' - linefeed-treatment="preserve" - xsl:use-attribute-sets="monospace.verbatim.properties"> - <xsl:copy-of select="$decl"/> - <xsl:text>(</xsl:text> - <xsl:apply-templates select="methodparam" mode="java"> - <xsl:with-param name="indent" select="string-length($decl)"/> - </xsl:apply-templates> - <xsl:text>)</xsl:text> - <xsl:if test="exceptionname"> - <xsl:text>&RE; throws </xsl:text> - <xsl:apply-templates select="exceptionname" mode="java"/> - </xsl:if> - <xsl:if test="modifier[preceding-sibling::*[local-name(.) != 'modifier']]"> - <xsl:text> </xsl:text> - <xsl:apply-templates select="$end-modifiers" mode="java"/> - </xsl:if> - <xsl:text>;</xsl:text> - </fo:block> - <xsl:call-template name="synop-break"/> -</xsl:template> - -<!-- ===== C++ ========================================================= --> - -<xsl:template match="classsynopsis" mode="cpp"> - <fo:block wrap-option='no-wrap' - white-space-collapse='false' - linefeed-treatment="preserve" - xsl:use-attribute-sets="monospace.verbatim.properties"> - <xsl:apply-templates select="ooclass[1]" mode="cpp"/> - <xsl:if test="ooclass[preceding-sibling::*]"> - <xsl:text>: </xsl:text> - <xsl:apply-templates select="ooclass[preceding-sibling::*]" mode="cpp"/> - <xsl:if test="oointerface|ooexception"> - <xsl:text>&RE; </xsl:text> - </xsl:if> - </xsl:if> - <xsl:if test="oointerface"> - <xsl:text> implements</xsl:text> - <xsl:apply-templates select="oointerface" mode="cpp"/> - <xsl:if test="ooexception"> - <xsl:text>&RE; </xsl:text> - </xsl:if> - </xsl:if> - <xsl:if test="ooexception"> - <xsl:text> throws</xsl:text> - <xsl:apply-templates select="ooexception" mode="cpp"/> - </xsl:if> - <xsl:text> {&RE;</xsl:text> - <xsl:apply-templates select="constructorsynopsis - |destructorsynopsis - |fieldsynopsis - |methodsynopsis - |classsynopsisinfo" mode="cpp"/> - <xsl:text>}</xsl:text> - </fo:block> -</xsl:template> - -<xsl:template match="classsynopsisinfo" mode="cpp"> - <xsl:apply-templates mode="cpp"/> -</xsl:template> - -<xsl:template match="ooclass|oointerface|ooexception" mode="cpp"> - <xsl:if test="preceding-sibling::*"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="cpp"/> -</xsl:template> - -<xsl:template match="modifier|package" mode="cpp"> - <xsl:apply-templates mode="cpp"/> - <xsl:if test="following-sibling::*"> - <xsl:text> </xsl:text> - </xsl:if> -</xsl:template> - -<xsl:template match="classname" mode="cpp"> - <xsl:if test="local-name(preceding-sibling::*[1]) = 'classname'"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="cpp"/> -</xsl:template> - -<xsl:template match="interfacename" mode="cpp"> - <xsl:if test="local-name(preceding-sibling::*[1]) = 'interfacename'"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="cpp"/> -</xsl:template> - -<xsl:template match="exceptionname" mode="cpp"> - <xsl:if test="local-name(preceding-sibling::*[1]) = 'exceptionname'"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="cpp"/> -</xsl:template> - -<xsl:template match="fieldsynopsis" mode="cpp"> - <fo:block wrap-option='no-wrap' - white-space-collapse='false' - linefeed-treatment="preserve" - xsl:use-attribute-sets="monospace.verbatim.properties"> - <xsl:text> </xsl:text> - <xsl:apply-templates mode="cpp"/> - <xsl:text>;</xsl:text> - </fo:block> - <xsl:call-template name="synop-break"/> -</xsl:template> - -<xsl:template match="type" mode="cpp"> - <xsl:apply-templates mode="cpp"/> - <xsl:text> </xsl:text> -</xsl:template> - -<xsl:template match="varname" mode="cpp"> - <xsl:apply-templates mode="cpp"/> - <xsl:text> </xsl:text> -</xsl:template> - -<xsl:template match="initializer" mode="cpp"> - <xsl:text>= </xsl:text> - <xsl:apply-templates mode="cpp"/> -</xsl:template> - -<xsl:template match="void" mode="cpp"> - <xsl:text>void </xsl:text> -</xsl:template> - -<xsl:template match="methodname" mode="cpp"> - <xsl:apply-templates mode="cpp"/> -</xsl:template> - -<xsl:template match="methodparam" mode="cpp"> - <xsl:if test="preceding-sibling::methodparam"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="cpp"/> -</xsl:template> - -<xsl:template match="parameter" mode="cpp"> - <xsl:apply-templates mode="cpp"/> -</xsl:template> - -<xsl:template mode="cpp" - match="constructorsynopsis|destructorsynopsis|methodsynopsis"> - <xsl:variable name="start-modifiers" select="modifier[following-sibling::*[local-name(.) != 'modifier']]"/> - <xsl:variable name="notmod" select="*[local-name(.) != 'modifier']"/> - <xsl:variable name="end-modifiers" select="modifier[preceding-sibling::*[local-name(.) != 'modifier']]"/> - - <fo:block wrap-option='no-wrap' - white-space-collapse='false' - linefeed-treatment="preserve" - xsl:use-attribute-sets="monospace.verbatim.properties"> - <xsl:text> </xsl:text> - <xsl:apply-templates select="$start-modifiers" mode="cpp"/> - - <!-- type --> - <xsl:if test="local-name($notmod[1]) != 'methodname'"> - <xsl:apply-templates select="$notmod[1]" mode="cpp"/> - </xsl:if> - - <xsl:apply-templates select="methodname" mode="cpp"/> - <xsl:text>(</xsl:text> - <xsl:apply-templates select="methodparam" mode="cpp"/> - <xsl:text>)</xsl:text> - <xsl:if test="exceptionname"> - <xsl:text>&RE; throws </xsl:text> - <xsl:apply-templates select="exceptionname" mode="cpp"/> - </xsl:if> - <xsl:if test="modifier[preceding-sibling::*[local-name(.) != 'modifier']]"> - <xsl:text> </xsl:text> - <xsl:apply-templates select="$end-modifiers" mode="cpp"/> - </xsl:if> - <xsl:text>;</xsl:text> - </fo:block> - <xsl:call-template name="synop-break"/> -</xsl:template> - -<!-- ===== IDL ========================================================= --> - -<xsl:template match="classsynopsis" mode="idl"> - <fo:block wrap-option='no-wrap' - white-space-collapse='false' - linefeed-treatment="preserve" - xsl:use-attribute-sets="monospace.verbatim.properties"> - <xsl:text>interface </xsl:text> - <xsl:apply-templates select="ooclass[1]" mode="idl"/> - <xsl:if test="ooclass[preceding-sibling::*]"> - <xsl:text>: </xsl:text> - <xsl:apply-templates select="ooclass[preceding-sibling::*]" mode="idl"/> - <xsl:if test="oointerface|ooexception"> - <xsl:text>&RE; </xsl:text> - </xsl:if> - </xsl:if> - <xsl:if test="oointerface"> - <xsl:text> implements</xsl:text> - <xsl:apply-templates select="oointerface" mode="idl"/> - <xsl:if test="ooexception"> - <xsl:text>&RE; </xsl:text> - </xsl:if> - </xsl:if> - <xsl:if test="ooexception"> - <xsl:text> throws</xsl:text> - <xsl:apply-templates select="ooexception" mode="idl"/> - </xsl:if> - <xsl:text> {&RE;</xsl:text> - <xsl:apply-templates select="constructorsynopsis - |destructorsynopsis - |fieldsynopsis - |methodsynopsis - |classsynopsisinfo" mode="idl"/> - <xsl:text>}</xsl:text> - </fo:block> -</xsl:template> - -<xsl:template match="classsynopsisinfo" mode="idl"> - <xsl:apply-templates mode="idl"/> -</xsl:template> - -<xsl:template match="ooclass|oointerface|ooexception" mode="idl"> - <xsl:if test="preceding-sibling::*"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="idl"/> -</xsl:template> - -<xsl:template match="modifier|package" mode="idl"> - <xsl:apply-templates mode="idl"/> - <xsl:if test="following-sibling::*"> - <xsl:text> </xsl:text> - </xsl:if> -</xsl:template> - -<xsl:template match="classname" mode="idl"> - <xsl:if test="local-name(preceding-sibling::*[1]) = 'classname'"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="idl"/> -</xsl:template> - -<xsl:template match="interfacename" mode="idl"> - <xsl:if test="local-name(preceding-sibling::*[1]) = 'interfacename'"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="idl"/> -</xsl:template> - -<xsl:template match="exceptionname" mode="idl"> - <xsl:if test="local-name(preceding-sibling::*[1]) = 'exceptionname'"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="idl"/> -</xsl:template> - -<xsl:template match="fieldsynopsis" mode="idl"> - <fo:block wrap-option='no-wrap' - white-space-collapse='false' - linefeed-treatment="preserve" - xsl:use-attribute-sets="monospace.verbatim.properties"> - <xsl:text> </xsl:text> - <xsl:apply-templates mode="idl"/> - <xsl:text>;</xsl:text> - </fo:block> - <xsl:call-template name="synop-break"/> -</xsl:template> - -<xsl:template match="type" mode="idl"> - <xsl:apply-templates mode="idl"/> - <xsl:text> </xsl:text> -</xsl:template> - -<xsl:template match="varname" mode="idl"> - <xsl:apply-templates mode="idl"/> - <xsl:text> </xsl:text> -</xsl:template> - -<xsl:template match="initializer" mode="idl"> - <xsl:text>= </xsl:text> - <xsl:apply-templates mode="idl"/> -</xsl:template> - -<xsl:template match="void" mode="idl"> - <xsl:text>void </xsl:text> -</xsl:template> - -<xsl:template match="methodname" mode="idl"> - <xsl:apply-templates mode="idl"/> -</xsl:template> - -<xsl:template match="methodparam" mode="idl"> - <xsl:if test="preceding-sibling::methodparam"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="idl"/> -</xsl:template> - -<xsl:template match="parameter" mode="idl"> - <xsl:apply-templates mode="idl"/> -</xsl:template> - -<xsl:template mode="idl" - match="constructorsynopsis|destructorsynopsis|methodsynopsis"> - <xsl:variable name="start-modifiers" select="modifier[following-sibling::*[local-name(.) != 'modifier']]"/> - <xsl:variable name="notmod" select="*[local-name(.) != 'modifier']"/> - <xsl:variable name="end-modifiers" select="modifier[preceding-sibling::*[local-name(.) != 'modifier']]"/> - - <fo:block wrap-option='no-wrap' - white-space-collapse='false' - linefeed-treatment="preserve" - xsl:use-attribute-sets="monospace.verbatim.properties"> - <xsl:text> </xsl:text> - <xsl:apply-templates select="$start-modifiers" mode="idl"/> - - <!-- type --> - <xsl:if test="local-name($notmod[1]) != 'methodname'"> - <xsl:apply-templates select="$notmod[1]" mode="idl"/> - </xsl:if> - - <xsl:apply-templates select="methodname" mode="idl"/> - <xsl:text>(</xsl:text> - <xsl:apply-templates select="methodparam" mode="idl"/> - <xsl:text>)</xsl:text> - <xsl:if test="exceptionname"> - <xsl:text>&RE; raises(</xsl:text> - <xsl:apply-templates select="exceptionname" mode="idl"/> - <xsl:text>)</xsl:text> - </xsl:if> - <xsl:if test="modifier[preceding-sibling::*[local-name(.) != 'modifier']]"> - <xsl:text> </xsl:text> - <xsl:apply-templates select="$end-modifiers" mode="idl"/> - </xsl:if> - <xsl:text>;</xsl:text> - </fo:block> - <xsl:call-template name="synop-break"/> -</xsl:template> - -<!-- ===== Perl ======================================================== --> - -<xsl:template match="classsynopsis" mode="perl"> - <fo:block wrap-option='no-wrap' - white-space-collapse='false' - linefeed-treatment="preserve" - xsl:use-attribute-sets="monospace.verbatim.properties"> - <xsl:text>package </xsl:text> - <xsl:apply-templates select="ooclass[1]" mode="perl"/> - <xsl:text>;&RE;</xsl:text> - - <xsl:if test="ooclass[preceding-sibling::*]"> - <xsl:text>@ISA = (</xsl:text> - <xsl:apply-templates select="ooclass[preceding-sibling::*]" mode="perl"/> - <xsl:text>);&RE;</xsl:text> - </xsl:if> - - <xsl:apply-templates select="constructorsynopsis - |destructorsynopsis - |fieldsynopsis - |methodsynopsis - |classsynopsisinfo" mode="perl"/> - </fo:block> -</xsl:template> - -<xsl:template match="classsynopsisinfo" mode="perl"> - <xsl:apply-templates mode="perl"/> -</xsl:template> - -<xsl:template match="ooclass|oointerface|ooexception" mode="perl"> - <xsl:if test="preceding-sibling::*"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="perl"/> -</xsl:template> - -<xsl:template match="modifier|package" mode="perl"> - <xsl:apply-templates mode="perl"/> - <xsl:if test="following-sibling::*"> - <xsl:text> </xsl:text> - </xsl:if> -</xsl:template> - -<xsl:template match="classname" mode="perl"> - <xsl:if test="local-name(preceding-sibling::*[1]) = 'classname'"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="perl"/> -</xsl:template> - -<xsl:template match="interfacename" mode="perl"> - <xsl:if test="local-name(preceding-sibling::*[1]) = 'interfacename'"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="perl"/> -</xsl:template> - -<xsl:template match="exceptionname" mode="perl"> - <xsl:if test="local-name(preceding-sibling::*[1]) = 'exceptionname'"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="perl"/> -</xsl:template> - -<xsl:template match="fieldsynopsis" mode="perl"> - <fo:block wrap-option='no-wrap' - white-space-collapse='false' - linefeed-treatment="preserve" - xsl:use-attribute-sets="monospace.verbatim.properties"> - <xsl:text> </xsl:text> - <xsl:apply-templates mode="perl"/> - <xsl:text>;</xsl:text> - </fo:block> - <xsl:call-template name="synop-break"/> -</xsl:template> - -<xsl:template match="type" mode="perl"> - <xsl:apply-templates mode="perl"/> - <xsl:text> </xsl:text> -</xsl:template> - -<xsl:template match="varname" mode="perl"> - <xsl:apply-templates mode="perl"/> - <xsl:text> </xsl:text> -</xsl:template> - -<xsl:template match="initializer" mode="perl"> - <xsl:text>= </xsl:text> - <xsl:apply-templates mode="perl"/> -</xsl:template> - -<xsl:template match="void" mode="perl"> - <xsl:text>void </xsl:text> -</xsl:template> - -<xsl:template match="methodname" mode="perl"> - <xsl:apply-templates mode="perl"/> -</xsl:template> - -<xsl:template match="methodparam" mode="perl"> - <xsl:if test="preceding-sibling::methodparam"> - <xsl:text>, </xsl:text> - </xsl:if> - <xsl:apply-templates mode="perl"/> -</xsl:template> - -<xsl:template match="parameter" mode="perl"> - <xsl:apply-templates mode="perl"/> -</xsl:template> - -<xsl:template mode="perl" - match="constructorsynopsis|destructorsynopsis|methodsynopsis"> - <xsl:variable name="start-modifiers" select="modifier[following-sibling::*[local-name(.) != 'modifier']]"/> - <xsl:variable name="notmod" select="*[local-name(.) != 'modifier']"/> - <xsl:variable name="end-modifiers" select="modifier[preceding-sibling::*[local-name(.) != 'modifier']]"/> - - <fo:block wrap-option='no-wrap' - white-space-collapse='false' - linefeed-treatment="preserve" - xsl:use-attribute-sets="monospace.verbatim.properties"> - <xsl:text>sub </xsl:text> - - <xsl:apply-templates select="methodname" mode="perl"/> - <xsl:text> { ... };</xsl:text> - <xsl:call-template name="synop-break"/> - </fo:block> -</xsl:template> - -<!-- ==================================================================== --> - -<!-- * DocBook 5 allows linking elements (link, olink, and xref) --> -<!-- * within the OO *synopsis elements (classsynopsis, fieldsynopsis, --> -<!-- * methodsynopsis, constructorsynopsis, destructorsynopsis) and --> -<!-- * their children. So we need to have mode="java|cpp|idl|perl" --> -<!-- * per-mode matches for those linking elements in order for them --> -<!-- * to be processed as expected. --> - -<xsl:template match="link|olink|xref" mode="java"> - <xsl:apply-templates select="."/> -</xsl:template> - -<xsl:template match="link|olink|xref" mode="cpp"> - <xsl:apply-templates select="."/> -</xsl:template> - -<xsl:template match="link|olink|xref" mode="idl"> - <xsl:apply-templates select="."/> -</xsl:template> - -<xsl:template match="link|olink|xref" mode="perl"> - <xsl:apply-templates select="."/> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/table.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/table.xsl deleted file mode 100644 index a741c072e..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/table.xsl +++ /dev/null @@ -1,1535 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:rx="http://www.renderx.com/XSL/Extensions" - xmlns:stbl="http://nwalsh.com/xslt/ext/com.nwalsh.saxon.Table" - xmlns:xtbl="com.nwalsh.xalan.Table" - xmlns:lxslt="http://xml.apache.org/xslt" - xmlns:ptbl="http://nwalsh.com/xslt/ext/xsltproc/python/Table" - exclude-result-prefixes="doc stbl xtbl lxslt ptbl" - version='1.0'> - -<xsl:include href="../common/table.xsl"/> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<doc:reference xmlns="" xml:id="table-templates"> - <?dbhtml dir="fo"?> - <info> - <title>Formatting Object Table Reference</title> - <releaseinfo role="meta"> - $Id$ - </releaseinfo> - </info> - <partintro xml:id="partintro"> - <title>Introduction</title> - <para>This is technical reference documentation for the FO - table-processing templates in the DocBook XSL Stylesheets.</para> - <para>This is not intended to be user documentation. It is - provided for developers writing customization layers for the - stylesheets.</para> - </partintro> -</doc:reference> - -<!-- ==================================================================== --> - -<lxslt:component prefix="xtbl" - functions="adjustColumnWidths"/> - -<!-- ==================================================================== --> - -<xsl:template name="make.table.content"> - <xsl:choose> - <xsl:when test="tgroup|mediaobject|graphic"> - <xsl:call-template name="calsTable"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="." mode="htmlTable"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="calsTable"> - - <xsl:variable name="keep.together"> - <xsl:call-template name="pi.dbfo_keep-together"/> - </xsl:variable> - - <xsl:for-each select="tgroup"> - - <fo:table xsl:use-attribute-sets="table.table.properties"> - <xsl:if test="$keep.together != ''"> - <xsl:attribute name="keep-together.within-column"> - <xsl:value-of select="$keep.together"/> - </xsl:attribute> - </xsl:if> - <xsl:call-template name="table.frame"/> - <xsl:if test="following-sibling::tgroup"> - <xsl:attribute name="border-bottom-width">0pt</xsl:attribute> - <xsl:attribute name="border-bottom-style">none</xsl:attribute> - <xsl:attribute name="padding-bottom">0pt</xsl:attribute> - <xsl:attribute name="margin-bottom">0pt</xsl:attribute> - <xsl:attribute name="space-after">0pt</xsl:attribute> - <xsl:attribute name="space-after.minimum">0pt</xsl:attribute> - <xsl:attribute name="space-after.optimum">0pt</xsl:attribute> - <xsl:attribute name="space-after.maximum">0pt</xsl:attribute> - </xsl:if> - <xsl:if test="preceding-sibling::tgroup"> - <xsl:attribute name="border-top-width">0pt</xsl:attribute> - <xsl:attribute name="border-top-style">none</xsl:attribute> - <xsl:attribute name="padding-top">0pt</xsl:attribute> - <xsl:attribute name="margin-top">0pt</xsl:attribute> - <xsl:attribute name="space-before">0pt</xsl:attribute> - <xsl:attribute name="space-before.minimum">0pt</xsl:attribute> - <xsl:attribute name="space-before.optimum">0pt</xsl:attribute> - <xsl:attribute name="space-before.maximum">0pt</xsl:attribute> - </xsl:if> - <xsl:apply-templates select="."/> - </fo:table> - </xsl:for-each> -</xsl:template> - -<!-- ==================================================================== --> - -<!-- Placeholder template enables wrapping a fo:table in - another table for purposes of layout or applying - extensions such as XEP table-omit-initial-header to - create "continued" titles on page breaks. --> -<xsl:template name="table.layout"> - <xsl:param name="table.content" select="NOTANODE"/> - - <xsl:copy-of select="$table.content"/> -</xsl:template> - -<xsl:template name="table.block"> - <xsl:param name="table.layout" select="NOTANODE"/> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <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> - - <xsl:choose> - <xsl:when test="self::table"> - <fo:block id="{$id}" - xsl:use-attribute-sets="table.properties"> - <xsl:if test="$placement = 'before'"> - <xsl:call-template name="formal.object.heading"> - <xsl:with-param name="placement" select="$placement"/> - </xsl:call-template> - </xsl:if> - <xsl:copy-of select="$table.layout"/> - <xsl:call-template name="table.footnote.block"/> - <xsl:if test="$placement != 'before'"> - <xsl:call-template name="formal.object.heading"> - <xsl:with-param name="placement" select="$placement"/> - </xsl:call-template> - </xsl:if> - </fo:block> - </xsl:when> - <xsl:otherwise> - <fo:block id="{$id}" - xsl:use-attribute-sets="informaltable.properties"> - <xsl:copy-of select="$table.layout"/> - <xsl:call-template name="table.footnote.block"/> - </fo:block> - </xsl:otherwise> - </xsl:choose> - - -</xsl:template> - -<!-- Output a table's footnotes in a block --> -<xsl:template name="table.footnote.block"> - <xsl:if test=".//footnote"> - <fo:block keep-with-previous.within-column="always"> - <xsl:apply-templates select=".//footnote" mode="table.footnote.mode"/> - </fo:block> - </xsl:if> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="table.container"> - <xsl:param name="table.block"/> - <xsl:choose> - <xsl:when test="@orient='land' and - $fop.extensions = 0 and - $passivetex.extensions = 0" > - <fo:block-container reference-orientation="90" - padding="6pt" - xsl:use-attribute-sets="list.block.spacing"> - <xsl:attribute name="width"> - <xsl:call-template name="table.width"/> - </xsl:attribute> - <fo:block start-indent="0pt" end-indent="0pt"> - <xsl:copy-of select="$table.block"/> - </fo:block> - </fo:block-container> - </xsl:when> - <xsl:when test="@pgwide = 1"> - <fo:block xsl:use-attribute-sets="pgwide.properties"> - <xsl:copy-of select="$table.block"/> - </fo:block> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$table.block"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="empty.table.cell"> - <xsl:param name="colnum" select="0"/> - - <xsl:variable name="rowsep"> - <xsl:choose> - <!-- If this is the last row, rowsep never applies. --> - <xsl:when test="not(ancestor-or-self::row[1]/following-sibling::row - or ancestor-or-self::thead/following-sibling::tbody - or ancestor-or-self::tbody/preceding-sibling::tfoot)"> - <xsl:value-of select="0"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="inherited.table.attribute"> - <xsl:with-param name="entry" select="NOT-AN-ELEMENT-NAME"/> - <xsl:with-param name="row" select="ancestor-or-self::row[1]"/> - <xsl:with-param name="colnum" select="$colnum"/> - <xsl:with-param name="attribute" select="'rowsep'"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="colsep"> - <xsl:choose> - <!-- If this is the last column, colsep never applies. --> - <xsl:when test="number($colnum) >= ancestor::tgroup/@cols">0</xsl:when> - <xsl:otherwise> - <xsl:call-template name="inherited.table.attribute"> - <xsl:with-param name="entry" select="NOT-AN-ELEMENT-NAME"/> - <xsl:with-param name="row" select="ancestor-or-self::row[1]"/> - <xsl:with-param name="colnum" select="$colnum"/> - <xsl:with-param name="attribute" select="'colsep'"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <fo:table-cell text-align="center" - display-align="center" - xsl:use-attribute-sets="table.cell.padding"> - <xsl:if test="$xep.extensions != 0"> - <!-- Suggested by RenderX to workaround a bug in their implementation --> - <xsl:attribute name="keep-together.within-column">always</xsl:attribute> - </xsl:if> - <xsl:if test="$rowsep > 0"> - <xsl:call-template name="border"> - <xsl:with-param name="side" select="'bottom'"/> - </xsl:call-template> - </xsl:if> - - <xsl:if test="$colsep > 0 and number($colnum) < ancestor::tgroup/@cols"> - <xsl:call-template name="border"> - <xsl:with-param name="side" select="'right'"/> - </xsl:call-template> - </xsl:if> - - <!-- fo:table-cell should not be empty --> - <fo:block/> - </fo:table-cell> -</xsl:template> - -<!-- ==================================================================== --> -<xsl:template name="table.frame"> - <xsl:variable name="frame"> - <xsl:choose> - <xsl:when test="../@frame"> - <xsl:value-of select="../@frame"/> - </xsl:when> - <xsl:when test="$default.table.frame != ''"> - <xsl:value-of select="$default.table.frame"/> - </xsl:when> - <xsl:otherwise>all</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$frame='all'"> - <xsl:attribute name="border-left-style"> - <xsl:value-of select="$table.frame.border.style"/> - </xsl:attribute> - <xsl:attribute name="border-right-style"> - <xsl:value-of select="$table.frame.border.style"/> - </xsl:attribute> - <xsl:attribute name="border-top-style"> - <xsl:value-of select="$table.frame.border.style"/> - </xsl:attribute> - <xsl:attribute name="border-bottom-style"> - <xsl:value-of select="$table.frame.border.style"/> - </xsl:attribute> - <xsl:attribute name="border-left-width"> - <xsl:value-of select="$table.frame.border.thickness"/> - </xsl:attribute> - <xsl:attribute name="border-right-width"> - <xsl:value-of select="$table.frame.border.thickness"/> - </xsl:attribute> - <xsl:attribute name="border-top-width"> - <xsl:value-of select="$table.frame.border.thickness"/> - </xsl:attribute> - <xsl:attribute name="border-bottom-width"> - <xsl:value-of select="$table.frame.border.thickness"/> - </xsl:attribute> - <xsl:attribute name="border-left-color"> - <xsl:value-of select="$table.frame.border.color"/> - </xsl:attribute> - <xsl:attribute name="border-right-color"> - <xsl:value-of select="$table.frame.border.color"/> - </xsl:attribute> - <xsl:attribute name="border-top-color"> - <xsl:value-of select="$table.frame.border.color"/> - </xsl:attribute> - <xsl:attribute name="border-bottom-color"> - <xsl:value-of select="$table.frame.border.color"/> - </xsl:attribute> - </xsl:when> - <xsl:when test="$frame='bottom'"> - <xsl:attribute name="border-left-style">none</xsl:attribute> - <xsl:attribute name="border-right-style">none</xsl:attribute> - <xsl:attribute name="border-top-style">none</xsl:attribute> - <xsl:attribute name="border-bottom-style"> - <xsl:value-of select="$table.frame.border.style"/> - </xsl:attribute> - <xsl:attribute name="border-bottom-width"> - <xsl:value-of select="$table.frame.border.thickness"/> - </xsl:attribute> - <xsl:attribute name="border-bottom-color"> - <xsl:value-of select="$table.frame.border.color"/> - </xsl:attribute> - </xsl:when> - <xsl:when test="$frame='sides'"> - <xsl:attribute name="border-left-style"> - <xsl:value-of select="$table.frame.border.style"/> - </xsl:attribute> - <xsl:attribute name="border-right-style"> - <xsl:value-of select="$table.frame.border.style"/> - </xsl:attribute> - <xsl:attribute name="border-top-style">none</xsl:attribute> - <xsl:attribute name="border-bottom-style">none</xsl:attribute> - <xsl:attribute name="border-left-width"> - <xsl:value-of select="$table.frame.border.thickness"/> - </xsl:attribute> - <xsl:attribute name="border-right-width"> - <xsl:value-of select="$table.frame.border.thickness"/> - </xsl:attribute> - <xsl:attribute name="border-left-color"> - <xsl:value-of select="$table.frame.border.color"/> - </xsl:attribute> - <xsl:attribute name="border-right-color"> - <xsl:value-of select="$table.frame.border.color"/> - </xsl:attribute> - </xsl:when> - <xsl:when test="$frame='top'"> - <xsl:attribute name="border-left-style">none</xsl:attribute> - <xsl:attribute name="border-right-style">none</xsl:attribute> - <xsl:attribute name="border-top-style"> - <xsl:value-of select="$table.frame.border.style"/> - </xsl:attribute> - <xsl:attribute name="border-bottom-style">none</xsl:attribute> - <xsl:attribute name="border-top-width"> - <xsl:value-of select="$table.frame.border.thickness"/> - </xsl:attribute> - <xsl:attribute name="border-top-color"> - <xsl:value-of select="$table.frame.border.color"/> - </xsl:attribute> - </xsl:when> - <xsl:when test="$frame='topbot'"> - <xsl:attribute name="border-left-style">none</xsl:attribute> - <xsl:attribute name="border-right-style">none</xsl:attribute> - <xsl:attribute name="border-top-style"> - <xsl:value-of select="$table.frame.border.style"/> - </xsl:attribute> - <xsl:attribute name="border-bottom-style"> - <xsl:value-of select="$table.frame.border.style"/> - </xsl:attribute> - <xsl:attribute name="border-top-width"> - <xsl:value-of select="$table.frame.border.thickness"/> - </xsl:attribute> - <xsl:attribute name="border-bottom-width"> - <xsl:value-of select="$table.frame.border.thickness"/> - </xsl:attribute> - <xsl:attribute name="border-top-color"> - <xsl:value-of select="$table.frame.border.color"/> - </xsl:attribute> - <xsl:attribute name="border-bottom-color"> - <xsl:value-of select="$table.frame.border.color"/> - </xsl:attribute> - </xsl:when> - <xsl:when test="$frame='none'"> - <xsl:attribute name="border-left-style">none</xsl:attribute> - <xsl:attribute name="border-right-style">none</xsl:attribute> - <xsl:attribute name="border-top-style">none</xsl:attribute> - <xsl:attribute name="border-bottom-style">none</xsl:attribute> - </xsl:when> - <xsl:otherwise> - <xsl:message> - <xsl:text>Impossible frame on table: </xsl:text> - <xsl:value-of select="$frame"/> - </xsl:message> - <xsl:attribute name="border-left-style">none</xsl:attribute> - <xsl:attribute name="border-right-style">none</xsl:attribute> - <xsl:attribute name="border-top-style">none</xsl:attribute> - <xsl:attribute name="border-bottom-style">none</xsl:attribute> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="border"> - <xsl:param name="side" select="'left'"/> - - <xsl:attribute name="border-{$side}-width"> - <xsl:value-of select="$table.cell.border.thickness"/> - </xsl:attribute> - <xsl:attribute name="border-{$side}-style"> - <xsl:value-of select="$table.cell.border.style"/> - </xsl:attribute> - <xsl:attribute name="border-{$side}-color"> - <xsl:value-of select="$table.cell.border.color"/> - </xsl:attribute> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="tgroup" name="tgroup"> - <xsl:if test="not(@cols) or @cols = '' or string(number(@cols)) = 'NaN'"> - <xsl:message terminate="yes"> - <xsl:text>Error: CALS tables must specify the number of columns.</xsl:text> - </xsl:message> - </xsl:if> - - <xsl:variable name="table.width"> - <xsl:call-template name="table.width"/> - </xsl:variable> - - <xsl:variable name="colspecs"> - <xsl:choose> - <xsl:when test="$use.extensions != 0 - and $tablecolumns.extension != 0"> - <xsl:call-template name="generate.colgroup.raw"> - <xsl:with-param name="cols" select="@cols"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="generate.colgroup"> - <xsl:with-param name="cols" select="@cols"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="prop-columns" - select=".//colspec[contains(@colwidth, '*')]"/> - <xsl:if test="count($prop-columns) != 0 or - $fop.extensions != 0 or - $fop1.extensions != 0 or - $passivetex.extensions != 0"> - <xsl:attribute name="table-layout">fixed</xsl:attribute> - </xsl:if> - - <xsl:attribute name="width"> - <xsl:value-of select="$table.width"/> - </xsl:attribute> - - <xsl:choose> - <xsl:when test="$use.extensions != 0 - and $tablecolumns.extension != 0"> - <xsl:choose> - <xsl:when test="function-available('stbl:adjustColumnWidths')"> - <xsl:copy-of select="stbl:adjustColumnWidths($colspecs)"/> - </xsl:when> - <xsl:when test="function-available('xtbl:adjustColumnWidths')"> - <xsl:copy-of select="xtbl:adjustColumnWidths($colspecs)"/> - </xsl:when> - <xsl:when test="function-available('ptbl:adjustColumnWidths')"> - <xsl:copy-of select="ptbl:adjustColumnWidths($colspecs)"/> - </xsl:when> - <xsl:otherwise> - <xsl:message terminate="yes"> - <xsl:text>No adjustColumnWidths function available.</xsl:text> - </xsl:message> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$colspecs"/> - </xsl:otherwise> - </xsl:choose> - - <xsl:apply-templates select="thead"/> - <xsl:apply-templates select="tfoot"/> - <xsl:apply-templates select="tbody"/> -</xsl:template> - -<xsl:template match="colspec"></xsl:template> - -<xsl:template name="table.width"> - - <xsl:variable name="numcols"> - <xsl:call-template name="widest-html-row"> - <xsl:with-param name="rows" select=".//tr"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="explicit.table.width"> - <xsl:choose> - <xsl:when test="self::entrytbl"> - <xsl:call-template name="pi.dbfo_table-width"/> - </xsl:when> - <xsl:when test="self::table or self::informaltable"> - <xsl:call-template name="pi.dbfo_table-width"/> - </xsl:when> - <xsl:otherwise> - <!-- * no dbfo@table-width PI as a child of this table, so check --> - <!-- * the parent of this table to see if the table has any --> - <!-- * sibling dbfo@table-width PIs (FIXME: 2007-07 MikeSmith: we --> - <!-- * should really instead be checking here just to see if the --> - <!-- * first preceding sibling of this table is a --> - <!-- * dbfo@table-width PI) --> - <xsl:call-template name="pi.dbfo_table-width"> - <xsl:with-param name="node" select=".."/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="column.sum"> - <xsl:choose> - <!-- CALS table --> - <xsl:when test="@cols"> - <xsl:if test="count(colspec) = @cols"> - <xsl:for-each select="colspec"> - <xsl:if test="position() != 1"> - <xsl:text> + </xsl:text> - </xsl:if> - <xsl:choose> - <xsl:when test="not(@colwidth)">NOWIDTH</xsl:when> - <xsl:when test="contains(@colwidth, '*')">NOWIDTH</xsl:when> - <xsl:otherwise> - <xsl:value-of select="@colwidth"/> - </xsl:otherwise> - </xsl:choose> - </xsl:for-each> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <!-- HTML table --> - <xsl:if test="count(col|colgroup/col) = $numcols"> - <xsl:for-each select="col|colgroup/col"> - <xsl:if test="position() != 1"> - <xsl:text> + </xsl:text> - </xsl:if> - <xsl:choose> - <xsl:when test="not(@width)">NOWIDTH</xsl:when> - <xsl:when test="contains(@width, '%')">NOWIDTH</xsl:when> - <xsl:otherwise> - <xsl:value-of select="@width"/> - </xsl:otherwise> - </xsl:choose> - </xsl:for-each> - </xsl:if> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="column.sum.width"> - <xsl:if test="not(contains($column.sum, 'NOWIDTH'))"> - <xsl:value-of select="$column.sum"/> - </xsl:if> - </xsl:variable> - - <xsl:variable name="prop-columns" - select=".//colspec[contains(@colwidth, '*')]"/> - - <xsl:variable name="table.width"> - <xsl:choose> - <xsl:when test="$explicit.table.width != ''"> - <xsl:value-of select="$explicit.table.width"/> - </xsl:when> - <xsl:when test="$column.sum.width != ''"> - <xsl:value-of select="$column.sum.width"/> - </xsl:when> - <xsl:when test="$default.table.width = ''"> - <xsl:choose> - <!-- These processors don't support table-layout="auto" --> - <xsl:when test="$fop.extensions != 0 or - $fop1.extensions != 0 or - $passivetex.extensions != 0"> - <xsl:text>100%</xsl:text> - </xsl:when> - <!-- Proportional columns imply 100% width --> - <xsl:when test="count($prop-columns) != 0"> - <xsl:text>100%</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text>auto</xsl:text> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$default.table.width"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:value-of select="$table.width"/> - -</xsl:template> - -<xsl:template match="spanspec"></xsl:template> - -<xsl:template match="thead"> - <xsl:variable name="tgroup" select="parent::*"/> - - <fo:table-header start-indent="0pt" end-indent="0pt"> - <xsl:apply-templates select="row[1]"> - <xsl:with-param name="spans"> - <xsl:call-template name="blank.spans"> - <xsl:with-param name="cols" select="../@cols"/> - </xsl:call-template> - </xsl:with-param> - </xsl:apply-templates> - </fo:table-header> -</xsl:template> - -<xsl:template match="tfoot"> - <xsl:variable name="tgroup" select="parent::*"/> - - <fo:table-footer start-indent="0pt" end-indent="0pt"> - <xsl:apply-templates select="row[1]"> - <xsl:with-param name="spans"> - <xsl:call-template name="blank.spans"> - <xsl:with-param name="cols" select="../@cols"/> - </xsl:call-template> - </xsl:with-param> - </xsl:apply-templates> - - </fo:table-footer> -</xsl:template> - -<xsl:template match="tbody"> - <xsl:variable name="tgroup" select="parent::*"/> - - <fo:table-body start-indent="0pt" end-indent="0pt"> - <xsl:apply-templates select="row[1]"> - <xsl:with-param name="spans"> - <xsl:call-template name="blank.spans"> - <xsl:with-param name="cols" select="../@cols"/> - </xsl:call-template> - </xsl:with-param> - </xsl:apply-templates> - </fo:table-body> -</xsl:template> - -<xsl:template match="row"> - <xsl:param name="spans"/> - - <xsl:choose> - <xsl:when test="contains($spans, '0')"> - <xsl:call-template name="normal-row"> - <xsl:with-param name="spans" select="$spans"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <!-- - <xsl:message> - <xsl:text>Ignoring row: </xsl:text> - <xsl:value-of select="$spans"/> - <xsl:text> = </xsl:text> - <xsl:call-template name="consume-row"> - <xsl:with-param name="spans" select="$spans"/> - </xsl:call-template> - </xsl:message> - --> - - <xsl:if test="normalize-space(.//text()) != ''"> - <xsl:message>Warning: overlapped row contains content!</xsl:message> - </xsl:if> - - <fo:table-row> - <xsl:comment> This row intentionally left blank </xsl:comment> - <fo:table-cell><fo:block/></fo:table-cell> - </fo:table-row> - - <xsl:apply-templates select="following-sibling::row[1]"> - <xsl:with-param name="spans"> - <xsl:call-template name="consume-row"> - <xsl:with-param name="spans" select="$spans"/> - </xsl:call-template> - </xsl:with-param> - </xsl:apply-templates> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="normal-row"> - <xsl:param name="spans"/> - - <fo:table-row> - <xsl:call-template name="table.row.properties"/> - <xsl:call-template name="anchor"/> - - <xsl:apply-templates select="(entry|entrytbl)[1]"> - <xsl:with-param name="spans" select="$spans"/> - </xsl:apply-templates> - </fo:table-row> - - <xsl:if test="following-sibling::row"> - <xsl:variable name="nextspans"> - <xsl:apply-templates select="(entry|entrytbl)[1]" mode="span"> - <xsl:with-param name="spans" select="$spans"/> - </xsl:apply-templates> - </xsl:variable> - - <xsl:apply-templates select="following-sibling::row[1]"> - <xsl:with-param name="spans" select="$nextspans"/> - </xsl:apply-templates> - </xsl:if> -</xsl:template> - -<!-- customize this template to add row properties --> -<xsl:template name="table.row.properties"> - <xsl:variable name="bgcolor"> - <xsl:call-template name="pi.dbfo_bgcolor"/> - </xsl:variable> - <xsl:if test="$bgcolor != ''"> - <xsl:attribute name="background-color"> - <xsl:value-of select="$bgcolor"/> - </xsl:attribute> - </xsl:if> - - <!-- Keep header row with next row --> - <xsl:if test="ancestor::thead"> - <xsl:attribute name="keep-with-next.within-column">always</xsl:attribute> - </xsl:if> - -</xsl:template> - -<xsl:template match="entry|entrytbl" name="entry"> - <xsl:param name="col" select="1"/> - <xsl:param name="spans"/> - - <xsl:variable name="row" select="parent::row"/> - <xsl:variable name="group" select="$row/parent::*[1]"/> - <xsl:variable name="frame" select="ancestor::tgroup/parent::*/@frame"/> - - <xsl:variable name="empty.cell" select="count(node()) = 0"/> - - <xsl:variable name="named.colnum"> - <xsl:call-template name="entry.colnum"/> - </xsl:variable> - - <xsl:variable name="entry.colnum"> - <xsl:choose> - <xsl:when test="$named.colnum > 0"> - <xsl:value-of select="$named.colnum"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$col"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="entry.colspan"> - <xsl:choose> - <xsl:when test="@spanname or @namest"> - <xsl:call-template name="calculate.colspan"/> - </xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="following.spans"> - <xsl:call-template name="calculate.following.spans"> - <xsl:with-param name="colspan" select="$entry.colspan"/> - <xsl:with-param name="spans" select="$spans"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="rowsep"> - <xsl:choose> - <!-- If this is the last row, rowsep never applies. --> - <xsl:when test="not(ancestor-or-self::row[1]/following-sibling::row - or ancestor-or-self::thead/following-sibling::tbody - or ancestor-or-self::tbody/preceding-sibling::tfoot)"> - <xsl:value-of select="0"/> - </xsl:when> - <!-- Check for morerows too --> - <xsl:when test="(@morerows and count(ancestor-or-self::row[1]/ - following-sibling::row) = @morerows ) - and not (ancestor-or-self::thead/following-sibling::tbody - or ancestor-or-self::tbody/preceding-sibling::tfoot)"> - <xsl:value-of select="0"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="inherited.table.attribute"> - <xsl:with-param name="entry" select="."/> - <xsl:with-param name="colnum" select="$entry.colnum"/> - <xsl:with-param name="attribute" select="'rowsep'"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - -<!-- - <xsl:message><xsl:value-of select="."/>: <xsl:value-of select="$rowsep"/></xsl:message> ---> - - <xsl:variable name="colsep"> - <xsl:choose> - <!-- If this is the last column, colsep never applies. --> - <xsl:when test="$following.spans = ''">0</xsl:when> - <xsl:otherwise> - <xsl:call-template name="inherited.table.attribute"> - <xsl:with-param name="entry" select="."/> - <xsl:with-param name="colnum" select="$entry.colnum"/> - <xsl:with-param name="attribute" select="'colsep'"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="valign"> - <xsl:call-template name="inherited.table.attribute"> - <xsl:with-param name="entry" select="."/> - <xsl:with-param name="colnum" select="$entry.colnum"/> - <xsl:with-param name="attribute" select="'valign'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="align"> - <xsl:call-template name="inherited.table.attribute"> - <xsl:with-param name="entry" select="."/> - <xsl:with-param name="colnum" select="$entry.colnum"/> - <xsl:with-param name="attribute" select="'align'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="char"> - <xsl:call-template name="inherited.table.attribute"> - <xsl:with-param name="entry" select="."/> - <xsl:with-param name="colnum" select="$entry.colnum"/> - <xsl:with-param name="attribute" select="'char'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="charoff"> - <xsl:call-template name="inherited.table.attribute"> - <xsl:with-param name="entry" select="."/> - <xsl:with-param name="colnum" select="$entry.colnum"/> - <xsl:with-param name="attribute" select="'charoff'"/> - </xsl:call-template> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$spans != '' and not(starts-with($spans,'0:'))"> - <xsl:call-template name="entry"> - <xsl:with-param name="col" select="$col+1"/> - <xsl:with-param name="spans" select="substring-after($spans,':')"/> - </xsl:call-template> - </xsl:when> - - <xsl:when test="number($entry.colnum) > $col"> - <xsl:call-template name="empty.table.cell"> - <xsl:with-param name="colnum" select="$col"/> - </xsl:call-template> - <xsl:call-template name="entry"> - <xsl:with-param name="col" select="$col+1"/> - <xsl:with-param name="spans" select="substring-after($spans,':')"/> - </xsl:call-template> - </xsl:when> - - <xsl:otherwise> - <xsl:variable name="cell.content"> - <fo:block> - <xsl:call-template name="table.cell.block.properties"/> - - <!-- are we missing any indexterms? --> - <xsl:if test="not(preceding-sibling::entry) - and not(parent::row/preceding-sibling::row)"> - <!-- this is the first entry of the first row --> - <xsl:if test="ancestor::thead or - (ancestor::tbody - and not(ancestor::tbody/preceding-sibling::thead - or ancestor::tbody/preceding-sibling::tbody))"> - <!-- of the thead or the first tbody --> - <xsl:apply-templates select="ancestor::tgroup/preceding-sibling::indexterm"/> - </xsl:if> - </xsl:if> - - <!-- - <xsl:text>(</xsl:text> - <xsl:value-of select="$rowsep"/> - <xsl:text>,</xsl:text> - <xsl:value-of select="$colsep"/> - <xsl:text>)</xsl:text> - --> - <xsl:choose> - <xsl:when test="$empty.cell"> - <xsl:text> </xsl:text> - </xsl:when> - <xsl:when test="self::entrytbl"> - <xsl:variable name="prop-columns" - select=".//colspec[contains(@colwidth, '*')]"/> - <fo:table xsl:use-attribute-sets="table.table.properties"> - <xsl:if test="count($prop-columns) != 0"> - <xsl:attribute name="table-layout">fixed</xsl:attribute> - </xsl:if> - <xsl:call-template name="tgroup"/> - </fo:table> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates/> - </xsl:otherwise> - </xsl:choose> - </fo:block> - </xsl:variable> - - <xsl:variable name="cell-orientation"> - <xsl:call-template name="pi.dbfo_orientation"> - <xsl:with-param name="node" select="ancestor-or-self::entry"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="row-orientation"> - <xsl:call-template name="pi.dbfo_orientation"> - <xsl:with-param name="node" select="ancestor-or-self::row"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="cell-width"> - <xsl:call-template name="pi.dbfo_rotated-width"> - <xsl:with-param name="node" select="ancestor-or-self::entry"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="row-width"> - <xsl:call-template name="pi.dbfo_rotated-width"> - <xsl:with-param name="node" select="ancestor-or-self::row"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="orientation"> - <xsl:choose> - <xsl:when test="$cell-orientation != ''"> - <xsl:value-of select="$cell-orientation"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$row-orientation"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="rotated-width"> - <xsl:choose> - <xsl:when test="$cell-width != ''"> - <xsl:value-of select="$cell-width"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$row-width"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="bgcolor"> - <xsl:call-template name="pi.dbfo_bgcolor"> - <xsl:with-param name="node" select="ancestor-or-self::entry"/> - </xsl:call-template> - </xsl:variable> - - <fo:table-cell xsl:use-attribute-sets="table.cell.padding"> - <xsl:call-template name="table.cell.properties"> - <xsl:with-param name="bgcolor.pi" select="$bgcolor"/> - <xsl:with-param name="rowsep.inherit" select="$rowsep"/> - <xsl:with-param name="colsep.inherit" select="$colsep"/> - <xsl:with-param name="col" select="$col"/> - <xsl:with-param name="valign.inherit" select="$valign"/> - <xsl:with-param name="align.inherit" select="$align"/> - <xsl:with-param name="char.inherit" select="$char"/> - </xsl:call-template> - - <xsl:call-template name="anchor"/> - - <xsl:if test="@morerows"> - <xsl:attribute name="number-rows-spanned"> - <xsl:value-of select="@morerows+1"/> - </xsl:attribute> - </xsl:if> - - <xsl:if test="$entry.colspan > 1"> - <xsl:attribute name="number-columns-spanned"> - <xsl:value-of select="$entry.colspan"/> - </xsl:attribute> - </xsl:if> - -<!-- - <xsl:if test="@charoff"> - <xsl:attribute name="charoff"> - <xsl:value-of select="@charoff"/> - </xsl:attribute> - </xsl:if> ---> - - <xsl:choose> - <xsl:when test="$fop.extensions = 0 and $passivetex.extensions = 0 - and $orientation != ''"> - <fo:block-container reference-orientation="{$orientation}"> - <xsl:if test="$rotated-width != ''"> - <xsl:attribute name="width"> - <xsl:value-of select="$rotated-width"/> - </xsl:attribute> - </xsl:if> - <xsl:copy-of select="$cell.content"/> - </fo:block-container> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$cell.content"/> - </xsl:otherwise> - </xsl:choose> - </fo:table-cell> - - <xsl:choose> - <xsl:when test="following-sibling::entry|following-sibling::entrytbl"> - <xsl:apply-templates select="(following-sibling::entry - |following-sibling::entrytbl)[1]"> - <xsl:with-param name="col" select="$col+$entry.colspan"/> - <xsl:with-param name="spans" select="$following.spans"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="finaltd"> - <xsl:with-param name="spans" select="$following.spans"/> - <xsl:with-param name="col" select="$col+$entry.colspan"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- Expand this template to add properties to any fo:table-cell --> -<xsl:template name="table.cell.properties"> - <xsl:param name="bgcolor.pi" select="''"/> - <xsl:param name="rowsep.inherit" select="1"/> - <xsl:param name="colsep.inherit" select="1"/> - <xsl:param name="col" select="1"/> - <xsl:param name="valign.inherit" select="''"/> - <xsl:param name="align.inherit" select="''"/> - <xsl:param name="char.inherit" select="''"/> - - <xsl:choose> - <xsl:when test="ancestor::tgroup"> - <xsl:if test="$bgcolor.pi != ''"> - <xsl:attribute name="background-color"> - <xsl:value-of select="$bgcolor.pi"/> - </xsl:attribute> - </xsl:if> - - <xsl:if test="$rowsep.inherit > 0"> - <xsl:call-template name="border"> - <xsl:with-param name="side" select="'bottom'"/> - </xsl:call-template> - </xsl:if> - - <xsl:if test="$colsep.inherit > 0 and - $col < ancestor::tgroup/@cols"> - <xsl:call-template name="border"> - <xsl:with-param name="side" select="'right'"/> - </xsl:call-template> - </xsl:if> - - <xsl:if test="$valign.inherit != ''"> - <xsl:attribute name="display-align"> - <xsl:choose> - <xsl:when test="$valign.inherit='top'">before</xsl:when> - <xsl:when test="$valign.inherit='middle'">center</xsl:when> - <xsl:when test="$valign.inherit='bottom'">after</xsl:when> - <xsl:otherwise> - <xsl:message> - <xsl:text>Unexpected valign value: </xsl:text> - <xsl:value-of select="$valign.inherit"/> - <xsl:text>, center used.</xsl:text> - </xsl:message> - <xsl:text>center</xsl:text> - </xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </xsl:if> - - <xsl:choose> - <xsl:when test="$align.inherit = 'char' and $char.inherit != ''"> - <xsl:attribute name="text-align"> - <xsl:value-of select="$char.inherit"/> - </xsl:attribute> - </xsl:when> - <xsl:when test="$align.inherit != ''"> - <xsl:attribute name="text-align"> - <xsl:value-of select="$align.inherit"/> - </xsl:attribute> - </xsl:when> - </xsl:choose> - - </xsl:when> - <xsl:otherwise> - <!-- HTML table --> - <xsl:variable name="border" - select="(ancestor::table | - ancestor::informaltable)[last()]/@border"/> - <xsl:if test="$border != '' and $border != 0"> - <xsl:attribute name="border"> - <xsl:value-of select="$table.cell.border.thickness"/> - <xsl:text> </xsl:text> - <xsl:value-of select="$table.cell.border.style"/> - <xsl:text> </xsl:text> - <xsl:value-of select="$table.cell.border.color"/> - </xsl:attribute> - </xsl:if> - </xsl:otherwise> - </xsl:choose> - -</xsl:template> - -<!-- Expand this template to add properties to any cell's block --> -<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:if> -</xsl:template> - -<xsl:template match="entry|entrytbl" name="sentry" mode="span"> - <xsl:param name="col" select="1"/> - <xsl:param name="spans"/> - - <xsl:variable name="entry.colnum"> - <xsl:call-template name="entry.colnum"/> - </xsl:variable> - - <xsl:variable name="entry.colspan"> - <xsl:choose> - <xsl:when test="@spanname or @namest"> - <xsl:call-template name="calculate.colspan"/> - </xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="following.spans"> - <xsl:call-template name="calculate.following.spans"> - <xsl:with-param name="colspan" select="$entry.colspan"/> - <xsl:with-param name="spans" select="$spans"/> - </xsl:call-template> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$spans != '' and not(starts-with($spans,'0:'))"> - <xsl:value-of select="substring-before($spans,':')-1"/> - <xsl:text>:</xsl:text> - <xsl:call-template name="sentry"> - <xsl:with-param name="col" select="$col+1"/> - <xsl:with-param name="spans" select="substring-after($spans,':')"/> - </xsl:call-template> - </xsl:when> - - <xsl:when test="number($entry.colnum) > $col"> - <xsl:text>0:</xsl:text> - <xsl:call-template name="sentry"> - <xsl:with-param name="col" select="$col+$entry.colspan"/> - <xsl:with-param name="spans" select="$following.spans"/> - </xsl:call-template> - </xsl:when> - - <xsl:otherwise> - <xsl:call-template name="copy-string"> - <xsl:with-param name="count" select="$entry.colspan"/> - <xsl:with-param name="string"> - <xsl:choose> - <xsl:when test="@morerows"> - <xsl:value-of select="@morerows"/> - </xsl:when> - <xsl:otherwise>0</xsl:otherwise> - </xsl:choose> - <xsl:text>:</xsl:text> - </xsl:with-param> - </xsl:call-template> - - <xsl:choose> - <xsl:when test="following-sibling::entry|following-sibling::entrytbl"> - <xsl:apply-templates select="(following-sibling::entry - |following-sibling::entrytbl)[1]" - mode="span"> - <xsl:with-param name="col" select="$col+$entry.colspan"/> - <xsl:with-param name="spans" select="$following.spans"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="sfinaltd"> - <xsl:with-param name="spans" select="$following.spans"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="generate.colgroup.raw"> - <xsl:param name="cols" select="1"/> - <xsl:param name="count" select="1"/> - - <xsl:choose> - <xsl:when test="$count>$cols"></xsl:when> - <xsl:otherwise> - <xsl:call-template name="generate.col.raw"> - <xsl:with-param name="countcol" select="$count"/> - </xsl:call-template> - <xsl:call-template name="generate.colgroup.raw"> - <xsl:with-param name="cols" select="$cols"/> - <xsl:with-param name="count" select="$count+1"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="generate.colgroup"> - <xsl:param name="cols" select="1"/> - <xsl:param name="count" select="1"/> - - <xsl:choose> - <xsl:when test="$count>$cols"></xsl:when> - <xsl:otherwise> - <xsl:call-template name="generate.col"> - <xsl:with-param name="countcol" select="$count"/> - </xsl:call-template> - <xsl:call-template name="generate.colgroup"> - <xsl:with-param name="cols" select="$cols"/> - <xsl:with-param name="count" select="$count+1"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="generate.col.raw"> - <!-- generate the table-column for column countcol --> - <xsl:param name="countcol">1</xsl:param> - <xsl:param name="colspecs" select="./colspec"/> - <xsl:param name="count">1</xsl:param> - <xsl:param name="colnum">1</xsl:param> - - <xsl:choose> - <xsl:when test="$count>count($colspecs)"> - <fo:table-column column-number="{$countcol}"/> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="colspec" select="$colspecs[$count=position()]"/> - - <xsl:variable name="colspec.colnum"> - <xsl:choose> - <xsl:when test="$colspec/@colnum"> - <xsl:value-of select="$colspec/@colnum"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$colnum"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="colspec.colwidth"> - <xsl:choose> - <xsl:when test="$colspec/@colwidth"> - <xsl:value-of select="$colspec/@colwidth"/> - </xsl:when> - <xsl:otherwise>1*</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$colspec.colnum=$countcol"> - <fo:table-column column-number="{$countcol}"> - <xsl:attribute name="column-width"> - <xsl:value-of select="$colspec.colwidth"/> - </xsl:attribute> - </fo:table-column> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="generate.col.raw"> - <xsl:with-param name="countcol" select="$countcol"/> - <xsl:with-param name="colspecs" select="$colspecs"/> - <xsl:with-param name="count" select="$count+1"/> - <xsl:with-param name="colnum"> - <xsl:choose> - <xsl:when test="$colspec/@colnum"> - <xsl:value-of select="$colspec/@colnum + 1"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$colnum + 1"/> - </xsl:otherwise> - </xsl:choose> - </xsl:with-param> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="generate.col"> - <!-- generate the table-column for column countcol --> - <xsl:param name="countcol">1</xsl:param> - <xsl:param name="colspecs" select="./colspec"/> - <xsl:param name="count">1</xsl:param> - <xsl:param name="colnum">1</xsl:param> - - <xsl:choose> - <xsl:when test="$count>count($colspecs)"> - <fo:table-column column-number="{$countcol}"> - <xsl:variable name="colwidth"> - <xsl:call-template name="calc.column.width"/> - </xsl:variable> - <xsl:if test="$colwidth != 'proportional-column-width(1)'"> - <xsl:attribute name="column-width"> - <xsl:value-of select="$colwidth"/> - </xsl:attribute> - </xsl:if> - </fo:table-column> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="colspec" select="$colspecs[$count=position()]"/> - - <xsl:variable name="colspec.colnum"> - <xsl:choose> - <xsl:when test="$colspec/@colnum"> - <xsl:value-of select="$colspec/@colnum"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$colnum"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="colspec.colwidth"> - <xsl:choose> - <xsl:when test="$colspec/@colwidth"> - <xsl:value-of select="$colspec/@colwidth"/> - </xsl:when> - <xsl:otherwise>1*</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$colspec.colnum=$countcol"> - <fo:table-column column-number="{$countcol}"> - <xsl:variable name="colwidth"> - <xsl:call-template name="calc.column.width"> - <xsl:with-param name="colwidth"> - <xsl:value-of select="$colspec.colwidth"/> - </xsl:with-param> - </xsl:call-template> - </xsl:variable> - <xsl:if test="$colwidth != 'proportional-column-width(1)'"> - <xsl:attribute name="column-width"> - <xsl:value-of select="$colwidth"/> - </xsl:attribute> - </xsl:if> - </fo:table-column> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="generate.col"> - <xsl:with-param name="countcol" select="$countcol"/> - <xsl:with-param name="colspecs" select="$colspecs"/> - <xsl:with-param name="count" select="$count+1"/> - <xsl:with-param name="colnum"> - <xsl:choose> - <xsl:when test="$colspec/@colnum"> - <xsl:value-of select="$colspec/@colnum + 1"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$colnum + 1"/> - </xsl:otherwise> - </xsl:choose> - </xsl:with-param> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<doc:template name="calc.column.width" xmlns=""> -<refpurpose>Calculate an XSL FO table column width specification from a -CALS table column width specification.</refpurpose> - -<refdescription> -<para>CALS expresses table column widths in the following basic -forms:</para> - -<itemizedlist> -<listitem> -<para><emphasis>99.99units</emphasis>, a fixed length specifier.</para> -</listitem> -<listitem> -<para><emphasis>99.99</emphasis>, a fixed length specifier without any units.</para> -</listitem> -<listitem> -<para><emphasis>99.99*</emphasis>, a relative length specifier.</para> -</listitem> -<listitem> -<para><emphasis>99.99*+99.99units</emphasis>, a combination of both.</para> -</listitem> -</itemizedlist> - -<para>The CALS units are points (pt), picas (pi), centimeters (cm), -millimeters (mm), and inches (in). These are the same units as XSL, -except that XSL abbreviates picas "pc" instead of "pi". If a length -specifier has no units, the CALS default unit (pt) is assumed.</para> - -<para>Relative length specifiers are represented in XSL with the -proportional-column-width() function.</para> - -<para>Here are some examples:</para> - -<itemizedlist> -<listitem> -<para>"36pt" becomes "36pt"</para> -</listitem> -<listitem> -<para>"3pi" becomes "3pc"</para> -</listitem> -<listitem> -<para>"36" becomes "36pt"</para> -</listitem> -<listitem> -<para>"3*" becomes "proportional-column-width(3)"</para> -</listitem> -<listitem> -<para>"3*+2pi" becomes "proportional-column-width(3)+2pc"</para> -</listitem> -<listitem> -<para>"1*+2" becomes "proportional-column-width(1)+2pt"</para> -</listitem> -</itemizedlist> -</refdescription> - -<refparameter> -<variablelist> -<varlistentry><term>colwidth</term> -<listitem> -<para>The CALS column width specification.</para> -</listitem> -</varlistentry> -</variablelist> -</refparameter> - -<refreturn> -<para>The XSL column width specification.</para> -</refreturn> -</doc:template> - -<xsl:template name="calc.column.width"> - <xsl:param name="colwidth">1*</xsl:param> - - <!-- Ok, the colwidth could have any one of the following forms: --> - <!-- 1* = proportional width --> - <!-- * = same as 1* --> - <!-- 1unit = 1.0 units wide --> - <!-- 1 = 1pt wide --> - <!-- 1*+1unit = proportional width + some fixed width --> - <!-- 1*+1 = proportional width + some fixed width --> - - <!-- If it has a proportional width, translate it to XSL --> - <xsl:if test="contains($colwidth, '*')"> - <xsl:text>proportional-column-width(</xsl:text> - <xsl:choose> - <xsl:when test="substring-before($colwidth, '*') != ''"> - <xsl:value-of select="substring-before($colwidth, '*')"/> - </xsl:when> - <xsl:otherwise> - <xsl:text>1.00</xsl:text> - </xsl:otherwise> - </xsl:choose> - <xsl:text>)</xsl:text> - </xsl:if> - - <!-- Now grab the non-proportional part of the specification --> - <xsl:variable name="width-units"> - <xsl:choose> - <xsl:when test="contains($colwidth, '*')"> - <xsl:value-of - select="normalize-space(substring-after($colwidth, '*'))"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="normalize-space($colwidth)"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <!-- Ok, now the width-units could have any one of the following forms: --> - <!-- = <empty string> --> - <!-- 1unit = 1.0 units wide --> - <!-- 1 = 1pt wide --> - <!-- with an optional leading sign --> - - <!-- Grab the width part by blanking out the units part and discarding --> - <!-- whitespace. It's not pretty, but it works. --> - <xsl:variable name="width" - select="normalize-space(translate($width-units, - '+-0123456789.abcdefghijklmnopqrstuvwxyz', - '+-0123456789.'))"/> - - <!-- Grab the units part by blanking out the width part and discarding --> - <!-- whitespace. It's not pretty, but it works. --> - <xsl:variable name="units" - select="normalize-space(translate($width-units, - 'abcdefghijklmnopqrstuvwxyz+-0123456789.', - 'abcdefghijklmnopqrstuvwxyz'))"/> - - <!-- Output the width --> - <xsl:value-of select="$width"/> - - <!-- Output the units, translated appropriately --> - <xsl:choose> - <xsl:when test="$units = 'pi'">pc</xsl:when> - <xsl:when test="$units = '' and $width != ''">pt</xsl:when> - <xsl:otherwise><xsl:value-of select="$units"/></xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/task.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/task.xsl deleted file mode 100644 index cc29cbd4f..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/task.xsl +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version="1.0"> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<xsl:template match="task"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <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> - - <xsl:variable name="preamble" - select="*[not(self::title - or self::titleabbrev)]"/> - - <fo:block id="{$id}" - xsl:use-attribute-sets="formal.object.properties"> - <xsl:call-template name="anchor"/> - - <xsl:if test="title and $placement = 'before'"> - <xsl:call-template name="formal.object.heading"/> - </xsl:if> - - <xsl:apply-templates select="$preamble"/> - - <xsl:if test="title and $placement != 'before'"> - <xsl:call-template name="formal.object.heading"/> - </xsl:if> - </fo:block> -</xsl:template> - -<xsl:template match="task/title"> - <!-- nop --> -</xsl:template> - -<xsl:template match="tasksummary"> - <xsl:call-template name="semiformal.object"/> -</xsl:template> - -<xsl:template match="tasksummary/title"/> - -<xsl:template match="taskprerequisites"> - <xsl:call-template name="semiformal.object"/> -</xsl:template> - -<xsl:template match="taskprerequisites/title"/> - -<xsl:template match="taskrelated"> - <xsl:call-template name="semiformal.object"/> -</xsl:template> - -<xsl:template match="taskrelated/title"/> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/titlepage.templates.xml b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/titlepage.templates.xml deleted file mode 100644 index 761422d28..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/titlepage.templates.xml +++ /dev/null @@ -1,1311 +0,0 @@ -<!DOCTYPE t:templates [ -<!ENTITY hsize0 "10pt"> -<!ENTITY hsize1 "12pt"> -<!ENTITY hsize2 "14.4pt"> -<!ENTITY hsize3 "17.28pt"> -<!ENTITY hsize4 "20.736pt"> -<!ENTITY hsize5 "24.8832pt"> -<!ENTITY hsize0space "7.5pt"> <!-- 0.75 * hsize0 --> -<!ENTITY hsize1space "9pt"> <!-- 0.75 * hsize1 --> -<!ENTITY hsize2space "10.8pt"> <!-- 0.75 * hsize2 --> -<!ENTITY hsize3space "12.96pt"> <!-- 0.75 * hsize3 --> -<!ENTITY hsize4space "15.552pt"> <!-- 0.75 * hsize4 --> -<!ENTITY hsize5space "18.6624pt"> <!-- 0.75 * hsize5 --> -]> -<t:templates xmlns:t="http://nwalsh.com/docbook/xsl/template/1.0" - xmlns:param="http://nwalsh.com/docbook/xsl/template/1.0/param" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the DocBook XSL Stylesheet distribution. - See ../README or http://docbook.sf.net/ for copyright - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<t:titlepage t:element="article" t:wrapper="fo:block" - font-family="{$title.fontset}"> - - <t:titlepage-content t:side="recto" - start-indent="0pt" - text-align="center"> - - <title t:named-template="component.title" - param:node="ancestor-or-self::article[1]" - keep-with-next.within-column="always" - font-size="&hsize5;" - font-weight="bold"/> - - <subtitle/> - - <corpauthor space-before="0.5em" - font-size="&hsize2;"/> - <authorgroup space-before="0.5em" - font-size="&hsize2;"/> - <author space-before="0.5em" - font-size="&hsize2;"/> - - <othercredit space-before="0.5em"/> - <releaseinfo space-before="0.5em"/> - <copyright space-before="0.5em"/> - <legalnotice text-align="start" - margin-left="0.5in" - margin-right="0.5in" - font-family="{$body.fontset}"/> - <pubdate space-before="0.5em"/> - <revision space-before="0.5em"/> - <revhistory space-before="0.5em"/> - <abstract space-before="0.5em" - text-align="start" - margin-left="0.5in" - margin-right="0.5in" - font-family="{$body.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - -<t:titlepage t:element="set" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:named-template="division.title" - param:node="ancestor-or-self::set[1]" - text-align="center" - font-size="&hsize5;" - space-before="&hsize5space;" - font-weight="bold" - font-family="{$title.fontset}"/> - <subtitle - font-family="{$title.fontset}" - text-align="center"/> - <corpauthor/> - <authorgroup/> - <author/> - <othercredit/> - <releaseinfo/> - <copyright/> - <legalnotice/> - <pubdate/> - <revision/> - <revhistory/> - <abstract/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - - <t:titlepage t:element="book" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:named-template="division.title" - param:node="ancestor-or-self::book[1]" - text-align="center" - font-size="&hsize5;" - space-before="&hsize5space;" - font-weight="bold" - font-family="{$title.fontset}"/> - <subtitle - text-align="center" - font-size="&hsize4;" - space-before="&hsize4space;" - font-family="{$title.fontset}"/> - <corpauthor font-size="&hsize3;" - keep-with-next.within-column="always" - space-before="2in"/> - <authorgroup space-before="2in"/> - <author font-size="&hsize3;" - space-before="&hsize2space;" - keep-with-next.within-column="always"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - <title - t:named-template="book.verso.title" - font-size="&hsize2;" - font-weight="bold" - font-family="{$title.fontset}"/> - <corpauthor/> - <authorgroup t:named-template="verso.authorgroup"/> - <author/> - <othercredit/> - <releaseinfo space-before="0.5em"/> - <pubdate space-before="1em"/> - <copyright/> - <abstract/> - <legalnotice font-size="8pt"/> - </t:titlepage-content> - - <t:titlepage-separator> - <fo:block break-after="page"/> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - <fo:block break-after="page"/> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - -<t:titlepage t:element="part" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:named-template="division.title" - param:node="ancestor-or-self::part[1]" - text-align="center" - font-size="&hsize5;" - space-before="&hsize5space;" - font-weight="bold" - font-family="{$title.fontset}"/> - <subtitle - text-align="center" - font-size="&hsize4;" - space-before="&hsize4space;" - font-weight='bold' - font-style='italic' - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<t:titlepage t:element="partintro" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - text-align="center" - font-size="&hsize5;" - font-weight="bold" - space-before="1em" - font-family="{$title.fontset}"/> - <subtitle - text-align="center" - font-size="&hsize2;" - font-weight="bold" - font-style="italic" - font-family="{$title.fontset}"/> - <corpauthor/> - <authorgroup/> - <author/> - <othercredit/> - <releaseinfo/> - <copyright/> - <legalnotice/> - <pubdate/> - <revision/> - <revhistory/> - <abstract/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - -<t:titlepage t:element="reference" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:named-template="division.title" - param:node="ancestor-or-self::reference[1]" - text-align="center" - font-size="&hsize5;" - space-before="&hsize5space;" - font-weight="bold" - font-family="{$title.fontset}"/> - <subtitle - font-family="{$title.fontset}" - text-align="center"/> - <corpauthor/> - <authorgroup/> - <author/> - <othercredit/> - <releaseinfo/> - <copyright/> - <legalnotice/> - <pubdate/> - <revision/> - <revhistory/> - <abstract/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - -<t:titlepage t:element="refsynopsisdiv" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - -<t:titlepage t:element="refsection" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - -<t:titlepage t:element="refsect1" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - -<t:titlepage t:element="refsect2" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - -<t:titlepage t:element="refsect3" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - - <t:titlepage t:element="dedication" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="component.title" - param:node="ancestor-or-self::dedication[1]" - margin-left="{$title.margin.left}" - font-size="&hsize5;" - font-family="{$title.fontset}" - font-weight="bold"/> - <subtitle - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - - <t:titlepage t:element="preface" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="component.title" - param:node="ancestor-or-self::preface[1]" - margin-left="{$title.margin.left}" - font-size="&hsize5;" - font-family="{$title.fontset}" - font-weight="bold"/> - <subtitle - font-family="{$title.fontset}"/> - <corpauthor/> - <authorgroup/> - <author/> - <othercredit/> - <releaseinfo/> - <copyright/> - <legalnotice/> - <pubdate/> - <revision/> - <revhistory/> - <abstract/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - - <t:titlepage t:element="chapter" t:wrapper="fo:block" - font-family="{$title.fontset}"> - <t:titlepage-content t:side="recto" margin-left="{$title.margin.left}"> - <title t:named-template="component.title" - param:node="ancestor-or-self::chapter[1]" - font-size="&hsize5;" - font-weight="bold"/> - - <subtitle space-before="0.5em" - font-style="italic" - font-size="&hsize2;" - font-weight="bold"/> - - <corpauthor space-before="0.5em" - space-after="0.5em" - font-size="&hsize2;"/> - - <authorgroup space-before="0.5em" - space-after="0.5em" - font-size="&hsize2;"/> - - <author space-before="0.5em" - space-after="0.5em" - font-size="&hsize2;"/> - - <othercredit/> - <releaseinfo/> - <copyright/> - <legalnotice/> - <pubdate/> - <revision/> - <revhistory/> - <abstract/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - - <t:titlepage t:element="appendix" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:named-template="component.title" - param:node="ancestor-or-self::appendix[1]" - margin-left="{$title.margin.left}" - font-size="&hsize5;" - font-weight="bold" - font-family="{$title.fontset}"/> - <subtitle - font-family="{$title.fontset}"/> - <corpauthor/> - <authorgroup/> - <author/> - <othercredit/> - <releaseinfo/> - <copyright/> - <legalnotice/> - <pubdate/> - <revision/> - <revhistory/> - <abstract/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - -<t:titlepage t:element="section" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - margin-left="{$title.margin.left}" - font-family="{$title.fontset}"/> - <subtitle - font-family="{$title.fontset}"/> - <corpauthor/> - <authorgroup/> - <author/> - <othercredit/> - <releaseinfo/> - <copyright/> - <legalnotice/> - <pubdate/> - <revision/> - <revhistory/> - <abstract/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<t:titlepage t:element="sect1" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - margin-left="{$title.margin.left}" - font-family="{$title.fontset}"/> - <subtitle - font-family="{$title.fontset}"/> - <corpauthor/> - <authorgroup/> - <author/> - <othercredit/> - <releaseinfo/> - <copyright/> - <legalnotice/> - <pubdate/> - <revision/> - <revhistory/> - <abstract/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<t:titlepage t:element="sect2" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - margin-left="{$title.margin.left}" - font-family="{$title.fontset}"/> - <subtitle - font-family="{$title.fontset}"/> - <corpauthor/> - <authorgroup/> - <author/> - <othercredit/> - <releaseinfo/> - <copyright/> - <legalnotice/> - <pubdate/> - <revision/> - <revhistory/> - <abstract/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<t:titlepage t:element="sect3" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - margin-left="{$title.margin.left}" - font-family="{$title.fontset}"/> - <subtitle - font-family="{$title.fontset}"/> - <corpauthor/> - <authorgroup/> - <author/> - <othercredit/> - <releaseinfo/> - <copyright/> - <legalnotice/> - <pubdate/> - <revision/> - <revhistory/> - <abstract/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<t:titlepage t:element="sect4" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - margin-left="{$title.margin.left}" - font-family="{$title.fontset}"/> - <subtitle - font-family="{$title.fontset}"/> - <corpauthor/> - <authorgroup/> - <author/> - <othercredit/> - <releaseinfo/> - <copyright/> - <legalnotice/> - <pubdate/> - <revision/> - <revhistory/> - <abstract/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<t:titlepage t:element="sect5" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - margin-left="{$title.margin.left}" - font-family="{$title.fontset}"/> - <subtitle - font-family="{$title.fontset}"/> - <corpauthor/> - <authorgroup/> - <author/> - <othercredit/> - <releaseinfo/> - <copyright/> - <legalnotice/> - <pubdate/> - <revision/> - <revhistory/> - <abstract/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<t:titlepage t:element="simplesect" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - margin-left="{$title.margin.left}" - font-family="{$title.fontset}"/> - <subtitle - font-family="{$title.fontset}"/> - <corpauthor/> - <authorgroup/> - <author/> - <othercredit/> - <releaseinfo/> - <copyright/> - <legalnotice/> - <pubdate/> - <revision/> - <revhistory/> - <abstract/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - - <t:titlepage t:element="bibliography" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="component.title" - param:node="ancestor-or-self::bibliography[1]" - margin-left="{$title.margin.left}" - font-size="&hsize5;" - font-family="{$title.fontset}" - font-weight="bold"/> - <subtitle - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> - </t:titlepage> - -<!-- ==================================================================== --> - - <t:titlepage t:element="bibliodiv" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title t:named-template="component.title" - param:node="ancestor-or-self::bibliodiv[1]" - margin-left="{$title.margin.left}" - font-size="&hsize4;" - font-family="{$title.fontset}" - font-weight="bold"/> - <subtitle - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> - </t:titlepage> - -<!-- ==================================================================== --> - - <t:titlepage t:element="glossary" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="component.title" - param:node="ancestor-or-self::glossary[1]" - margin-left="{$title.margin.left}" - font-size="&hsize5;" - font-family="{$title.fontset}" - font-weight="bold"/> - <subtitle - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> - </t:titlepage> - -<!-- ==================================================================== --> - - <t:titlepage t:element="glossdiv" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title t:named-template="component.title" - param:node="ancestor-or-self::glossdiv[1]" - margin-left="{$title.margin.left}" - font-size="&hsize4;" - font-family="{$title.fontset}" - font-weight="bold"/> - <subtitle - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> - </t:titlepage> - -<!-- ==================================================================== --> - - <t:titlepage t:element="index" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="component.title" - param:node="ancestor-or-self::index[1]" - param:pagewide="1" - margin-left="0pt" - font-size="&hsize5;" - font-family="{$title.fontset}" - font-weight="bold"/> - <subtitle - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> - </t:titlepage> - -<!-- ==================================================================== --> - - <!-- The indexdiv.title template is used so that manual and --> - <!-- automatically generated indexdiv titles get the same --> - <!-- formatting. --> - - <t:titlepage t:element="indexdiv" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title t:force="1" - t:named-template="indexdiv.title" - param:title="title"/> - <subtitle - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> - </t:titlepage> - -<!-- ==================================================================== --> - - <t:titlepage t:element="setindex" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="component.title" - param:node="ancestor-or-self::setindex[1]" - param:pagewide="1" - margin-left="0pt" - font-size="&hsize5;" - font-family="{$title.fontset}" - font-weight="bold"/> - <subtitle - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> - </t:titlepage> - -<!-- ==================================================================== --> - - <t:titlepage t:element="colophon" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="component.title" - param:node="ancestor-or-self::colophon[1]" - margin-left="{$title.margin.left}" - font-size="&hsize5;" - font-family="{$title.fontset}" - font-weight="bold"/> - <subtitle - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - - <t:titlepage t:element="sidebar" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - font-family="{$title.fontset}" - font-weight="bold"/> - <subtitle - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> - </t:titlepage> - -<!-- ==================================================================== --> -<t:titlepage t:element="qandaset" t:wrapper="fo:block" - font-family="{$title.fontset}"> - - <t:titlepage-content t:side="recto" - start-indent="0pt" - text-align="center"> - - <title t:named-template="component.title" - param:node="ancestor-or-self::qandaset[1]" - keep-with-next.within-column="always" - font-size="&hsize5;" - font-weight="bold"/> - - <subtitle/> - - <corpauthor space-before="0.5em" - font-size="&hsize2;"/> - <authorgroup space-before="0.5em" - font-size="&hsize2;"/> - <author space-before="0.5em" - font-size="&hsize2;"/> - - <othercredit space-before="0.5em"/> - <releaseinfo space-before="0.5em"/> - <copyright space-before="0.5em"/> - <legalnotice text-align="start" - margin-left="0.5in" - margin-right="0.5in" - font-family="{$body.fontset}"/> - <pubdate space-before="0.5em"/> - <revision space-before="0.5em"/> - <revhistory space-before="0.5em"/> - <abstract space-before="0.5em" - text-align="start" - margin-left="0.5in" - margin-right="0.5in" - font-family="{$body.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> -</t:titlepage> - -<!-- ==================================================================== --> - - <t:titlepage t:element="table.of.contents" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="gentext" - param:key="'TableofContents'" - space-before.minimum="1em" - space-before.optimum="1.5em" - space-before.maximum="2em" - space-after="0.5em" - margin-left="{$title.margin.left}" - start-indent="0pt" - font-size="&hsize3;" - font-weight="bold" - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> - </t:titlepage> - - <t:titlepage t:element="list.of.tables" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="gentext" - param:key="'ListofTables'" - space-before.minimum="1em" - space-before.optimum="1.5em" - space-before.maximum="2em" - space-after="0.5em" - margin-left="{$title.margin.left}" - start-indent="0pt" - font-size="&hsize3;" - font-weight="bold" - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> - </t:titlepage> - - <t:titlepage t:element="list.of.figures" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="gentext" - param:key="'ListofFigures'" - space-before.minimum="1em" - space-before.optimum="1.5em" - space-before.maximum="2em" - space-after="0.5em" - margin-left="{$title.margin.left}" - start-indent="0pt" - font-size="&hsize3;" - font-weight="bold" - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> - </t:titlepage> - - <t:titlepage t:element="list.of.examples" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="gentext" - param:key="'ListofExamples'" - space-before.minimum="1em" - space-before.optimum="1.5em" - space-before.maximum="2em" - space-after="0.5em" - margin-left="{$title.margin.left}" - start-indent="0pt" - font-size="&hsize3;" - font-weight="bold" - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> - </t:titlepage> - - <t:titlepage t:element="list.of.equations" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="gentext" - param:key="'ListofEquations'" - space-before.minimum="1em" - space-before.optimum="1.5em" - space-before.maximum="2em" - space-after="0.5em" - margin-left="{$title.margin.left}" - start-indent="0pt" - font-size="&hsize3;" - font-weight="bold" - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> - </t:titlepage> - - <t:titlepage t:element="list.of.procedures" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="gentext" - param:key="'ListofProcedures'" - space-before.minimum="1em" - space-before.optimum="1.5em" - space-before.maximum="2em" - space-after="0.5em" - margin-left="{$title.margin.left}" - start-indent="0pt" - font-size="&hsize3;" - font-weight="bold" - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> - </t:titlepage> - - <t:titlepage t:element="list.of.unknowns" t:wrapper="fo:block"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="gentext" - param:key="'ListofUnknown'" - space-before.minimum="1em" - space-before.optimum="1.5em" - space-before.maximum="2em" - space-after="0.5em" - margin-left="{$title.margin.left}" - start-indent="0pt" - font-size="&hsize3;" - font-weight="bold" - font-family="{$title.fontset}"/> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <t:titlepage-separator> - </t:titlepage-separator> - - <t:titlepage-before t:side="recto"> - </t:titlepage-before> - - <t:titlepage-before t:side="verso"> - </t:titlepage-before> - </t:titlepage> - -<!-- ==================================================================== --> - -</t:templates> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/titlepage.templates.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/titlepage.templates.xsl deleted file mode 100644 index 4573540ad..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/titlepage.templates.xsl +++ /dev/null @@ -1,5094 +0,0 @@ -<?xml version="1.0"?> - -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:exsl="http://exslt.org/common" version="1.0" exclude-result-prefixes="exsl"> - -<!-- This stylesheet was created by template/titlepage.xsl--> - -<xsl:template name="article.titlepage.recto"> - <xsl:choose> - <xsl:when test="articleinfo/title"> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/title"/> - </xsl:when> - <xsl:when test="artheader/title"> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="articleinfo/subtitle"> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/subtitle"/> - </xsl:when> - <xsl:when test="artheader/subtitle"> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/corpauthor"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/corpauthor"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/corpauthor"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/authorgroup"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/authorgroup"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/authorgroup"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/author"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/author"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/author"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/othercredit"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/othercredit"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/othercredit"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/releaseinfo"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/releaseinfo"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/copyright"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/copyright"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/copyright"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/legalnotice"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/legalnotice"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/legalnotice"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/pubdate"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/pubdate"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/pubdate"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/revision"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/revision"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/revision"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/revhistory"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/revhistory"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/revhistory"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="articleinfo/abstract"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="artheader/abstract"/> - <xsl:apply-templates mode="article.titlepage.recto.auto.mode" select="info/abstract"/> -</xsl:template> - -<xsl:template name="article.titlepage.verso"> -</xsl:template> - -<xsl:template name="article.titlepage.separator"> -</xsl:template> - -<xsl:template name="article.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="article.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="article.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="{$title.fontset}"> - <xsl:variable name="recto.content"> - <xsl:call-template name="article.titlepage.before.recto"/> - <xsl:call-template name="article.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block start-indent="0pt" text-align="center"><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="article.titlepage.before.verso"/> - <xsl:call-template name="article.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="article.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="article.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="article.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="article.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" keep-with-next.within-column="always" font-size="24.8832pt" font-weight="bold"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::article[1]"/> -</xsl:call-template> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="article.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" mode="article.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em" font-size="14.4pt"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" mode="article.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em" font-size="14.4pt"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="author" mode="article.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em" font-size="14.4pt"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="othercredit" mode="article.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="releaseinfo" mode="article.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="copyright" mode="article.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="legalnotice" mode="article.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" text-align="start" margin-left="0.5in" margin-right="0.5in" font-family="{$body.fontset}"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="pubdate" mode="article.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revision" mode="article.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revhistory" mode="article.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="abstract" mode="article.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="article.titlepage.recto.style" space-before="0.5em" text-align="start" margin-left="0.5in" margin-right="0.5in" font-family="{$body.fontset}"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="set.titlepage.recto"> - <xsl:choose> - <xsl:when test="setinfo/title"> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="setinfo/subtitle"> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/corpauthor"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/corpauthor"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/authorgroup"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/authorgroup"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/author"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/author"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/othercredit"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/othercredit"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/releaseinfo"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/copyright"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/copyright"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/legalnotice"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/legalnotice"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/pubdate"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/pubdate"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/revision"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/revision"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/revhistory"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/revhistory"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="setinfo/abstract"/> - <xsl:apply-templates mode="set.titlepage.recto.auto.mode" select="info/abstract"/> -</xsl:template> - -<xsl:template name="set.titlepage.verso"> -</xsl:template> - -<xsl:template name="set.titlepage.separator"> -</xsl:template> - -<xsl:template name="set.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="set.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="set.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="set.titlepage.before.recto"/> - <xsl:call-template name="set.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="set.titlepage.before.verso"/> - <xsl:call-template name="set.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="set.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="set.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="set.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="set.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style" text-align="center" font-size="24.8832pt" space-before="18.6624pt" font-weight="bold" font-family="{$title.fontset}"> -<xsl:call-template name="division.title"> -<xsl:with-param name="node" select="ancestor-or-self::set[1]"/> -</xsl:call-template> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="set.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style" font-family="{$title.fontset}" text-align="center"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" mode="set.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" mode="set.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="author" mode="set.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="othercredit" mode="set.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="releaseinfo" mode="set.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="copyright" mode="set.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="legalnotice" mode="set.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="pubdate" mode="set.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revision" mode="set.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revhistory" mode="set.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="abstract" mode="set.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</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: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"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/authorgroup"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/author"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/author"/> -</xsl:template> - -<xsl:template name="book.titlepage.verso"> - <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/corpauthor"/> - <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/corpauthor"/> - <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/releaseinfo"/> - <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="bookinfo/pubdate"/> - <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/pubdate"/> - <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/abstract"/> - <xsl:apply-templates mode="book.titlepage.verso.auto.mode" select="info/abstract"/> - <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: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:variable name="recto.content"> - <xsl:call-template name="book.titlepage.before.recto"/> - <xsl:call-template name="book.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="book.titlepage.before.verso"/> - <xsl:call-template name="book.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="book.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="book.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="book.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</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="24.8832pt" 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="20.736pt" space-before="15.552pt" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" 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" font-size="17.28pt" keep-with-next.within-column="always" space-before="2in"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" 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" space-before="2in"> -<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 xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.recto.style" font-size="17.28pt" space-before="10.8pt" keep-with-next.within-column="always"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="title" mode="book.titlepage.verso.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style" font-size="14.4pt" font-weight="bold" font-family="{$title.fontset}"> -<xsl:call-template name="book.verso.title"> -</xsl:call-template> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" mode="book.titlepage.verso.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style"> -<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" mode="book.titlepage.verso.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style"> -<xsl:call-template name="verso.authorgroup"> -</xsl:call-template> -</fo:block> -</xsl:template> - -<xsl:template match="author" mode="book.titlepage.verso.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style"> -<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="othercredit" mode="book.titlepage.verso.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style"> -<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="releaseinfo" mode="book.titlepage.verso.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style" space-before="0.5em"> -<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="pubdate" mode="book.titlepage.verso.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style" space-before="1em"> -<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="copyright" mode="book.titlepage.verso.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style"> -<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="abstract" mode="book.titlepage.verso.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style"> -<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="legalnotice" mode="book.titlepage.verso.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="book.titlepage.verso.style" font-size="8pt"> -<xsl:apply-templates select="." mode="book.titlepage.verso.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="part.titlepage.recto"> - <xsl:choose> - <xsl:when test="partinfo/title"> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/title"/> - </xsl:when> - <xsl:when test="docinfo/title"> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="partinfo/subtitle"> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="part.titlepage.verso"> -</xsl:template> - -<xsl:template name="part.titlepage.separator"> -</xsl:template> - -<xsl:template name="part.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="part.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="part.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="part.titlepage.before.recto"/> - <xsl:call-template name="part.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="part.titlepage.before.verso"/> - <xsl:call-template name="part.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="part.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="part.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="part.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="part.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="part.titlepage.recto.style" text-align="center" font-size="24.8832pt" space-before="18.6624pt" font-weight="bold" font-family="{$title.fontset}"> -<xsl:call-template name="division.title"> -<xsl:with-param name="node" select="ancestor-or-self::part[1]"/> -</xsl:call-template> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="part.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="part.titlepage.recto.style" text-align="center" font-size="20.736pt" space-before="15.552pt" font-weight="bold" font-style="italic" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="partintro.titlepage.recto"> - <xsl:choose> - <xsl:when test="partintroinfo/title"> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/title"/> - </xsl:when> - <xsl:when test="docinfo/title"> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="partintroinfo/subtitle"> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/corpauthor"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/corpauthor"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/corpauthor"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/authorgroup"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/authorgroup"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/authorgroup"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/author"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/author"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/author"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/othercredit"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/othercredit"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/othercredit"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/releaseinfo"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/copyright"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/copyright"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/copyright"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/legalnotice"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/legalnotice"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/legalnotice"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/pubdate"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/pubdate"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/pubdate"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/revision"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/revision"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/revision"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/revhistory"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/revhistory"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/revhistory"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="partintroinfo/abstract"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="docinfo/abstract"/> - <xsl:apply-templates mode="partintro.titlepage.recto.auto.mode" select="info/abstract"/> -</xsl:template> - -<xsl:template name="partintro.titlepage.verso"> -</xsl:template> - -<xsl:template name="partintro.titlepage.separator"> -</xsl:template> - -<xsl:template name="partintro.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="partintro.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="partintro.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="partintro.titlepage.before.recto"/> - <xsl:call-template name="partintro.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="partintro.titlepage.before.verso"/> - <xsl:call-template name="partintro.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="partintro.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="partintro.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="partintro.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="partintro.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style" text-align="center" font-size="24.8832pt" font-weight="bold" space-before="1em" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="partintro.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style" text-align="center" font-size="14.4pt" font-weight="bold" font-style="italic" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" mode="partintro.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" mode="partintro.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="author" mode="partintro.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="othercredit" mode="partintro.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="releaseinfo" mode="partintro.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="copyright" mode="partintro.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="legalnotice" mode="partintro.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="pubdate" mode="partintro.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revision" mode="partintro.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revhistory" mode="partintro.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="abstract" mode="partintro.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="reference.titlepage.recto"> - <xsl:choose> - <xsl:when test="referenceinfo/title"> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/title"/> - </xsl:when> - <xsl:when test="docinfo/title"> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="referenceinfo/subtitle"> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/corpauthor"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/corpauthor"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/corpauthor"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/authorgroup"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/authorgroup"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/authorgroup"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/author"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/author"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/author"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/othercredit"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/othercredit"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/othercredit"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/releaseinfo"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/copyright"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/copyright"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/copyright"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/legalnotice"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/legalnotice"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/legalnotice"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/pubdate"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/pubdate"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/pubdate"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/revision"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/revision"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/revision"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/revhistory"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/revhistory"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/revhistory"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="referenceinfo/abstract"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="docinfo/abstract"/> - <xsl:apply-templates mode="reference.titlepage.recto.auto.mode" select="info/abstract"/> -</xsl:template> - -<xsl:template name="reference.titlepage.verso"> -</xsl:template> - -<xsl:template name="reference.titlepage.separator"> -</xsl:template> - -<xsl:template name="reference.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="reference.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="reference.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="reference.titlepage.before.recto"/> - <xsl:call-template name="reference.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="reference.titlepage.before.verso"/> - <xsl:call-template name="reference.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="reference.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="reference.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="reference.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="reference.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style" text-align="center" font-size="24.8832pt" space-before="18.6624pt" font-weight="bold" font-family="{$title.fontset}"> -<xsl:call-template name="division.title"> -<xsl:with-param name="node" select="ancestor-or-self::reference[1]"/> -</xsl:call-template> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="reference.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style" font-family="{$title.fontset}" text-align="center"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" mode="reference.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" mode="reference.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="author" mode="reference.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="othercredit" mode="reference.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="releaseinfo" mode="reference.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="copyright" mode="reference.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="legalnotice" mode="reference.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="pubdate" mode="reference.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revision" mode="reference.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revhistory" mode="reference.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="abstract" mode="reference.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="refsynopsisdiv.titlepage.recto"> - <xsl:choose> - <xsl:when test="refsynopsisdivinfo/title"> - <xsl:apply-templates mode="refsynopsisdiv.titlepage.recto.auto.mode" select="refsynopsisdivinfo/title"/> - </xsl:when> - <xsl:when test="docinfo/title"> - <xsl:apply-templates mode="refsynopsisdiv.titlepage.recto.auto.mode" select="docinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="refsynopsisdiv.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="refsynopsisdiv.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="refsynopsisdiv.titlepage.verso"> -</xsl:template> - -<xsl:template name="refsynopsisdiv.titlepage.separator"> -</xsl:template> - -<xsl:template name="refsynopsisdiv.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="refsynopsisdiv.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="refsynopsisdiv.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="refsynopsisdiv.titlepage.before.recto"/> - <xsl:call-template name="refsynopsisdiv.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="refsynopsisdiv.titlepage.before.verso"/> - <xsl:call-template name="refsynopsisdiv.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="refsynopsisdiv.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="refsynopsisdiv.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="refsynopsisdiv.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="refsynopsisdiv.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="refsynopsisdiv.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="refsynopsisdiv.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="refsection.titlepage.recto"> - <xsl:choose> - <xsl:when test="refsectioninfo/title"> - <xsl:apply-templates mode="refsection.titlepage.recto.auto.mode" select="refsectioninfo/title"/> - </xsl:when> - <xsl:when test="docinfo/title"> - <xsl:apply-templates mode="refsection.titlepage.recto.auto.mode" select="docinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="refsection.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="refsection.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="refsection.titlepage.verso"> -</xsl:template> - -<xsl:template name="refsection.titlepage.separator"> -</xsl:template> - -<xsl:template name="refsection.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="refsection.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="refsection.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="refsection.titlepage.before.recto"/> - <xsl:call-template name="refsection.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="refsection.titlepage.before.verso"/> - <xsl:call-template name="refsection.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="refsection.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="refsection.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="refsection.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="refsection.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="refsection.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="refsection.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="refsect1.titlepage.recto"> - <xsl:choose> - <xsl:when test="refsect1info/title"> - <xsl:apply-templates mode="refsect1.titlepage.recto.auto.mode" select="refsect1info/title"/> - </xsl:when> - <xsl:when test="docinfo/title"> - <xsl:apply-templates mode="refsect1.titlepage.recto.auto.mode" select="docinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="refsect1.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="refsect1.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="refsect1.titlepage.verso"> -</xsl:template> - -<xsl:template name="refsect1.titlepage.separator"> -</xsl:template> - -<xsl:template name="refsect1.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="refsect1.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="refsect1.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="refsect1.titlepage.before.recto"/> - <xsl:call-template name="refsect1.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="refsect1.titlepage.before.verso"/> - <xsl:call-template name="refsect1.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="refsect1.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="refsect1.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="refsect1.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="refsect1.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="refsect1.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="refsect1.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="refsect2.titlepage.recto"> - <xsl:choose> - <xsl:when test="refsect2info/title"> - <xsl:apply-templates mode="refsect2.titlepage.recto.auto.mode" select="refsect2info/title"/> - </xsl:when> - <xsl:when test="docinfo/title"> - <xsl:apply-templates mode="refsect2.titlepage.recto.auto.mode" select="docinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="refsect2.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="refsect2.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="refsect2.titlepage.verso"> -</xsl:template> - -<xsl:template name="refsect2.titlepage.separator"> -</xsl:template> - -<xsl:template name="refsect2.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="refsect2.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="refsect2.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="refsect2.titlepage.before.recto"/> - <xsl:call-template name="refsect2.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="refsect2.titlepage.before.verso"/> - <xsl:call-template name="refsect2.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="refsect2.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="refsect2.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="refsect2.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="refsect2.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="refsect2.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="refsect2.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="refsect3.titlepage.recto"> - <xsl:choose> - <xsl:when test="refsect3info/title"> - <xsl:apply-templates mode="refsect3.titlepage.recto.auto.mode" select="refsect3info/title"/> - </xsl:when> - <xsl:when test="docinfo/title"> - <xsl:apply-templates mode="refsect3.titlepage.recto.auto.mode" select="docinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="refsect3.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="refsect3.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="refsect3.titlepage.verso"> -</xsl:template> - -<xsl:template name="refsect3.titlepage.separator"> -</xsl:template> - -<xsl:template name="refsect3.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="refsect3.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="refsect3.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="refsect3.titlepage.before.recto"/> - <xsl:call-template name="refsect3.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="refsect3.titlepage.before.verso"/> - <xsl:call-template name="refsect3.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="refsect3.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="refsect3.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="refsect3.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="refsect3.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="refsect3.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="refsect3.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="dedication.titlepage.recto"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="dedication.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="24.8832pt" font-family="{$title.fontset}" font-weight="bold"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::dedication[1]"/> -</xsl:call-template></fo:block> - <xsl:choose> - <xsl:when test="dedicationinfo/subtitle"> - <xsl:apply-templates mode="dedication.titlepage.recto.auto.mode" select="dedicationinfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="dedication.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="dedication.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="dedication.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="dedication.titlepage.verso"> -</xsl:template> - -<xsl:template name="dedication.titlepage.separator"> -</xsl:template> - -<xsl:template name="dedication.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="dedication.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="dedication.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="dedication.titlepage.before.recto"/> - <xsl:call-template name="dedication.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="dedication.titlepage.before.verso"/> - <xsl:call-template name="dedication.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="dedication.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="dedication.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="dedication.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="subtitle" mode="dedication.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="dedication.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="dedication.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<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}" font-size="24.8832pt" font-family="{$title.fontset}" font-weight="bold"> -<xsl:call-template name="component.title"> -<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="preface.titlepage.verso"> -</xsl:template> - -<xsl:template name="preface.titlepage.separator"> -</xsl:template> - -<xsl:template name="preface.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="preface.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="preface.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="preface.titlepage.before.recto"/> - <xsl:call-template name="preface.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="preface.titlepage.before.verso"/> - <xsl:call-template name="preface.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="preface.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="preface.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="preface.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="subtitle" mode="preface.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" mode="preface.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" mode="preface.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="author" mode="preface.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="othercredit" mode="preface.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="releaseinfo" mode="preface.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="copyright" mode="preface.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="legalnotice" mode="preface.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="pubdate" mode="preface.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revision" mode="preface.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revhistory" mode="preface.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="abstract" mode="preface.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="chapter.titlepage.recto"> - <xsl:choose> - <xsl:when test="chapterinfo/title"> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/title"/> - </xsl:when> - <xsl:when test="docinfo/title"> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="chapterinfo/subtitle"> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/corpauthor"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/corpauthor"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/corpauthor"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/authorgroup"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/authorgroup"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/authorgroup"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/author"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/author"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/author"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/othercredit"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/othercredit"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/othercredit"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/releaseinfo"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/copyright"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/copyright"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/copyright"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/legalnotice"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/legalnotice"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/legalnotice"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/pubdate"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/pubdate"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/pubdate"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/revision"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/revision"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/revision"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/revhistory"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/revhistory"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/revhistory"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="chapterinfo/abstract"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="docinfo/abstract"/> - <xsl:apply-templates mode="chapter.titlepage.recto.auto.mode" select="info/abstract"/> -</xsl:template> - -<xsl:template name="chapter.titlepage.verso"> -</xsl:template> - -<xsl:template name="chapter.titlepage.separator"> -</xsl:template> - -<xsl:template name="chapter.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="chapter.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="chapter.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="{$title.fontset}"> - <xsl:variable name="recto.content"> - <xsl:call-template name="chapter.titlepage.before.recto"/> - <xsl:call-template name="chapter.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block margin-left="{$title.margin.left}"><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="chapter.titlepage.before.verso"/> - <xsl:call-template name="chapter.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="chapter.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="chapter.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="chapter.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<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" font-size="24.8832pt" font-weight="bold"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::chapter[1]"/> -</xsl:call-template> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" 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" space-before="0.5em" font-style="italic" font-size="14.4pt" font-weight="bold"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" 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" space-before="0.5em" space-after="0.5em" font-size="14.4pt"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" 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" space-before="0.5em" space-after="0.5em" font-size="14.4pt"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="author" 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" space-before="0.5em" space-after="0.5em" font-size="14.4pt"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="othercredit" 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:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="releaseinfo" 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:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="copyright" 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:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="legalnotice" 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:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="pubdate" 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:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revision" 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:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revhistory" 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:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="abstract" 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:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="appendix.titlepage.recto"> - <xsl:choose> - <xsl:when test="appendixinfo/title"> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/title"/> - </xsl:when> - <xsl:when test="docinfo/title"> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="appendixinfo/subtitle"> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/corpauthor"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/corpauthor"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/corpauthor"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/authorgroup"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/authorgroup"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/authorgroup"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/author"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/author"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/author"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/othercredit"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/othercredit"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/othercredit"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/releaseinfo"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/copyright"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/copyright"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/copyright"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/legalnotice"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/legalnotice"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/legalnotice"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/pubdate"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/pubdate"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/pubdate"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/revision"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/revision"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/revision"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/revhistory"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/revhistory"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/revhistory"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="appendixinfo/abstract"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="docinfo/abstract"/> - <xsl:apply-templates mode="appendix.titlepage.recto.auto.mode" select="info/abstract"/> -</xsl:template> - -<xsl:template name="appendix.titlepage.verso"> -</xsl:template> - -<xsl:template name="appendix.titlepage.separator"> -</xsl:template> - -<xsl:template name="appendix.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="appendix.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="appendix.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="appendix.titlepage.before.recto"/> - <xsl:call-template name="appendix.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="appendix.titlepage.before.verso"/> - <xsl:call-template name="appendix.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="appendix.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="appendix.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="appendix.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<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="appendix.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="24.8832pt" font-weight="bold" font-family="{$title.fontset}"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::appendix[1]"/> -</xsl:call-template> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="appendix.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" mode="appendix.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" mode="appendix.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="author" mode="appendix.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="othercredit" mode="appendix.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="releaseinfo" mode="appendix.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="copyright" mode="appendix.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="legalnotice" mode="appendix.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="pubdate" mode="appendix.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revision" mode="appendix.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revhistory" mode="appendix.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="abstract" mode="appendix.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="section.titlepage.recto"> - <xsl:choose> - <xsl:when test="sectioninfo/title"> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="sectioninfo/subtitle"> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/corpauthor"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/corpauthor"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/authorgroup"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/authorgroup"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/author"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/author"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/othercredit"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/othercredit"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/releaseinfo"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/copyright"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/copyright"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/legalnotice"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/legalnotice"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/pubdate"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/pubdate"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/revision"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/revision"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/revhistory"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/revhistory"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="sectioninfo/abstract"/> - <xsl:apply-templates mode="section.titlepage.recto.auto.mode" select="info/abstract"/> -</xsl:template> - -<xsl:template name="section.titlepage.verso"> -</xsl:template> - -<xsl:template name="section.titlepage.separator"> -</xsl:template> - -<xsl:template name="section.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="section.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="section.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="section.titlepage.before.recto"/> - <xsl:call-template name="section.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="section.titlepage.before.verso"/> - <xsl:call-template name="section.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="section.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="section.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="section.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="section.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style" margin-left="{$title.margin.left}" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="section.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" mode="section.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" mode="section.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="author" mode="section.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="othercredit" mode="section.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="releaseinfo" mode="section.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="copyright" mode="section.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="legalnotice" mode="section.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="pubdate" mode="section.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revision" mode="section.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revhistory" mode="section.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="abstract" mode="section.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="sect1.titlepage.recto"> - <xsl:choose> - <xsl:when test="sect1info/title"> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="sect1info/subtitle"> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/corpauthor"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/corpauthor"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/authorgroup"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/authorgroup"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/author"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/author"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/othercredit"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/othercredit"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/releaseinfo"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/copyright"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/copyright"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/legalnotice"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/legalnotice"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/pubdate"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/pubdate"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/revision"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/revision"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/revhistory"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/revhistory"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="sect1info/abstract"/> - <xsl:apply-templates mode="sect1.titlepage.recto.auto.mode" select="info/abstract"/> -</xsl:template> - -<xsl:template name="sect1.titlepage.verso"> -</xsl:template> - -<xsl:template name="sect1.titlepage.separator"> -</xsl:template> - -<xsl:template name="sect1.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="sect1.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="sect1.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="sect1.titlepage.before.recto"/> - <xsl:call-template name="sect1.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="sect1.titlepage.before.verso"/> - <xsl:call-template name="sect1.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="sect1.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="sect1.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="sect1.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="sect1.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style" margin-left="{$title.margin.left}" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="sect1.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" mode="sect1.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" mode="sect1.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="author" mode="sect1.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="othercredit" mode="sect1.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="releaseinfo" mode="sect1.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="copyright" mode="sect1.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="legalnotice" mode="sect1.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="pubdate" mode="sect1.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revision" mode="sect1.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revhistory" mode="sect1.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="abstract" mode="sect1.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="sect2.titlepage.recto"> - <xsl:choose> - <xsl:when test="sect2info/title"> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="sect2info/subtitle"> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/corpauthor"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/corpauthor"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/authorgroup"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/authorgroup"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/author"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/author"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/othercredit"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/othercredit"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/releaseinfo"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/copyright"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/copyright"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/legalnotice"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/legalnotice"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/pubdate"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/pubdate"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/revision"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/revision"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/revhistory"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/revhistory"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="sect2info/abstract"/> - <xsl:apply-templates mode="sect2.titlepage.recto.auto.mode" select="info/abstract"/> -</xsl:template> - -<xsl:template name="sect2.titlepage.verso"> -</xsl:template> - -<xsl:template name="sect2.titlepage.separator"> -</xsl:template> - -<xsl:template name="sect2.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="sect2.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="sect2.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="sect2.titlepage.before.recto"/> - <xsl:call-template name="sect2.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="sect2.titlepage.before.verso"/> - <xsl:call-template name="sect2.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="sect2.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="sect2.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="sect2.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="sect2.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style" margin-left="{$title.margin.left}" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="sect2.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" mode="sect2.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" mode="sect2.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="author" mode="sect2.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="othercredit" mode="sect2.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="releaseinfo" mode="sect2.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="copyright" mode="sect2.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="legalnotice" mode="sect2.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="pubdate" mode="sect2.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revision" mode="sect2.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revhistory" mode="sect2.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="abstract" mode="sect2.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="sect3.titlepage.recto"> - <xsl:choose> - <xsl:when test="sect3info/title"> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="sect3info/subtitle"> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/corpauthor"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/corpauthor"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/authorgroup"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/authorgroup"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/author"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/author"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/othercredit"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/othercredit"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/releaseinfo"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/copyright"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/copyright"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/legalnotice"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/legalnotice"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/pubdate"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/pubdate"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/revision"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/revision"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/revhistory"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/revhistory"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="sect3info/abstract"/> - <xsl:apply-templates mode="sect3.titlepage.recto.auto.mode" select="info/abstract"/> -</xsl:template> - -<xsl:template name="sect3.titlepage.verso"> -</xsl:template> - -<xsl:template name="sect3.titlepage.separator"> -</xsl:template> - -<xsl:template name="sect3.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="sect3.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="sect3.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="sect3.titlepage.before.recto"/> - <xsl:call-template name="sect3.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="sect3.titlepage.before.verso"/> - <xsl:call-template name="sect3.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="sect3.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="sect3.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="sect3.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="sect3.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style" margin-left="{$title.margin.left}" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="sect3.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" mode="sect3.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" mode="sect3.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="author" mode="sect3.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="othercredit" mode="sect3.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="releaseinfo" mode="sect3.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="copyright" mode="sect3.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="legalnotice" mode="sect3.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="pubdate" mode="sect3.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revision" mode="sect3.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revhistory" mode="sect3.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="abstract" mode="sect3.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="sect4.titlepage.recto"> - <xsl:choose> - <xsl:when test="sect4info/title"> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="sect4info/subtitle"> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/corpauthor"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/corpauthor"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/authorgroup"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/authorgroup"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/author"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/author"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/othercredit"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/othercredit"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/releaseinfo"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/copyright"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/copyright"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/legalnotice"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/legalnotice"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/pubdate"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/pubdate"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/revision"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/revision"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/revhistory"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/revhistory"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="sect4info/abstract"/> - <xsl:apply-templates mode="sect4.titlepage.recto.auto.mode" select="info/abstract"/> -</xsl:template> - -<xsl:template name="sect4.titlepage.verso"> -</xsl:template> - -<xsl:template name="sect4.titlepage.separator"> -</xsl:template> - -<xsl:template name="sect4.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="sect4.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="sect4.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="sect4.titlepage.before.recto"/> - <xsl:call-template name="sect4.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="sect4.titlepage.before.verso"/> - <xsl:call-template name="sect4.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="sect4.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="sect4.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="sect4.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="sect4.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style" margin-left="{$title.margin.left}" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="sect4.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" mode="sect4.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" mode="sect4.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="author" mode="sect4.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="othercredit" mode="sect4.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="releaseinfo" mode="sect4.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="copyright" mode="sect4.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="legalnotice" mode="sect4.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="pubdate" mode="sect4.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revision" mode="sect4.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revhistory" mode="sect4.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="abstract" mode="sect4.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="sect5.titlepage.recto"> - <xsl:choose> - <xsl:when test="sect5info/title"> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="sect5info/subtitle"> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/corpauthor"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/corpauthor"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/authorgroup"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/authorgroup"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/author"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/author"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/othercredit"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/othercredit"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/releaseinfo"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/copyright"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/copyright"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/legalnotice"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/legalnotice"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/pubdate"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/pubdate"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/revision"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/revision"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/revhistory"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/revhistory"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="sect5info/abstract"/> - <xsl:apply-templates mode="sect5.titlepage.recto.auto.mode" select="info/abstract"/> -</xsl:template> - -<xsl:template name="sect5.titlepage.verso"> -</xsl:template> - -<xsl:template name="sect5.titlepage.separator"> -</xsl:template> - -<xsl:template name="sect5.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="sect5.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="sect5.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="sect5.titlepage.before.recto"/> - <xsl:call-template name="sect5.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="sect5.titlepage.before.verso"/> - <xsl:call-template name="sect5.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="sect5.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="sect5.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="sect5.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="sect5.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style" margin-left="{$title.margin.left}" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="sect5.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" mode="sect5.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" mode="sect5.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="author" mode="sect5.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="othercredit" mode="sect5.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="releaseinfo" mode="sect5.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="copyright" mode="sect5.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="legalnotice" mode="sect5.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="pubdate" mode="sect5.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revision" mode="sect5.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revhistory" mode="sect5.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="abstract" mode="sect5.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="simplesect.titlepage.recto"> - <xsl:choose> - <xsl:when test="simplesectinfo/title"> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/title"/> - </xsl:when> - <xsl:when test="docinfo/title"> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="simplesectinfo/subtitle"> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/corpauthor"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/corpauthor"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/corpauthor"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/authorgroup"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/authorgroup"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/authorgroup"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/author"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/author"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/author"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/othercredit"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/othercredit"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/othercredit"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/releaseinfo"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/copyright"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/copyright"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/copyright"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/legalnotice"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/legalnotice"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/legalnotice"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/pubdate"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/pubdate"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/pubdate"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/revision"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/revision"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/revision"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/revhistory"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/revhistory"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/revhistory"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="simplesectinfo/abstract"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="docinfo/abstract"/> - <xsl:apply-templates mode="simplesect.titlepage.recto.auto.mode" select="info/abstract"/> -</xsl:template> - -<xsl:template name="simplesect.titlepage.verso"> -</xsl:template> - -<xsl:template name="simplesect.titlepage.separator"> -</xsl:template> - -<xsl:template name="simplesect.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="simplesect.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="simplesect.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="simplesect.titlepage.before.recto"/> - <xsl:call-template name="simplesect.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="simplesect.titlepage.before.verso"/> - <xsl:call-template name="simplesect.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="simplesect.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="simplesect.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="simplesect.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="simplesect.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style" margin-left="{$title.margin.left}" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="simplesect.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" mode="simplesect.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" mode="simplesect.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="author" mode="simplesect.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="othercredit" mode="simplesect.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="releaseinfo" mode="simplesect.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="copyright" mode="simplesect.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="legalnotice" mode="simplesect.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="pubdate" mode="simplesect.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revision" mode="simplesect.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revhistory" mode="simplesect.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="abstract" mode="simplesect.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="bibliography.titlepage.recto"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="bibliography.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="24.8832pt" font-family="{$title.fontset}" font-weight="bold"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::bibliography[1]"/> -</xsl:call-template></fo:block> - <xsl:choose> - <xsl:when test="bibliographyinfo/subtitle"> - <xsl:apply-templates mode="bibliography.titlepage.recto.auto.mode" select="bibliographyinfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="bibliography.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="bibliography.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="bibliography.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="bibliography.titlepage.verso"> -</xsl:template> - -<xsl:template name="bibliography.titlepage.separator"> -</xsl:template> - -<xsl:template name="bibliography.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="bibliography.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="bibliography.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="bibliography.titlepage.before.recto"/> - <xsl:call-template name="bibliography.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="bibliography.titlepage.before.verso"/> - <xsl:call-template name="bibliography.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="bibliography.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="bibliography.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="bibliography.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="subtitle" mode="bibliography.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="bibliography.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="bibliography.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="bibliodiv.titlepage.recto"> - <xsl:choose> - <xsl:when test="bibliodivinfo/title"> - <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="bibliodivinfo/title"/> - </xsl:when> - <xsl:when test="docinfo/title"> - <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="docinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="bibliodivinfo/subtitle"> - <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="bibliodivinfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="bibliodiv.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="bibliodiv.titlepage.verso"> -</xsl:template> - -<xsl:template name="bibliodiv.titlepage.separator"> -</xsl:template> - -<xsl:template name="bibliodiv.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="bibliodiv.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="bibliodiv.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="bibliodiv.titlepage.before.recto"/> - <xsl:call-template name="bibliodiv.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="bibliodiv.titlepage.before.verso"/> - <xsl:call-template name="bibliodiv.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="bibliodiv.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="bibliodiv.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="bibliodiv.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="bibliodiv.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="bibliodiv.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="20.736pt" font-family="{$title.fontset}" font-weight="bold"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::bibliodiv[1]"/> -</xsl:call-template> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="bibliodiv.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="bibliodiv.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="bibliodiv.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="glossary.titlepage.recto"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="glossary.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="24.8832pt" font-family="{$title.fontset}" font-weight="bold"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::glossary[1]"/> -</xsl:call-template></fo:block> - <xsl:choose> - <xsl:when test="glossaryinfo/subtitle"> - <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="glossaryinfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="glossary.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="glossary.titlepage.verso"> -</xsl:template> - -<xsl:template name="glossary.titlepage.separator"> -</xsl:template> - -<xsl:template name="glossary.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="glossary.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="glossary.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="glossary.titlepage.before.recto"/> - <xsl:call-template name="glossary.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="glossary.titlepage.before.verso"/> - <xsl:call-template name="glossary.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="glossary.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="glossary.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="glossary.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="subtitle" mode="glossary.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="glossary.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="glossary.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="glossdiv.titlepage.recto"> - <xsl:choose> - <xsl:when test="glossdivinfo/title"> - <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="glossdivinfo/title"/> - </xsl:when> - <xsl:when test="docinfo/title"> - <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="docinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="glossdivinfo/subtitle"> - <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="glossdivinfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="glossdiv.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="glossdiv.titlepage.verso"> -</xsl:template> - -<xsl:template name="glossdiv.titlepage.separator"> -</xsl:template> - -<xsl:template name="glossdiv.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="glossdiv.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="glossdiv.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="glossdiv.titlepage.before.recto"/> - <xsl:call-template name="glossdiv.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="glossdiv.titlepage.before.verso"/> - <xsl:call-template name="glossdiv.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="glossdiv.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="glossdiv.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="glossdiv.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="glossdiv.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="glossdiv.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="20.736pt" font-family="{$title.fontset}" font-weight="bold"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::glossdiv[1]"/> -</xsl:call-template> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="glossdiv.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="glossdiv.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="glossdiv.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="index.titlepage.recto"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="index.titlepage.recto.style" margin-left="0pt" font-size="24.8832pt" font-family="{$title.fontset}" font-weight="bold"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::index[1]"/> -<xsl:with-param name="pagewide" select="1"/> -</xsl:call-template></fo:block> - <xsl:choose> - <xsl:when test="indexinfo/subtitle"> - <xsl:apply-templates mode="index.titlepage.recto.auto.mode" select="indexinfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="index.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="index.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="index.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="index.titlepage.verso"> -</xsl:template> - -<xsl:template name="index.titlepage.separator"> -</xsl:template> - -<xsl:template name="index.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="index.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="index.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="index.titlepage.before.recto"/> - <xsl:call-template name="index.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="index.titlepage.before.verso"/> - <xsl:call-template name="index.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="index.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="index.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="index.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="subtitle" mode="index.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="index.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="index.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="indexdiv.titlepage.recto"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="indexdiv.titlepage.recto.style"> -<xsl:call-template name="indexdiv.title"> -<xsl:with-param name="title" select="title"/> -</xsl:call-template></fo:block> - <xsl:choose> - <xsl:when test="indexdivinfo/subtitle"> - <xsl:apply-templates mode="indexdiv.titlepage.recto.auto.mode" select="indexdivinfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="indexdiv.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="indexdiv.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="indexdiv.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="indexdiv.titlepage.verso"> -</xsl:template> - -<xsl:template name="indexdiv.titlepage.separator"> -</xsl:template> - -<xsl:template name="indexdiv.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="indexdiv.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="indexdiv.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="indexdiv.titlepage.before.recto"/> - <xsl:call-template name="indexdiv.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="indexdiv.titlepage.before.verso"/> - <xsl:call-template name="indexdiv.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="indexdiv.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="indexdiv.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="indexdiv.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="subtitle" mode="indexdiv.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="indexdiv.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="indexdiv.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="setindex.titlepage.recto"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="setindex.titlepage.recto.style" margin-left="0pt" font-size="24.8832pt" font-family="{$title.fontset}" font-weight="bold"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::setindex[1]"/> -<xsl:with-param name="pagewide" select="1"/> -</xsl:call-template></fo:block> - <xsl:choose> - <xsl:when test="setindexinfo/subtitle"> - <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="setindexinfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="setindex.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="setindex.titlepage.verso"> -</xsl:template> - -<xsl:template name="setindex.titlepage.separator"> -</xsl:template> - -<xsl:template name="setindex.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="setindex.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="setindex.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="setindex.titlepage.before.recto"/> - <xsl:call-template name="setindex.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="setindex.titlepage.before.verso"/> - <xsl:call-template name="setindex.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="setindex.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="setindex.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="setindex.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="subtitle" mode="setindex.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="setindex.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="setindex.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="colophon.titlepage.recto"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="colophon.titlepage.recto.style" margin-left="{$title.margin.left}" font-size="24.8832pt" font-family="{$title.fontset}" font-weight="bold"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::colophon[1]"/> -</xsl:call-template></fo:block> - <xsl:choose> - <xsl:when test="colophoninfo/subtitle"> - <xsl:apply-templates mode="colophon.titlepage.recto.auto.mode" select="colophoninfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="colophon.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="colophon.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="colophon.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="colophon.titlepage.verso"> -</xsl:template> - -<xsl:template name="colophon.titlepage.separator"> -</xsl:template> - -<xsl:template name="colophon.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="colophon.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="colophon.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="colophon.titlepage.before.recto"/> - <xsl:call-template name="colophon.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="colophon.titlepage.before.verso"/> - <xsl:call-template name="colophon.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="colophon.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="colophon.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="colophon.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="subtitle" mode="colophon.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="colophon.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="colophon.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="sidebar.titlepage.recto"> - <xsl:choose> - <xsl:when test="sidebarinfo/title"> - <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="sidebarinfo/title"/> - </xsl:when> - <xsl:when test="docinfo/title"> - <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="docinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="sidebarinfo/subtitle"> - <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="sidebarinfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="sidebar.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="sidebar.titlepage.verso"> -</xsl:template> - -<xsl:template name="sidebar.titlepage.separator"> -</xsl:template> - -<xsl:template name="sidebar.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="sidebar.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="sidebar.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="sidebar.titlepage.before.recto"/> - <xsl:call-template name="sidebar.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="sidebar.titlepage.before.verso"/> - <xsl:call-template name="sidebar.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="sidebar.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="sidebar.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="sidebar.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="sidebar.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sidebar.titlepage.recto.style" font-family="{$title.fontset}" font-weight="bold"> -<xsl:apply-templates select="." mode="sidebar.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="sidebar.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="sidebar.titlepage.recto.style" font-family="{$title.fontset}"> -<xsl:apply-templates select="." mode="sidebar.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="qandaset.titlepage.recto"> - <xsl:choose> - <xsl:when test="qandasetinfo/title"> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/title"/> - </xsl:when> - <xsl:when test="blockinfo/title"> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <xsl:choose> - <xsl:when test="qandasetinfo/subtitle"> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/subtitle"/> - </xsl:when> - <xsl:when test="blockinfo/subtitle"> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/corpauthor"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/corpauthor"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/corpauthor"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/authorgroup"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/authorgroup"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/authorgroup"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/author"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/author"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/author"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/othercredit"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/othercredit"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/othercredit"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/releaseinfo"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/releaseinfo"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/copyright"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/copyright"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/copyright"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/legalnotice"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/legalnotice"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/legalnotice"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/pubdate"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/pubdate"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/pubdate"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/revision"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/revision"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/revision"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/revhistory"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/revhistory"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/revhistory"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="qandasetinfo/abstract"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="blockinfo/abstract"/> - <xsl:apply-templates mode="qandaset.titlepage.recto.auto.mode" select="info/abstract"/> -</xsl:template> - -<xsl:template name="qandaset.titlepage.verso"> -</xsl:template> - -<xsl:template name="qandaset.titlepage.separator"> -</xsl:template> - -<xsl:template name="qandaset.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="qandaset.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="qandaset.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" font-family="{$title.fontset}"> - <xsl:variable name="recto.content"> - <xsl:call-template name="qandaset.titlepage.before.recto"/> - <xsl:call-template name="qandaset.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block start-indent="0pt" text-align="center"><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="qandaset.titlepage.before.verso"/> - <xsl:call-template name="qandaset.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="qandaset.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="qandaset.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="qandaset.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="qandaset.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" keep-with-next.within-column="always" font-size="24.8832pt" font-weight="bold"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::qandaset[1]"/> -</xsl:call-template> -</fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="qandaset.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style"> -<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="corpauthor" mode="qandaset.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em" font-size="14.4pt"> -<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="authorgroup" mode="qandaset.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em" font-size="14.4pt"> -<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="author" mode="qandaset.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em" font-size="14.4pt"> -<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="othercredit" mode="qandaset.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em"> -<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="releaseinfo" mode="qandaset.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em"> -<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="copyright" mode="qandaset.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em"> -<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="legalnotice" mode="qandaset.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" text-align="start" margin-left="0.5in" margin-right="0.5in" font-family="{$body.fontset}"> -<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="pubdate" mode="qandaset.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em"> -<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revision" mode="qandaset.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em"> -<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="revhistory" mode="qandaset.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em"> -<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template match="abstract" mode="qandaset.titlepage.recto.auto.mode"> -<fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="qandaset.titlepage.recto.style" space-before="0.5em" text-align="start" margin-left="0.5in" margin-right="0.5in" font-family="{$body.fontset}"> -<xsl:apply-templates select="." mode="qandaset.titlepage.recto.mode"/> -</fo:block> -</xsl:template> - -<xsl:template name="table.of.contents.titlepage.recto"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="table.of.contents.titlepage.recto.style" space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="{$title.margin.left}" start-indent="0pt" font-size="17.28pt" font-weight="bold" font-family="{$title.fontset}"> -<xsl:call-template name="gentext"> -<xsl:with-param name="key" select="'TableofContents'"/> -</xsl:call-template></fo:block> -</xsl:template> - -<xsl:template name="table.of.contents.titlepage.verso"> -</xsl:template> - -<xsl:template name="table.of.contents.titlepage.separator"> -</xsl:template> - -<xsl:template name="table.of.contents.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="table.of.contents.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="table.of.contents.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="table.of.contents.titlepage.before.recto"/> - <xsl:call-template name="table.of.contents.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="table.of.contents.titlepage.before.verso"/> - <xsl:call-template name="table.of.contents.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="table.of.contents.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="table.of.contents.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="table.of.contents.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template name="list.of.tables.titlepage.recto"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="list.of.tables.titlepage.recto.style" space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="{$title.margin.left}" start-indent="0pt" font-size="17.28pt" font-weight="bold" font-family="{$title.fontset}"> -<xsl:call-template name="gentext"> -<xsl:with-param name="key" select="'ListofTables'"/> -</xsl:call-template></fo:block> -</xsl:template> - -<xsl:template name="list.of.tables.titlepage.verso"> -</xsl:template> - -<xsl:template name="list.of.tables.titlepage.separator"> -</xsl:template> - -<xsl:template name="list.of.tables.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="list.of.tables.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="list.of.tables.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="list.of.tables.titlepage.before.recto"/> - <xsl:call-template name="list.of.tables.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="list.of.tables.titlepage.before.verso"/> - <xsl:call-template name="list.of.tables.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="list.of.tables.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="list.of.tables.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="list.of.tables.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template name="list.of.figures.titlepage.recto"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="list.of.figures.titlepage.recto.style" space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="{$title.margin.left}" start-indent="0pt" font-size="17.28pt" font-weight="bold" font-family="{$title.fontset}"> -<xsl:call-template name="gentext"> -<xsl:with-param name="key" select="'ListofFigures'"/> -</xsl:call-template></fo:block> -</xsl:template> - -<xsl:template name="list.of.figures.titlepage.verso"> -</xsl:template> - -<xsl:template name="list.of.figures.titlepage.separator"> -</xsl:template> - -<xsl:template name="list.of.figures.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="list.of.figures.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="list.of.figures.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="list.of.figures.titlepage.before.recto"/> - <xsl:call-template name="list.of.figures.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="list.of.figures.titlepage.before.verso"/> - <xsl:call-template name="list.of.figures.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="list.of.figures.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="list.of.figures.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="list.of.figures.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template name="list.of.examples.titlepage.recto"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="list.of.examples.titlepage.recto.style" space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="{$title.margin.left}" start-indent="0pt" font-size="17.28pt" font-weight="bold" font-family="{$title.fontset}"> -<xsl:call-template name="gentext"> -<xsl:with-param name="key" select="'ListofExamples'"/> -</xsl:call-template></fo:block> -</xsl:template> - -<xsl:template name="list.of.examples.titlepage.verso"> -</xsl:template> - -<xsl:template name="list.of.examples.titlepage.separator"> -</xsl:template> - -<xsl:template name="list.of.examples.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="list.of.examples.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="list.of.examples.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="list.of.examples.titlepage.before.recto"/> - <xsl:call-template name="list.of.examples.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="list.of.examples.titlepage.before.verso"/> - <xsl:call-template name="list.of.examples.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="list.of.examples.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="list.of.examples.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="list.of.examples.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template name="list.of.equations.titlepage.recto"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="list.of.equations.titlepage.recto.style" space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="{$title.margin.left}" start-indent="0pt" font-size="17.28pt" font-weight="bold" font-family="{$title.fontset}"> -<xsl:call-template name="gentext"> -<xsl:with-param name="key" select="'ListofEquations'"/> -</xsl:call-template></fo:block> -</xsl:template> - -<xsl:template name="list.of.equations.titlepage.verso"> -</xsl:template> - -<xsl:template name="list.of.equations.titlepage.separator"> -</xsl:template> - -<xsl:template name="list.of.equations.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="list.of.equations.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="list.of.equations.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="list.of.equations.titlepage.before.recto"/> - <xsl:call-template name="list.of.equations.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="list.of.equations.titlepage.before.verso"/> - <xsl:call-template name="list.of.equations.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="list.of.equations.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="list.of.equations.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="list.of.equations.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template name="list.of.procedures.titlepage.recto"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="list.of.procedures.titlepage.recto.style" space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="{$title.margin.left}" start-indent="0pt" font-size="17.28pt" font-weight="bold" font-family="{$title.fontset}"> -<xsl:call-template name="gentext"> -<xsl:with-param name="key" select="'ListofProcedures'"/> -</xsl:call-template></fo:block> -</xsl:template> - -<xsl:template name="list.of.procedures.titlepage.verso"> -</xsl:template> - -<xsl:template name="list.of.procedures.titlepage.separator"> -</xsl:template> - -<xsl:template name="list.of.procedures.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="list.of.procedures.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="list.of.procedures.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="list.of.procedures.titlepage.before.recto"/> - <xsl:call-template name="list.of.procedures.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="list.of.procedures.titlepage.before.verso"/> - <xsl:call-template name="list.of.procedures.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="list.of.procedures.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="list.of.procedures.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="list.of.procedures.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template name="list.of.unknowns.titlepage.recto"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" xsl:use-attribute-sets="list.of.unknowns.titlepage.recto.style" space-before.minimum="1em" space-before.optimum="1.5em" space-before.maximum="2em" space-after="0.5em" margin-left="{$title.margin.left}" start-indent="0pt" font-size="17.28pt" font-weight="bold" font-family="{$title.fontset}"> -<xsl:call-template name="gentext"> -<xsl:with-param name="key" select="'ListofUnknown'"/> -</xsl:call-template></fo:block> -</xsl:template> - -<xsl:template name="list.of.unknowns.titlepage.verso"> -</xsl:template> - -<xsl:template name="list.of.unknowns.titlepage.separator"> -</xsl:template> - -<xsl:template name="list.of.unknowns.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="list.of.unknowns.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="list.of.unknowns.titlepage"> - <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> - <xsl:variable name="recto.content"> - <xsl:call-template name="list.of.unknowns.titlepage.before.recto"/> - <xsl:call-template name="list.of.unknowns.titlepage.recto"/> - </xsl:variable> - <xsl:variable name="recto.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count > 0)"> - <fo:block><xsl:copy-of select="$recto.content"/></fo:block> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="list.of.unknowns.titlepage.before.verso"/> - <xsl:call-template name="list.of.unknowns.titlepage.verso"/> - </xsl:variable> - <xsl:variable name="verso.elements.count"> - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count > 0)"> - <fo:block><xsl:copy-of select="$verso.content"/></fo:block> - </xsl:if> - <xsl:call-template name="list.of.unknowns.titlepage.separator"/> - </fo:block> -</xsl:template> - -<xsl:template match="*" mode="list.of.unknowns.titlepage.recto.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="*" mode="list.of.unknowns.titlepage.verso.mode"> - <!-- if an element isn't found in this mode, --> - <!-- try the generic titlepage.mode --> - <xsl:apply-templates select="." mode="titlepage.mode"/> -</xsl:template> - -</xsl:stylesheet> - diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/titlepage.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/titlepage.xsl deleted file mode 100644 index 679756535..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/titlepage.xsl +++ /dev/null @@ -1,738 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<xsl:attribute-set name="book.titlepage.recto.style"> - <xsl:attribute name="font-family"> - <xsl:value-of select="$title.fontset"/> - </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="book.titlepage.verso.style"> - <xsl:attribute name="font-size">10pt</xsl:attribute> -</xsl:attribute-set> - -<xsl:attribute-set name="article.titlepage.recto.style"/> -<xsl:attribute-set name="article.titlepage.verso.style"/> - -<xsl:attribute-set name="set.titlepage.recto.style"/> -<xsl:attribute-set name="set.titlepage.verso.style"/> - -<xsl:attribute-set name="part.titlepage.recto.style"> - <xsl:attribute name="text-align">center</xsl:attribute> -</xsl:attribute-set> - -<xsl:attribute-set name="part.titlepage.verso.style"/> - -<xsl:attribute-set name="partintro.titlepage.recto.style"/> -<xsl:attribute-set name="partintro.titlepage.verso.style"/> - -<xsl:attribute-set name="reference.titlepage.recto.style"/> -<xsl:attribute-set name="reference.titlepage.verso.style"/> - -<xsl:attribute-set name="dedication.titlepage.recto.style"/> -<xsl:attribute-set name="dedication.titlepage.verso.style"/> - -<xsl:attribute-set name="preface.titlepage.recto.style"/> -<xsl:attribute-set name="preface.titlepage.verso.style"/> - -<xsl:attribute-set name="chapter.titlepage.recto.style"/> -<xsl:attribute-set name="chapter.titlepage.verso.style"/> - -<xsl:attribute-set name="appendix.titlepage.recto.style"/> -<xsl:attribute-set name="appendix.titlepage.verso.style"/> - -<xsl:attribute-set name="bibliography.titlepage.recto.style"/> -<xsl:attribute-set name="bibliography.titlepage.verso.style"/> - -<xsl:attribute-set name="bibliodiv.titlepage.recto.style"/> -<xsl:attribute-set name="bibliodiv.titlepage.verso.style"/> - -<xsl:attribute-set name="glossary.titlepage.recto.style"/> -<xsl:attribute-set name="glossary.titlepage.verso.style"/> - -<xsl:attribute-set name="glossdiv.titlepage.recto.style"/> -<xsl:attribute-set name="glossdiv.titlepage.verso.style"/> - -<xsl:attribute-set name="index.titlepage.recto.style"/> -<xsl:attribute-set name="index.titlepage.verso.style"/> - -<xsl:attribute-set name="setindex.titlepage.recto.style"/> -<xsl:attribute-set name="setindex.titlepage.verso.style"/> - -<xsl:attribute-set name="indexdiv.titlepage.recto.style"/> -<xsl:attribute-set name="indexdiv.titlepage.verso.style"/> - -<xsl:attribute-set name="colophon.titlepage.recto.style"/> -<xsl:attribute-set name="colophon.titlepage.verso.style"/> - -<xsl:attribute-set name="sidebar.titlepage.recto.style"/> -<xsl:attribute-set name="sidebar.titlepage.verso.style"/> - -<xsl:attribute-set name="qandaset.titlepage.recto.style"/> -<xsl:attribute-set name="qandaset.titlepage.verso.style"/> - -<xsl:attribute-set name="section.titlepage.recto.style"> - <xsl:attribute name="keep-together.within-column">always</xsl:attribute> -</xsl:attribute-set> - -<xsl:attribute-set name="section.titlepage.verso.style"> - <xsl:attribute name="keep-together.within-column">always</xsl:attribute> - <xsl:attribute name="keep-with-next.within-column">always</xsl:attribute> -</xsl:attribute-set> - -<xsl:attribute-set name="sect1.titlepage.recto.style" - use-attribute-sets="section.titlepage.recto.style"/> -<xsl:attribute-set name="sect1.titlepage.verso.style" - use-attribute-sets="section.titlepage.verso.style"/> - -<xsl:attribute-set name="sect2.titlepage.recto.style" - use-attribute-sets="section.titlepage.recto.style"/> -<xsl:attribute-set name="sect2.titlepage.verso.style" - use-attribute-sets="section.titlepage.verso.style"/> - -<xsl:attribute-set name="sect3.titlepage.recto.style" - use-attribute-sets="section.titlepage.recto.style"/> -<xsl:attribute-set name="sect3.titlepage.verso.style" - use-attribute-sets="section.titlepage.verso.style"/> - -<xsl:attribute-set name="sect4.titlepage.recto.style" - use-attribute-sets="section.titlepage.recto.style"/> -<xsl:attribute-set name="sect4.titlepage.verso.style" - use-attribute-sets="section.titlepage.verso.style"/> - -<xsl:attribute-set name="sect5.titlepage.recto.style" - use-attribute-sets="section.titlepage.recto.style"/> -<xsl:attribute-set name="sect5.titlepage.verso.style" - use-attribute-sets="section.titlepage.verso.style"/> - -<xsl:attribute-set name="simplesect.titlepage.recto.style" - use-attribute-sets="section.titlepage.recto.style"/> -<xsl:attribute-set name="simplesect.titlepage.verso.style" - use-attribute-sets="section.titlepage.verso.style"/> - -<xsl:attribute-set name="refnamediv.titlepage.recto.style" - use-attribute-sets="section.titlepage.recto.style"/> -<xsl:attribute-set name="refnamediv.titlepage.verso.style" - use-attribute-sets="section.titlepage.verso.style"/> - -<xsl:attribute-set name="refsynopsisdiv.titlepage.recto.style" - use-attribute-sets="section.titlepage.recto.style"/> -<xsl:attribute-set name="refsynopsisdiv.titlepage.verso.style" - use-attribute-sets="section.titlepage.verso.style"/> - -<xsl:attribute-set name="refsection.titlepage.recto.style" - use-attribute-sets="section.titlepage.recto.style"/> -<xsl:attribute-set name="refsection.titlepage.verso.style" - use-attribute-sets="section.titlepage.verso.style"/> - -<xsl:attribute-set name="refsect1.titlepage.recto.style" - use-attribute-sets="section.titlepage.recto.style"/> -<xsl:attribute-set name="refsect1.titlepage.verso.style" - use-attribute-sets="section.titlepage.verso.style"/> - -<xsl:attribute-set name="refsect2.titlepage.recto.style" - use-attribute-sets="section.titlepage.recto.style"/> -<xsl:attribute-set name="refsect2.titlepage.verso.style" - use-attribute-sets="section.titlepage.verso.style"/> - -<xsl:attribute-set name="refsect3.titlepage.recto.style" - use-attribute-sets="section.titlepage.recto.style"/> -<xsl:attribute-set name="refsect3.titlepage.verso.style" - use-attribute-sets="section.titlepage.verso.style"/> - -<xsl:attribute-set name="table.of.contents.titlepage.recto.style"/> -<xsl:attribute-set name="table.of.contents.titlepage.verso.style"/> - -<xsl:attribute-set name="list.of.tables.titlepage.recto.style"/> -<xsl:attribute-set name="list.of.tables.contents.titlepage.verso.style"/> - -<xsl:attribute-set name="list.of.figures.titlepage.recto.style"/> -<xsl:attribute-set name="list.of.figures.contents.titlepage.verso.style"/> - -<xsl:attribute-set name="list.of.equations.titlepage.recto.style"/> -<xsl:attribute-set name="list.of.equations.contents.titlepage.verso.style"/> - -<xsl:attribute-set name="list.of.examples.titlepage.recto.style"/> -<xsl:attribute-set name="list.of.examples.contents.titlepage.verso.style"/> - -<xsl:attribute-set name="list.of.procedures.titlepage.recto.style"/> -<xsl:attribute-set name="list.of.procedures.contents.titlepage.verso.style"/> - -<xsl:attribute-set name="list.of.unknowns.titlepage.recto.style"/> -<xsl:attribute-set name="list.of.unknowns.contents.titlepage.verso.style"/> - -<!-- ==================================================================== --> - -<xsl:template match="*" mode="titlepage.mode"> - <!-- if an element isn't found in this mode, try the default mode --> - <xsl:apply-templates select="."/> -</xsl:template> - -<xsl:template match="abbrev" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="abstract" mode="titlepage.mode"> - <fo:block> - <xsl:call-template name="formal.object.heading"> - <xsl:with-param name="title"> - <xsl:apply-templates select="." mode="title.markup"/> - </xsl:with-param> - </xsl:call-template> - <xsl:apply-templates mode="titlepage.mode"/> - </fo:block> -</xsl:template> - -<xsl:template match="abstract/title" mode="titlepage.mode"/> - -<xsl:template match="abstract/title" mode="titlepage.abstract.title.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="address" mode="titlepage.mode"> - <!-- use the normal address handling code --> - <xsl:apply-templates select="."/> -</xsl:template> - -<xsl:template match="affiliation" mode="titlepage.mode"> - <fo:block> - <xsl:apply-templates mode="titlepage.mode"/> - </fo:block> -</xsl:template> - -<xsl:template match="artpagenums" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="author" mode="titlepage.mode"> - <fo:block> - <xsl:call-template name="anchor"/> - <xsl:call-template name="person.name"/> - <xsl:if test="affiliation/orgname"> - <xsl:text>, </xsl:text> - <xsl:apply-templates select="affiliation/orgname" mode="titlepage.mode"/> - </xsl:if> - <xsl:if test="email|affiliation/address/email"> - <xsl:text> </xsl:text> - <xsl:apply-templates select="(email|affiliation/address/email)[1]"/> - </xsl:if> - </fo:block> -</xsl:template> - -<xsl:template match="authorblurb" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="authorgroup" mode="titlepage.mode"> - <fo:wrapper> - <xsl:call-template name="anchor"/> - <xsl:apply-templates mode="titlepage.mode"/> - </fo:wrapper> -</xsl:template> - -<xsl:template match="authorinitials" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="bibliomisc" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="bibliomset" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="collab" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="confgroup" mode="titlepage.mode"> - <fo:block> - <xsl:apply-templates mode="titlepage.mode"/> - </fo:block> -</xsl:template> - -<xsl:template match="confdates" mode="titlepage.mode"> - <fo:block> - <xsl:apply-templates mode="titlepage.mode"/> - </fo:block> -</xsl:template> - -<xsl:template match="conftitle" mode="titlepage.mode"> - <fo:block> - <xsl:apply-templates mode="titlepage.mode"/> - </fo:block> -</xsl:template> - -<xsl:template match="confnum" mode="titlepage.mode"> - <!-- suppress --> -</xsl:template> - -<xsl:template match="contractnum" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="contractsponsor" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="contrib" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="copyright" mode="titlepage.mode"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'Copyright'"/> - </xsl:call-template> - <xsl:call-template name="gentext.space"/> - <xsl:call-template name="dingbat"> - <xsl:with-param name="dingbat">copyright</xsl:with-param> - </xsl:call-template> - <xsl:call-template name="gentext.space"/> - <xsl:call-template name="copyright.years"> - <xsl:with-param name="years" select="year"/> - <xsl:with-param name="print.ranges" select="$make.year.ranges"/> - <xsl:with-param name="single.year.ranges" - select="$make.single.year.ranges"/> - </xsl:call-template> - <xsl:call-template name="gentext.space"/> - <xsl:apply-templates select="holder" mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="year" mode="titlepage.mode"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="holder" mode="titlepage.mode"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="corpauthor" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="corpcredit" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="corpname" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="date" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="edition" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> - <xsl:call-template name="gentext.space"/> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'Edition'"/> - </xsl:call-template> -</xsl:template> - -<xsl:template match="editor" mode="titlepage.mode"> - <!-- The first editor is dealt with in the following template, - which in turn displays all editors of the same mode. --> -</xsl:template> - -<xsl:template match="editor[1]" priority="2" mode="titlepage.mode"> - <xsl:call-template name="gentext.edited.by"/> - <xsl:call-template name="gentext.space"/> - <xsl:call-template name="person.name.list"> - <xsl:with-param name="person.list" select="../editor"/> - </xsl:call-template> -</xsl:template> - -<xsl:template match="firstname" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="graphic" mode="titlepage.mode"> - <!-- use the normal graphic handling code --> - <xsl:apply-templates select="."/> -</xsl:template> - -<xsl:template match="honorific" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="isbn" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="issn" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="biblioid" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="itermset" mode="titlepage.mode"> - <!-- discard --> -</xsl:template> - -<xsl:template match="invpartnumber" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="issuenum" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="jobtitle" mode="titlepage.mode"> - <fo:block> - <xsl:apply-templates mode="titlepage.mode"/> - </fo:block> -</xsl:template> - -<xsl:template match="keywordset" mode="titlepage.mode"> -</xsl:template> - -<xsl:template match="legalnotice" mode="titlepage.mode"> - - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - - <fo:block id="{$id}"> - <xsl:if test="title"> <!-- FIXME: add param for using default title? --> - <xsl:call-template name="formal.object.heading"/> - </xsl:if> - <xsl:apply-templates mode="titlepage.mode"/> - </fo:block> -</xsl:template> - -<xsl:template match="legalnotice/title" mode="titlepage.mode"> -</xsl:template> - -<xsl:template match="lineage" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="modespec" mode="titlepage.mode"> - <!-- discard --> -</xsl:template> - -<xsl:template match="orgdiv" mode="titlepage.mode"> - <xsl:if test="preceding-sibling::*[1][self::orgname]"> - <xsl:text> </xsl:text> - </xsl:if> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="orgname" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="othercredit" mode="titlepage.mode"> - <xsl:variable name="contrib" select="string(contrib)"/> - <xsl:choose> - <xsl:when test="contrib"> - <xsl:if test="not(preceding-sibling::othercredit[string(contrib)=$contrib])"> - <fo:block> - <xsl:apply-templates mode="titlepage.mode" select="contrib"/> - <xsl:text>: </xsl:text> - <xsl:call-template name="person.name"/> - <xsl:apply-templates mode="titlepage.mode" select="affiliation"/> - <xsl:apply-templates select="following-sibling::othercredit[string(contrib)=$contrib]" mode="titlepage.othercredits"/> - </fo:block> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <fo:block><xsl:call-template name="person.name"/></fo:block> - <xsl:apply-templates mode="titlepage.mode" select="./affiliation"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="othercredit" mode="titlepage.othercredits"> - <xsl:text>, </xsl:text> - <xsl:call-template name="person.name"/> -</xsl:template> - -<xsl:template match="othername" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="pagenums" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="printhistory" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="productname" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="productnumber" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="pubdate" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="publisher" mode="titlepage.mode"> - <fo:block> - <xsl:apply-templates mode="titlepage.mode"/> - </fo:block> -</xsl:template> - -<xsl:template match="publishername" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="pubsnumber" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="releaseinfo" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="revhistory" mode="titlepage.mode"> - - <xsl:variable name="explicit.table.width"> - <xsl:call-template name="pi.dbfo_table-width"/> - </xsl:variable> - - <xsl:variable name="table.width"> - <xsl:choose> - <xsl:when test="$explicit.table.width != ''"> - <xsl:value-of select="$explicit.table.width"/> - </xsl:when> - <xsl:when test="$default.table.width = ''"> - <xsl:text>100%</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$default.table.width"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <fo:table table-layout="fixed" width="{$table.width}" xsl:use-attribute-sets="revhistory.table.properties"> - <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 start-indent="0pt" end-indent="0pt"> - <fo:table-row> - <fo:table-cell number-columns-spanned="3" xsl:use-attribute-sets="revhistory.table.cell.properties"> - <fo:block xsl:use-attribute-sets="revhistory.title.properties"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'RevHistory'"/> - </xsl:call-template> - </fo:block> - </fo:table-cell> - </fo:table-row> - <xsl:apply-templates mode="titlepage.mode"/> - </fo:table-body> - </fo:table> -</xsl:template> - -<xsl:template match="revhistory/revision" mode="titlepage.mode"> - <xsl:variable name="revnumber" select="revnumber"/> - <xsl:variable name="revdate" select="date"/> - <xsl:variable name="revauthor" select="authorinitials|author"/> - <xsl:variable name="revremark" select="revremark|revdescription"/> - <fo:table-row> - <fo:table-cell xsl:use-attribute-sets="revhistory.table.cell.properties"> - <fo:block> - <xsl:if test="$revnumber"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'Revision'"/> - </xsl:call-template> - <xsl:call-template name="gentext.space"/> - <xsl:apply-templates select="$revnumber[1]" mode="titlepage.mode"/> - </xsl:if> - </fo:block> - </fo:table-cell> - <fo:table-cell xsl:use-attribute-sets="revhistory.table.cell.properties"> - <fo:block> - <xsl:apply-templates select="$revdate[1]" mode="titlepage.mode"/> - </fo:block> - </fo:table-cell> - <fo:table-cell xsl:use-attribute-sets="revhistory.table.cell.properties"> - <fo:block> - <xsl:for-each select="$revauthor"> - <xsl:apply-templates select="." mode="titlepage.mode"/> - <xsl:if test="position() != last()"> - <xsl:text>, </xsl:text> - </xsl:if> - </xsl:for-each> - </fo:block> - </fo:table-cell> - </fo:table-row> - <xsl:if test="$revremark"> - <fo:table-row> - <fo:table-cell number-columns-spanned="3" xsl:use-attribute-sets="revhistory.table.cell.properties"> - <fo:block> - <xsl:apply-templates select="$revremark[1]" mode="titlepage.mode"/> - </fo:block> - </fo:table-cell> - </fo:table-row> - </xsl:if> -</xsl:template> - -<xsl:template match="revision/revnumber" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="revision/date" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="revision/authorinitials" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="revision/author" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="revision/revremark" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="revision/revdescription" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="seriesvolnums" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="shortaffil" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="subjectset" mode="titlepage.mode"> - <!-- discard --> -</xsl:template> - -<xsl:template match="subtitle" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="surname" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="title" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="titleabbrev" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="volumenum" mode="titlepage.mode"> - <xsl:apply-templates mode="titlepage.mode"/> -</xsl:template> - -<!-- ==================================================================== --> -<!-- Book templates --> - -<!-- Note: these templates cannot use *.titlepage.recto.mode or - *.titlepage.verso.mode. If they do then subsequent use of a custom - titlepage.templates.xml file will not work correctly. --> - -<!-- book recto --> - -<xsl:template match="bookinfo/authorgroup|info/authorgroup" - mode="titlepage.mode" priority="2"> - <fo:block> - <xsl:call-template name="anchor"/> - <xsl:apply-templates mode="titlepage.mode"/> - </fo:block> -</xsl:template> - -<!-- book verso --> - -<xsl:template name="book.verso.title"> - <fo:block> - <xsl:apply-templates mode="titlepage.mode"/> - - <xsl:if test="following-sibling::subtitle - |following-sibling::info/subtitle - |following-sibling::bookinfo/subtitle"> - <xsl:text>: </xsl:text> - - <xsl:apply-templates select="(following-sibling::subtitle - |following-sibling::info/subtitle - |following-sibling::bookinfo/subtitle)[1]" - mode="book.verso.subtitle.mode"/> - </xsl:if> - </fo:block> -</xsl:template> - -<xsl:template match="subtitle" mode="book.verso.subtitle.mode"> - <xsl:apply-templates mode="titlepage.mode"/> - <xsl:if test="following-sibling::subtitle"> - <xsl:text>: </xsl:text> - <xsl:apply-templates select="following-sibling::subtitle[1]" - mode="book.verso.subtitle.mode"/> - </xsl:if> -</xsl:template> - -<xsl:template name="verso.authorgroup"> - <fo:block> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'by'"/> - </xsl:call-template> - <xsl:text> </xsl:text> - <xsl:call-template name="person.name.list"> - <xsl:with-param name="person.list" select="author|corpauthor|editor"/> - </xsl:call-template> - </fo:block> - <xsl:apply-templates select="othercredit" mode="titlepage.mode"/> -</xsl:template> - -<xsl:template match="bookinfo/author|info/author" - mode="titlepage.mode" priority="2"> - <fo:block> - <xsl:call-template name="person.name"/> - </fo:block> -</xsl:template> - -<xsl:template match="bookinfo/corpauthor|info/corpauthor" - mode="titlepage.mode" priority="2"> - <fo:block> - <xsl:apply-templates/> - </fo:block> -</xsl:template> - -<xsl:template match="bookinfo/pubdate|info/pubdate" - mode="titlepage.mode" priority="2"> - <fo:block> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'published'"/> - </xsl:call-template> - <xsl:text> </xsl:text> - <xsl:apply-templates mode="titlepage.mode"/> - </fo:block> -</xsl:template> - -<!-- ==================================================================== --> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/toc.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/toc.xsl deleted file mode 100644 index 40d9b7343..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/toc.xsl +++ /dev/null @@ -1,280 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<!-- FIXME: in the contexts where <toc> can occur, I think it's always - the case that a page-sequence is required. Is that true? --> - -<xsl:template match="toc"> - <xsl:variable name="master-reference"> - <xsl:call-template name="select.pagemaster"/> - </xsl:variable> - - <xsl:choose> - <xsl:when test="*"> - <xsl:if test="$process.source.toc != 0"> - <!-- if the toc isn't empty, process it --> - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="element" select="'toc'"/> - <xsl:with-param name="master-reference" - select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="element" select="'toc'"/> - <xsl:with-param name="master-reference" - select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="force-page-count"> - <xsl:call-template name="force.page.count"> - <xsl:with-param name="master-reference" - select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:call-template name="set.flow.properties"> - <xsl:with-param name="element" select="local-name(.)"/> - <xsl:with-param name="master-reference" - select="$master-reference"/> - </xsl:call-template> - - <fo:block xsl:use-attribute-sets="toc.margin.properties"> - <xsl:call-template name="table.of.contents.titlepage"/> - <xsl:apply-templates/> - </fo:block> - </fo:flow> - </fo:page-sequence> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <xsl:if test="$process.empty.source.toc != 0"> - <fo:page-sequence hyphenate="{$hyphenate}" - master-reference="{$master-reference}"> - <xsl:attribute name="language"> - <xsl:call-template name="l10n.language"/> - </xsl:attribute> - <xsl:attribute name="format"> - <xsl:call-template name="page.number.format"> - <xsl:with-param name="element" select="'toc'"/> - <xsl:with-param name="master-reference" - select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="initial-page-number"> - <xsl:call-template name="initial.page.number"> - <xsl:with-param name="element" select="'toc'"/> - <xsl:with-param name="master-reference" - select="$master-reference"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:attribute name="hyphenation-character"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-character'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-push-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-push-character-count'"/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="hyphenation-remain-character-count"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'hyphenation-remain-character-count'"/> - </xsl:call-template> - </xsl:attribute> - - <xsl:apply-templates select="." mode="running.head.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - <xsl:apply-templates select="." mode="running.foot.mode"> - <xsl:with-param name="master-reference" select="$master-reference"/> - </xsl:apply-templates> - - <fo:flow flow-name="xsl-region-body"> - <xsl:choose> - <xsl:when test="parent::section - or parent::sect1 - or parent::sect2 - or parent::sect3 - or parent::sect4 - or parent::sect5"> - <xsl:apply-templates select="parent::*" - mode="toc.for.section"/> - </xsl:when> - <xsl:when test="parent::article"> - <xsl:apply-templates select="parent::*" - mode="toc.for.component"/> - </xsl:when> - <xsl:when test="parent::book - or parent::part"> - <xsl:apply-templates select="parent::*" - mode="toc.for.division"/> - </xsl:when> - <xsl:when test="parent::set"> - <xsl:apply-templates select="parent::*" - mode="toc.for.set"/> - </xsl:when> - <!-- there aren't any other contexts that allow toc --> - <xsl:otherwise> - <xsl:message> - <xsl:text>I don't know how to make a TOC in this context!</xsl:text> - </xsl:message> - </xsl:otherwise> - </xsl:choose> - </fo:flow> - </fo:page-sequence> - </xsl:if> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="tocpart|tocchap - |toclevel1|toclevel2|toclevel3|toclevel4|toclevel5"> - <xsl:apply-templates select="tocentry"/> - <xsl:if test="tocchap|toclevel1|toclevel2|toclevel3|toclevel4|toclevel5"> - <fo:block start-indent="{count(ancestor::*)*2}pc"> - <xsl:apply-templates select="tocchap|toclevel1|toclevel2|toclevel3|toclevel4|toclevel5"/> - </fo:block> - </xsl:if> -</xsl:template> - -<xsl:template match="tocentry|tocfront|tocback"> - <fo:block text-align-last="justify" - end-indent="2pc" - last-line-end-indent="-2pc"> - <fo:inline keep-with-next.within-line="always"> - <xsl:choose> - <xsl:when test="@linkend"> - <fo:basic-link internal-destination="{@linkend}"> - <xsl:apply-templates/> - </fo:basic-link> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates/> - </xsl:otherwise> - </xsl:choose> - </fo:inline> - - <xsl:choose> - <xsl:when test="@linkend"> - <fo:inline keep-together.within-line="always"> - <xsl:text> </xsl:text> - <fo:leader leader-pattern="dots" - keep-with-next.within-line="always"/> - <xsl:text> </xsl:text> - <fo:basic-link internal-destination="{@linkend}"> - <xsl:choose> - <xsl:when test="@pagenum"> - <xsl:value-of select="@pagenum"/> - </xsl:when> - <xsl:otherwise> - <fo:page-number-citation ref-id="{@linkend}"/> - </xsl:otherwise> - </xsl:choose> - </fo:basic-link> - </fo:inline> - </xsl:when> - <xsl:when test="@pagenum"> - <fo:inline keep-together.within-line="always"> - <xsl:text> </xsl:text> - <fo:leader leader-pattern="dots" - keep-with-next.within-line="always"/> - <xsl:text> </xsl:text> - <xsl:value-of select="@pagenum"/> - </fo:inline> - </xsl:when> - <xsl:otherwise> - <!-- just the leaders, what else can I do? --> - <fo:inline keep-together.within-line="always"> - <xsl:text> </xsl:text> - <fo:leader leader-pattern="space" - keep-with-next.within-line="always"/> - </fo:inline> - </xsl:otherwise> - </xsl:choose> - </fo:block> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="*" mode="toc.for.section"> -<!-- - <xsl:call-template name="section.toc"/> ---> -</xsl:template> - -<xsl:template match="*" mode="toc.for.component"> - <xsl:call-template name="component.toc"/> -</xsl:template> - -<xsl:template match="*" mode="toc.for.section"> -<!-- - <xsl:call-template name="section.toc"/> ---> -</xsl:template> - -<xsl:template match="*" mode="toc.for.division"> - <xsl:call-template name="division.toc"/> -</xsl:template> - -<xsl:template match="*" mode="toc.for.set"> -<!-- - <xsl:call-template name="set.toc"/> ---> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="lot|lotentry"> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/verbatim.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/verbatim.xsl deleted file mode 100644 index 56b4240c1..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/verbatim.xsl +++ /dev/null @@ -1,417 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:sverb="http://nwalsh.com/xslt/ext/com.nwalsh.saxon.Verbatim" - xmlns:xverb="com.nwalsh.xalan.Verbatim" - xmlns:lxslt="http://xml.apache.org/xslt" - xmlns:exsl="http://exslt.org/common" - exclude-result-prefixes="sverb xverb lxslt exsl" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<xsl:include href="../highlighting/common.xsl"/> -<xsl:include href="highlight.xsl"/> - -<lxslt:component prefix="xverb" - functions="numberLines"/> - -<xsl:template match="programlisting|screen|synopsis"> - <xsl:param name="suppress-numbers" select="'0'"/> - <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable> - - <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:call-template name="apply-highlighting"/> - </xsl:with-param> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="apply-highlighting"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$shade.verbatim != 0"> - <fo:block id="{$id}" - xsl:use-attribute-sets="monospace.verbatim.properties shade.verbatim.style"> - <xsl:choose> - <xsl:when test="$hyphenate.verbatim != 0 and function-available('exsl:node-set')"> - <xsl:apply-templates select="exsl:node-set($content)" mode="hyphenate.verbatim"/> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$content"/> - </xsl:otherwise> - </xsl:choose> - </fo:block> - </xsl:when> - <xsl:otherwise> - <fo:block id="{$id}" - xsl:use-attribute-sets="monospace.verbatim.properties"> - <xsl:choose> - <xsl:when test="$hyphenate.verbatim != 0 and function-available('exsl:node-set')"> - <xsl:apply-templates select="exsl:node-set($content)" mode="hyphenate.verbatim"/> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$content"/> - </xsl:otherwise> - </xsl:choose> - </fo:block> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="literallayout"> - <xsl:param name="suppress-numbers" select="'0'"/> - - <xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable> - - <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> - - <xsl:choose> - <xsl:when test="@class='monospaced'"> - <xsl:choose> - <xsl:when test="$shade.verbatim != 0"> - <fo:block id="{$id}" - xsl:use-attribute-sets="monospace.verbatim.properties shade.verbatim.style"> - - <xsl:copy-of select="$content"/> - </fo:block> - </xsl:when> - <xsl:otherwise> - <fo:block id="{$id}" - xsl:use-attribute-sets="monospace.verbatim.properties"> - <xsl:copy-of select="$content"/> - </fo:block> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:choose> - <xsl:when test="$shade.verbatim != 0"> - <fo:block id="{$id}" - xsl:use-attribute-sets="verbatim.properties shade.verbatim.style"> - <xsl:copy-of select="$content"/> - </fo:block> - </xsl:when> - <xsl:otherwise> - <fo:block id="{$id}" - xsl:use-attribute-sets="verbatim.properties"> - <xsl:copy-of select="$content"/> - </fo:block> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<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 xsl:use-attribute-sets="verbatim.properties"> - <xsl:copy-of select="$content"/> - </fo:block> -</xsl:template> - -<xsl:template name="number.rtf.lines"> - <xsl:param name="rtf" select="''"/> - <xsl:param name="pi.context" select="."/> - - <!-- Save the global values --> - <xsl:variable name="global.linenumbering.everyNth" - select="$linenumbering.everyNth"/> - - <xsl:variable name="global.linenumbering.separator" - select="$linenumbering.separator"/> - - <xsl:variable name="global.linenumbering.width" - select="$linenumbering.width"/> - - <!-- Extract the <?dbfo linenumbering.*?> PI values --> - <xsl:variable name="pi.linenumbering.everyNth"> - <xsl:call-template name="pi.dbfo_linenumbering.everyNth"> - <xsl:with-param name="node" select="$pi.context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="pi.linenumbering.separator"> - <xsl:call-template name="pi.dbfo_linenumbering.separator"> - <xsl:with-param name="node" select="$pi.context"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="pi.linenumbering.width"> - <xsl:call-template name="pi.dbfo_linenumbering.width"> - <xsl:with-param name="node" select="$pi.context"/> - </xsl:call-template> - </xsl:variable> - - <!-- Construct the 'in-context' values --> - <xsl:variable name="linenumbering.everyNth"> - <xsl:choose> - <xsl:when test="$pi.linenumbering.everyNth != ''"> - <xsl:value-of select="$pi.linenumbering.everyNth"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$global.linenumbering.everyNth"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="linenumbering.separator"> - <xsl:choose> - <xsl:when test="$pi.linenumbering.separator != ''"> - <xsl:value-of select="$pi.linenumbering.separator"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$global.linenumbering.separator"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="linenumbering.width"> - <xsl:choose> - <xsl:when test="$pi.linenumbering.width != ''"> - <xsl:value-of select="$pi.linenumbering.width"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$global.linenumbering.width"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="linenumbering.startinglinenumber"> - <xsl:choose> - <xsl:when test="$pi.context/@startinglinenumber"> - <xsl:value-of select="$pi.context/@startinglinenumber"/> - </xsl:when> - <xsl:when test="$pi.context/@continuation='continues'"> - <xsl:variable name="lastLine"> - <xsl:choose> - <xsl:when test="$pi.context/self::programlisting"> - <xsl:call-template name="lastLineNumber"> - <xsl:with-param name="listings" - select="preceding::programlisting[@linenumbering='numbered']"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="$pi.context/self::screen"> - <xsl:call-template name="lastLineNumber"> - <xsl:with-param name="listings" - select="preceding::screen[@linenumbering='numbered']"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="$pi.context/self::literallayout"> - <xsl:call-template name="lastLineNumber"> - <xsl:with-param name="listings" - select="preceding::literallayout[@linenumbering='numbered']"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="$pi.context/self::address"> - <xsl:call-template name="lastLineNumber"> - <xsl:with-param name="listings" - select="preceding::address[@linenumbering='numbered']"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="$pi.context/self::synopsis"> - <xsl:call-template name="lastLineNumber"> - <xsl:with-param name="listings" - select="preceding::synopsis[@linenumbering='numbered']"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:message> - <xsl:text>Unexpected verbatim environment: </xsl:text> - <xsl:value-of select="local-name(.)"/> - </xsl:message> - <xsl:value-of select="0"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:value-of select="$lastLine + 1"/> - </xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:choose> - <xsl:when test="function-available('sverb:numberLines')"> - <xsl:copy-of select="sverb:numberLines($rtf)"/> - </xsl:when> - <xsl:when test="function-available('xverb:numberLines')"> - <xsl:copy-of select="xverb:numberLines($rtf)"/> - </xsl:when> - <xsl:otherwise> - <xsl:message terminate="yes"> - <xsl:text>No numberLines function available.</xsl:text> - </xsl:message> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ======================================================================== --> - -<xsl:template name="lastLineNumber"> - <xsl:param name="listings"/> - <xsl:param name="number" select="0"/> - - <xsl:variable name="lines"> - <xsl:call-template name="countLines"> - <xsl:with-param name="listing" select="string($listings[1])"/> - </xsl:call-template> - </xsl:variable> - - <xsl:choose> - <xsl:when test="not($listings)"> - <xsl:value-of select="$number"/> - </xsl:when> - <xsl:when test="$listings[1]/@startinglinenumber"> - <xsl:value-of select="$number + $listings[1]/@startinglinenumber + $lines - 1"/> - </xsl:when> - <xsl:when test="$listings[1]/@continuation='continues'"> - <xsl:call-template name="lastLineNumber"> - <xsl:with-param name="listings" select="listings[position() > 1]"/> - <xsl:with-param name="number" select="$number + $lines"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$lines"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="countLines"> - <xsl:param name="listing"/> - <xsl:param name="count" select="1"/> - - <xsl:choose> - <xsl:when test="contains($listing, ' ')"> - <xsl:call-template name="countLines"> - <xsl:with-param name="listing" select="substring-after($listing, ' ')"/> - <xsl:with-param name="count" select="$count + 1"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$count"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- ======================================================================== --> - -<xsl:template match="node()|@*" mode="hyphenate.verbatim"> - <xsl:copy> - <xsl:copy-of select="@*"/> - <xsl:apply-templates mode="hyphenate.verbatim"/> - </xsl:copy> -</xsl:template> - -<xsl:template match="text()" mode="hyphenate.verbatim" priority="2"> - <xsl:call-template name="hyphenate.verbatim.block"> - <xsl:with-param name="content" select="."/> - </xsl:call-template> -</xsl:template> - -<xsl:template name="hyphenate.verbatim.block"> - <xsl:param name="content" select="''"/> - <xsl:param name="count" select="1"/> - - <!-- recurse on lines first to keep recursion depth reasonable --> - <xsl:choose> - <xsl:when test="contains($content, '
')"> - <xsl:variable name="line" select="substring-before($content, '
')"/> - <xsl:variable name="rest" select="substring-after($content, '
')"/> - <xsl:call-template name="hyphenate.verbatim"> - <xsl:with-param name="content" select="concat($line, '
')"/> - </xsl:call-template> - <xsl:call-template name="hyphenate.verbatim.block"> - <xsl:with-param name="content" select="$rest"/> - <xsl:with-param name="count" select="$count + 1"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="hyphenate.verbatim"> - <xsl:with-param name="content" select="$content"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - -</xsl:template> - -<xsl:template name="hyphenate.verbatim"> - <xsl:param name="content"/> - <xsl:variable name="head" select="substring($content, 1, 1)"/> - <xsl:variable name="tail" select="substring($content, 2)"/> - <xsl:choose> - <!-- Place soft-hyphen after space or non-breakable space. --> - <xsl:when test="$head = ' ' or $head = ' '"> - <xsl:text> </xsl:text> - <xsl:text>­</xsl:text> - </xsl:when> - <xsl:when test="$hyphenate.verbatim.characters != '' and - translate($head, $hyphenate.verbatim.characters, '') = '' and not($tail = '')"> - <xsl:value-of select="$head"/> - <xsl:text>­</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$head"/> - </xsl:otherwise> - </xsl:choose> - <xsl:if test="$tail"> - <xsl:call-template name="hyphenate.verbatim"> - <xsl:with-param name="content" select="$tail"/> - </xsl:call-template> - </xsl:if> -</xsl:template> - - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/xep.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/xep.xsl deleted file mode 100644 index 437842e41..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/xep.xsl +++ /dev/null @@ -1,180 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:rx="http://www.renderx.com/XSL/Extensions" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - (c) Stephane Bline Peregrine Systems 2001 - Implementation of xep extensions: - * Pdf bookmarks (based on the XEP 2.5 implementation) - * Document information (XEP 2.5 meta information extensions) - ******************************************************************** --> - -<!-- FIXME: Norm, I changed things so that the top-level element (book or set) - does not appear in the TOC. Is this the right thing? --> - -<xsl:template name="xep-document-information"> - <rx:meta-info> - <xsl:variable name="authors" - select="(//author|//editor|//corpauthor|//authorgroup)[1]"/> - <xsl:if test="$authors"> - <xsl:variable name="author"> - <xsl:choose> - <xsl:when test="$authors[self::authorgroup]"> - <xsl:call-template name="person.name.list"> - <xsl:with-param name="person.list" - select="$authors/*[self::author|self::corpauthor| - self::othercredit|self::editor]"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="$authors[self::corpauthor]"> - <xsl:value-of select="$authors"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="person.name"> - <xsl:with-param name="node" select="$authors"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - <xsl:element name="rx:meta-field"> - <xsl:attribute name="name">author</xsl:attribute> - <xsl:attribute name="value"> - <xsl:value-of select="normalize-space($author)"/> - </xsl:attribute> - </xsl:element> - </xsl:if> - - <xsl:variable name="title"> - <xsl:apply-templates select="/*[1]" mode="label.markup"/> - <xsl:apply-templates select="/*[1]" mode="title.markup"/> - </xsl:variable> - - <xsl:element name="rx:meta-field"> - <xsl:attribute name="name">creator</xsl:attribute> - <xsl:attribute name="value"> - <xsl:text>DocBook </xsl:text> - <xsl:value-of select="$DistroTitle"/> - <xsl:text> V</xsl:text> - <xsl:value-of select="$VERSION"/> - </xsl:attribute> - </xsl:element> - - <xsl:element name="rx:meta-field"> - <xsl:attribute name="name">title</xsl:attribute> - <xsl:attribute name="value"> - <xsl:value-of select="normalize-space($title)"/> - </xsl:attribute> - </xsl:element> - - <xsl:if test="//keyword"> - <xsl:element name="rx:meta-field"> - <xsl:attribute name="name">keywords</xsl:attribute> - <xsl:attribute name="value"> - <xsl:for-each select="//keyword"> - <xsl:value-of select="normalize-space(.)"/> - <xsl:if test="position() != last()"> - <xsl:text>, </xsl:text> - </xsl:if> - </xsl:for-each> - </xsl:attribute> - </xsl:element> - </xsl:if> - - <xsl:if test="//subjectterm"> - <xsl:element name="rx:meta-field"> - <xsl:attribute name="name">subject</xsl:attribute> - <xsl:attribute name="value"> - <xsl:for-each select="//subjectterm"> - <xsl:value-of select="normalize-space(.)"/> - <xsl:if test="position() != last()"> - <xsl:text>, </xsl:text> - </xsl:if> - </xsl:for-each> - </xsl:attribute> - </xsl:element> - </xsl:if> - </rx:meta-info> -</xsl:template> - -<!-- ******************************************************************** - Pdf bookmarks - ******************************************************************** --> - -<xsl:template match="*" mode="xep.outline"> - <xsl:apply-templates select="*" mode="xep.outline"/> -</xsl:template> - -<xsl:template match="set|book|part|reference|preface|chapter|appendix|article - |glossary|bibliography|index|setindex - |refentry|refsynopsisdiv - |refsect1|refsect2|refsect3|refsection - |sect1|sect2|sect3|sect4|sect5|section" - mode="xep.outline"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <xsl:variable name="bookmark-label"> - <xsl:apply-templates select="." mode="object.title.markup"/> - </xsl:variable> - - <!-- Put the root element bookmark at the same level as its children --> - <!-- If the object is a set or book, generate a bookmark for the toc --> - - <xsl:choose> - <xsl:when test="parent::*"> - <rx:bookmark internal-destination="{$id}"> - <rx:bookmark-label> - <xsl:value-of select="normalize-space($bookmark-label)"/> - </rx:bookmark-label> - <xsl:apply-templates select="*" mode="xep.outline"/> - </rx:bookmark> - </xsl:when> - <xsl:otherwise> - <xsl:if test="$bookmark-label != ''"> - <rx:bookmark internal-destination="{$id}"> - <rx:bookmark-label> - <xsl:value-of select="normalize-space($bookmark-label)"/> - </rx:bookmark-label> - </rx:bookmark> - </xsl:if> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - <xsl:if test="contains($toc.params, 'toc') - and set|book|part|reference|section|sect1|refentry - |article|bibliography|glossary|chapter - |appendix"> - <rx:bookmark internal-destination="toc...{$id}"> - <rx:bookmark-label> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'TableofContents'"/> - </xsl:call-template> - </rx:bookmark-label> - </rx:bookmark> - </xsl:if> - <xsl:apply-templates select="*" mode="xep.outline"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="xep-pis"> - <xsl:if test="$crop.marks != 0"> - <xsl:processing-instruction name="xep-pdf-crop-mark-width"><xsl:value-of select="$crop.mark.width"/></xsl:processing-instruction> - <xsl:processing-instruction name="xep-pdf-crop-offset"><xsl:value-of select="$crop.mark.offset"/></xsl:processing-instruction> - <xsl:processing-instruction name="xep-pdf-bleed"><xsl:value-of select="$crop.mark.bleed"/></xsl:processing-instruction> - </xsl:if> - - <xsl:call-template name="user-xep-pis"/> -</xsl:template> - -<!-- Placeholder for user defined PIs --> -<xsl:template name="user-xep-pis"/> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/xref.xsl b/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/xref.xsl deleted file mode 100644 index 2b0d813df..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-snapshot/fo/xref.xsl +++ /dev/null @@ -1,1440 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:exsl="http://exslt.org/common" - xmlns:xlink='http://www.w3.org/1999/xlink' - exclude-result-prefixes="exsl" - version='1.0'> - -<!-- ******************************************************************** - $Id$ - ******************************************************************** - - This file is part of the XSL DocBook Stylesheet distribution. - See ../README or http://docbook.sf.net/release/xsl/current/ for - copyright and other information. - - ******************************************************************** --> - -<!-- Use internal variable for olink xlink role for consistency --> -<xsl:variable - name="xolink.role">http://docbook.org/xlink/role/olink</xsl:variable> - -<!-- ==================================================================== --> - -<xsl:template match="anchor"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <fo:inline id="{$id}"/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="xref" name="xref"> - <xsl:param name="xhref" select="@xlink:href"/> - <!-- is the @xlink:href a local idref link? --> - <xsl:param name="xlink.idref"> - <xsl:if test="starts-with($xhref,'#') - and (not(contains($xhref,'(')) - or starts-with($xhref, '#xpointer(id('))"> - <xsl:call-template name="xpointer.idref"> - <xsl:with-param name="xpointer" select="$xhref"/> - </xsl:call-template> - </xsl:if> - </xsl:param> - <xsl:param name="xlink.targets" select="key('id',$xlink.idref)"/> - <xsl:param name="linkend.targets" select="key('id',@linkend)"/> - <xsl:param name="target" select="($xlink.targets | $linkend.targets)[1]"/> - <xsl:param name="refelem" select="local-name($target)"/> - - <xsl:variable name="xrefstyle"> - <xsl:choose> - <xsl:when test="@role and not(@xrefstyle) - and $use.role.as.xrefstyle != 0"> - <xsl:value-of select="@role"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="@xrefstyle"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="content"> - <fo:inline xsl:use-attribute-sets="xref.properties"> - <xsl:choose> - <xsl:when test="@endterm"> - <xsl:variable name="etargets" select="key('id',@endterm)"/> - <xsl:variable name="etarget" select="$etargets[1]"/> - <xsl:choose> - <xsl:when test="count($etarget) = 0"> - <xsl:message> - <xsl:value-of select="count($etargets)"/> - <xsl:text>Endterm points to nonexistent ID: </xsl:text> - <xsl:value-of select="@endterm"/> - </xsl:message> - <xsl:text>???</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="$etarget" mode="endterm"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - - <xsl:when test="$target/@xreflabel"> - <xsl:call-template name="xref.xreflabel"> - <xsl:with-param name="target" select="$target"/> - </xsl:call-template> - </xsl:when> - - <xsl:when test="$target"> - <xsl:if test="not(parent::citation)"> - <xsl:apply-templates select="$target" mode="xref-to-prefix"/> - </xsl:if> - - <xsl:apply-templates select="$target" mode="xref-to"> - <xsl:with-param name="referrer" select="."/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - </xsl:apply-templates> - - <xsl:if test="not(parent::citation)"> - <xsl:apply-templates select="$target" mode="xref-to-suffix"/> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <xsl:message> - <xsl:text>ERROR: xref linking to </xsl:text> - <xsl:value-of select="@linkend|@xlink:href"/> - <xsl:text> has no generated link text.</xsl:text> - </xsl:message> - <xsl:text>???</xsl:text> - </xsl:otherwise> - </xsl:choose> - </fo:inline> - </xsl:variable> - - <!-- Convert it into an active link --> - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="content" select="$content"/> - </xsl:call-template> - - <!-- Add standard page reference? --> - <xsl:choose> - <xsl:when test="not($target)"> - <!-- page numbers only for local targets --> - </xsl:when> - <xsl:when test="starts-with(normalize-space($xrefstyle), 'select:') - and contains($xrefstyle, 'nopage')"> - <!-- negative xrefstyle in instance turns it off --> - </xsl:when> - <!-- positive xrefstyle already handles it --> - <xsl:when test="not(starts-with(normalize-space($xrefstyle), 'select:') - and (contains($xrefstyle, 'page') - or contains($xrefstyle, 'Page'))) - and ( $insert.xref.page.number = 'yes' - or $insert.xref.page.number = '1') - or local-name($target) = 'para'"> - <xsl:apply-templates select="$target" mode="page.citation"> - <xsl:with-param name="id" select="$target/@id|$target/@xml:id"/> - </xsl:apply-templates> - </xsl:when> - </xsl:choose> -</xsl:template> - -<!-- ==================================================================== --> - -<!-- Handled largely like an xref --> -<!-- To be done: add support for begin, end, and units attributes --> -<xsl:template match="biblioref" name="biblioref"> - <xsl:variable name="targets" select="key('id',@linkend)"/> - <xsl:variable name="target" select="$targets[1]"/> - <xsl:variable name="refelem" select="local-name($target)"/> - - <xsl:call-template name="check.id.unique"> - <xsl:with-param name="linkend" select="@linkend"/> - </xsl:call-template> - - <xsl:choose> - <xsl:when test="$refelem=''"> - <xsl:message> - <xsl:text>XRef to nonexistent id: </xsl:text> - <xsl:value-of select="@linkend"/> - </xsl:message> - <xsl:text>???</xsl:text> - </xsl:when> - - <xsl:when test="@endterm"> - <fo:basic-link internal-destination="{@linkend}" - xsl:use-attribute-sets="xref.properties"> - <xsl:variable name="etargets" select="key('id',@endterm)"/> - <xsl:variable name="etarget" select="$etargets[1]"/> - <xsl:choose> - <xsl:when test="count($etarget) = 0"> - <xsl:message> - <xsl:value-of select="count($etargets)"/> - <xsl:text>Endterm points to nonexistent ID: </xsl:text> - <xsl:value-of select="@endterm"/> - </xsl:message> - <xsl:text>???</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="$etarget" mode="endterm"/> - </xsl:otherwise> - </xsl:choose> - </fo:basic-link> - </xsl:when> - - <xsl:when test="$target/@xreflabel"> - <fo:basic-link internal-destination="{@linkend}" - xsl:use-attribute-sets="xref.properties"> - <xsl:call-template name="xref.xreflabel"> - <xsl:with-param name="target" select="$target"/> - </xsl:call-template> - </fo:basic-link> - </xsl:when> - - <xsl:otherwise> - <xsl:if test="not(parent::citation)"> - <xsl:apply-templates select="$target" mode="xref-to-prefix"/> - </xsl:if> - - <fo:basic-link internal-destination="{@linkend}" - xsl:use-attribute-sets="xref.properties"> - <xsl:apply-templates select="$target" mode="xref-to"> - <xsl:with-param name="referrer" select="."/> - <xsl:with-param name="xrefstyle"> - <xsl:choose> - <xsl:when test="@role and not(@xrefstyle) and $use.role.as.xrefstyle != 0"> - <xsl:value-of select="@role"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="@xrefstyle"/> - </xsl:otherwise> - </xsl:choose> - </xsl:with-param> - </xsl:apply-templates> - </fo:basic-link> - - <xsl:if test="not(parent::citation)"> - <xsl:apply-templates select="$target" mode="xref-to-suffix"/> - </xsl:if> - </xsl:otherwise> - </xsl:choose> - -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="*" mode="endterm"> - <!-- Process the children of the endterm element --> - <xsl:variable name="endterm"> - <xsl:apply-templates select="child::node()"/> - </xsl:variable> - - <xsl:choose> - <xsl:when test="function-available('exsl:node-set')"> - <xsl:apply-templates select="exsl:node-set($endterm)" mode="remove-ids"/> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$endterm"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="*" mode="remove-ids"> - <xsl:copy> - <xsl:for-each select="@*"> - <xsl:choose> - <xsl:when test="name(.) != 'id'"> - <xsl:copy/> - </xsl:when> - <xsl:otherwise> - <xsl:message>removing <xsl:value-of select="name(.)"/></xsl:message> - </xsl:otherwise> - </xsl:choose> - </xsl:for-each> - <xsl:apply-templates mode="remove-ids"/> - </xsl:copy> -</xsl:template> - -<!--- ==================================================================== --> - -<xsl:template match="*" mode="xref-to-prefix"/> -<xsl:template match="*" mode="xref-to-suffix"/> - -<xsl:template match="*" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - - <xsl:if test="$verbose != 0"> - <xsl:message> - <xsl:text>Don't know what gentext to create for xref to: "</xsl:text> - <xsl:value-of select="name(.)"/> - <xsl:text>"</xsl:text> - </xsl:message> - <xsl:text>???</xsl:text> - </xsl:if> -</xsl:template> - -<xsl:template match="title" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <!-- if you xref to a title, xref to the parent... --> - <xsl:choose> - <!-- FIXME: how reliable is this? --> - <xsl:when test="contains(local-name(parent::*), 'info')"> - <xsl:apply-templates select="parent::*[2]" mode="xref-to"> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="parent::*" mode="xref-to"> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="abstract|article|authorblurb|bibliodiv|bibliomset - |biblioset|blockquote|calloutlist|caution|colophon - |constraintdef|formalpara|glossdiv|important|indexdiv - |itemizedlist|legalnotice|lot|msg|msgexplan|msgmain - |msgrel|msgset|msgsub|note|orderedlist|partintro - |productionset|qandadiv|refsynopsisdiv|segmentedlist - |set|setindex|sidebar|tip|toc|variablelist|warning" - mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <!-- catch-all for things with (possibly optional) titles --> - <xsl:apply-templates select="." mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="author|editor|othercredit|personname" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:call-template name="person.name"/> -</xsl:template> - -<xsl:template match="authorgroup" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:call-template name="person.name.list"/> -</xsl:template> - -<xsl:template match="figure|example|table|equation" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="." mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="procedure" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose"/> - - <xsl:apply-templates select="." mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="task" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose"/> - - <xsl:apply-templates select="." mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="cmdsynopsis" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="(.//command)[1]" mode="xref"/> -</xsl:template> - -<xsl:template match="funcsynopsis" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="(.//function)[1]" mode="xref"/> -</xsl:template> - -<xsl:template match="dedication|preface|chapter|appendix" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="." mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="bibliography" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="." mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="biblioentry|bibliomixed" mode="xref-to-prefix"> - <xsl:text>[</xsl:text> -</xsl:template> - -<xsl:template match="biblioentry|bibliomixed" mode="xref-to-suffix"> - <xsl:text>]</xsl:text> -</xsl:template> - -<xsl:template match="biblioentry|bibliomixed" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <!-- handles both biblioentry and bibliomixed --> - <xsl:choose> - <xsl:when test="string(.) = ''"> - <xsl:variable name="bib" select="document($bibliography.collection,.)"/> - <xsl:variable name="id" select="(@id|@xml:id)[1]"/> - <xsl:variable name="entry" select="$bib/bibliography/ - *[@id=$id or @xml:id=$id][1]"/> - <xsl:choose> - <xsl:when test="$entry"> - <xsl:choose> - <xsl:when test="$bibliography.numbered != 0"> - <xsl:number from="bibliography" count="biblioentry|bibliomixed" - level="any" format="1"/> - </xsl:when> - <xsl:when test="local-name($entry/*[1]) = 'abbrev'"> - <xsl:apply-templates select="$entry/*[1]"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="(@id|@xml:id)[1]"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:message> - <xsl:text>No bibliography entry: </xsl:text> - <xsl:value-of select="$id"/> - <xsl:text> found in </xsl:text> - <xsl:value-of select="$bibliography.collection"/> - </xsl:message> - <xsl:value-of select="(@id|@xml:id)[1]"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:choose> - <xsl:when test="$bibliography.numbered != 0"> - <xsl:number from="bibliography" count="biblioentry|bibliomixed" - level="any" format="1"/> - </xsl:when> - <xsl:when test="local-name(*[1]) = 'abbrev'"> - <xsl:apply-templates select="*[1]"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="(@id|@xml:id)[1]"/> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="glossary" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="." mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="glossentry" mode="xref-to"> - <xsl:choose> - <xsl:when test="$glossentry.show.acronym = 'primary'"> - <xsl:choose> - <xsl:when test="acronym|abbrev"> - <xsl:apply-templates select="(acronym|abbrev)[1]"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="glossterm[1]" mode="xref-to"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="glossterm[1]" mode="xref-to"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="glossterm" mode="xref-to"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="index" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="." mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="listitem" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="." mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="section|simplesect - |sect1|sect2|sect3|sect4|sect5 - |refsect1|refsect2|refsect3|refsection" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="." mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> - <!-- What about "in Chapter X"? --> -</xsl:template> - -<xsl:template match="bridgehead" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="." mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> - <!-- What about "in Chapter X"? --> -</xsl:template> - -<xsl:template match="qandaset" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="." mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="qandadiv" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="." mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="qandaentry" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="question[1]" mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="question|answer" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="." mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="part|reference" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="." mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="refentry" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:choose> - <xsl:when test="refmeta/refentrytitle"> - <xsl:apply-templates select="refmeta/refentrytitle"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="refnamediv/refname[1]"/> - </xsl:otherwise> - </xsl:choose> - <xsl:apply-templates select="refmeta/manvolnum"/> -</xsl:template> - -<xsl:template match="refnamediv" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="refname[1]" mode="xref-to"> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="refname" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates mode="xref-to"> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="step" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'Step'"/> - </xsl:call-template> - <xsl:text> </xsl:text> - <xsl:apply-templates select="." mode="number"/> -</xsl:template> - -<xsl:template match="varlistentry" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="term[1]" mode="xref-to"> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="varlistentry/term" mode="xref-to"> - <xsl:param name="verbose" select="1"/> - <!-- to avoid the comma that will be generated if there are several terms --> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="co" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="." mode="callout-bug"/> -</xsl:template> - -<xsl:template match="area|areaset" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - - <xsl:call-template name="callout-bug"> - <xsl:with-param name="conum"> - <xsl:apply-templates select="." mode="conumber"/> - </xsl:with-param> - </xsl:call-template> -</xsl:template> - -<xsl:template match="book" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose" select="1"/> - - <xsl:apply-templates select="." mode="object.xref.markup"> - <xsl:with-param name="purpose" select="'xref'"/> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<xsl:template match="para" mode="xref-to"> - <xsl:param name="referrer"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="verbose"/> - - <xsl:variable name="context" select="(ancestor::simplesect - |ancestor::section - |ancestor::sect1 - |ancestor::sect2 - |ancestor::sect3 - |ancestor::sect4 - |ancestor::sect5 - |ancestor::refsection - |ancestor::refsect1 - |ancestor::refsect2 - |ancestor::refsect3 - |ancestor::chapter - |ancestor::appendix - |ancestor::preface - |ancestor::partintro - |ancestor::dedication - |ancestor::colophon - |ancestor::bibliography - |ancestor::index - |ancestor::glossary - |ancestor::glossentry - |ancestor::listitem - |ancestor::varlistentry)[last()]"/> - - <xsl:apply-templates select="$context" mode="xref-to"> - <xsl:with-param name="xrefstyle" select="$xrefstyle"/> - <xsl:with-param name="referrer" select="$referrer"/> - <xsl:with-param name="verbose" select="$verbose"/> - </xsl:apply-templates> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="link" name="link"> - <xsl:param name="linkend" select="@linkend"/> - <xsl:param name="targets" select="key('id',$linkend)"/> - <xsl:param name="target" select="$targets[1]"/> - - <xsl:variable name="xrefstyle"> - <xsl:choose> - <xsl:when test="@role and not(@xrefstyle) - and $use.role.as.xrefstyle != 0"> - <xsl:value-of select="@role"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="@xrefstyle"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="content"> - <fo:inline xsl:use-attribute-sets="xref.properties"> - <xsl:choose> - <xsl:when test="count(child::node()) > 0"> - <!-- If it has content, use it --> - <xsl:apply-templates/> - </xsl:when> - <!-- look for an endterm --> - <xsl:when test="@endterm"> - <xsl:variable name="etargets" select="key('id',@endterm)"/> - <xsl:variable name="etarget" select="$etargets[1]"/> - <xsl:choose> - <xsl:when test="count($etarget) = 0"> - <xsl:message> - <xsl:value-of select="count($etargets)"/> - <xsl:text>Endterm points to nonexistent ID: </xsl:text> - <xsl:value-of select="@endterm"/> - </xsl:message> - <xsl:text>???</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="$etarget" mode="endterm"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <!-- Use the xlink:href if no other text --> - <xsl:when test="@xlink:href"> - <xsl:value-of select="@xlink:href"/> - </xsl:when> - <xsl:otherwise> - <xsl:message> - <xsl:text>Link element has no content and no Endterm. </xsl:text> - <xsl:text>Nothing to show in the link to </xsl:text> - <xsl:value-of select="$target"/> - </xsl:message> - <xsl:text>???</xsl:text> - </xsl:otherwise> - </xsl:choose> - </fo:inline> - </xsl:variable> - - <xsl:call-template name="simple.xlink"> - <xsl:with-param name="node" select="."/> - <xsl:with-param name="linkend" select="$linkend"/> - <xsl:with-param name="content" select="$content"/> - </xsl:call-template> - - <!-- Add standard page reference? --> - <xsl:choose> - <!-- page numbering on link only enabled for @linkend --> - <!-- There is no link element in DB5 with xlink:href --> - <xsl:when test="not($linkend)"> - </xsl:when> - <!-- negative xrefstyle in instance turns it off --> - <xsl:when test="starts-with(normalize-space($xrefstyle), 'select:') - and contains($xrefstyle, 'nopage')"> - </xsl:when> - <xsl:when test="(starts-with(normalize-space($xrefstyle), 'select:') - and $insert.link.page.number = 'maybe' - and (contains($xrefstyle, 'page') - or contains($xrefstyle, 'Page'))) - or ( $insert.link.page.number = 'yes' - or $insert.link.page.number = '1') - or local-name($target) = 'para'"> - <xsl:apply-templates select="$target" mode="page.citation"> - <xsl:with-param name="id" select="$linkend"/> - </xsl:apply-templates> - </xsl:when> - </xsl:choose> -</xsl:template> - -<xsl:template match="ulink" name="ulink"> - <xsl:param name="url" select="@url"/> - - <xsl:variable name ="ulink.url"> - <xsl:call-template name="fo-external-image"> - <xsl:with-param name="filename" select="$url"/> - </xsl:call-template> - </xsl:variable> - - <fo:basic-link xsl:use-attribute-sets="xref.properties" - external-destination="{$ulink.url}"> - <xsl:choose> - <xsl:when test="count(child::node())=0"> - <xsl:call-template name="hyphenate-url"> - <xsl:with-param name="url" select="$url"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates/> - </xsl:otherwise> - </xsl:choose> - </fo:basic-link> - - <xsl:if test="count(child::node()) != 0 - and string(.) != $url - and $ulink.show != 0"> - <!-- yes, show the URI --> - <xsl:choose> - <xsl:when test="$ulink.footnotes != 0 and not(ancestor::footnote)"> - <fo:footnote> - <xsl:call-template name="ulink.footnote.number"/> - <fo:footnote-body xsl:use-attribute-sets="footnote.properties"> - <fo:block> - <xsl:call-template name="ulink.footnote.number"/> - <xsl:text> </xsl:text> - <fo:basic-link external-destination="{$ulink.url}"> - <xsl:value-of select="$url"/> - </fo:basic-link> - </fo:block> - </fo:footnote-body> - </fo:footnote> - </xsl:when> - <xsl:otherwise> - <fo:inline hyphenate="false"> - <xsl:text> [</xsl:text> - <fo:basic-link external-destination="{$ulink.url}"> - <xsl:call-template name="hyphenate-url"> - <xsl:with-param name="url" select="$url"/> - </xsl:call-template> - </fo:basic-link> - <xsl:text>]</xsl:text> - </fo:inline> - </xsl:otherwise> - </xsl:choose> - </xsl:if> - -</xsl:template> - -<xsl:template name="ulink.footnote.number"> - <fo:inline xsl:use-attribute-sets="footnote.mark.properties"> - <xsl:choose> - <xsl:when test="$fop.extensions != 0"> - <xsl:attribute name="vertical-align">super</xsl:attribute> - </xsl:when> - <xsl:otherwise> - <xsl:attribute name="baseline-shift">super</xsl:attribute> - </xsl:otherwise> - </xsl:choose> - <xsl:variable name="fnum"> - <!-- FIXME: list in @from is probably not complete --> - <xsl:number level="any" - from="chapter|appendix|preface|article|refentry|bibliography[not(parent::article)]" - count="footnote[not(@label)][not(ancestor::tgroup)]|ulink[node()][@url != .][not(ancestor::footnote)]" - format="1"/> - </xsl:variable> - <xsl:choose> - <xsl:when test="string-length($footnote.number.symbols) >= $fnum"> - <xsl:value-of select="substring($footnote.number.symbols, $fnum, 1)"/> - </xsl:when> - <xsl:otherwise> - <xsl:number value="$fnum" format="{$footnote.number.format}"/> - </xsl:otherwise> - </xsl:choose> - </fo:inline> -</xsl:template> - -<xsl:template name="hyphenate-url"> - <xsl:param name="url" select="''"/> - <xsl:choose> - <xsl:when test="$ulink.hyphenate = ''"> - <xsl:value-of select="$url"/> - </xsl:when> - <xsl:when test="string-length($url) > 1"> - <xsl:variable name="char" select="substring($url, 1, 1)"/> - <xsl:value-of select="$char"/> - <xsl:if test="contains($ulink.hyphenate.chars, $char)"> - <!-- Do not hyphen in-between // --> - <xsl:if test="not($char = '/' and substring($url,2,1) = '/')"> - <xsl:copy-of select="$ulink.hyphenate"/> - </xsl:if> - </xsl:if> - <!-- recurse to the next character --> - <xsl:call-template name="hyphenate-url"> - <xsl:with-param name="url" select="substring($url, 2)"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$url"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="olink" name="olink"> - <!-- olink content may be passed in from xlink olink --> - <xsl:param name="content" select="NOTANELEMENT"/> - - <xsl:call-template name="anchor"/> - - <xsl:variable name="localinfo" select="@localinfo"/> - - <xsl:choose> - <!-- olinks resolved by stylesheet and target database --> - <xsl:when test="@targetdoc or @targetptr or - (@xlink:role=$xolink.role and - contains(@xlink:href, '#') )" > - - <xsl:variable name="targetdoc.att"> - <xsl:choose> - <xsl:when test="@targetdoc != ''"> - <xsl:value-of select="@targetdoc"/> - </xsl:when> - <xsl:when test="@xlink:role=$xolink.role and - contains(@xlink:href, '#')" > - <xsl:value-of select="substring-before(@xlink:href, '#')"/> - </xsl:when> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="targetptr.att"> - <xsl:choose> - <xsl:when test="@targetptr != ''"> - <xsl:value-of select="@targetptr"/> - </xsl:when> - <xsl:when test="@xlink:role=$xolink.role and - contains(@xlink:href, '#')" > - <xsl:value-of select="substring-after(@xlink:href, '#')"/> - </xsl:when> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="olink.lang"> - <xsl:call-template name="l10n.language"> - <xsl:with-param name="xref-context" select="true()"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="target.database.filename"> - <xsl:call-template name="select.target.database"> - <xsl:with-param name="targetdoc.att" select="$targetdoc.att"/> - <xsl:with-param name="targetptr.att" select="$targetptr.att"/> - <xsl:with-param name="olink.lang" select="$olink.lang"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="target.database" - select="document($target.database.filename, /)"/> - - <xsl:if test="$olink.debug != 0"> - <xsl:message> - <xsl:text>Olink debug: root element of target.database is '</xsl:text> - <xsl:value-of select="local-name($target.database/*[1])"/> - <xsl:text>'.</xsl:text> - </xsl:message> - </xsl:if> - - <xsl:variable name="olink.key"> - <xsl:call-template name="select.olink.key"> - <xsl:with-param name="targetdoc.att" select="$targetdoc.att"/> - <xsl:with-param name="targetptr.att" select="$targetptr.att"/> - <xsl:with-param name="olink.lang" select="$olink.lang"/> - <xsl:with-param name="target.database" select="$target.database"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="string-length($olink.key) = 0"> - <xsl:message> - <xsl:text>Error: unresolved olink: </xsl:text> - <xsl:text>targetdoc/targetptr = '</xsl:text> - <xsl:value-of select="$targetdoc.att"/> - <xsl:text>/</xsl:text> - <xsl:value-of select="$targetptr.att"/> - <xsl:text>'.</xsl:text> - </xsl:message> - </xsl:if> - - <xsl:variable name="href"> - <xsl:call-template name="make.olink.href"> - <xsl:with-param name="olink.key" select="$olink.key"/> - <xsl:with-param name="target.database" select="$target.database"/> - </xsl:call-template> - </xsl:variable> - - <!-- Olink that points to internal id can be a link --> - <xsl:variable name="linkend"> - <xsl:call-template name="olink.as.linkend"> - <xsl:with-param name="olink.key" select="$olink.key"/> - <xsl:with-param name="olink.lang" select="$olink.lang"/> - <xsl:with-param name="target.database" select="$target.database"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="hottext"> - <xsl:choose> - <xsl:when test="$content"> - <xsl:copy-of select="$content"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="olink.hottext"> - <xsl:with-param name="olink.key" select="$olink.key"/> - <xsl:with-param name="olink.lang" select="$olink.lang"/> - <xsl:with-param name="target.database" select="$target.database"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="olink.docname.citation"> - <xsl:call-template name="olink.document.citation"> - <xsl:with-param name="olink.key" select="$olink.key"/> - <xsl:with-param name="target.database" select="$target.database"/> - <xsl:with-param name="olink.lang" select="$olink.lang"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="olink.page.citation"> - <xsl:call-template name="olink.page.citation"> - <xsl:with-param name="olink.key" select="$olink.key"/> - <xsl:with-param name="target.database" select="$target.database"/> - <xsl:with-param name="olink.lang" select="$olink.lang"/> - <xsl:with-param name="linkend" select="$linkend"/> - </xsl:call-template> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$linkend != ''"> - <fo:basic-link internal-destination="{$linkend}" - xsl:use-attribute-sets="xref.properties"> - <xsl:copy-of select="$hottext"/> - <xsl:copy-of select="$olink.page.citation"/> - </fo:basic-link> - </xsl:when> - <xsl:when test="$href != ''"> - <xsl:choose> - <xsl:when test="$xep.extensions != 0"> - <fo:basic-link external-destination="url({$href})" - xsl:use-attribute-sets="olink.properties"> - <xsl:copy-of select="$hottext"/> - </fo:basic-link> - <xsl:copy-of select="$olink.page.citation"/> - <xsl:copy-of select="$olink.docname.citation"/> - </xsl:when> - <xsl:when test="$axf.extensions != 0"> - <fo:basic-link external-destination="{$href}" - xsl:use-attribute-sets="olink.properties"> - <xsl:copy-of select="$hottext"/> - </fo:basic-link> - <xsl:copy-of select="$olink.page.citation"/> - <xsl:copy-of select="$olink.docname.citation"/> - </xsl:when> - <xsl:otherwise> - <fo:basic-link external-destination="{$href}" - xsl:use-attribute-sets="olink.properties"> - <xsl:copy-of select="$hottext"/> - </fo:basic-link> - <xsl:copy-of select="$olink.page.citation"/> - <xsl:copy-of select="$olink.docname.citation"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$hottext"/> - <xsl:copy-of select="$olink.page.citation"/> - <xsl:copy-of select="$olink.docname.citation"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - - <!-- olink never implemented in FO for old olink entity syntax --> - <xsl:otherwise> - <xsl:apply-templates/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="*" mode="insert.olink.docname.markup"> - <xsl:param name="docname" select="''"/> - - <fo:inline font-style="italic"> - <xsl:value-of select="$docname"/> - </fo:inline> - -</xsl:template> - -<!-- This prevents error message when processing olinks with xrefstyle --> -<xsl:template match="olink" mode="object.xref.template"/> - - -<xsl:template name="olink.as.linkend"> - <xsl:param name="olink.key" select="''"/> - <xsl:param name="olink.lang" select="''"/> - <xsl:param name="target.database" select="NotANode"/> - - <xsl:variable name="targetdoc"> - <xsl:value-of select="substring-before($olink.key, '/')"/> - </xsl:variable> - - <xsl:variable name="targetptr"> - <xsl:value-of - select="substring-before(substring-after($olink.key, '/'), '/')"/> - </xsl:variable> - - <xsl:variable name="target.lang"> - <xsl:variable name="candidate"> - <xsl:for-each select="$target.database" > - <xsl:value-of - select="key('targetptr-key', $olink.key)/@lang" /> - </xsl:for-each> - </xsl:variable> - <xsl:choose> - <xsl:when test="$candidate != ''"> - <xsl:value-of select="$candidate"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$olink.lang"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:if test="$current.docid = $targetdoc and - $olink.lang = $target.lang"> - <xsl:variable name="targets" select="key('id',$targetptr)"/> - <xsl:variable name="target" select="$targets[1]"/> - <xsl:if test="$target"> - <xsl:value-of select="$targetptr"/> - </xsl:if> - </xsl:if> - -</xsl:template> - - -<xsl:template name="olink.outline"> - <xsl:param name="outline.base.uri"/> - <xsl:param name="localinfo"/> - <xsl:param name="return" select="href"/> - - <xsl:message terminate="yes">Fatal error: olink.outline template: what is this supposed to do?</xsl:message> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="title.xref"> - <xsl:param name="target" select="."/> - <xsl:choose> - <xsl:when test="local-name($target) = 'figure' - or local-name($target) = 'example' - or local-name($target) = 'equation' - or local-name($target) = 'table' - or local-name($target) = 'dedication' - or local-name($target) = 'preface' - or local-name($target) = 'bibliography' - or local-name($target) = 'glossary' - or local-name($target) = 'index' - or local-name($target) = 'setindex' - or local-name($target) = 'colophon'"> - <xsl:call-template name="gentext.startquote"/> - <xsl:apply-templates select="$target" mode="title.markup"/> - <xsl:call-template name="gentext.endquote"/> - </xsl:when> - <xsl:otherwise> - <fo:inline font-style="italic"> - <xsl:apply-templates select="$target" mode="title.markup"/> - </fo:inline> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="number.xref"> - <xsl:param name="target" select="."/> - <xsl:apply-templates select="$target" mode="label.markup"/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template name="xref.xreflabel"> - <!-- called to process an xreflabel...you might use this to make --> - <!-- xreflabels come out in the right font for different targets, --> - <!-- for example. --> - <xsl:param name="target" select="."/> - <xsl:value-of select="$target/@xreflabel"/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="title" mode="xref"> - <xsl:apply-templates/> -</xsl:template> - -<xsl:template match="command" mode="xref"> - <xsl:call-template name="inline.boldseq"/> -</xsl:template> - -<xsl:template match="function" mode="xref"> - <xsl:call-template name="inline.monoseq"/> -</xsl:template> - -<xsl:template match="*" mode="page.citation"> - <xsl:param name="id" select="'???'"/> - - <fo:basic-link internal-destination="{$id}" - xsl:use-attribute-sets="xref.properties"> - <fo:inline keep-together.within-line="always"> - <xsl:call-template name="substitute-markup"> - <xsl:with-param name="template"> - <xsl:call-template name="gentext.template"> - <xsl:with-param name="name" select="'page.citation'"/> - <xsl:with-param name="context" select="'xref'"/> - </xsl:call-template> - </xsl:with-param> - </xsl:call-template> - </fo:inline> - </fo:basic-link> -</xsl:template> - -<xsl:template match="*" mode="pagenumber.markup"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <fo:page-number-citation ref-id="{$id}"/> -</xsl:template> - -<!-- ==================================================================== --> - -<xsl:template match="*" mode="insert.title.markup"> - <xsl:param name="purpose"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="title"/> - - <xsl:choose> - <!-- FIXME: what about the case where titleabbrev is inside the info? --> - <xsl:when test="$purpose = 'xref' and titleabbrev"> - <xsl:apply-templates select="." mode="titleabbrev.markup"/> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$title"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="chapter|appendix" mode="insert.title.markup"> - <xsl:param name="purpose"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="title"/> - - <xsl:choose> - <xsl:when test="$purpose = 'xref'"> - <fo:inline font-style="italic"> - <xsl:copy-of select="$title"/> - </fo:inline> - </xsl:when> - <xsl:otherwise> - <xsl:copy-of select="$title"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="*" mode="insert.subtitle.markup"> - <xsl:param name="purpose"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="subtitle"/> - - <xsl:copy-of select="$subtitle"/> -</xsl:template> - -<xsl:template match="*" mode="insert.label.markup"> - <xsl:param name="purpose"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="label"/> - - <xsl:copy-of select="$label"/> -</xsl:template> - -<xsl:template match="*" mode="insert.pagenumber.markup"> - <xsl:param name="purpose"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="pagenumber"/> - - <xsl:copy-of select="$pagenumber"/> -</xsl:template> - -<xsl:template match="*" mode="insert.direction.markup"> - <xsl:param name="purpose"/> - <xsl:param name="xrefstyle"/> - <xsl:param name="direction"/> - - <xsl:copy-of select="$direction"/> -</xsl:template> - -<xsl:template match="olink" mode="pagenumber.markup"> - <!-- Local olinks can use page-citation --> - <xsl:variable name="targetdoc.att" select="@targetdoc"/> - <xsl:variable name="targetptr.att" select="@targetptr"/> - - <xsl:variable name="olink.lang"> - <xsl:call-template name="l10n.language"> - <xsl:with-param name="xref-context" select="true()"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="target.database.filename"> - <xsl:call-template name="select.target.database"> - <xsl:with-param name="targetdoc.att" select="$targetdoc.att"/> - <xsl:with-param name="targetptr.att" select="$targetptr.att"/> - <xsl:with-param name="olink.lang" select="$olink.lang"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="target.database" - select="document($target.database.filename, /)"/> - - <xsl:if test="$olink.debug != 0"> - <xsl:message> - <xsl:text>Olink debug: root element of target.database is '</xsl:text> - <xsl:value-of select="local-name($target.database/*[1])"/> - <xsl:text>'.</xsl:text> - </xsl:message> - </xsl:if> - - <xsl:variable name="olink.key"> - <xsl:call-template name="select.olink.key"> - <xsl:with-param name="targetdoc.att" select="$targetdoc.att"/> - <xsl:with-param name="targetptr.att" select="$targetptr.att"/> - <xsl:with-param name="olink.lang" select="$olink.lang"/> - <xsl:with-param name="target.database" select="$target.database"/> - </xsl:call-template> - </xsl:variable> - - <!-- Olink that points to internal id can be a link --> - <xsl:variable name="linkend"> - <xsl:call-template name="olink.as.linkend"> - <xsl:with-param name="olink.key" select="$olink.key"/> - <xsl:with-param name="olink.lang" select="$olink.lang"/> - <xsl:with-param name="target.database" select="$target.database"/> - </xsl:call-template> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$linkend != ''"> - <fo:page-number-citation ref-id="{$linkend}"/> - </xsl:when> - <xsl:otherwise> - <xsl:message> - <xsl:text>Olink error: no page number linkend for local olink '</xsl:text> - <xsl:value-of select="$olink.key"/> - <xsl:text>'</xsl:text> - </xsl:message> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -</xsl:stylesheet> |