diff options
author | Pierre Labastie <pieere@linuxfromscratch.org> | 2020-03-13 09:20:45 +0000 |
---|---|---|
committer | Pierre Labastie <pieere@linuxfromscratch.org> | 2020-03-13 09:20:45 +0000 |
commit | 2e524f93fc03353e6fb05333d8041505948959eb (patch) | |
tree | 0e2f8a60e47c994d49152b300f0d698a7eb29c4f /stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3 | |
parent | cc98817b6165e5307c1fc38328cdc2a1cc2de257 (diff) |
Since LFS started using docbook-1.78.1, there is a lot of unused data
in the stylesheet directory. Basically, a whole docbook-stylesheet is
there, while we need only fo and xhtml (+ some common dirs). Each time
we checkout the repo, we have to download this whole thing, which is by
far the biggest part of the repo (~33 M). By removing unused cruft,
this could be down to ~12 M.
Of course, it would be even better to remove completely the stylesheets
and use host ones (repo size down to 2M). but let's do this first, it is
easier :)
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@11778 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Diffstat (limited to 'stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3')
11 files changed, 0 insertions, 8160 deletions
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/README b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/README deleted file mode 100644 index 477e785fa..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/README +++ /dev/null @@ -1,329 +0,0 @@ -DocBook stylesheets for EPUB 3 output -============================================= - -This directory contains XSL stylesheets -for generating EPUB3 output from DocBook content. -For more information on EPUB3, see: - -http://idpf.org/epub/30 - -These EPUB3 stylesheets are a customization layer on -top of the xhtml5/ stylesheets in this distribution, which -are in turn a customization layer on top of the -xhtml/ stylesheets in this distribution. -Using a customization layer enables the EPUB3 -stylesheets to inherit all the features of the -XHTML stylesheets while making the minimum changes -for them to produce valid EPUB3. - -Usage ------------ -The general process for creating an EPUB3 ebook is: - -1. Generate chunked XHTML5 content that validates against -the EPUB3 schemas, and generate the EPUB3 package -files. - -2. Copy any image files into the output directory. - -3. Run a zip command to create an .epub file. - -4. Validate the .epub file. - - -Following are the steps in more detail. - -1. Create the XHTML5 files. ------------------------------ - -The first step is handled by these stylesheets. -To generate EPUB3-compatible XHTML5 files, -use one of the following stylesheets as you would any -other DocBook XSL stylesheet: - -epub3/chunk.xsl - Chunked output. -epub3/profile-chunk.xsl - Profiled chunk output. - -Although the stylesheet directory contains a docbook.xsl -stylesheet for single file output, that is not useful for -generated EPUB3. - -You should set the $base.dir stylesheet param to the -subdirectory that will contain the .xhtml files and -the epub package files. Here is an example using xsltproc: - -xsltproc \ - --stringparam base.dir ebook1/OEBPS/ \ - epub3/chunk.xsl \ - mybook.xml - -After processing a document with this setting, you should find -the following output: - -ebook1/mimetype - required mimetype file. -ebook1/META-INF/container.xml - required container file -ebook1/OEBPS/package.opf - required package file -ebook1/OEBPS/toc.ncx - optional NCX file for backwards compatibility -ebook1/OEBPS/docbook-epub.css - CSS file -ebook1/OEBPS/*.xhtml - The chunked content files. - - -2. Copy image files ---------------------------- - -Manually copy any image files used in the document -into the corresponding locations in the $base.dir -directory. For example, if your document contains: - - <imagedata fileref="images/caution.png"/> - -In this example base.dir, you would copy the file to: - - ebook1/OEBPS/images/caution.png - -You can get a list of image files from the manifest file -named ebook1/OEBPS/package.opf that is created by the -stylesheet. It includes references to image files for -callouts and admonitions if they are used in the output. -Note that the header and footer images are turned off for -EPUB3 output. - - -3. Create the epub3 file. ------------------------------ -Change to the directory containing the base.dir (ebook1 -in this example), and run the following zip command to -create the epub file: - -zip -r -X mybook.epub mimetype META-INF OEBPS - -The -r option means recursively include all directories. -The -X option excludes extra file attributes (required by epub3). -The "mybook.epub" in this example is the output file. -The other three arguments must appear in this order. - - -4. Validating with epubcheck 3 ------------------------------------ - -There is a java program that can be used to check an -epub3 file for conformance. It is currently available -from this website: - - http://code.google.com/p/epubcheck/wiki/EPUBCheck30 - -That website provides a download link, and information on -how to run the command. - - -Testing with EPUB readers ----------------------------- -The EPUB3 standard is not yet widely supported. The output of -these stylesheets has been tested in the following readers: - -Apple iBooks on an iPod and iPad. - - Handles videodata and audiodata. - - Does not format MathML yet. - - Handles SVG. - -Firefox browser with the EPUBReader version 1.4.10 add-on. - - Formats MathML nicely. - - Does not handle videodata or audiodata yet. - - Handles SVG. - -Ibis EPUB3 preview version - - Does not format MathML yet. - - Does not handle videodata or audiodata yet. - - Handles SVG with external viewer. - - -EPUB metadata -======================== -The info child of the document's root element is used -by the stylesheet to create EPUB metadata. Note that -metadata is plain text, so element content is converted -to text using the XSL normalize-space() function. - -Here is the current mapping of info elements to EPUB -metadata. Any others are ignored for metadata, but -may appear on the EPUB HTML titlepage, depending on the -titlepage customization. - -NOTE: the <dc:*> elements (not attributes of meta) duplicate -the meta elements for backwards compatibility, per the -EPUB3 specification. They can be turned off with the -$epub.include.optional.metadata.dc.elements parameter. - -abstract ---------- -The content must be converted to a text string for the -OPF metadata. The stylesheet converts only title, para, -formalpara, and simpara children in an abstract. All other -child elements are ignored. It puts any title first. -The OPF output appears as: - -<meta property="dcterms:description">title: abstract text</meta> -<dc:description>title: abstract text</dc:description> - - -author -------- -If uses a personname child, then it applies the -DocBook XSL person.name template to arrange the name. -Otherwise processes org or orgname into the content. -Then it outputs: - -<meta id="meta-creator1" property="dcterms:creator">Firstname Surname</meta> -<dc:creator id="pub-creator1">Firstname Surname</dc:creator> - -If there are multiple authors, the number in the id attribute -is incremented each time. - - -authorgroup -------------- -Applies templates to all of its children. - - -bibliocoverage ---------------- -<meta property="dcterms:coverage">bibliocoverage text</meta> -<dc:coverage>bibliocoverage text</dc:coverage> - - -biblioid --------------- -This usually has @class="isbn" for the ISBN number. It is used -as the EPUB3 unique-identifier. That isbn value -is also output as follows: - -<meta id="meta-identifier" property="dcterms:identifier">urn:isbn:value</meta> -<dc:identifier id="pub-identifier">urn:isbn:value</dc:identifier> - -A biblioid element with other class names are converted in a similar manner. - - -bibliorelation ----------------- -<meta property="dcterms:relation">bibliorelation text</meta> -<dc:relation>bibliorelation text</dc:relation> - - -bibliosource ----------------- -<meta property="dcterms:source">bibliosource text</meta> -<dc:source>bibliosource text</dc:source> - - -collab ------------- -If a personname child is used, then it calls the -person.name template, otherwise is uses the orgname or -collabname text. - -<meta property="dcterms:contributor">collab text</meta> -<dc:contributor>collab text</dc:contributor> - - -copyright -------------- -Arranges the copyright elements into a text string with -copyright symbol, dates, and holder, and then -generates: - -<meta property="dcterms:right">Copyright text</meta> -<dc:right>Copyright text</dc:right> - -Also, if there is no info/date element, then the copyright -year is used to generate: - -<meta property="dcterms:date">year</meta> -<dc:date>year</dc:date> - - -corpauthor ------------- -<meta id="meta-creator1" property="dcterms:creator">corpauthor text</meta> -<dc:creator id="pub-creator1">corpauthor text</dc:creator> - - -corpcredit ------------- -<meta property="dcterms:contributor">corpcredit text</meta> -<dc:contributor>corpcredit text</dc:contributor> - - -date -------------- -<meta property="dcterms:date">date text</meta> -<dc:date>date text</dc:date> - -See also: copyright. - - -editor --------------- -If a personname child is used, then it calls the -person.name template, otherwise is uses the orgname text. - -An editor can be considered as either a creator (when there -is no author) or a contributor. The stylesheet parameter -'editor.property' can be set to either 'creator' or -'contributor' (default) at runtime. So the output is either: - -<meta property="dcterms:contributor">editor text</meta> -<dc:contributor>editor text</dc:contributor> - -or - -<meta property="dcterms:creator">editor text</meta> -<dc:creator>editor text</dc:creator> - - -isbn, issn, etc. ------------------ -Handled like biblioid @class="isbn". - - -keyword ------------ -<meta property="dcterms:subject">keyword text</meta> -<dc:subject>keyword text</dc:subject> - - -keywordset ------------- -Applies templates to its children. - - -othercredit ------------- -Handled like collab. - - -pubdate ------------- -Handled like date. - - -publisher --------------- -Applies templates only to publishername. - - -publishername ---------------- -<meta property="dcterms:publisher">publishername text</meta> -<dc:publisher>publishername text</dc:publisher> - - -subjectset --------------- -Applies templates to subject/subjecterm descendants. - - -subjectterm ------------------- -<meta property="dcterms:subject">subjecterm text</meta> -<dc:subject>subjecterm text</dc:subject> - diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/chunk.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/chunk.xsl deleted file mode 100644 index be062b53d..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/chunk.xsl +++ /dev/null @@ -1,29 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<xsl:stylesheet - xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:exsl="http://exslt.org/common" - xmlns:epub="http://www.idpf.org/2007/ops" - exclude-result-prefixes="exsl" - version="1.0"> - -<!-- $Id: chunk.xsl,v 1.1 2011-09-16 21:43:45 bobs Exp $ --> - -<!-- This is the main driver stylesheet file. It imports or -includes all the components that it needs. --> - -<!-- Import the module that customizes docbook elements --> -<!-- Put any customizations of element content in this module. --> -<xsl:import href="docbook.xsl"/> - -<xsl:import href="../xhtml/chunk-common.xsl"/> - -<xsl:include href="../xhtml/chunk-code.xsl"/> - -<!-- The following module has templates that override the stock - xhtml templates for HTML5 output. - It contains match templates with priority="1" attributes, - and named templates. These override any templates that - handle chunking behavior --> -<xsl:include href="epub3-chunk-mods.xsl"/> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/chunkfast.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/chunkfast.xsl deleted file mode 100644 index 8ec9550e6..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/chunkfast.xsl +++ /dev/null @@ -1,69 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<!--This file was created automatically by html2xhtml--> -<!--from the HTML stylesheets.--> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:exsl="http://exslt.org/common" xmlns:cf="http://docbook.sourceforge.net/xmlns/chunkfast/1.0" xmlns="http://www.w3.org/1999/xhtml" version="1.0" exclude-result-prefixes="cf exsl"> - -<!-- ******************************************************************** - $Id: chunkfast.xsl,v 1.1 2011-09-16 21:43:45 bobs Exp $ - ******************************************************************** - - 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:import href="chunk.xsl"/> -<xsl:param name="chunk.fast" select="1"/> - -<xsl:variable name="chunks" select="exsl:node-set($chunk.hierarchy)//cf:div"/> - -<!-- ==================================================================== --> - -<xsl:template name="process-chunk-element"> - <xsl:choose> - <xsl:when test="$chunk.fast != 0 and $exsl.node.set.available != 0"> - <xsl:variable name="genid" select="generate-id()"/> - - <xsl:variable name="div" select="$chunks[@id=$genid or @xml:id=$genid]"/> - - <xsl:variable name="prevdiv" select="($div/preceding-sibling::cf:div|$div/preceding::cf:div|$div/parent::cf:div)[last()]"/> - <xsl:variable name="prev" select="key('genid', ($prevdiv/@id|$prevdiv/@xml:id)[1])"/> - - <xsl:variable name="nextdiv" select="($div/following-sibling::cf:div|$div/following::cf:div|$div/cf:div)[1]"/> - <xsl:variable name="next" select="key('genid', ($nextdiv/@id|$nextdiv/@xml:id)[1])"/> - - <xsl:choose> - <xsl:when test="$onechunk != 0 and parent::*"> - <xsl:apply-imports/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="process-chunk"> - <xsl:with-param name="prev" select="$prev"/> - <xsl:with-param name="next" select="$next"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:choose> - <xsl:when test="$onechunk != 0 and not(parent::*)"> - <xsl:call-template name="chunk-all-sections"/> - </xsl:when> - <xsl:when test="$onechunk != 0"> - <xsl:apply-imports/> - </xsl:when> - <xsl:when test="$chunk.first.sections = 0"> - <xsl:call-template name="chunk-first-section-with-parent"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="chunk-all-sections"/> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/docbook-epub.css.xml b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/docbook-epub.css.xml deleted file mode 100644 index 9f28011cd..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/docbook-epub.css.xml +++ /dev/null @@ -1,142 +0,0 @@ -<?xml version="1.0"?> -<style> - -/********************************/ -/* start of styles in block.xsl */ - -.formalpara-title { - font-weight: bold; -} - -div.blockquote-title { - font-weight: bold; - margin-top: 1em; - margin-bottom: 1em; -} - -span.msgmain-title { - font-weight: bold; -} - -span.msgsub-title { - font-weight: bold; -} - -span.msgrel-title { - font-weight: bold; -} - -div.msglevel, div.msgorig, div.msgaud { - margin-top: 1em; - margin-bottom: 1em; -} - -span.msglevel-title, span.msgorig-title, span.msgaud-title { - font-weight: bold; -} - -div.msgexplan { - margin-top: 1em; - margin-bottom: 1em; -} - -span.msgexplan-title { - font-weight: bold; -} - -div.sidebar { - border: 0.5pt solid black; - margin-top: 1em; - margin-bottom: 1em; - padding: 8px; -} - -/* end of styles in block.xsl */ -/********************************/ - -/********************************/ -/* start of styles in autotoc.xsl */ - -/* top level entries */ -nav>ol>li>a { - margin-top: 1em; - margin-bottom: 1em; -} - - -/* end of styles in autotoc.xsl */ -/********************************/ - -/********************************/ -/* start of styles in formal.xsl */ - -div.figure-title { - font-weight: bold; -} - -div.example-title { - font-weight: bold; -} - -div.equation-title { - font-weight: bold; -} - -div.table-title { - font-weight: bold; -} - -div.sidebar-title { - font-weight: bold; -} - - -/* end of styles in formal.xsl */ -/********************************/ - -/********************************/ -/* start of styles in verbatim.xsl */ - -div.programlisting { - white-space: pre-wrap; - font-family: monospace; -} - -div.screen { - white-space: pre-wrap; - font-family: monospace; -} - -div.synopsis { - white-space: pre-wrap; - font-family: monospace; -} - -/* end of styles in verbatim.xsl */ -/********************************/ - -/********************************/ -/* NAVIGATION */ - -nav ol { -list-style-type: none; -margin: 0 0 0 2em; -padding: 0 0 0 0; -} - -nav ol li { -margin: 0 0 0 0; -padding: 0 0 0 0; -} - -nav ol li a { -text-decoration: none; -color: black; -font-family: sans-serif; -} - -#guide { -display: none; -} - -</style> diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/docbook.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/docbook.xsl deleted file mode 100644 index af099b8ee..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/docbook.xsl +++ /dev/null @@ -1,19 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!DOCTYPE xsl:stylesheet [ -<!ENTITY uppercase "'ABCDEFGHIJKLMNOPQRSTUVWXYZ'"> -<!ENTITY lowercase "'abcdefghijklmnopqrstuvwxyz'"> -]> - -<xsl:stylesheet - xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns="http://www.w3.org/1999/xhtml" - exclude-result-prefixes="#default" - version="1.0"> - -<!-- $Id: docbook.xsl,v 1.1 2011-09-16 21:43:45 bobs Exp $ --> - -<xsl:import href="../xhtml5/docbook.xsl"/> - -<xsl:include href="epub3-element-mods.xsl"/> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/epub3-chunk-mods.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/epub3-chunk-mods.xsl deleted file mode 100644 index 7aa690122..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/epub3-chunk-mods.xsl +++ /dev/null @@ -1,51 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<xsl:stylesheet - xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:exsl="http://exslt.org/common" - xmlns:epub="http://www.idpf.org/2007/ops" - xmlns:dc="http://purl.org/dc/elements/1.1/" - xmlns:ncx="http://www.daisy.org/z3986/2005/ncx/" - xmlns:db="http://docbook.org/ns/docbook" - xmlns:opf="http://www.idpf.org/2007/opf" - xmlns:stext="http://nwalsh.com/xslt/ext/com.nwalsh.saxon.TextFactory" - xmlns:str="http://exslt.org/strings" - xmlns:xtext="xalan://com.nwalsh.xalan.Text" - extension-element-prefixes="stext xtext" - exclude-result-prefixes="exsl dc ncx opf stext str xtext" - version="1.0"> - -<!-- $Id: epub3-chunk-mods.xsl,v 1.1 2011-09-16 21:43:45 bobs Exp $ --> - -<xsl:include href="../xhtml5/html5-chunk-mods.xsl"/> - -<!--==============================================================--> -<!-- DocBook XSL Parameter settings --> -<!--==============================================================--> - -<!--==============================================================--> -<!-- Template customizations --> -<!--==============================================================--> - -<!-- EPUB3: customize to generate package files --> -<xsl:template match="*" mode="process.root" priority="2"> - <xsl:call-template name="check.for.xalan"/> - <xsl:apply-templates select="."/> - <xsl:call-template name="generate.css.files"/> - - <xsl:call-template name="generate.epub.files"/> - -</xsl:template> - -<xsl:template name="check.for.xalan"> - <xsl:if test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')"> - <xsl:message terminate="yes"> - <xsl:text> </xsl:text> - <xsl:text>FATAL ERROR: </xsl:text> - <xsl:text>Xalan processor not supported by DocBook Epub3 stylesheets. </xsl:text> - <xsl:text>Xalan does not properly support XSL output method="text", </xsl:text> - <xsl:text>which is required for the various epub support files.</xsl:text> - </xsl:message> - </xsl:if> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/epub3-element-mods.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/epub3-element-mods.xsl deleted file mode 100644 index 8ba786dc0..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/epub3-element-mods.xsl +++ /dev/null @@ -1,2506 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!DOCTYPE xsl:stylesheet [ -<!ENTITY uppercase "'ABCDEFGHIJKLMNOPQRSTUVWXYZ'"> -<!ENTITY lowercase "'abcdefghijklmnopqrstuvwxyz'"> -]> - -<xsl:stylesheet - xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:exsl="http://exslt.org/common" - xmlns:set="http://exslt.org/sets" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:epub="http://www.idpf.org/2007/ops" - xmlns:m="http://www.w3.org/1998/Math/MathML" - xmlns:pls="http://www.w3.org/2005/01/pronunciation-lexicon" - xmlns:ssml="http://www.w3.org/2001/10/synthesis" - xmlns:svg="http://www.w3.org/2000/svg" - xmlns:opf="http://www.idpf.org/2007/opf" - xmlns:dc="http://purl.org/dc/elements/1.1/" - xmlns:cf="http://docbook.sourceforge.net/xmlns/chunkfast/1.0" - xmlns:date="http://exslt.org/dates-and-times" - xmlns:dcterms="http://purl.org/dc/terms/" - xmlns:ncx="http://www.daisy.org/z3986/2005/ncx/" - xmlns:db="http://docbook.org/ns/docbook" - xmlns:stext="http://nwalsh.com/xslt/ext/com.nwalsh.saxon.TextFactory" - xmlns:str="http://exslt.org/strings" - xmlns:xtext="xalan://com.nwalsh.xalan.Text" - - extension-element-prefixes="stext xtext" - exclude-result-prefixes="#default cf date db dc dcterms epub exsl m ncx opf pls set ssml stext str svg xtext" - version="1.0"> - -<!-- $Id: epub3-element-mods.xsl,v 1.1 2011-09-16 21:43:45 bobs Exp $ --> - -<xsl:import href="titlepage.templates.xsl"/> - -<!-- -<xsl:key name="image-filerefs" match="graphic|inlinegraphic|imagedata" use="@fileref"/> ---> - -<!--==============================================================--> -<!-- DocBook XSL Parameter settings --> -<!--==============================================================--> -<!-- separate file for toc --> -<xsl:param name="chunk.tocs.and.lots" select="1"/> -<xsl:param name="toc.section.depth" select="2"/> -<xsl:param name="generate.toc"> -book toc,title,figure,table,example,equation -article toc,title,figure,table,example,equation -</xsl:param> -<xsl:param name="generate.manifest" select="0"/> -<xsl:param name="manifest.in.base.dir" select="1"/> -<xsl:param name="base.dir" select="'OEBPS/'"/> -<xsl:param name="index.links.to.section" select="0"/> - -<!-- Epub does not yet support external links --> -<xsl:param name="activate.external.olinks" select="0"/> - -<!-- Turning this on crashes ADE, which is unbelievably awesome --> -<xsl:param name="formal.object.break.after">0</xsl:param> - -<xsl:param name="callout.graphics" select="1"/> -<xsl:param name="callout.graphics.extension">.png</xsl:param> -<xsl:param name="callout.graphics.number.limit" select="15"/> -<xsl:param name="callout.graphics.path" select="'images/callouts/'"/> -<xsl:param name="show.comments" select="0"/> - -<!-- no navigation in .epub --> -<xsl:param name="suppress.navigation" select="'1'"/> - -<!-- EPUB3: use ol lists in table of contents --> -<xsl:param name="toc.list.type">ol</xsl:param> -<xsl:param name="autotoc.label.in.hyperlink" select="1"/> - -<xsl:param name="css.decoration" select="1"/> -<!-- generate the css file from a source file --> -<xsl:param name="make.clean.html" select="1"/> -<!-- specify the default epub3 stylesheet --> -<xsl:param name="docbook.css.source">docbook-epub.css.xml</xsl:param> -<!-- for custom CSS, use the custom.css.source param --> -<xsl:param name="custom.css.source"></xsl:param> - -<!--==============================================================--> -<!-- New EPUB3 Parameters --> -<!--==============================================================--> -<xsl:param name="epub.version">3.0</xsl:param> -<!-- optional ncx for backwards compatibility --> -<xsl:param name="epub.include.ncx" select="1"/> -<xsl:param name="epub.ncx.depth">4</xsl:param> <!-- Not functional until http://code.google.com/p/epubcheck/issues/detail?id=70 is resolved --> -<!-- currently optional duplicate dcterms properties, may be required in future --> -<xsl:param name="epub.include.metadata.dcterms" select="1"/> -<!-- optional guide element for backwards compatibility --> -<xsl:param name="epub.include.guide" select="1"/> -<!-- some dc: currently required, to be replaced in future version --> -<xsl:param name="epub.include.metadata.dc.elements" select="1"/> -<!-- Some dc: elements will remain optional according to the spec --> -<xsl:param name="epub.include.optional.metadata.dc.elements" select="1"/> -<xsl:param name="epub.autolabel" select="0"/> -<xsl:param - name="epub.vocabulary.profile.content">http://www.idpf.org/epub/30/profile/content/</xsl:param> -<xsl:param - name="epub.vocabulary.profile.package">http://www.idpf.org/epub/30/profile/package/</xsl:param> -<xsl:param name="epub.output.epub.types" select="1"/> -<xsl:param name="epub.oebps.dir" select="'OEBPS'"/> -<xsl:param name="epub.metainf.dir" select="'META-INF/'"/> -<xsl:param name="epub.ncx.filename" select="'toc.ncx'"/> -<xsl:param name="epub.mimetype.filename" select="'mimetype'"/> -<xsl:param name="epub.mimetype.value" select="'application/epub+zip'"/> -<xsl:param name="epub.container.filename" select="'container.xml'"/> -<xsl:param name="epub.package.filename" select="'package.opf'"/> -<xsl:param name="epub.cover.filename" select="concat('cover', $html.ext)"/> -<xsl:param name="epub.cover.linear" select="0" /> - -<!-- names of id attributes used in package files --> -<xsl:param name="epub.meta.identifier.id">meta-identifier</xsl:param> -<xsl:param name="epub.dc.identifier.id">pub-identifier</xsl:param> -<xsl:param name="epub.meta.title.id">meta-title</xsl:param> -<xsl:param name="epub.dc.title.id">pub-title</xsl:param> -<xsl:param name="epub.meta.language.id">meta-language</xsl:param> -<xsl:param name="epub.dc.language.id">pub-language</xsl:param> -<xsl:param name="epub.meta.creator.id">meta-creator</xsl:param> -<xsl:param name="epub.dc.creator.id">pub-creator</xsl:param> -<xsl:param name="epub.ncx.toc.id">ncxtoc</xsl:param> -<xsl:param name="epub.ncx.manifest.id">ncx</xsl:param> -<xsl:param name="epub.ncx.mediatype">application/x-dtbncx+xml</xsl:param> -<xsl:param name="epub.xhtml.mediatype">application/xhtml+xml</xsl:param> -<xsl:param name="epub.html.toc.id">htmltoc</xsl:param> -<xsl:param name="epub.cover.filename.id" select="'cover'"/> -<xsl:param name="epub.cover.image.id" select="'cover-image'"/> - -<xsl:param name="epub.embedded.fonts"></xsl:param> -<xsl:param name="epub.namespace">http://www.idpf.org/2007/ops</xsl:param> -<xsl:param name="opf.namespace">http://www.idpf.org/2007/opf</xsl:param> -<xsl:param name="ncx.namespace">http://www.daisy.org/z3986/2005/ncx/</xsl:param> -<xsl:param name="dc.namespace">http://purl.org/dc/elements/1.1/</xsl:param> -<!-- prefix generated ids in package elements so they differ from content ids --> -<xsl:param name="epub.package.id.prefix">id-</xsl:param> -<!-- editor is either a creator or contributor --> -<xsl:param name="editor.property">contributor</xsl:param> - -<!-- Generate full output path --> -<xsl:param name="epub.package.dir" select="concat($chunk.base.dir, '../')"/> - -<xsl:param name="epub.ncx.pathname" - select="concat($chunk.base.dir, $epub.ncx.filename)"/> -<xsl:param name="epub.container.pathname" - select="concat($epub.package.dir, $epub.metainf.dir, - $epub.container.filename)"/> -<xsl:param name="epub.package.pathname" - select="concat($chunk.base.dir, $epub.package.filename)"/> -<xsl:param name="epub.cover.pathname" - select="concat($chunk.base.dir, $epub.cover.filename)"/> -<xsl:param name="epub.mimetype.pathname" - select="concat($epub.package.dir, $epub.mimetype.filename)"/> - -<xsl:param name="kindle.extensions" select="0"/> - -<!--==============================================================--> -<!-- Internal variables used for computing certain metadata --> -<!--==============================================================--> -<xsl:variable name="epub3.chunk.hierarchy"> - <xsl:apply-templates select="/*" mode="find.chunks"/> -</xsl:variable> - -<xsl:variable name="chunkset" select="exsl:node-set($epub3.chunk.hierarchy)//cf:div"/> - -<!--==============================================================--> -<!-- Template customizations --> -<!--==============================================================--> - -<!-- This is used only by ncx piece --> -<xsl:variable name="root.is.a.chunk"> - <xsl:choose> - <xsl:when test="/*[not(self::book)][not(sect1) or not(section)]"> - <xsl:text>1</xsl:text> - </xsl:when> - <xsl:when test="/book[*[last()][self::bookinfo]]|book[bookinfo]"> - <xsl:text>1</xsl:text> - </xsl:when> - <xsl:when test="/book[*[last()][self::info]]|book[info]"> - <xsl:text>1</xsl:text> - </xsl:when> - <xsl:when test="/bibliography"> - <xsl:text>1</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text>0</xsl:text> - </xsl:otherwise> - </xsl:choose> -</xsl:variable> - -<!-- EPUB3: Add generation of epub publication files --> -<xsl:template match="*" mode="process.root"> - <xsl:variable name="doc" select="self::*"/> - - <xsl:call-template name="user.preroot"/> - <xsl:call-template name="root.messages"/> - - <html> - <head> - <xsl:call-template name="system.head.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - <xsl:call-template name="head.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - <xsl:call-template name="user.head.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - </head> - <body> - <xsl:call-template name="body.attributes"/> - <xsl:call-template name="user.header.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - <xsl:apply-templates select="."/> - <xsl:call-template name="user.footer.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - </body> - </html> - <xsl:value-of select="$html.append"/> - - <!-- Generate any css files only once, not once per chunk --> - <xsl:call-template name="generate.css.files"/> - - <xsl:call-template name="generate.epub.files"/> - -</xsl:template> - -<xsl:template name="generate.epub.files"> - <!-- Generate epub3 files --> - <xsl:message> - <xsl:text>Generating EPUB package files.</xsl:text> - </xsl:message> - - <xsl:apply-templates select="." mode="opf"/> - <xsl:apply-templates select="." mode="container"/> - <xsl:call-template name="mimetype"/> - <xsl:if test="$epub.include.ncx != 0"> - <xsl:call-template name="ncx"/> - </xsl:if> -</xsl:template> - -<!-- Generate the package file --> -<xsl:template match="*" mode="opf"> - - <xsl:variable name="lang"> - <xsl:call-template name="l10n.language"/> - </xsl:variable> - - <xsl:variable name="content"> - <!-- use xsl:element so output does not have a namespace prefix --> - <xsl:element name="package" namespace="{$opf.namespace}"> - <!-- Add the package namespaces at the top --> - <xsl:call-template name="add.package.namespaces"/> - - <xsl:attribute name="version"> - <xsl:value-of select="$epub.version"/> - </xsl:attribute> - <xsl:attribute name="xml:lang"> - <xsl:value-of select="$lang"/> - </xsl:attribute> - <!-- No profile att in 2011-09-06 spec - <xsl:attribute name="profile"> - <xsl:value-of select="$epub.vocabulary.profile.package"/> - </xsl:attribute> - --> - <xsl:attribute name="unique-identifier"> - <xsl:value-of select="$epub.dc.identifier.id"/> - </xsl:attribute> - - - <xsl:call-template name="package.metadata"/> - <xsl:call-template name="package.manifest"/> - <xsl:call-template name="package.spine"/> - - <xsl:if test="$epub.include.guide != 0"> - <xsl:call-template name="package.guide"/> - </xsl:if> - - </xsl:element> - </xsl:variable> - - <xsl:call-template name="write.chunk"> - <xsl:with-param name="filename"> - <xsl:value-of select="$epub.package.pathname" /> - </xsl:with-param> - <xsl:with-param name="content" select="$content"/> - <xsl:with-param name="method" select="'xml'" /> - <xsl:with-param name="encoding" select="'utf-8'" /> - <xsl:with-param name="indent" select="'yes'" /> - <xsl:with-param name="quiet" select="$chunk.quietly" /> - <xsl:with-param name="doctype-public" select="''"/> <!-- intentionally blank --> - <xsl:with-param name="doctype-system" select="''"/> <!-- intentionally blank --> - </xsl:call-template> -</xsl:template> - -<xsl:template name="package.metadata"> - - <xsl:element name="metadata" namespace="{$opf.namespace}"> - - <xsl:call-template name="metadata.identifier"/> - <xsl:call-template name="metadata.title"/> - <xsl:call-template name="metadata.language"/> - <xsl:call-template name="metadata.modified"/> - <xsl:call-template name="metadata.cover"/> - <xsl:call-template name="metadata.other.info"/> - - </xsl:element> -</xsl:template> - -<xsl:template name="doc.title"> - <xsl:apply-templates select="." mode="title.markup"/> -</xsl:template> - -<xsl:template name="metadata.identifier"> - <xsl:variable name="package.id.value"> - <xsl:call-template name="package-identifier"/> - </xsl:variable> - - <xsl:if test="$epub.include.metadata.dc.elements != 0"> - <!-- dc:identifier element --> - <dc:identifier> - <xsl:attribute name="id"> - <xsl:value-of select="$epub.dc.identifier.id"/> - </xsl:attribute> - <!-- - <xsl:attribute name="prefer"> - <xsl:value-of select="$epub.meta.identifier.id"/> - </xsl:attribute> - --> - <xsl:copy-of select="$package.id.value"/> - </dc:identifier> - </xsl:if> - - <xsl:if test="$epub.include.metadata.dcterms != 0"> - <!-- equivalent meta identifier element --> - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="id"> - <xsl:value-of select="$epub.meta.identifier.id"/> - </xsl:attribute> - <xsl:attribute name="property">dcterms:identifier</xsl:attribute> - <xsl:copy-of select="$package.id.value"/> - </xsl:element> - </xsl:if> -</xsl:template> - -<xsl:template name="metadata.title"> - <xsl:variable name="doc.title"> - <xsl:call-template name="doc.title"/> - </xsl:variable> - - <xsl:if test="$epub.include.metadata.dc.elements != 0"> - <dc:title> - <xsl:attribute name="id"> - <xsl:value-of select="$epub.dc.title.id"/> - </xsl:attribute> - <!-- - <xsl:attribute name="prefer"> - <xsl:value-of select="$epub.meta.title.id"/> - </xsl:attribute> - --> - <xsl:value-of select="normalize-space($doc.title)"/> - </dc:title> - </xsl:if> - - <xsl:if test="$epub.include.metadata.dcterms != 0"> - <!-- equivalent meta title element --> - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property">dcterms:title</xsl:attribute> - <xsl:attribute name="id"> - <xsl:value-of select="$epub.meta.title.id"/> - </xsl:attribute> - <xsl:value-of select="normalize-space($doc.title)"/> - </xsl:element> - </xsl:if> -</xsl:template> - -<xsl:template name="metadata.language"> - <xsl:variable name="lang"> - <xsl:call-template name="l10n.language"/> - </xsl:variable> - - <xsl:if test="$epub.include.metadata.dc.elements != 0"> - <dc:language> - <xsl:if test="$kindle.extensions = 0"> - <xsl:attribute name="id"> - <xsl:value-of select="$epub.dc.language.id"/> - </xsl:attribute> - </xsl:if> - <xsl:value-of select="$lang"/> - </dc:language> - </xsl:if> - - <xsl:if test="$epub.include.metadata.dcterms != 0"> - <!-- equivalent meta lang element --> - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property">dcterms:language</xsl:attribute> - <xsl:attribute name="id"> - <xsl:value-of select="$epub.meta.language.id"/> - </xsl:attribute> - <xsl:value-of select="$lang"/> - </xsl:element> - </xsl:if> -</xsl:template> - -<xsl:template name="metadata.modified"> - <xsl:variable name="local.datetime" select="date:date-time()"/> - <xsl:variable name="utc.datetime"> - <xsl:call-template name="convert.date.to.utc"> - <xsl:with-param name="date" select="$local.datetime"/> - </xsl:call-template> - </xsl:variable> - <xsl:choose> - <xsl:when test="string-length($utc.datetime) != 0"> - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property">dcterms:modified</xsl:attribute> - <xsl:value-of select="$utc.datetime"/> - </xsl:element> - <xsl:comment>The preceding date value is actually local time (not UTC) in UTC format because there is no function in XSLT 1.0 to generate a correct UTC time</xsl:comment> - </xsl:when> - <xsl:otherwise> - <xsl:message terminate="yes"> - <xsl:text>ERROR: no last-modified date value could be determined, </xsl:text> - <xsl:text>so cannot output required meta element with </xsl:text> - <xsl:text>dcterms:modified attribute. Exiting.</xsl:text> - </xsl:message> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="convert.date.to.utc"> - <xsl:param name="date" select="''"/> - <!-- input format is YYYY-MM-DDTHH:MM:SS-X:00 - where -X:00 is the offset from UTC. --> - - <!-- output format is YYYY-MM-DDTHH:MM:SSZ with no offset --> - <!-- FIX ME: Not so easy without a proper UTC date function. --> - <!-- Currently it just converts the local time to this format, which is - not the correct UTC time. --> - <xsl:value-of select="concat(substring($date,1,19), 'Z')"/> -</xsl:template> - -<!-- This cover meta element used by kindlegen, at least --> -<xsl:template name="metadata.cover"> - <xsl:variable name="info" select="./*[contains(local-name(.), 'info')][1]"/> - <xsl:variable name="cover.image" - select="$info//mediaobject[@role='cover' or ancestor::cover]"/> - - <xsl:if test="$cover.image"> - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="content"> - <xsl:value-of select="$epub.cover.image.id"/> - </xsl:attribute> - <xsl:attribute name="name">cover</xsl:attribute> - </xsl:element> - </xsl:if> -</xsl:template> - -<xsl:template name="metadata.other.info"> - <!-- Take info relative to selected root element --> - <xsl:variable name="info" select="./*[contains(local-name(.), 'info')][1]"/> - - <xsl:apply-templates select="$info/*" mode="opf.metadata"/> -</xsl:template> - -<xsl:template match="*" mode="opf.metadata"> - <!-- default is no output --> -</xsl:template> - -<xsl:template match="authorgroup" mode="opf.metadata"> - <xsl:apply-templates select="*" mode="opf.metadata"/> -</xsl:template> - -<xsl:template match="author|corpauthor" mode="opf.metadata"> - <xsl:variable name="n"> - <xsl:choose> - <xsl:when test="self::corpauthor"> - <xsl:apply-templates/> - </xsl:when> - <xsl:when test="org/orgname"> - <xsl:apply-templates select="org/orgname"/> - </xsl:when> - <xsl:when test="orgname"> - <xsl:apply-templates select="orgname"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="person.name"> - <xsl:with-param name="node" select="."/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:if test="string-length($n) != 0"> - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="id"> - <xsl:value-of select="concat($epub.meta.creator.id, position())"/> - </xsl:attribute> - <xsl:attribute name="property">dcterms:creator</xsl:attribute> - <xsl:value-of select="normalize-space(string($n))"/> - </xsl:element> - - <xsl:if test="$epub.include.optional.metadata.dc.elements != 0"> - <dc:creator> - <xsl:attribute name="id"> - <xsl:value-of select="concat($epub.dc.creator.id, position())"/> - </xsl:attribute> - <xsl:value-of select="$n"/> - </dc:creator> - </xsl:if> - </xsl:if> -</xsl:template> - -<xsl:template match="editor" mode="opf.metadata"> - <xsl:variable name="n"> - <xsl:choose> - <xsl:when test="orgname"> - <xsl:apply-templates select="orgname"/> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="person.name"> - <xsl:with-param name="node" select="."/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="name"> - <xsl:choose> - <xsl:when test="string-length($editor.property) != 0"> - <xsl:value-of select="$editor.property"/> - </xsl:when> - <xsl:otherwise> - <xsl:text>contributor</xsl:text> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property"> - <xsl:text>dcterms:</xsl:text> - <xsl:value-of select="$name"/> - </xsl:attribute> - <xsl:value-of select="normalize-space($n)"/> - </xsl:element> - - <xsl:if test="$epub.include.optional.metadata.dc.elements != 0"> - <xsl:choose> - <xsl:when test="$name = 'creator'"> - <dc:creator> - <xsl:value-of select="normalize-space($n)"/> - </dc:creator> - </xsl:when> - <xsl:when test="$name = 'contributor'"> - <dc:contributor> - <xsl:value-of select="normalize-space($n)"/> - </dc:contributor> - </xsl:when> - <xsl:otherwise> - <xsl:element namespace="{$dc.namespace}" name="{$name}"> - <xsl:value-of select="normalize-space($n)"/> - </xsl:element> - </xsl:otherwise> - </xsl:choose> - </xsl:if> - -</xsl:template> - -<xsl:template match="corpcredit" mode="opf.metadata"> - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property">dcterms:contributor</xsl:attribute> - <xsl:value-of select="normalize-space(.)"/> - </xsl:element> - - <xsl:if test="$epub.include.optional.metadata.dc.elements != 0"> - <dc:contributor> - <xsl:value-of select="normalize-space(.)"/> - </dc:contributor> - </xsl:if> -</xsl:template> - -<xsl:template match="collab|othercredit" mode="opf.metadata"> - <xsl:variable name="content"> - <xsl:choose> - <xsl:when test="collabname"> - <xsl:apply-templates select="collabname"/> - </xsl:when> - <xsl:when test="org/orgname"> - <xsl:apply-templates select="org/orgname"/> - </xsl:when> - <xsl:when test="orgname"> - <xsl:apply-templates select="orgname"/> - </xsl:when> - <xsl:when test="personname|firstname|surname|othername"> - <xsl:call-template name="person.name"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="."/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property">dcterms:contributor</xsl:attribute> - <xsl:value-of select="normalize-space($content)"/> - </xsl:element> - - <xsl:if test="$epub.include.optional.metadata.dc.elements != 0"> - <dc:contributor> - <xsl:value-of select="normalize-space($content)"/> - </dc:contributor> - </xsl:if> - -</xsl:template> - -<xsl:template match="date|pubdate" mode="opf.metadata"> - <xsl:variable name="date"> - <xsl:call-template name="format.meta.date"> - <xsl:with-param name="string" select="normalize-space(.)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="string-length($date) != 0"> - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property">dcterms:date</xsl:attribute> - <xsl:value-of select="$date"/> - </xsl:element> - - <xsl:if test="$epub.include.optional.metadata.dc.elements != 0"> - <dc:date> - <xsl:value-of select="$date"/> - </dc:date> - </xsl:if> - </xsl:if> - -</xsl:template> - -<!-- EPUB3 meta date should be of the form: - YYYY, YYYY-MM or YYYY-MM-DD --> -<xsl:template name="format.meta.date"> - <xsl:param name="string" select="''"/> - <xsl:param name="node" select="."/> - - <!-- FIXME: this needs further work, so just check the - string format and return the date string for now --> - <xsl:variable name="normalized" - select="translate($string, '0123456789', '##########')"/> - - <xsl:variable name="date.ok"> - <xsl:choose> - <xsl:when test="string-length($string) = 4 and - $normalized = '####'">1</xsl:when> - <xsl:when test="string-length($string) = 7 and - $normalized = '####-##'">1</xsl:when> - <xsl:when test="string-length($string) = 10 and - $normalized = '####-##-##'">1</xsl:when> - <xsl:when test="string-length($string) = 10 and - $normalized = '####-##-##'">1</xsl:when> - <xsl:otherwise>0</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:if test="$date.ok = 0"> - <xsl:message> - <xsl:text>WARNING: wrong metadata date format: '</xsl:text> - <xsl:value-of select="$string"/> - <xsl:text>' in element </xsl:text> - <xsl:value-of select="local-name($node/..)"/> - <xsl:text>/</xsl:text> - <xsl:value-of select="local-name($node)"/> - <xsl:text>. It must be in one of these forms: </xsl:text> - <xsl:text>YYYY, YYYY-MM, or YYYY-MM-DD.</xsl:text> - </xsl:message> - </xsl:if> - - <!-- return the string anyway --> - <xsl:value-of select="$string"/> - -</xsl:template> - - -<!-- Space separate the compontents of the abstract (dropping the inline markup, sadly) --> -<xsl:template match="abstract" mode="opf.metadata"> - <xsl:variable name="content"> - <xsl:for-each select="formalpara|para|simpara|title"> - <xsl:choose> - <xsl:when test="self::formalpara"> - <xsl:value-of select="normalize-space(string(title))"/> - <xsl:text>: </xsl:text> - <xsl:value-of select="normalize-space(string(para))"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="normalize-space(string(.))"/> - </xsl:otherwise> - </xsl:choose> - <xsl:if test="self::title"> - <xsl:text>:</xsl:text> - </xsl:if> - <xsl:if test="not(position() = last())"> - <xsl:text> </xsl:text> - </xsl:if> - </xsl:for-each> - </xsl:variable> - - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property">dcterms:description</xsl:attribute> - <xsl:copy-of select="$content"/> - </xsl:element> - - <xsl:if test="$epub.include.optional.metadata.dc.elements != 0"> - <dc:description> - <xsl:copy-of select="$content"/> - </dc:description> - </xsl:if> -</xsl:template> - -<xsl:template match="subjectset" mode="opf.metadata"> - <xsl:apply-templates select="subject/subjectterm" mode="opf.metadata"/> -</xsl:template> - -<xsl:template match="subjectterm" mode="opf.metadata"> - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property">dcterms:subject</xsl:attribute> - <xsl:value-of select="normalize-space(string(.))"/> - </xsl:element> - - <xsl:if test="$epub.include.optional.metadata.dc.elements != 0"> - <dc:subject> - <xsl:value-of select="normalize-space(string(.))"/> - </dc:subject> - </xsl:if> -</xsl:template> - -<xsl:template match="keywordset" mode="opf.metadata"> - <xsl:apply-templates select="keyword" mode="opf.metadata"/> -</xsl:template> - -<xsl:template match="keyword" mode="opf.metadata"> - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property">dcterms:subject</xsl:attribute> - <xsl:value-of select="normalize-space(string(.))"/> - </xsl:element> - - <xsl:if test="$epub.include.optional.metadata.dc.elements != 0"> - <dc:subject> - <xsl:value-of select="normalize-space(string(.))"/> - </dc:subject> - </xsl:if> -</xsl:template> - -<xsl:template match="publisher" mode="opf.metadata"> - <xsl:apply-templates select="publishername" mode="opf.metadata"/> -</xsl:template> - -<xsl:template match="publishername" mode="opf.metadata"> - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property">dcterms:publisher</xsl:attribute> - <xsl:value-of select="normalize-space(string(.))"/> - </xsl:element> - - <xsl:if test="$epub.include.optional.metadata.dc.elements != 0"> - <dc:publisher> - <xsl:value-of select="normalize-space(string(.))"/> - </dc:publisher> - </xsl:if> -</xsl:template> - -<xsl:template match="bibliocoverage" mode="opf.metadata"> - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property">dcterms:coverage</xsl:attribute> - <xsl:value-of select="normalize-space(string(.))"/> - </xsl:element> - - <xsl:if test="$epub.include.optional.metadata.dc.elements != 0"> - <dc:coverage> - <xsl:value-of select="normalize-space(string(.))"/> - </dc:coverage> - </xsl:if> -</xsl:template> - -<xsl:template match="bibliorelation" mode="opf.metadata"> - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property">dcterms:relation</xsl:attribute> - <xsl:value-of select="normalize-space(string(.))"/> - </xsl:element> - - <xsl:if test="$epub.include.optional.metadata.dc.elements != 0"> - <dc:relation> - <xsl:value-of select="normalize-space(string(.))"/> - </dc:relation> - </xsl:if> -</xsl:template> - -<xsl:template match="bibliosource" mode="opf.metadata"> - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property">dcterms:source</xsl:attribute> - <xsl:value-of select="normalize-space(string(.))"/> - </xsl:element> - - <xsl:if test="$epub.include.optional.metadata.dc.elements != 0"> - <dc:source> - <xsl:value-of select="normalize-space(string(.))"/> - </dc:source> - </xsl:if> -</xsl:template> - -<xsl:template match="copyright" mode="opf.metadata"> - <xsl:variable name="copyright.date"> - <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:variable> - - <!-- if no docbook date element, use copyright year for single date metadata --> - <xsl:if test="not(../date)"> - <xsl:variable name="date.content"> - <xsl:call-template name="format.meta.date"> - <xsl:with-param name="string"> - <xsl:call-template name="copyright.years"> - <xsl:with-param name="years" select="year[last()]"/> - <xsl:with-param name="print.ranges" select="0"/> - <xsl:with-param name="single.year.ranges" select="0"/> - </xsl:call-template> - </xsl:with-param> - </xsl:call-template> - </xsl:variable> - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property">dcterms:date</xsl:attribute> - <xsl:copy-of select="$date.content"/> - </xsl:element> - <xsl:if test="$epub.include.optional.metadata.dc.elements != 0"> - <dc:date> - <xsl:copy-of select="$date.content"/> - </dc:date> - </xsl:if> - </xsl:if> - - <xsl:variable name="rights.content"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key" select="'Copyright'"/> - </xsl:call-template> - <xsl:call-template name="gentext.space"/> - <xsl:text>©</xsl:text> - <xsl:call-template name="gentext.space"/> - <xsl:value-of select="$copyright.date"/> - <xsl:call-template name="gentext.space"/> - <xsl:apply-templates select="holder" mode="titlepage.mode"/> - </xsl:variable> - - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property">dcterms:rights</xsl:attribute> - <xsl:copy-of select="$rights.content"/> - </xsl:element> - <xsl:if test="$epub.include.optional.metadata.dc.elements != 0"> - <dc:rights> - <xsl:copy-of select="$rights.content"/> - </dc:rights> - </xsl:if> - - <xsl:element name="meta" namespace="{$opf.namespace}"> - <xsl:attribute name="property">dcterms:rightsHolder</xsl:attribute> - <xsl:apply-templates select="holder" mode="titlepage.mode"/> - </xsl:element> -</xsl:template> - -<xsl:template name="package.guide"> - - <xsl:variable name="info" select="./*[contains(local-name(.), 'info')][1]"/> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="node" select="."/> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="contains($toc.params, 'toc') or - $info/cover or - $info//mediaobject[@role='cover' or ancestor::cover]"> - <xsl:element namespace="{$opf.namespace}" name="guide"> - <xsl:if test="$info/cover or - $info//mediaobject[@role='cover' or ancestor::cover]"> - <xsl:element namespace="{$opf.namespace}" name="reference"> - <xsl:attribute name="href"> - <xsl:value-of select="$epub.cover.filename" /> - </xsl:attribute> - <xsl:attribute name="type">cover</xsl:attribute> - <xsl:attribute name="title">Cover</xsl:attribute> - </xsl:element> - </xsl:if> - - <xsl:if test="contains($toc.params, 'toc')"> - <xsl:element namespace="{$opf.namespace}" name="reference"> - <xsl:attribute name="href"> - <xsl:call-template name="toc-href"> - <xsl:with-param name="node" select="."/> - </xsl:call-template> - </xsl:attribute> - <xsl:attribute name="type">toc</xsl:attribute> - <xsl:attribute name="title">Table of Contents</xsl:attribute> - </xsl:element> - </xsl:if> - </xsl:element> - </xsl:if> -</xsl:template> - - -<xsl:template name="package-identifier"> - - <xsl:variable name="info" select="./*[contains(local-name(.), 'info')][1]"/> - - <xsl:choose> - <xsl:when test="$info/biblioid"> - <xsl:if test="$info/biblioid[1][@class = 'doi' or - @class = 'isbn' or - @class = 'isrn' or - @class = 'istc' or - @class = 'issn']"> - <xsl:text>urn:</xsl:text> - <xsl:value-of select="$info/biblioid[1]/@class"/> - <xsl:text>:</xsl:text> - </xsl:if> - <xsl:value-of select="normalize-space($info/biblioid[1])"/> - </xsl:when> - <xsl:when test="$info/isbn"> - <xsl:text>urn:isbn:</xsl:text> - <xsl:value-of select="$info/isbn[1]"/> - </xsl:when> - <xsl:when test="$info/issn"> - <xsl:text>urn:issn:</xsl:text> - <xsl:value-of select="$info/issn[1]"/> - </xsl:when> - <xsl:otherwise> - <xsl:choose> - <xsl:when test="$info/invpartnumber"> - <xsl:value-of select="$info/invpartnumber[1]"/> - </xsl:when> - <xsl:when test="$info/issuenum"> - <xsl:value-of select="$info/issuenum[1]"/> - </xsl:when> - <xsl:when test="$info/productnumber"> - <xsl:value-of select="$info/productnumber[1]"/> - </xsl:when> - <xsl:when test="$info/seriesvolnums"> - <xsl:value-of select="$info/seriesvolnums[1]"/> - </xsl:when> - <xsl:when test="$info/volumenum"> - <xsl:value-of select="$info/volumenum[1]"/> - </xsl:when> - <!-- Deprecated --> - <xsl:when test="$info/pubsnumber"> - <xsl:value-of select="$info/pubsnumber[1]"/> - </xsl:when> - </xsl:choose> - <xsl:text>_</xsl:text> - <xsl:choose> - <xsl:when test="@id"> - <xsl:value-of select="@id"/> - </xsl:when> - <xsl:when test="@xml:id"> - <xsl:value-of select="@xml:id"/> - </xsl:when> - <xsl:otherwise> - <!-- TODO: Do UUIDs here --> - <xsl:value-of select="generate-id(.)"/> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<!-- EPUB3: add epub:type attribute where appropriate --> -<xsl:template match="*" mode="common.html.attributes"> - <xsl:param name="class" select="local-name(.)"/> - <xsl:param name="inherit" select="0"/> - <xsl:call-template name="generate.html.lang"/> - <xsl:call-template name="dir"> - <xsl:with-param name="inherit" select="$inherit"/> - </xsl:call-template> - <xsl:apply-templates select="." mode="class.attribute"> - <xsl:with-param name="class" select="$class"/> - </xsl:apply-templates> - <xsl:call-template name="generate.html.title"/> - <xsl:apply-templates select="." mode="epub.type"/> -</xsl:template> - -<xsl:template match="*" mode="epub.type" priority="-1"/> - -<xsl:template match="chapter - |appendix - |epigraph - |warning - |preface - |index - |colophon - |glossary - |biblioentry - |bibliography - |dedication - |sidebar - |footnote - |glossterm - |glossdef - |bridgehead - |part" mode="epub.type"> - <xsl:variable name="type" select="local-name()"/> - - <xsl:if test="$epub.output.epub.types != 0"> - <xsl:attribute name="epub:type"> - <xsl:value-of select="$type"/> - </xsl:attribute> - </xsl:if> -</xsl:template> - -<xsl:template match="section[parent::chapter] | sect1" mode="epub.type"> - <xsl:if test="$epub.output.epub.types != 0"> - <xsl:attribute name="epub:type">subchapter</xsl:attribute> - </xsl:if> -</xsl:template> - -<xsl:template match="section[not(parent::chapter)] | - sect2 | - sect3 | - sect4 | - sect5 | - sect6" mode="epub.type"> - <xsl:if test="$epub.output.epub.types != 0"> - <xsl:attribute name="epub:type">division</xsl:attribute> - </xsl:if> -</xsl:template> - -<xsl:template match="note|tip|caution|important" mode="epub.type"> - <xsl:if test="$epub.output.epub.types != 0"> - <xsl:attribute name="epub:type">notice</xsl:attribute> - </xsl:if> -</xsl:template> - -<xsl:template match="orderedlist|itemizedlist|variablelist|simplelist" mode="epub.type"> - <xsl:if test="$epub.output.epub.types != 0"> - <xsl:attribute name="epub:type">list</xsl:attribute> - </xsl:if> -</xsl:template> - -<xsl:template match="listitem" mode="epub.type"> - <xsl:if test="$epub.output.epub.types != 0"> - <xsl:attribute name="epub:type">list-item</xsl:attribute> - </xsl:if> -</xsl:template> - -<!-- EPUB3: to add attributes to root output element --> -<xsl:template name="root.attributes"> - <!-- collect and output all namespace declarations --> - <xsl:call-template name="all.namespaces"/> -</xsl:template> - -<xsl:template name="all.namespaces"> - <!-- add the epub3 namespaces to the top output element --> - <xsl:variable name="temp"> - <epub:foo/> - <m:foo/> - <pls:foo/> - <ssml:foo/> - <svg:foo/> - </xsl:variable> - - <xsl:variable name="nodes" select="exsl:node-set($temp)"/> - <xsl:for-each select="$nodes//*/namespace::*"> - <xsl:copy-of select="."/> - </xsl:for-each> - -</xsl:template> - -<xsl:template name="add.package.namespaces"> - <!-- add the epub3 package namespaces to the top output element --> - <xsl:variable name="temp"> - <dc:foo/> - <dcterms:foo/> - </xsl:variable> - - <xsl:variable name="nodes" select="exsl:node-set($temp)"/> - <xsl:for-each select="$nodes//*[local-name(.) ='foo']/namespace::*"> - <xsl:if test="contains(., 'purl.org')"> - <xsl:copy-of select="."/> - </xsl:if> - </xsl:for-each> - -</xsl:template> - - -<xsl:template name="footnotes.attributes"> - <xsl:if test="$epub.output.epub.types != 0"> - <xsl:attribute name="epub:type">footnotes</xsl:attribute> - </xsl:if> -</xsl:template> - -<xsl:template name="package.manifest"> - <xsl:element name="manifest" namespace="{$opf.namespace}"> - <xsl:if test="$epub.include.ncx != 0"> - <xsl:call-template name="manifest.ncx"/> - </xsl:if> - <xsl:call-template name="manifest.fonts"/> - <xsl:call-template name="manifest.toc"/> - <xsl:call-template name="manifest.css"/> - <xsl:call-template name="manifest.cover"/> - <xsl:call-template name="manifest.other.items"/> - <xsl:call-template name="manifest.content.items"/> - <xsl:call-template name="user.manifest.items"/> - </xsl:element> -</xsl:template> - -<xsl:template name="user.manifest.items"/> - -<xsl:template name="manifest.css"> - <xsl:if test="$html.stylesheet != ''"> - <xsl:call-template name="css.item"> - <xsl:with-param name="stylesheets" select="$html.stylesheet"/> - </xsl:call-template> - </xsl:if> - <xsl:if test="string-length($docbook.css.source) != 0"> - <xsl:variable name="dfilename"> - <xsl:call-template name="css.output.filename"> - <xsl:with-param name="src" select="$docbook.css.source"/> - </xsl:call-template> - </xsl:variable> - <xsl:element namespace="{$opf.namespace}" name="item"> - <xsl:attribute name="media-type">text/css</xsl:attribute> - <xsl:attribute name="id">docbook-css</xsl:attribute> - <xsl:attribute name="href"> - <xsl:value-of select="$dfilename"/> - </xsl:attribute> - </xsl:element> - </xsl:if> - <xsl:if test="string-length($custom.css.source) != 0"> - <xsl:variable name="cfilename"> - <xsl:call-template name="css.output.filename"> - <xsl:with-param name="src" select="$custom.css.source"/> - </xsl:call-template> - </xsl:variable> - <xsl:element namespace="{$opf.namespace}" name="item"> - <xsl:attribute name="media-type">text/css</xsl:attribute> - <xsl:attribute name="id">custom-css</xsl:attribute> - <xsl:attribute name="href"> - <xsl:value-of select="$cfilename"/> - </xsl:attribute> - </xsl:element> - </xsl:if> -</xsl:template> - -<xsl:template name="css.item"> - <xsl:param name="stylesheets" select="''"/> - <xsl:param name="count" select="1"/> - - <xsl:choose> - <xsl:when test="contains($stylesheets, ' ')"> - <xsl:variable name="css.filename" select="substring-before($stylesheets, ' ')"/> - <xsl:if test="$css.filename != ''"> - <xsl:element namespace="{$opf.namespace}" name="item"> - <xsl:attribute name="media-type">text/css</xsl:attribute> - <xsl:attribute name="id"> - <xsl:text>html-css</xsl:text> - <xsl:if test="$count > 1"> - <xsl:value-of select="$count"/> - </xsl:if> - </xsl:attribute> - <xsl:attribute name="href"> - <xsl:value-of select="$css.filename"/> - </xsl:attribute> - </xsl:element> - </xsl:if> - - <xsl:call-template name="css.item"> - <xsl:with-param name="stylesheets" select="substring-after($stylesheets, ' ')"/> - <xsl:with-param name="count" select="$count + 1"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:if test="$stylesheets != ''"> - <xsl:element namespace="{$opf.namespace}" name="item"> - <xsl:attribute name="media-type">text/css</xsl:attribute> - <xsl:attribute name="id"> - <xsl:text>html-css</xsl:text> - <xsl:if test="$count > 1"> - <xsl:value-of select="$count"/> - </xsl:if> - </xsl:attribute> - <xsl:attribute name="href"> - <xsl:value-of select="$stylesheets"/> - </xsl:attribute> - </xsl:element> - </xsl:if> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="manifest.ncx"> - <xsl:element name="item" namespace="{$opf.namespace}"> - <xsl:attribute name="id"> - <xsl:value-of select="$epub.ncx.manifest.id"/> - </xsl:attribute> - <xsl:attribute name="href"> - <xsl:value-of select="$epub.ncx.filename"/> - </xsl:attribute> - <xsl:attribute name="media-type"> - <xsl:value-of select="$epub.ncx.mediatype"/> - </xsl:attribute> - </xsl:element> -</xsl:template> - -<xsl:template name="manifest.fonts"/> - -<!--Misc items in the manifest based on content --> -<xsl:template name="manifest.other.items"> -</xsl:template> - - -<xsl:template name="manifest.cover"> - <xsl:variable name="info" select="./*[contains(local-name(.), 'info')][1]"/> - <xsl:variable name="cover.image" - select="$info//mediaobject[@role='cover' or ancestor::cover]"/> - - <xsl:if test="$cover.image"> - - <!-- generate the manifest link to that page --> - <xsl:variable name="olist" select="$cover.image/imageobject|$cover.image/imageobjectco - |$cover.image/videoobject|$cover.image/audioobject - |$cover.image/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="output_filename"> - <xsl:call-template name="mediaobject.filename"> - <xsl:with-param name="object" select="$object"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="image.filename"> - <xsl:if test="$img.src.path != '' and - not(starts-with($output_filename, '/')) and - not(contains($output_filename, '://'))"> - <xsl:value-of select="$img.src.path"/> - </xsl:if> - <xsl:value-of select="$output_filename"/> - </xsl:variable> - <xsl:variable name="image.extension"> - <xsl:call-template name="filename-extension"> - <xsl:with-param name="filename" select="$image.filename"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="image.type"> - <xsl:call-template name="graphic.format.content-type"> - <xsl:with-param name="format" select="translate($image.extension, - &lowercase;, &uppercase;)"/> - </xsl:call-template> - </xsl:variable> - - <!-- Reference to cover html file --> - <xsl:element namespace="{$opf.namespace}" name="item"> - <xsl:attribute name="id"> - <xsl:value-of select="$epub.cover.filename.id"/> - </xsl:attribute> - <xsl:attribute name="href"> - <xsl:value-of select="$epub.cover.filename"/> - </xsl:attribute> - <xsl:attribute name="media-type"> - <xsl:value-of select="$epub.xhtml.mediatype"/> - </xsl:attribute> - </xsl:element> - - <!-- special item with property="cover-image" --> - <xsl:element namespace="{$opf.namespace}" name="item"> - <xsl:attribute name="id"> - <xsl:value-of select="$epub.cover.image.id"/> - </xsl:attribute> - <xsl:attribute name="properties">cover-image</xsl:attribute> - <xsl:attribute name="href"> - <xsl:value-of select="$image.filename"/> - </xsl:attribute> - <xsl:if test="$image.type"> - <xsl:attribute name="media-type"> - <xsl:value-of select="$image.type"/> - </xsl:attribute> - </xsl:if> - </xsl:element> - - <!-- And generate the cover html file --> - <xsl:apply-templates select="$cover.image"/> - - </xsl:if> -</xsl:template> - -<xsl:template name="manifest.toc"> - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="node" select="."/> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="contains($toc.params, 'toc')"> - <xsl:element namespace="{$opf.namespace}" name="item"> - <xsl:attribute name="id"> - <xsl:value-of select="$epub.html.toc.id"/> - </xsl:attribute> - <xsl:attribute name="properties">nav</xsl:attribute> - <xsl:attribute name="media-type"> - <xsl:value-of select="$epub.xhtml.mediatype"/> - </xsl:attribute> - <xsl:attribute name="href"> - <xsl:call-template name="toc-href"> - <xsl:with-param name="node" select="."/> - </xsl:call-template> - </xsl:attribute> - </xsl:element> - </xsl:if> -</xsl:template> - -<xsl:template name="toc-href"> - <xsl:param name="node" select="."/> - <!-- FIXME --> - <xsl:apply-templates select="$node" mode="recursive-chunk-filename"> - <xsl:with-param name="recursive" select="true()"/> - </xsl:apply-templates> - <xsl:text>-toc</xsl:text> - <xsl:value-of select="$html.ext"/> -</xsl:template> - -<xsl:template match="*" mode="recursive-chunk-filename"> - <!-- placeholder for real template in chunking stylesheet --> - <xsl:value-of select="concat(local-name(.), '-', generate-id(.))"/> -</xsl:template> - -<xsl:template name="manifest.content.items"> - <xsl:apply-templates select="." mode="package.manifest"/> - <xsl:call-template name="manifest.images"/> -</xsl:template> - -<xsl:template match="text()" mode="package.manifest"/> - -<xsl:template match="mediaobject|mediaobjectco|inlinemediaobject" priority="1" - mode="package.manifest"> - <!-- These are handled out of line so a unique list is created - to remove duplicate references --> -</xsl:template> - -<xsl:template match="*" mode="package.manifest"> - - <xsl:variable name="is.chunk"> - <xsl:call-template name="chunk"> - <xsl:with-param name="node" select="."/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="$is.chunk != 0"> - <xsl:variable name="href"> - <xsl:call-template name="href.target.with.base.dir"> - <xsl:with-param name="context" select="/"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="id" select="concat($epub.package.id.prefix, generate-id())"/> - - <xsl:variable name="properties.set"> - <xsl:call-template name="svg.property"/> - <xsl:text> </xsl:text> - <xsl:call-template name="mathml.property"/> - </xsl:variable> - - <xsl:variable name="properties" select="normalize-space($properties.set)"/> - - <xsl:element namespace="{$opf.namespace}" name="item"> - <xsl:attribute name="id"> - <xsl:value-of select="$id"/> - </xsl:attribute> - <xsl:attribute name="href"> - <xsl:value-of select="$href"/> - </xsl:attribute> - <xsl:attribute name="media-type">application/xhtml+xml</xsl:attribute> - <xsl:if test="string-length($properties) != 0"> - <xsl:attribute name="properties"> - <xsl:value-of select="$properties"/> - </xsl:attribute> - </xsl:if> - </xsl:element> - </xsl:if> - <xsl:apply-templates mode="package.manifest"/> - -</xsl:template> - -<xsl:template name="svg.property"> - <xsl:param name="this.chunk" select="."/> - - <xsl:variable name="genid" select="generate-id($this.chunk)"/> - - <!-- get the chunkfast div element for this chunk --> - <xsl:variable name="div" select="$chunkset[@id=$genid or @xml:id=$genid]"/> - - <!-- get the chunkfast div element the next chunk --> - <xsl:variable name="nextdiv" - select="($div/following-sibling::cf:div| - $div/following::cf:div| - $div/cf:div)[1]"/> - - <!-- get the element corresponding to the next chunk --> - <xsl:variable name="next.chunk" select="key('genid', ($nextdiv/@id|$nextdiv/@xml:id)[1])"/> - - <xsl:choose> - <xsl:when test="$next.chunk"> - <xsl:variable name="this.imagedata" - select="$this.chunk//mediaobject"/> - <xsl:variable name="before.next" - select="$next.chunk/preceding::mediaobject"/> - - <!-- select for an SVG imagedata in the intersection of them --> - <xsl:variable name="mediaobject.set" - select="$this.imagedata[count(.|$before.next) = count($before.next)]"/> - <xsl:variable name="svg.imagedata"> - <xsl:for-each select="$mediaobject.set"> - <xsl:variable name="olist" select="imageobject[not(@role = 'poster')] | - imageobjectco"/> - <xsl:variable name="mediaobject.index"> - <xsl:call-template name="select.mediaobject.index"> - <xsl:with-param name="olist" select="$olist"/> - </xsl:call-template> - </xsl:variable> - <xsl:variable name="object" select="$olist[position() = $mediaobject.index]"/> - <xsl:if test="$object/imagedata[contains( - substring(@fileref, string-length(@fileref)-3,4), '.svg')]"> - <xsl:text>svg</xsl:text> - </xsl:if> - </xsl:for-each> - </xsl:variable> - - <xsl:if test="contains($svg.imagedata, 'svg')"> - <xsl:text>svg</xsl:text> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="mediaobject.set" - select="$this.chunk//mediaobject"/> - <xsl:variable name="svg.imagedata"> - <xsl:for-each select="$mediaobject.set"> - <xsl:variable name="olist" select="imageobject[not(@role = 'poster')] | - imageobjectco"/> - <xsl:variable name="mediaobject.index"> - <xsl:call-template name="select.mediaobject.index"> - <xsl:with-param name="olist" select="$olist"/> - </xsl:call-template> - </xsl:variable> - <xsl:variable name="object" select="$olist[position() = $mediaobject.index]"/> - <xsl:if test="$object/imagedata[contains( - substring(@fileref, string-length(@fileref)-3,4), '.svg')]"> - <xsl:text>svg</xsl:text> - </xsl:if> - </xsl:for-each> - </xsl:variable> - - <xsl:if test="contains($svg.imagedata, 'svg')"> - <xsl:text>svg</xsl:text> - </xsl:if> - </xsl:otherwise> - </xsl:choose> - -</xsl:template> - -<xsl:template name="mathml.property"> - <xsl:param name="this.chunk" select="."/> - - <xsl:variable name="genid" select="generate-id($this.chunk)"/> - - <!-- get the chunkfast div element for this chunk --> - <xsl:variable name="div" select="$chunkset[@id=$genid or @xml:id=$genid]"/> - - <!-- get the chunkfast div element the next chunk --> - <xsl:variable name="nextdiv" - select="($div/following-sibling::cf:div| - $div/following::cf:div| - $div/cf:div)[1]"/> - - <!-- get the element corresponding to the next chunk --> - <xsl:variable name="next.chunk" select="key('genid', ($nextdiv/@id|$nextdiv/@xml:id)[1])"/> - - <xsl:variable name="this.math" - select="$this.chunk//m:*"/> - <xsl:variable name="before.next" - select="$next.chunk/preceding::m:*"/> - - <!-- select for an SVG imagedata in the intersection of them --> - <xsl:variable name="intersection" - select="$this.math[count(.|$before.next) = count($before.next)]"/> - - <xsl:if test="count($intersection) != 0"> - <xsl:text>mathml</xsl:text> - </xsl:if> -</xsl:template> - -<xsl:template name="manifest.image.item"> -</xsl:template> - -<!-- Need a uniqued list of images --> -<xsl:template name="manifest.images"> - <xsl:message>Generating image list ...</xsl:message> - <xsl:variable name="imagelist"> - <xsl:choose> - <xsl:when test="$rootid != ''"> - <xsl:apply-templates select="key('id', $rootid)" mode="enumerate-images"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="/" mode="enumerate-images"/> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$exsl.node.set.available != 0 and - function-available('set:distinct')"> - <xsl:for-each select="set:distinct(exsl:node-set($imagelist)/*)"> - <xsl:if test="string-length(tmp-href) != 0"> - <!-- convert the child elements to attributes --> - <xsl:element name="item" namespace="{$opf.namespace}"> - <xsl:attribute name="id"> - <xsl:value-of select="generate-id()"/> - </xsl:attribute> - <xsl:attribute name="href"> - <xsl:value-of select="tmp-href"/> - </xsl:attribute> - <xsl:attribute name="media-type"> - <xsl:value-of select="media-type"/> - </xsl:attribute> - </xsl:element> - </xsl:if> - </xsl:for-each> - </xsl:when> - <xsl:when test="$exsl.node.set.available != 0"> - <xsl:for-each select="exsl:node-set($imagelist)/*"> - <xsl:element name="item" namespace="{$opf.namespace}"> - <xsl:attribute name="id"> - <xsl:value-of select="generate-id()"/> - </xsl:attribute> - <xsl:attribute name="href"> - <xsl:value-of select="tmp-href"/> - </xsl:attribute> - <xsl:attribute name="media-type"> - <xsl:value-of select="media-type"/> - </xsl:attribute> - </xsl:element> - </xsl:for-each> - </xsl:when> - <xsl:otherwise> - <xsl:message terminate="yes"> - <xsl:text>ERROR: cannot process images list without </xsl:text> - <xsl:text>exsl:node-set() function</xsl:text> - </xsl:message> - <!-- cannot do this without node-set() --> - </xsl:otherwise> - </xsl:choose> - -</xsl:template> - -<xsl:template match="*" mode="enumerate-images"> - <xsl:apply-templates mode="enumerate-images"/> -</xsl:template> - -<xsl:template match="text()" mode="enumerate-images"/> - -<xsl:template match="graphic|inlinegraphic[@format!='linespecific']" - mode="enumerate-images"> -</xsl:template> - -<!-- cover image handled separates to give it an extra property attribute --> -<xsl:template match="mediaobject[@role='cover' or ancestor::cover]" - mode="enumerate-images"/> - -<xsl:template match="mediaobject|inlinemediaobject" mode="enumerate-images"> - - <xsl:variable name="olist" - select="imageobject[not(@role = 'poster')] - |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:apply-templates select="$object" mode="enumerate-images"/> - - <!-- also include a poster image if present --> - <xsl:apply-templates select="imageobject[@role = 'poster']" mode="enumerate-images"/> - -</xsl:template> - -<xsl:template match="imageobject|videoobject|audioobject" mode="enumerate-images"> - <xsl:param name="object" select="."/> - - <xsl:if test="$object"> - <xsl:variable name="output_filename"> - <xsl:call-template name="mediaobject.filename"> - <xsl:with-param name="object" select="$object"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="image.filename"> - <xsl:if test="$img.src.path != '' and - not(starts-with($output_filename, '/')) and - not(contains($output_filename, '://'))"> - <xsl:value-of select="$img.src.path"/> - </xsl:if> - <xsl:value-of select="$output_filename"/> - </xsl:variable> - - <xsl:variable name="image.extension"> - <xsl:call-template name="filename-extension"> - <xsl:with-param name="filename" select="$image.filename"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="image.type"> - <xsl:call-template name="graphic.format.content-type"> - <xsl:with-param name="format" select="translate($image.extension, - &lowercase;, &uppercase;)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:element name="tmp-filename" namespace=""> - <xsl:element name="tmp-href" namespace=""> - <xsl:value-of select="$image.filename"/> - </xsl:element> - <xsl:element name="media-type" namespace=""> - <xsl:value-of select="$image.type"/> - </xsl:element> - </xsl:element> - - </xsl:if> -</xsl:template> - -<!-- Add in the generated images --> -<xsl:template match="note|caution|warning|important|tip" mode="enumerate-images"> - <xsl:if test="$admon.graphics != 0"> - <xsl:variable name="image.filename"> - <xsl:call-template name="admon.graphic"/> - </xsl:variable> - - <xsl:variable name="image.type"> - <xsl:call-template name="graphic.format.content-type"> - <xsl:with-param name="format" select="translate( - substring-after($admon.graphics.extension,'.'), - &lowercase;, &uppercase;)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:element name="tmp-filename" namespace=""> - <xsl:element name="tmp-href" namespace=""> - <xsl:value-of select="$image.filename"/> - </xsl:element> - <xsl:element name="media-type" namespace=""> - <xsl:value-of select="$image.type"/> - </xsl:element> - </xsl:element> - - </xsl:if> -</xsl:template> - -<xsl:template match="callout" mode="enumerate-images"> - <!-- process arearefs to get name of callout bug image files --> - <xsl:if test="$callout.graphics != 0"> - <xsl:variable name="arearefs"> - <xsl:call-template name="callout.arearefs"> - <xsl:with-param name="arearefs" select="@arearefs"/> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="nodes" select="exsl:node-set($arearefs)"/> - - <xsl:for-each select="$nodes//*[@src]"> - <xsl:variable name="image.filename" select="@src"/> - - <xsl:variable name="image.type"> - <xsl:call-template name="graphic.format.content-type"> - <xsl:with-param name="format" select="translate( - substring-after($callout.graphics.extension,'.'), - &lowercase;, &uppercase;)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:element name="tmp-filename" namespace=""> - <xsl:element name="tmp-href" namespace=""> - <xsl:value-of select="$image.filename"/> - </xsl:element> - <xsl:element name="media-type" namespace=""> - <xsl:value-of select="$image.type"/> - </xsl:element> - </xsl:element> - </xsl:for-each> - - </xsl:if> -</xsl:template> - -<xsl:template match="co" mode="enumerate-images"> - <!-- process co to get name of callout bug image file --> - <xsl:if test="$callout.graphics != 0"> - <xsl:variable name="result"> - <xsl:apply-templates select="." mode="callout-bug"/> - </xsl:variable> - - <xsl:variable name="nodes" select="exsl:node-set($result)"/> - - <xsl:for-each select="$nodes//*[@src]"> - <xsl:variable name="image.filename" select="@src"/> - - <xsl:variable name="image.type"> - <xsl:call-template name="graphic.format.content-type"> - <xsl:with-param name="format" select="translate( - substring-after($callout.graphics.extension,'.'), - &lowercase;, &uppercase;)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:element name="tmp-filename" namespace=""> - <xsl:element name="tmp-href" namespace=""> - <xsl:value-of select="$image.filename"/> - </xsl:element> - <xsl:element name="media-type" namespace=""> - <xsl:value-of select="$image.type"/> - </xsl:element> - </xsl:element> - </xsl:for-each> - - </xsl:if> - -</xsl:template> - -<!-- ======================================================== --> -<!-- NCX templates are for backwards compatibility with EPUB2 --> -<!-- ======================================================== --> - -<xsl:template name="ncx"> - <xsl:message>Generating NCX file ...</xsl:message> - <xsl:call-template name="write.chunk"> - <xsl:with-param name="filename"> - <xsl:value-of select="$epub.ncx.pathname" /> - </xsl:with-param> - <xsl:with-param name="method" select="'xml'" /> - <xsl:with-param name="encoding" select="'utf-8'" /> - <xsl:with-param name="indent" select="'no'" /> - <xsl:with-param name="quiet" select="$chunk.quietly" /> - <xsl:with-param name="doctype-public" select="''"/> <!-- intentionally blank --> - <xsl:with-param name="doctype-system" select="''"/> <!-- intentionally blank --> - <xsl:with-param name="content"> - <xsl:element name="ncx" namespace="{$ncx.namespace}"> - <xsl:attribute name="version">2005-1</xsl:attribute> - - <!-- Via Martin Goerner: On covers: the IDPF2.0 standard unfortunately does not have a provision for - covers. We had to add one and we did so in conjunction with the IDPF and - various publishers. The tag chosen to define the covers is: - <meta name="cover" content="-reference to a manifest item-"> - Then, we also added a bit of logic to get rid cleanly of the HTML cover - people usually add because the logical cover is not specced by the IDPF. So, - if the HTML cover item is marked linear="no" AND there is a guide item of - type="cover" pointing to it AND there is a logical cover specified in a - <meta name="cover"> tag, THEN, the HTML cover is discarded. --> - <xsl:element name="head" namespace="{$ncx.namespace}"> - <xsl:if test="/*/*[cover or contains(name(.), 'info')]//mediaobject[@role='cover' or ancestor::cover]"> - <xsl:element name="meta" namespace="{$ncx.namespace}"> - <xsl:attribute name="name">cover</xsl:attribute> - <xsl:attribute name="content"> - <xsl:value-of select="$epub.cover.filename.id"/> - </xsl:attribute> - </xsl:element> - </xsl:if> - <xsl:element name="meta" namespace="{$ncx.namespace}"> - <xsl:attribute name="name">dtb:uid</xsl:attribute> - <xsl:attribute name="content"><xsl:call-template name="package-identifier"/></xsl:attribute> - </xsl:element> - </xsl:element> - - <xsl:choose> - <xsl:when test="$rootid != ''"> - <xsl:variable name="title"> - <xsl:if test="$epub.autolabel != 0"> - <xsl:variable name="label.markup"> - <xsl:apply-templates select="key('id',$rootid)" mode="label.markup" /> - </xsl:variable> - <xsl:if test="normalize-space($label.markup)"> - <xsl:value-of select="concat($label.markup,$autotoc.label.separator)" /> - </xsl:if> - </xsl:if> - <xsl:apply-templates select="key('id',$rootid)" mode="title.markup" /> - </xsl:variable> - <xsl:variable name="href"> - <xsl:call-template name="href.target.with.base.dir"> - <xsl:with-param name="object" select="key('id',$rootid)" /> - </xsl:call-template> - </xsl:variable> - <xsl:element name="docTitle" namespace="{$ncx.namespace}"> - <xsl:element name="text" namespace="{$ncx.namespace}"><xsl:value-of select="normalize-space($title)" /> </xsl:element> - </xsl:element> - <xsl:element name="navMap" namespace="{$ncx.namespace}"> - <xsl:apply-templates select="key('id',$rootid)/*" mode="ncx" /> - </xsl:element> - </xsl:when> - <xsl:otherwise> - <xsl:variable name="title"> - <xsl:if test="$epub.autolabel != 0"> - <xsl:variable name="label.markup"> - <xsl:apply-templates select="/*" mode="label.markup" /> - </xsl:variable> - <xsl:if test="normalize-space($label.markup)"> - <xsl:value-of select="concat($label.markup,$autotoc.label.separator)" /> - </xsl:if> - </xsl:if> - <xsl:apply-templates select="/*" mode="title.markup" /> - </xsl:variable> - <xsl:variable name="href"> - <xsl:call-template name="href.target.with.base.dir"> - <xsl:with-param name="object" select="/" /> - </xsl:call-template> - </xsl:variable> - <xsl:element name="docTitle" namespace="{$ncx.namespace}"> - <xsl:element name="text" namespace="{$ncx.namespace}"> - <xsl:value-of select="normalize-space($title)" /> - </xsl:element> - </xsl:element> - <xsl:element name="navMap" namespace="{$ncx.namespace}"> - <xsl:choose> - <xsl:when test="$root.is.a.chunk != '0'"> - <xsl:apply-templates select="/*" mode="ncx" /> - <xsl:apply-templates select="/*/*" mode="ncx" /> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="/*/*" mode="ncx" /> - </xsl:otherwise> - </xsl:choose> - </xsl:element> - </xsl:otherwise> - - </xsl:choose> - </xsl:element> - </xsl:with-param> - </xsl:call-template> -</xsl:template> - -<xsl:template match="book| - article| - topic| - part| - reference| - preface| - chapter| - bibliography| - appendix| - glossary| - section| - sect1| - sect2| - sect3| - sect4| - sect5| - refentry| - colophon| - bibliodiv[title]| - setindex| - index" - mode="ncx"> - <xsl:variable name="depth" select="count(ancestor::*)"/> - <xsl:variable name="title"> - <xsl:if test="$epub.autolabel != 0"> - <xsl:variable name="label.markup"> - <xsl:apply-templates select="." mode="label.markup" /> - </xsl:variable> - <xsl:if test="normalize-space($label.markup)"> - <xsl:value-of - select="concat($label.markup,$autotoc.label.separator)" /> - </xsl:if> - </xsl:if> - <xsl:apply-templates select="." mode="title.markup" /> - </xsl:variable> - - <xsl:variable name="href"> - <xsl:call-template name="href.target.with.base.dir"> - <xsl:with-param name="context" select="/" /> - <!-- Generate links relative to the location of root file/toc.xml file --> - </xsl:call-template> - </xsl:variable> - - <xsl:variable name="id"> - <xsl:value-of select="generate-id(.)"/> - </xsl:variable> - <xsl:variable name="order"> - <xsl:value-of select="$depth + - count(preceding::part| - preceding::reference| - preceding::book[parent::set]| - preceding::preface| - preceding::chapter| - preceding::bibliography| - preceding::appendix| - preceding::article| - preceding::topic| - preceding::glossary| - preceding::section[not(parent::partintro)]| - preceding::sect1[not(parent::partintro)]| - preceding::sect2[not(ancestor::partintro)]| - preceding::sect3[not(ancestor::partintro)]| - preceding::sect4[not(ancestor::partintro)]| - preceding::sect5[not(ancestor::partintro)]| - preceding::refentry| - preceding::colophon| - preceding::bibliodiv[title]| - preceding::index)"/> - </xsl:variable> - - <xsl:element name="navPoint" namespace="{$ncx.namespace}"> - <xsl:attribute name="id"> - <xsl:value-of select="$id"/> - </xsl:attribute> - - <xsl:attribute name="playOrder"> - <xsl:choose> - <xsl:when test="/*[self::set]"> - <xsl:value-of select="$order"/> - </xsl:when> - <xsl:when test="$root.is.a.chunk != '0'"> - <xsl:value-of select="$order + 1"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$order - 0"/> - </xsl:otherwise> - </xsl:choose> - </xsl:attribute> - <xsl:element name="navLabel" namespace="{$ncx.namespace}"> - <xsl:element name="text" namespace="{$ncx.namespace}"><xsl:value-of select="normalize-space($title)"/> </xsl:element> - </xsl:element> - <xsl:element name="content" namespace="{$ncx.namespace}"> - <xsl:attribute name="src"> - <xsl:value-of select="$href"/> - </xsl:attribute> - </xsl:element> - <xsl:if test="$depth != 0"> - <!-- Don't recurse on root element, but treat it as a single point so - the progress bar shows all top level children --> - <xsl:apply-templates select="book[parent::set]|part|reference|preface|chapter|bibliography|appendix|article|topic|glossary|section|sect1|sect2|sect3|sect4|sect5|refentry|colophon|bibliodiv[title]|setindex|index" mode="ncx"/> - </xsl:if> - </xsl:element> - -</xsl:template> - -<xsl:template match="text()" mode="ncx" /> - -<xsl:template name="package.spine"> - - <xsl:variable name="toc.params"> - <xsl:call-template name="find.path.params"> - <xsl:with-param name="node" select="."/> - <xsl:with-param name="table" select="normalize-space($generate.toc)"/> - </xsl:call-template> - </xsl:variable> - - <xsl:element namespace="http://www.idpf.org/2007/opf" name="spine"> - <xsl:if test="$epub.include.ncx != 0"> - <xsl:attribute name="toc"> - <xsl:value-of select="$epub.ncx.manifest.id"/> - </xsl:attribute> - </xsl:if> - - <xsl:call-template name="spine.cover"/> - - - <xsl:if test="contains($toc.params, 'toc')"> - <xsl:element namespace="http://www.idpf.org/2007/opf" name="itemref"> - <xsl:attribute name="idref"> <xsl:value-of select="$epub.html.toc.id"/> </xsl:attribute> - <xsl:attribute name="linear">yes</xsl:attribute> - </xsl:element> - </xsl:if> - - <!-- TODO: be nice to have a idref="titlepage" here --> - <xsl:choose> - <xsl:when test="$root.is.a.chunk != '0'"> - <xsl:apply-templates select="/*" mode="package.spine"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="/*/*" mode="package.spine"/> - </xsl:otherwise> - </xsl:choose> - - </xsl:element> -</xsl:template> - -<xsl:template name="spine.cover"> - <xsl:variable name="info" select="./*[contains(local-name(.), 'info')][1]"/> - <xsl:variable name="cover.image" - select="$info//mediaobject[@role='cover' or ancestor::cover]"/> - - <xsl:if test="$cover.image"> - <!-- generate the spine reference to that cover html file --> - <xsl:element namespace="http://www.idpf.org/2007/opf" name="itemref"> - <xsl:attribute name="idref"> - <xsl:value-of select="$epub.cover.filename.id"/> - </xsl:attribute> - <xsl:attribute name="linear"> - <xsl:choose> - <xsl:when test="$epub.cover.linear"> - <xsl:text>yes</xsl:text> - </xsl:when> - <xsl:otherwise>no</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - </xsl:element> - </xsl:if> -</xsl:template> - -<xsl:template match="*" mode="package.spine"> - <xsl:variable name="is.chunk"> - <xsl:call-template name="chunk"> - <xsl:with-param name="node" select="."/> - </xsl:call-template> - </xsl:variable> - - <xsl:if test="$is.chunk != 0"> - <xsl:element namespace="http://www.idpf.org/2007/opf" name="itemref"> - <xsl:attribute name="idref"> - <xsl:value-of select="concat($epub.package.id.prefix, generate-id(.))"/> - </xsl:attribute> - </xsl:element> - <xsl:apply-templates select="*|.//refentry" mode="package.spine"/> - </xsl:if> -</xsl:template> - -<xsl:template match="*" mode="container"> - <xsl:call-template name="container"/> -</xsl:template> - -<xsl:template name="container"> - <!-- The path in rootfile does not include all of base.dir, only the last part --> - <xsl:variable name="full-path-dir"> - <xsl:call-template name="filename-basename"> - <xsl:with-param name="filename" select="$chunk.base.dir"/> - </xsl:call-template> - </xsl:variable> - <xsl:call-template name="write.chunk"> - <xsl:with-param name="filename"> - <xsl:value-of select="$epub.container.pathname" /> - </xsl:with-param> - <xsl:with-param name="method" select="'xml'" /> - <xsl:with-param name="encoding" select="'utf-8'" /> - <xsl:with-param name="indent" select="'no'" /> - <xsl:with-param name="quiet" select="$chunk.quietly" /> - <xsl:with-param name="doctype-public" select="''"/> <!-- intentionally blank --> - <xsl:with-param name="doctype-system" select="''"/> <!-- intentionally blank --> - - <xsl:with-param name="content"> - <xsl:element namespace="urn:oasis:names:tc:opendocument:xmlns:container" name="container"> - <xsl:attribute name="version">1.0</xsl:attribute> - <xsl:element namespace="urn:oasis:names:tc:opendocument:xmlns:container" name="rootfiles"> - <xsl:element namespace="urn:oasis:names:tc:opendocument:xmlns:container" name="rootfile"> - <xsl:attribute name="full-path"> - <xsl:value-of - select="concat($full-path-dir, $epub.package.filename)"/> - </xsl:attribute> - <xsl:attribute name="media-type"> - <xsl:text>application/oebps-package+xml</xsl:text> - </xsl:attribute> - </xsl:element> - </xsl:element> - </xsl:element> - </xsl:with-param> - </xsl:call-template> -</xsl:template> - -<xsl:template name="mimetype"> - <xsl:call-template name="write.text.chunk"> - <xsl:with-param name="filename" select="$epub.mimetype.pathname"/> - <xsl:with-param name="content" select="$epub.mimetype.value"/> - </xsl:call-template> -</xsl:template> - -<xsl:template match="mediaobject[@role='cover' or ancestor::cover]"> - <xsl:call-template name="write.chunk"> - <xsl:with-param name="filename"> - <xsl:value-of select="$epub.cover.pathname" /> - </xsl:with-param> - <xsl:with-param name="method" select="'xml'" /> - <xsl:with-param name="encoding" select="'utf-8'" /> - <xsl:with-param name="indent" select="'no'" /> - <xsl:with-param name="quiet" select="$chunk.quietly" /> - <xsl:with-param name="content"> - <xsl:element namespace="http://www.w3.org/1999/xhtml" name="html"> - <xsl:element namespace="http://www.w3.org/1999/xhtml" name="head"> - <xsl:element namespace="http://www.w3.org/1999/xhtml" name="title">Cover</xsl:element> - <xsl:element namespace="http://www.w3.org/1999/xhtml" name="style"> - <xsl:attribute name="type">text/css</xsl:attribute> - <!-- Help the cover image scale nicely in the CSS then apply a max-width to look better in Adobe Digital Editions --> - <xsl:text> img { max-width: 100%; }</xsl:text> - </xsl:element> - </xsl:element> - <xsl:element namespace="http://www.w3.org/1999/xhtml" name="body"> - <xsl:element namespace="http://www.w3.org/1999/xhtml" name="div"> - <xsl:attribute name="id"> - <xsl:value-of select="$epub.cover.image.id"/> - </xsl:attribute> - <xsl:choose> - <xsl:when test="imageobject[@role='front-large']"> - <xsl:apply-templates select="imageobject[@role='front-large']"/> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates select="imageobject[1]"/> - </xsl:otherwise> - </xsl:choose> - </xsl:element> - <!-- If this is defined as an explicit cover page, then process - any remaining text --> - <xsl:if test="ancestor::cover"> - <xsl:apply-templates select="ancestor::cover/para"/> - </xsl:if> - </xsl:element> - </xsl:element> - </xsl:with-param> - </xsl:call-template> -</xsl:template> - -<!-- EPUB3: use <nav> and <ol> in TOC lists --> -<xsl:template name="make.toc"> - <xsl:param name="toc-context" select="."/> - <xsl:param name="toc.title.p" select="true()"/> - <xsl:param name="nodes" select="/NOT-AN-ELEMENT"/> - - <xsl:variable name="nodes.plus" select="$nodes | qandaset"/> - - <xsl:variable name="toc.title"> - <xsl:if test="$toc.title.p"> - <xsl:choose> - <xsl:when test="$make.clean.html != 0"> - <div class="toc-title"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key">TableofContents</xsl:with-param> - </xsl:call-template> - </div> - </xsl:when> - <xsl:otherwise> - <p> - <b> - <xsl:call-template name="gentext"> - <xsl:with-param name="key">TableofContents</xsl:with-param> - </xsl:call-template> - </b> - </p> - </xsl:otherwise> - </xsl:choose> - </xsl:if> - </xsl:variable> - - <xsl:choose> - <xsl:when test="$manual.toc != ''"> - <xsl:variable name="id"> - <xsl:call-template name="object.id"/> - </xsl:variable> - <xsl:variable name="toc" select="document($manual.toc, .)"/> - <xsl:variable name="tocentry" select="$toc//tocentry[@linkend=$id]"/> - <xsl:if test="$tocentry and $tocentry/*"> - <div class="toc"> - <xsl:copy-of select="$toc.title"/> - <nav epub:type="toc"> - <xsl:element name="{$toc.list.type}"> - <xsl:call-template name="manual-toc"> - <xsl:with-param name="tocentry" select="$tocentry/*[1]"/> - </xsl:call-template> - </xsl:element> - </nav> - </div> - </xsl:if> - </xsl:when> - <xsl:otherwise> - <xsl:choose> - <xsl:when test="$qanda.in.toc != 0"> - <div class="toc"> - <xsl:copy-of select="$toc.title"/> - <nav epub:type="toc"> - <xsl:element name="{$toc.list.type}"> - <xsl:if test="$nodes.plus"> - <xsl:apply-templates select="$nodes.plus" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </xsl:if> - </xsl:element> - </nav> - </div> - </xsl:when> - <xsl:otherwise> - <div class="toc"> - <xsl:copy-of select="$toc.title"/> - <nav epub:type="toc"> - <xsl:element name="{$toc.list.type}"> - <xsl:if test="$nodes"> - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </xsl:if> - </xsl:element> - </nav> - </div> - </xsl:otherwise> - </xsl:choose> - - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="list.of.titles"> - <xsl:param name="toc-context" select="."/> - <xsl:param name="titles" select="'table'"/> - <xsl:param name="nodes" select=".//table"/> - - <xsl:variable name="epub.type"> - <xsl:choose> - <xsl:when test="$titles='table'">lot</xsl:when> - <xsl:when test="$titles='figure'">loi</xsl:when> - <xsl:when test="$titles='equation'">loi</xsl:when> - <xsl:when test="$titles='example'">loi</xsl:when> - <xsl:when test="$titles='procedure'">loi</xsl:when> - <xsl:otherwise>loi</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:if test="$nodes"> - <div class="list-of-{$titles}s"> - <nav epub:type="{$epub.type}"> - <h4 class="toc-title"> - <xsl:call-template name="gentext"> - <xsl:with-param name="key"> - <xsl:choose> - <xsl:when test="$titles='table'">ListofTables</xsl:when> - <xsl:when test="$titles='figure'">ListofFigures</xsl:when> - <xsl:when test="$titles='equation'">ListofEquations</xsl:when> - <xsl:when test="$titles='example'">ListofExamples</xsl:when> - <xsl:when test="$titles='procedure'">ListofProcedures</xsl:when> - <xsl:otherwise>ListofUnknown</xsl:otherwise> - </xsl:choose> - </xsl:with-param> - </xsl:call-template> - </h4> - - <xsl:element name="{$toc.list.type}"> - <xsl:apply-templates select="$nodes" mode="toc"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </xsl:element> - </nav> - </div> - </xsl:if> -</xsl:template> - -<!-- EPUB3: add hidden="" for sections below toc.section.depth --> -<xsl:template name="subtoc"> - <xsl:param name="toc-context" select="."/> - <xsl:param name="nodes" select="NOT-AN-ELEMENT"/> - - <xsl:variable name="nodes.plus" select="$nodes | qandaset"/> - - <xsl:variable name="depth"> - <xsl:choose> - <xsl:when test="local-name(.) = 'section'"> - <xsl:value-of select="count(ancestor::section) + 1"/> - </xsl:when> - <xsl:when test="local-name(.) = 'sect1'">1</xsl:when> - <xsl:when test="local-name(.) = 'sect2'">2</xsl:when> - <xsl:when test="local-name(.) = 'sect3'">3</xsl:when> - <xsl:when test="local-name(.) = 'sect4'">4</xsl:when> - <xsl:when test="local-name(.) = 'sect5'">5</xsl:when> - <xsl:when test="local-name(.) = 'refsect1'">1</xsl:when> - <xsl:when test="local-name(.) = 'refsect2'">2</xsl:when> - <xsl:when test="local-name(.) = 'refsect3'">3</xsl:when> - <xsl:when test="local-name(.) = 'simplesect'"> - <!-- sigh... --> - <xsl:choose> - <xsl:when test="local-name(..) = 'section'"> - <xsl:value-of select="count(ancestor::section)"/> - </xsl:when> - <xsl:when test="local-name(..) = 'sect1'">2</xsl:when> - <xsl:when test="local-name(..) = 'sect2'">3</xsl:when> - <xsl:when test="local-name(..) = 'sect3'">4</xsl:when> - <xsl:when test="local-name(..) = 'sect4'">5</xsl:when> - <xsl:when test="local-name(..) = 'sect5'">6</xsl:when> - <xsl:when test="local-name(..) = 'refsect1'">2</xsl:when> - <xsl:when test="local-name(..) = 'refsect2'">3</xsl:when> - <xsl:when test="local-name(..) = 'refsect3'">4</xsl:when> - <xsl:otherwise>1</xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise>0</xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:variable name="depth.from.context" select="count(ancestor::*)-count($toc-context/ancestor::*)"/> - - <xsl:variable name="subtoc"> - <xsl:element name="{$toc.list.type}"> - <xsl:choose> - <xsl:when test="$toc.listitem.type = 'li' - and $toc.section.depth > $depth and - ( ($qanda.in.toc = 0 and count($nodes)>0) or - ($qanda.in.toc != 0 and count($nodes.plus)>0) ) - and $toc.max.depth > $depth.from.context"> - <!-- No @hidden attribute --> - </xsl:when> - <xsl:otherwise> - <!-- Add empty @hidden attribute if too deep --> - <xsl:attribute name="hidden"></xsl:attribute> - </xsl:otherwise> - </xsl:choose> - - <xsl:choose> - <xsl:when test="$qanda.in.toc != 0"> - <xsl:apply-templates mode="toc" select="$nodes.plus"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </xsl:when> - <xsl:otherwise> - <xsl:apply-templates mode="toc" select="$nodes"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:apply-templates> - </xsl:otherwise> - </xsl:choose> - </xsl:element> - </xsl:variable> - - <xsl:variable name="subtoc.list"> - <xsl:choose> - <xsl:when test="$toc.dd.type = ''"> - <xsl:copy-of select="$subtoc"/> - </xsl:when> - <xsl:otherwise> - <xsl:element name="{$toc.dd.type}"> - <xsl:copy-of select="$subtoc"/> - </xsl:element> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - - <xsl:element name="{$toc.listitem.type}"> - <xsl:call-template name="toc.line"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> - <xsl:if test="$toc.listitem.type = 'li' - and - ( ($qanda.in.toc = 0 and count($nodes)>0) or - ($qanda.in.toc != 0 and count($nodes.plus)>0) ) "> - <xsl:copy-of select="$subtoc.list"/> - </xsl:if> - </xsl:element> -</xsl:template> - -<!-- Inserted when a title is blank to avoid epubcheck error --> -<xsl:param name="toc.entry.default.text"> </xsl:param> - -<!-- EPUB3: either <a> or <span>, but not both --> -<xsl:template name="toc.line"> - <xsl:param name="toc-context" select="."/> - <xsl:param name="depth" select="1"/> - <xsl:param name="depth.from.context" select="8"/> - - <xsl:variable name="title"> - <xsl:apply-templates select="." mode="title.markup"/> - </xsl:variable> - - <a> - <xsl:attribute name="href"> - <xsl:call-template name="href.target"> - <xsl:with-param name="context" select="$toc-context"/> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> - </xsl:attribute> - - <!-- * if $autotoc.label.in.hyperlink is non-zero, then output the label --> - <!-- * as part of the hyperlinked title --> - <xsl:if test="not($autotoc.label.in.hyperlink = 0)"> - <xsl:variable name="label"> - <xsl:apply-templates select="." mode="label.markup"/> - </xsl:variable> - <xsl:copy-of select="$label"/> - <xsl:if test="$label != ''"> - <xsl:value-of select="$autotoc.label.separator"/> - </xsl:if> - </xsl:if> - - <xsl:choose> - <xsl:when test="string-length(normalize-space($title)) != 0"> - <xsl:copy-of select="$title"/> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$toc.entry.default.text"/> - </xsl:otherwise> - </xsl:choose> - </a> -</xsl:template> - -<!-- Make sure all text is inside the <a> element for epub3 --> -<xsl:template match="figure|table|example|equation|procedure" mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:element name="{$toc.listitem.type}"> - <a> - <xsl:attribute name="href"> - <xsl:call-template name="href.target"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> - </xsl:attribute> - <xsl:variable name="label"> - <xsl:apply-templates select="." mode="label.markup"/> - </xsl:variable> - <xsl:copy-of select="$label"/> - <xsl:if test="$label != ''"> - <xsl:value-of select="$autotoc.label.separator"/> - </xsl:if> - <xsl:apply-templates select="." mode="titleabbrev.markup"/> - </a> - </xsl:element> -</xsl:template> - -<!-- Remove spans from refentry TOC lines for epub3check --> -<xsl:template match="refentry" mode="toc"> - <xsl:param name="toc-context" select="."/> - - <xsl:variable name="refmeta" select=".//refmeta"/> - <xsl:variable name="refentrytitle" select="$refmeta//refentrytitle"/> - <xsl:variable name="refnamediv" select=".//refnamediv"/> - <xsl:variable name="refname" select="$refnamediv//refname"/> - <xsl:variable name="refdesc" select="$refnamediv//refdescriptor"/> - <xsl:variable name="title"> - <xsl:choose> - <xsl:when test="$refentrytitle"> - <xsl:apply-templates select="$refentrytitle[1]" mode="titleabbrev.markup"/> - </xsl:when> - <xsl:when test="$refdesc"> - <xsl:apply-templates select="$refdesc" mode="titleabbrev.markup"/> - </xsl:when> - <xsl:when test="$refname"> - <xsl:apply-templates select="$refname[1]" mode="titleabbrev.markup"/> - </xsl:when> - </xsl:choose> - </xsl:variable> - - <xsl:element name="{$toc.listitem.type}" namespace="http://www.w3.org/1999/xhtml"> - <a> - <xsl:attribute name="href"> - <xsl:call-template name="href.target"> - <xsl:with-param name="toc-context" select="$toc-context"/> - </xsl:call-template> - </xsl:attribute> - <xsl:copy-of select="$title"/> - <xsl:if test="$annotate.toc != 0"> - <!-- * DocBook 5 says inlinemediaobject (among other things) --> - <!-- * is allowed in refpurpose; so we need to run --> - <!-- * apply-templates on refpurpose here, instead of value-of --> - <!-- Set allow-anchors=0 to avoid indexterms and other links --> - <xsl:text> - </xsl:text> - <xsl:apply-templates select="refnamediv/refpurpose" mode="no.anchor.mode"/> - </xsl:if> - </a> - </xsl:element> -</xsl:template> - -<!-- Copy these here so relative document() open gets the correct css source --> -<xsl:template name="generate.default.css.file"> - <xsl:if test="$make.clean.html != 0 and - $generate.css.header = 0 and - $docbook.css.source != ''"> - <!-- Select default file relative to stylesheet --> - <xsl:variable name="css.node" select="document($docbook.css.source)/*[1]"/> - - <xsl:call-template name="generate.css.file"> - <xsl:with-param name="src" select="$docbook.css.source"/> - <xsl:with-param name="css.node" select="$css.node"/> - </xsl:call-template> - </xsl:if> -</xsl:template> - -<xsl:template name="generate.custom.css.file"> - <xsl:if test="$custom.css.source != '' and - $generate.css.header = 0"> - <!-- Select custom file relative to document --> - <xsl:variable name="css.node" select="document($custom.css.source,.)/*[1]"/> - - <xsl:call-template name="generate.css.file"> - <xsl:with-param name="src" select="$custom.css.source"/> - <xsl:with-param name="css.node" select="$css.node"/> - </xsl:call-template> - </xsl:if> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/profile-chunk.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/profile-chunk.xsl deleted file mode 100644 index 64ed1fedd..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/profile-chunk.xsl +++ /dev/null @@ -1,54 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<!--This file was created automatically by html2xhtml--> -<!--from the HTML stylesheets.--> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:exsl="http://exslt.org/common" xmlns="http://www.w3.org/1999/xhtml" version="1.0" exclude-result-prefixes="exsl"> - -<!-- ******************************************************************** - $Id: profile-chunk.xsl,v 1.1 2011-09-16 21:43:45 bobs Exp $ - ******************************************************************** - - 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. - - ******************************************************************** --> - -<!-- ==================================================================== --> - -<!-- First import the non-chunking templates that format elements - within each chunk file. In a customization, you should - create a separate non-chunking customization layer such - as mydocbook.xsl that imports the original docbook.xsl and - customizes any presentation templates. Then your chunking - customization should import mydocbook.xsl instead of - docbook.xsl. --> -<xsl:import href="docbook.xsl"/> - -<!-- chunk-common.xsl contains all the named templates for chunking. - In a customization file, you import chunk-common.xsl, then - add any customized chunking templates of the same name. - They will have import precedence over the original - chunking templates in chunk-common.xsl. --> -<xsl:import href="../xhtml/chunk-common.xsl"/> - -<!-- The manifest.xsl module is no longer imported because its - templates were moved into chunk-common and chunk-code --> - -<!-- chunk-code.xsl contains all the chunking templates that use - a match attribute. In a customization it should be referenced - using <xsl:include> instead of <xsl:import>, and then add - any customized chunking templates with match attributes. But be sure - to add a priority="1" to such customized templates to resolve - its conflict with the original, since they have the - same import precedence. - - Using xsl:include prevents adding another layer - of import precedence, which would cause any - customizations that use xsl:apply-imports to wrongly - apply the chunking version instead of the original - non-chunking version to format an element. --> -<xsl:include href="../xhtml/profile-chunk-code.xsl"/> - -<xsl:include href="epub3-chunk-mods.xsl"/> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/profile-docbook.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/profile-docbook.xsl deleted file mode 100644 index 7ff667df6..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/profile-docbook.xsl +++ /dev/null @@ -1,408 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<!--This file was created automatically by html2xhtml--> -<!--from the HTML stylesheets.--> -<!--This file was created automatically by xsl2profile--> -<!--from the DocBook XSL stylesheets.--> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ng="http://docbook.org/docbook-ng" xmlns:db="http://docbook.org/ns/docbook" xmlns:exsl="http://exslt.org/common" xmlns:exslt="http://exslt.org/common" xmlns="http://www.w3.org/1999/xhtml" exslt:dummy="dummy" ng:dummy="dummy" db:dummy="dummy" extension-element-prefixes="exslt" exclude-result-prefixes="db ng exsl exslt exslt" version="1.0"> - -<xsl:output method="xml" encoding="UTF-8" indent="no"/> - -<!-- ******************************************************************** - $Id: profile-docbook.xsl,v 1.1 2011-09-16 21:43:45 bobs Exp $ - ******************************************************************** - - 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"/> -<xsl:include href="../xhtml/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/targets.xsl"/> -<xsl:include href="../common/olink.xsl"/> -<xsl:include href="../common/pi.xsl"/> -<xsl:include href="../xhtml/autotoc.xsl"/> -<xsl:include href="../xhtml/autoidx.xsl"/> -<xsl:include href="../xhtml/lists.xsl"/> -<xsl:include href="../xhtml/callout.xsl"/> -<xsl:include href="../xhtml/verbatim.xsl"/> -<xsl:include href="../xhtml/graphics.xsl"/> -<xsl:include href="../xhtml/xref.xsl"/> -<xsl:include href="../xhtml/formal.xsl"/> -<xsl:include href="../xhtml/table.xsl"/> -<xsl:include href="../xhtml/htmltbl.xsl"/> -<xsl:include href="../xhtml/sections.xsl"/> -<xsl:include href="../xhtml/inline.xsl"/> -<xsl:include href="../xhtml/footnote.xsl"/> -<xsl:include href="../xhtml/html.xsl"/> -<xsl:include href="../xhtml/info.xsl"/> -<xsl:include href="../xhtml/keywords.xsl"/> -<xsl:include href="../xhtml/division.xsl"/> -<xsl:include href="../xhtml/toc.xsl"/> -<xsl:include href="../xhtml/index.xsl"/> -<xsl:include href="../xhtml/refentry.xsl"/> -<xsl:include href="../xhtml/math.xsl"/> -<xsl:include href="../xhtml/admon.xsl"/> -<xsl:include href="../xhtml/component.xsl"/> -<xsl:include href="../xhtml/biblio.xsl"/> -<xsl:include href="../xhtml/biblio-iso690.xsl"/> -<xsl:include href="../xhtml/glossary.xsl"/> -<xsl:include href="../xhtml/block.xsl"/> -<xsl:include href="../xhtml/task.xsl"/> -<xsl:include href="../xhtml/qandaset.xsl"/> -<xsl:include href="../xhtml/synop.xsl"/> -<xsl:include href="../xhtml/titlepage.xsl"/> -<xsl:include href="../xhtml/titlepage.templates.xsl"/> -<xsl:include href="../xhtml/pi.xsl"/> -<xsl:include href="../xhtml/ebnf.xsl"/> -<xsl:include href="../xhtml/chunker.xsl"/> -<xsl:include href="../xhtml/html-rtf.xsl"/> -<xsl:include href="../xhtml/annotations.xsl"/> -<xsl:include href="../common/stripns.xsl"/> - -<xsl:param name="stylesheet.result.type" select="'xhtml'"/> -<xsl:param name="htmlhelp.output" select="0"/> - -<!-- ==================================================================== --> - -<xsl:key name="id" match="*" use="@id|@xml:id"/> -<xsl:key name="gid" match="*" use="generate-id()"/> - -<!-- ==================================================================== --> - -<xsl:template match="*"> - <xsl:message> - <xsl:text>Element </xsl:text> - <xsl:value-of select="local-name(.)"/> - <xsl:text> in namespace '</xsl:text> - <xsl:value-of select="namespace-uri(.)"/> - <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> - - <span style="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> - </span> -</xsl:template> - -<xsl:template match="text()"> - <xsl:value-of select="."/> -</xsl:template> - -<xsl:template name="body.attributes"><xslo:if xmlns:xslo="http://www.w3.org/1999/XSL/Transform" test="starts-with($writing.mode, 'rl')"><xslo:attribute name="dir">rtl</xslo:attribute></xslo:if> -<!-- no apply-templates; make it empty except for dir for rtl--> -</xsl:template> - -<xsl:template name="head.content"> - <xsl:param name="node" select="."/> - <xsl:param name="title"> - <xsl:apply-templates select="$node" mode="object.title.markup.textonly"/> - </xsl:param> - - <title> - <xsl:copy-of select="$title"/> - </title> - - <xsl:if test="$html.base != ''"> - <base href="{$html.base}"/> - </xsl:if> - - <!-- Insert links to CSS files or insert literal style elements --> - <xsl:call-template name="generate.css"/> - - <xsl:if test="$html.stylesheet != ''"> - <xsl:call-template name="output.html.stylesheets"> - <xsl:with-param name="stylesheets" select="normalize-space($html.stylesheet)"/> - </xsl:call-template> - </xsl:if> - - <xsl:if test="$link.mailto.url != ''"> - <link rev="made" href="{$link.mailto.url}"/> - </xsl:if> - - <meta name="generator" content="DocBook {$DistroTitle} V{$VERSION}"/> - - <xsl:if test="$generate.meta.abstract != 0"> - <xsl:variable name="info" select="(articleinfo |bookinfo |prefaceinfo |chapterinfo |appendixinfo |sectioninfo |sect1info |sect2info |sect3info |sect4info |sect5info |referenceinfo |refentryinfo |partinfo |info |docinfo)[1]"/> - <xsl:if test="$info and $info/abstract"> - <meta name="description"> - <xsl:attribute name="content"> - <xsl:for-each select="$info/abstract[1]/*"> - <xsl:value-of select="normalize-space(.)"/> - <xsl:if test="position() < last()"> - <xsl:text> </xsl:text> - </xsl:if> - </xsl:for-each> - </xsl:attribute> - </meta> - </xsl:if> - </xsl:if> - - <xsl:if test="($draft.mode = 'yes' or ($draft.mode = 'maybe' and ancestor-or-self::*[@status][1]/@status = 'draft')) and $draft.watermark.image != ''"> - <style type="text/css"><xsl:text> -body { background-image: url('</xsl:text> -<xsl:value-of select="$draft.watermark.image"/><xsl:text>'); - background-repeat: no-repeat; - background-position: top left; - /* The following properties make the watermark "fixed" on the page. */ - /* I think that's just a bit too distracting for the reader... */ - /* background-attachment: fixed; */ - /* background-position: center center; */ - }</xsl:text> - </style> - </xsl:if> - <xsl:apply-templates select="." mode="head.keywords.content"/> -</xsl:template> - -<xsl:template name="output.html.stylesheets"> - <xsl:param name="stylesheets" select="''"/> - - <xsl:choose> - <xsl:when test="contains($stylesheets, ' ')"> - <xsl:variable name="css.filename" select="substring-before($stylesheets, ' ')"/> - - <xsl:call-template name="make.css.link"> - <xsl:with-param name="css.filename" select="$css.filename"/> - </xsl:call-template> - - <xsl:call-template name="output.html.stylesheets"> - <xsl:with-param name="stylesheets" select="substring-after($stylesheets, ' ')"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="$stylesheets != ''"> - <xsl:call-template name="make.css.link"> - <xsl:with-param name="css.filename" select="$stylesheets"/> - </xsl:call-template> - </xsl:when> - </xsl:choose> -</xsl:template> - -<!-- ============================================================ --> - -<xsl:template match="*" mode="head.keywords.content"> - <xsl:apply-templates select="chapterinfo/keywordset" mode="html.header"/> - <xsl:apply-templates select="appendixinfo/keywordset" mode="html.header"/> - <xsl:apply-templates select="prefaceinfo/keywordset" mode="html.header"/> - <xsl:apply-templates select="bookinfo/keywordset" mode="html.header"/> - <xsl:apply-templates select="setinfo/keywordset" mode="html.header"/> - <xsl:apply-templates select="articleinfo/keywordset" mode="html.header"/> - <xsl:apply-templates select="artheader/keywordset" mode="html.header"/> - <xsl:apply-templates select="sect1info/keywordset" mode="html.header"/> - <xsl:apply-templates select="sect2info/keywordset" mode="html.header"/> - <xsl:apply-templates select="sect3info/keywordset" mode="html.header"/> - <xsl:apply-templates select="sect4info/keywordset" mode="html.header"/> - <xsl:apply-templates select="sect5info/keywordset" mode="html.header"/> - <xsl:apply-templates select="sectioninfo/keywordset" mode="html.header"/> - <xsl:apply-templates select="refsect1info/keywordset" mode="html.header"/> - <xsl:apply-templates select="refsect2info/keywordset" mode="html.header"/> - <xsl:apply-templates select="refsect3info/keywordset" mode="html.header"/> - <xsl:apply-templates select="bibliographyinfo/keywordset" mode="html.header"/> - <xsl:apply-templates select="glossaryinfo/keywordset" mode="html.header"/> - <xsl:apply-templates select="indexinfo/keywordset" mode="html.header"/> - <xsl:apply-templates select="refentryinfo/keywordset" mode="html.header"/> - <xsl:apply-templates select="partinfo/keywordset" mode="html.header"/> - <xsl:apply-templates select="referenceinfo/keywordset" mode="html.header"/> - <xsl:apply-templates select="docinfo/keywordset" mode="html.header"/> - <xsl:apply-templates select="info/keywordset" mode="html.header"/> - - <xsl:if test="$inherit.keywords != 0 and parent::*"> - <xsl:apply-templates select="parent::*" mode="head.keywords.content"/> - </xsl:if> -</xsl:template> - -<!-- ============================================================ --> - -<xsl:template name="system.head.content"> - <xsl:param name="node" select="."/> - - <!-- FIXME: When chunking, only the annotations actually used - in this chunk should be referenced. I don't think it - does any harm to reference them all, but it adds - unnecessary bloat to each chunk. --> - <xsl:if test="$annotation.support != 0 and //annotation"> - <xsl:call-template name="add.annotation.links"/> - <script type="text/javascript"> - <xsl:text> -// Create PopupWindow objects</xsl:text> - <xsl:for-each select="//annotation"> - <xsl:text> -var popup_</xsl:text> - <xsl:value-of select="generate-id(.)"/> - <xsl:text> = new PopupWindow("popup-</xsl:text> - <xsl:value-of select="generate-id(.)"/> - <xsl:text>"); -</xsl:text> - <xsl:text>popup_</xsl:text> - <xsl:value-of select="generate-id(.)"/> - <xsl:text>.offsetY = 15; -</xsl:text> - <xsl:text>popup_</xsl:text> - <xsl:value-of select="generate-id(.)"/> - <xsl:text>.autoHide(); -</xsl:text> - </xsl:for-each> - </script> - - <style type="text/css"> - <xsl:value-of select="$annotation.css"/> - </style> - </xsl:if> - - <!-- system.head.content is like user.head.content, except that - it is called before head.content. This is important because it - means, for example, that <style> elements output by system.head.content - have a lower CSS precedence than the users stylesheet. --> -</xsl:template> - -<!-- ============================================================ --> - -<xsl:template name="user.preroot"> - <!-- Pre-root output, can be used to output comments and PIs. --> - <!-- This must not output any element content! --> -</xsl:template> - -<xsl:template name="user.head.content"> - <xsl:param name="node" select="."/> -</xsl:template> - -<xsl:template name="user.header.navigation"> - <xsl:param name="node" select="."/> -</xsl:template> - -<xsl:template name="user.header.content"> - <xsl:param name="node" select="."/> -</xsl:template> - -<xsl:template name="user.footer.content"> - <xsl:param name="node" select="."/> -</xsl:template> - -<xsl:template name="user.footer.navigation"> - <xsl:param name="node" select="."/> -</xsl:template> - -<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:choose> - <xsl:when test="count($profiled-nodes//*[@id=$rootid]) = 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:otherwise> - <xsl:if test="$collect.xref.targets = 'yes' or $collect.xref.targets = 'only'"> - <xsl:apply-templates select="key('id', $rootid)" mode="collect.targets"/> - </xsl:if> - <xsl:if test="$collect.xref.targets != 'only'"> - <xsl:apply-templates select="$profiled-nodes//*[@id=$rootid]" mode="process.root"/> - <xsl:if test="$tex.math.in.alt != ''"> - <xsl:apply-templates select="$profiled-nodes//*[@id=$rootid]" mode="collect.tex.math"/> - </xsl:if> - </xsl:if> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <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 test="$tex.math.in.alt != ''"> - <xsl:apply-templates select="$profiled-nodes" mode="collect.tex.math"/> - </xsl:if> - </xsl:if> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="*" mode="process.root"> - <xsl:variable name="doc" select="self::*"/> - - <xsl:call-template name="user.preroot"/> - <xsl:call-template name="root.messages"/> - - <html> - <head> - <xsl:call-template name="system.head.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - <xsl:call-template name="head.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - <xsl:call-template name="user.head.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - </head> - <body> - <xsl:call-template name="body.attributes"/> - <xsl:call-template name="user.header.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - <xsl:apply-templates select="."/> - <xsl:call-template name="user.footer.content"> - <xsl:with-param name="node" select="$doc"/> - </xsl:call-template> - </body> - </html> - <xsl:value-of select="$html.append"/> - - <!-- Generate any css files only once, not once per chunk --> - <xsl:call-template name="generate.css.files"/> -</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:template> - -<!-- ==================================================================== --> - -<xsl:template name="chunk"> - <xsl:param name="node" select="."/> - - <!-- The default is that we are not chunking... --> - <xsl:text>0</xsl:text> -</xsl:template> - -</xsl:stylesheet> diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/titlepage.templates.xml b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/titlepage.templates.xml deleted file mode 100644 index c9b8ee5f3..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/titlepage.templates.xml +++ /dev/null @@ -1,712 +0,0 @@ -<t:templates xmlns:t="http://nwalsh.com/docbook/xsl/template/1.0" - xmlns:param="http://nwalsh.com/docbook/xsl/template/1.0/param" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> - -<!-- ==================================================================== --> - -<t:titlepage t:element="article" t:wrapper="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title/> - <subtitle/> - <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> - <hr/> - </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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title/> - <subtitle/> - <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> - <hr/> - </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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title/> - <subtitle/> - <isbn/> - <issn/> - <biblioid/> - <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> - <hr/> - </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="part" t:wrapper="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="division.title" - param:node="ancestor-or-self::part[1]"/> - <subtitle/> - <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="partintro" t:wrapper="div"> - <t:titlepage-content t:side="recto"> - <title/> - <subtitle/> - <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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title/> - <subtitle/> - <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> - <hr/> - </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="refentry" t:wrapper="div" class="titlepage"> - <t:titlepage-content t:side="recto"> -<!-- uncomment this if you want refentry titlepages - <title t:force="1" - t:named-template="refentry.title" - param:node="ancestor-or-self::refentry[1]"/> ---> - </t:titlepage-content> - - <t:titlepage-content t:side="verso"> - </t:titlepage-content> - - <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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="component.title" - param:node="ancestor-or-self::dedication[1]"/> - <subtitle/> - </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="acknowledgements" t:wrapper="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="component.title" - param:node="ancestor-or-self::acknowledgements[1]"/> - <subtitle/> - </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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title/> - <subtitle/> - <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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title/> - <subtitle/> - <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="appendix" t:wrapper="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title/> - <subtitle/> - <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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title/> - <subtitle/> - <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> - <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> - </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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title/> - <subtitle/> - <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> - <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> - </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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title/> - <subtitle/> - <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> - <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> - </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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title/> - <subtitle/> - <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> - <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> - </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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title/> - <subtitle/> - <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> - <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> - </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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title/> - <subtitle/> - <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> - <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> - </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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title/> - <subtitle/> - <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> - <xsl:if test="count(parent::*)='0'"><hr/></xsl:if> - </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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="component.title" - param:node="ancestor-or-self::bibliography[1]"/> - <subtitle/> - </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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="component.title" - param:node="ancestor-or-self::glossary[1]"/> - <subtitle/> - </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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="component.title" - param:node="ancestor-or-self::index[1]"/> - <subtitle/> - </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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title - t:force="1" - t:named-template="component.title" - param:node="ancestor-or-self::setindex[1]"/> - <subtitle/> - </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="div" class="titlepage"> - <t:titlepage-content t:side="recto"> - <title - t:named-template="formal.object.heading" - param:object="ancestor-or-self::sidebar[1]"/> - <subtitle/> - </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-1.78.1/epub3/titlepage.templates.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/titlepage.templates.xsl deleted file mode 100644 index e2b5e37fa..000000000 --- a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/epub3/titlepage.templates.xsl +++ /dev/null @@ -1,3841 +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"><hr xmlns="http://www.w3.org/1999/xhtml"/> -</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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="article.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="article.titlepage.recto.style"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="subtitle" mode="article.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="article.titlepage.recto.style"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="corpauthor" mode="article.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="article.titlepage.recto.style"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="authorgroup" mode="article.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="article.titlepage.recto.style"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="author" mode="article.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="article.titlepage.recto.style"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="othercredit" mode="article.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="article.titlepage.recto.style"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="releaseinfo" mode="article.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="article.titlepage.recto.style"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="copyright" mode="article.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="article.titlepage.recto.style"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="legalnotice" mode="article.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="article.titlepage.recto.style"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="pubdate" mode="article.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="article.titlepage.recto.style"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revision" mode="article.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="article.titlepage.recto.style"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revhistory" mode="article.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="article.titlepage.recto.style"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="abstract" mode="article.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="article.titlepage.recto.style"> -<xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> -</div> -</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"><hr xmlns="http://www.w3.org/1999/xhtml"/> -</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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="set.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="subtitle" mode="set.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="corpauthor" mode="set.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="authorgroup" mode="set.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="author" mode="set.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="othercredit" mode="set.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="releaseinfo" mode="set.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="copyright" mode="set.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="legalnotice" mode="set.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="pubdate" mode="set.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revision" mode="set.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revhistory" mode="set.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="abstract" mode="set.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="set.titlepage.recto.style"> -<xsl:apply-templates select="." mode="set.titlepage.recto.mode"/> -</div> -</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/isbn"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/isbn"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/issn"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/issn"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/biblioid"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/biblioid"/> - <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:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/othercredit"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/othercredit"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/releaseinfo"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/copyright"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/copyright"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/legalnotice"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/legalnotice"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/pubdate"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/pubdate"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/revision"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/revision"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/revhistory"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/revhistory"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="bookinfo/abstract"/> - <xsl:apply-templates mode="book.titlepage.recto.auto.mode" select="info/abstract"/> -</xsl:template> - -<xsl:template name="book.titlepage.verso"> -</xsl:template> - -<xsl:template name="book.titlepage.separator"><hr xmlns="http://www.w3.org/1999/xhtml"/> -</xsl:template> - -<xsl:template name="book.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="book.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="book.titlepage"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="book.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="book.titlepage.recto.style"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="subtitle" mode="book.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="book.titlepage.recto.style"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="isbn" mode="book.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="book.titlepage.recto.style"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="issn" mode="book.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="book.titlepage.recto.style"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="biblioid" mode="book.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="book.titlepage.recto.style"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="corpauthor" mode="book.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="book.titlepage.recto.style"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="authorgroup" mode="book.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="book.titlepage.recto.style"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="author" mode="book.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="book.titlepage.recto.style"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="othercredit" mode="book.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="book.titlepage.recto.style"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="releaseinfo" mode="book.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="book.titlepage.recto.style"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="copyright" mode="book.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="book.titlepage.recto.style"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="legalnotice" mode="book.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="book.titlepage.recto.style"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="pubdate" mode="book.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="book.titlepage.recto.style"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revision" mode="book.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="book.titlepage.recto.style"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revhistory" mode="book.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="book.titlepage.recto.style"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="abstract" mode="book.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="book.titlepage.recto.style"> -<xsl:apply-templates select="." mode="book.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template name="part.titlepage.recto"> - <div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="part.titlepage.recto.style"> -<xsl:call-template name="division.title"> -<xsl:with-param name="node" select="ancestor-or-self::part[1]"/> -</xsl:call-template></div> - <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:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/corpauthor"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/corpauthor"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/corpauthor"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/authorgroup"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/authorgroup"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/authorgroup"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/author"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/author"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/author"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/othercredit"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/othercredit"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/othercredit"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/releaseinfo"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/releaseinfo"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/releaseinfo"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/copyright"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/copyright"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/copyright"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/legalnotice"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/legalnotice"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/legalnotice"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/pubdate"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/pubdate"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/pubdate"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/revision"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/revision"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/revision"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/revhistory"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/revhistory"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/revhistory"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="partinfo/abstract"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="docinfo/abstract"/> - <xsl:apply-templates mode="part.titlepage.recto.auto.mode" select="info/abstract"/> -</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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="part.titlepage.separator"/> - </div> -</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="subtitle" mode="part.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="part.titlepage.recto.style"> -<xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="corpauthor" mode="part.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="part.titlepage.recto.style"> -<xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="authorgroup" mode="part.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="part.titlepage.recto.style"> -<xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="author" mode="part.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="part.titlepage.recto.style"> -<xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="othercredit" mode="part.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="part.titlepage.recto.style"> -<xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="releaseinfo" mode="part.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="part.titlepage.recto.style"> -<xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="copyright" mode="part.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="part.titlepage.recto.style"> -<xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="legalnotice" mode="part.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="part.titlepage.recto.style"> -<xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="pubdate" mode="part.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="part.titlepage.recto.style"> -<xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revision" mode="part.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="part.titlepage.recto.style"> -<xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revhistory" mode="part.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="part.titlepage.recto.style"> -<xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="abstract" mode="part.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="part.titlepage.recto.style"> -<xsl:apply-templates select="." mode="part.titlepage.recto.mode"/> -</div> -</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"> - <div xmlns="http://www.w3.org/1999/xhtml"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="partintro.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="subtitle" mode="partintro.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="corpauthor" mode="partintro.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="authorgroup" mode="partintro.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="author" mode="partintro.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="othercredit" mode="partintro.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="releaseinfo" mode="partintro.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="copyright" mode="partintro.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="legalnotice" mode="partintro.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="pubdate" mode="partintro.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revision" mode="partintro.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revhistory" mode="partintro.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="abstract" mode="partintro.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="partintro.titlepage.recto.style"> -<xsl:apply-templates select="." mode="partintro.titlepage.recto.mode"/> -</div> -</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"><hr xmlns="http://www.w3.org/1999/xhtml"/> -</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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="reference.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="subtitle" mode="reference.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="corpauthor" mode="reference.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="authorgroup" mode="reference.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="author" mode="reference.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="othercredit" mode="reference.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="releaseinfo" mode="reference.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="copyright" mode="reference.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="legalnotice" mode="reference.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="pubdate" mode="reference.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revision" mode="reference.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revhistory" mode="reference.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="abstract" mode="reference.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="reference.titlepage.recto.style"> -<xsl:apply-templates select="." mode="reference.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template name="refentry.titlepage.recto"> -</xsl:template> - -<xsl:template name="refentry.titlepage.verso"> -</xsl:template> - -<xsl:template name="refentry.titlepage.separator"> -</xsl:template> - -<xsl:template name="refentry.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="refentry.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="refentry.titlepage"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <xsl:variable name="recto.content"> - <xsl:call-template name="refentry.titlepage.before.recto"/> - <xsl:call-template name="refentry.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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="refentry.titlepage.before.verso"/> - <xsl:call-template name="refentry.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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="refentry.titlepage.separator"/> - </div> -</xsl:template> - -<xsl:template match="*" mode="refentry.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="refentry.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="dedication.titlepage.recto"> - <div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="dedication.titlepage.recto.style"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::dedication[1]"/> -</xsl:call-template></div> - <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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="dedication.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="dedication.titlepage.recto.style"> -<xsl:apply-templates select="." mode="dedication.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template name="acknowledgements.titlepage.recto"> - <div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="acknowledgements.titlepage.recto.style"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::acknowledgements[1]"/> -</xsl:call-template></div> - <xsl:choose> - <xsl:when test="acknowledgementsinfo/subtitle"> - <xsl:apply-templates mode="acknowledgements.titlepage.recto.auto.mode" select="acknowledgementsinfo/subtitle"/> - </xsl:when> - <xsl:when test="docinfo/subtitle"> - <xsl:apply-templates mode="acknowledgements.titlepage.recto.auto.mode" select="docinfo/subtitle"/> - </xsl:when> - <xsl:when test="info/subtitle"> - <xsl:apply-templates mode="acknowledgements.titlepage.recto.auto.mode" select="info/subtitle"/> - </xsl:when> - <xsl:when test="subtitle"> - <xsl:apply-templates mode="acknowledgements.titlepage.recto.auto.mode" select="subtitle"/> - </xsl:when> - </xsl:choose> - -</xsl:template> - -<xsl:template name="acknowledgements.titlepage.verso"> -</xsl:template> - -<xsl:template name="acknowledgements.titlepage.separator"> -</xsl:template> - -<xsl:template name="acknowledgements.titlepage.before.recto"> -</xsl:template> - -<xsl:template name="acknowledgements.titlepage.before.verso"> -</xsl:template> - -<xsl:template name="acknowledgements.titlepage"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <xsl:variable name="recto.content"> - <xsl:call-template name="acknowledgements.titlepage.before.recto"/> - <xsl:call-template name="acknowledgements.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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </xsl:if> - <xsl:variable name="verso.content"> - <xsl:call-template name="acknowledgements.titlepage.before.verso"/> - <xsl:call-template name="acknowledgements.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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="acknowledgements.titlepage.separator"/> - </div> -</xsl:template> - -<xsl:template match="*" mode="acknowledgements.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="acknowledgements.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="acknowledgements.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="acknowledgements.titlepage.recto.style"> -<xsl:apply-templates select="." mode="acknowledgements.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template name="preface.titlepage.recto"> - <xsl:choose> - <xsl:when test="prefaceinfo/title"> - <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="prefaceinfo/title"/> - </xsl:when> - <xsl:when test="docinfo/title"> - <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="docinfo/title"/> - </xsl:when> - <xsl:when test="info/title"> - <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="info/title"/> - </xsl:when> - <xsl:when test="title"> - <xsl:apply-templates mode="preface.titlepage.recto.auto.mode" select="title"/> - </xsl:when> - </xsl:choose> - - <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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="preface.titlepage.separator"/> - </div> -</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="title" mode="preface.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="subtitle" mode="preface.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="corpauthor" mode="preface.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="authorgroup" mode="preface.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="author" mode="preface.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="othercredit" mode="preface.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="releaseinfo" mode="preface.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="copyright" mode="preface.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="legalnotice" mode="preface.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="pubdate" mode="preface.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revision" mode="preface.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revhistory" mode="preface.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="abstract" mode="preface.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="preface.titlepage.recto.style"> -<xsl:apply-templates select="." mode="preface.titlepage.recto.mode"/> -</div> -</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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="chapter.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="chapter.titlepage.recto.style"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="subtitle" mode="chapter.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="chapter.titlepage.recto.style"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="corpauthor" mode="chapter.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="chapter.titlepage.recto.style"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="authorgroup" mode="chapter.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="chapter.titlepage.recto.style"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="author" mode="chapter.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="chapter.titlepage.recto.style"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="othercredit" mode="chapter.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="chapter.titlepage.recto.style"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="releaseinfo" mode="chapter.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="chapter.titlepage.recto.style"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="copyright" mode="chapter.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="chapter.titlepage.recto.style"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="legalnotice" mode="chapter.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="chapter.titlepage.recto.style"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="pubdate" mode="chapter.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="chapter.titlepage.recto.style"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revision" mode="chapter.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="chapter.titlepage.recto.style"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revhistory" mode="chapter.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="chapter.titlepage.recto.style"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="abstract" mode="chapter.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="chapter.titlepage.recto.style"> -<xsl:apply-templates select="." mode="chapter.titlepage.recto.mode"/> -</div> -</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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="appendix.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="subtitle" mode="appendix.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="corpauthor" mode="appendix.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="authorgroup" mode="appendix.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="author" mode="appendix.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="othercredit" mode="appendix.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="releaseinfo" mode="appendix.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="copyright" mode="appendix.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="legalnotice" mode="appendix.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="pubdate" mode="appendix.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revision" mode="appendix.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revhistory" mode="appendix.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="abstract" mode="appendix.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="appendix.titlepage.recto.style"> -<xsl:apply-templates select="." mode="appendix.titlepage.recto.mode"/> -</div> -</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:if test="count(parent::*)='0'"><hr xmlns="http://www.w3.org/1999/xhtml"/></xsl:if> -</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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="section.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="subtitle" mode="section.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="corpauthor" mode="section.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="authorgroup" mode="section.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="author" mode="section.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="othercredit" mode="section.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="releaseinfo" mode="section.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="copyright" mode="section.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="legalnotice" mode="section.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="pubdate" mode="section.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revision" mode="section.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revhistory" mode="section.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="abstract" mode="section.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="section.titlepage.recto.style"> -<xsl:apply-templates select="." mode="section.titlepage.recto.mode"/> -</div> -</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:if test="count(parent::*)='0'"><hr xmlns="http://www.w3.org/1999/xhtml"/></xsl:if> -</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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="sect1.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="subtitle" mode="sect1.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="corpauthor" mode="sect1.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="authorgroup" mode="sect1.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="author" mode="sect1.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="othercredit" mode="sect1.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="releaseinfo" mode="sect1.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="copyright" mode="sect1.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="legalnotice" mode="sect1.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="pubdate" mode="sect1.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revision" mode="sect1.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revhistory" mode="sect1.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="abstract" mode="sect1.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect1.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect1.titlepage.recto.mode"/> -</div> -</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:if test="count(parent::*)='0'"><hr xmlns="http://www.w3.org/1999/xhtml"/></xsl:if> -</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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="sect2.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="subtitle" mode="sect2.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="corpauthor" mode="sect2.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="authorgroup" mode="sect2.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="author" mode="sect2.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="othercredit" mode="sect2.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="releaseinfo" mode="sect2.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="copyright" mode="sect2.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="legalnotice" mode="sect2.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="pubdate" mode="sect2.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revision" mode="sect2.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revhistory" mode="sect2.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="abstract" mode="sect2.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect2.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect2.titlepage.recto.mode"/> -</div> -</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:if test="count(parent::*)='0'"><hr xmlns="http://www.w3.org/1999/xhtml"/></xsl:if> -</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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="sect3.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="subtitle" mode="sect3.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="corpauthor" mode="sect3.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="authorgroup" mode="sect3.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="author" mode="sect3.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="othercredit" mode="sect3.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="releaseinfo" mode="sect3.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="copyright" mode="sect3.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="legalnotice" mode="sect3.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="pubdate" mode="sect3.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revision" mode="sect3.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revhistory" mode="sect3.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="abstract" mode="sect3.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect3.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect3.titlepage.recto.mode"/> -</div> -</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:if test="count(parent::*)='0'"><hr xmlns="http://www.w3.org/1999/xhtml"/></xsl:if> -</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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="sect4.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="subtitle" mode="sect4.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="corpauthor" mode="sect4.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="authorgroup" mode="sect4.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="author" mode="sect4.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="othercredit" mode="sect4.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="releaseinfo" mode="sect4.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="copyright" mode="sect4.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="legalnotice" mode="sect4.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="pubdate" mode="sect4.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revision" mode="sect4.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revhistory" mode="sect4.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="abstract" mode="sect4.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect4.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect4.titlepage.recto.mode"/> -</div> -</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:if test="count(parent::*)='0'"><hr xmlns="http://www.w3.org/1999/xhtml"/></xsl:if> -</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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="sect5.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="subtitle" mode="sect5.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="corpauthor" mode="sect5.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="authorgroup" mode="sect5.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="author" mode="sect5.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="othercredit" mode="sect5.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="releaseinfo" mode="sect5.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="copyright" mode="sect5.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="legalnotice" mode="sect5.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="pubdate" mode="sect5.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revision" mode="sect5.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revhistory" mode="sect5.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="abstract" mode="sect5.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sect5.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sect5.titlepage.recto.mode"/> -</div> -</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:if test="count(parent::*)='0'"><hr xmlns="http://www.w3.org/1999/xhtml"/></xsl:if> -</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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="simplesect.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="subtitle" mode="simplesect.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="corpauthor" mode="simplesect.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="authorgroup" mode="simplesect.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="author" mode="simplesect.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="othercredit" mode="simplesect.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="releaseinfo" mode="simplesect.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="copyright" mode="simplesect.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="legalnotice" mode="simplesect.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="pubdate" mode="simplesect.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revision" mode="simplesect.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="revhistory" mode="simplesect.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template match="abstract" mode="simplesect.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="simplesect.titlepage.recto.style"> -<xsl:apply-templates select="." mode="simplesect.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template name="bibliography.titlepage.recto"> - <div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="bibliography.titlepage.recto.style"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::bibliography[1]"/> -</xsl:call-template></div> - <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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="bibliography.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="bibliography.titlepage.recto.style"> -<xsl:apply-templates select="." mode="bibliography.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template name="glossary.titlepage.recto"> - <div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="glossary.titlepage.recto.style"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::glossary[1]"/> -</xsl:call-template></div> - <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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="glossary.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="glossary.titlepage.recto.style"> -<xsl:apply-templates select="." mode="glossary.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template name="index.titlepage.recto"> - <div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="index.titlepage.recto.style"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::index[1]"/> -</xsl:call-template></div> - <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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="index.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="index.titlepage.recto.style"> -<xsl:apply-templates select="." mode="index.titlepage.recto.mode"/> -</div> -</xsl:template> - -<xsl:template name="setindex.titlepage.recto"> - <div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="setindex.titlepage.recto.style"> -<xsl:call-template name="component.title"> -<xsl:with-param name="node" select="ancestor-or-self::setindex[1]"/> -</xsl:call-template></div> - <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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="setindex.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="setindex.titlepage.recto.style"> -<xsl:apply-templates select="." mode="setindex.titlepage.recto.mode"/> -</div> -</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"> - <div xmlns="http://www.w3.org/1999/xhtml" class="titlepage"> - <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)"> - <div><xsl:copy-of select="$recto.content"/></div> - </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)"> - <div><xsl:copy-of select="$verso.content"/></div> - </xsl:if> - <xsl:call-template name="sidebar.titlepage.separator"/> - </div> -</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"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sidebar.titlepage.recto.style"> -<xsl:call-template name="formal.object.heading"> -<xsl:with-param name="object" select="ancestor-or-self::sidebar[1]"/> -</xsl:call-template> -</div> -</xsl:template> - -<xsl:template match="subtitle" mode="sidebar.titlepage.recto.auto.mode"> -<div xmlns="http://www.w3.org/1999/xhtml" xsl:use-attribute-sets="sidebar.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sidebar.titlepage.recto.mode"/> -</div> -</xsl:template> - -</xsl:stylesheet> - |