diff options
Diffstat (limited to 'documentation/brief-yoctoprojectqs')
6 files changed, 455 insertions, 5359 deletions
diff --git a/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-customization.xsl b/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-customization.xsl deleted file mode 100644 index 0d57424b59..0000000000 --- a/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-customization.xsl +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml" xmlns:fo="http://www.w3.org/1999/XSL/Format" version="1.0"> - - <xsl:import href="http://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-xsl-1.76.1/xhtml/docbook.xsl" /> - -<!-- - - <xsl:import href="../template/1.76.1/docbook-xsl-1.76.1/xhtml/docbook.xsl" /> - - <xsl:import href="http://docbook.sourceforge.net/release/xsl/1.76.1/xhtml/docbook.xsl" /> - ---> - - <xsl:import href="brief-yoctoprojectqs-titlepage.xsl"/> - - <xsl:include href="../template/permalinks.xsl"/> - <xsl:include href="../template/section.title.xsl"/> - <xsl:include href="../template/component.title.xsl"/> - <xsl:include href="../template/division.title.xsl"/> - <xsl:include href="../template/formal.object.heading.xsl"/> - - <xsl:param name="generate.toc" select="'article nop'"></xsl:param> - <xsl:param name="html.stylesheet" select="'brief-yoctoprojectqs-style.css'" /> -</xsl:stylesheet> diff --git a/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-eclipse-customization.xsl b/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-eclipse-customization.xsl deleted file mode 100644 index fbb3b578e1..0000000000 --- a/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-eclipse-customization.xsl +++ /dev/null @@ -1,35 +0,0 @@ -<?xml version='1.0'?> -<xsl:stylesheet - xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns="http://www.w3.org/1999/xhtml" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - version="1.0"> - - <xsl:import href="http://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" /> - -<!-- - - <xsl:import href="../template/1.76.1/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" /> - - <xsl:import - href="http://docbook.sourceforge.net/release/xsl/1.76.1/eclipse/eclipse3.xsl" /> - ---> - - <xsl:import href="brief-yoctoprojectqs-titlepage.xsl"/> - - <xsl:param name="chunker.output.indent" select="'yes'"/> - <xsl:param name="chunk.quietly" select="1"/> - <xsl:param name="use.id.as.filename" select="1"/> - <xsl:param name="ulink.target" select="'_self'" /> - <xsl:param name="base.dir" select="'html/brief-yoctoprojectqs/'"/> - <xsl:param name="chunk.section.depth" select="0"/> - <xsl:param name="html.stylesheet" select="'../book.css'"/> - <xsl:param name="eclipse.manifest" select="0"/> - <xsl:param name="create.plugin.xml" select="0"/> - <xsl:param name="suppress.navigation" select="1"/> - <xsl:param name="generate.index" select="0"/> - <xsl:param name="generate.toc" select="'article nop'"></xsl:param> - <xsl:param name="html.stylesheet" select="'style.css'" /> -</xsl:stylesheet> - diff --git a/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-style.css b/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-style.css deleted file mode 100644 index 386841debe..0000000000 --- a/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-style.css +++ /dev/null @@ -1,989 +0,0 @@ -/* - Generic XHTML / DocBook XHTML CSS Stylesheet. - - Browser wrangling and typographic design by - Oyvind Kolas / pippin@gimp.org - - Customised for Poky by - Matthew Allum / mallum@o-hand.com - - Thanks to: - Liam R. E. Quin - William Skaggs - Jakub Steiner - - Structure - --------- - - The stylesheet is divided into the following sections: - - Positioning - Margins, paddings, width, font-size, clearing. - Decorations - Borders, style - Colors - Colors - Graphics - Graphical backgrounds - Nasty IE tweaks - Workarounds needed to make it work in internet explorer, - currently makes the stylesheet non validating, but up until - this point it is validating. - Mozilla extensions - Transparency for footer - Rounded corners on boxes - -*/ - - - /*************** / - / Positioning / -/ ***************/ - -body { - font-family: Verdana, Sans, sans-serif; - - min-width: 640px; - width: 80%; - margin: 0em auto; - padding: 2em 5em 5em 5em; - color: #333; -} - -h1,h2,h3,h4,h5,h6,h7 { - font-family: Arial, Sans; - color: #00557D; - clear: both; -} - -h1 { - font-size: 2em; - text-align: left; - padding: 0em 0em 0em 0em; - margin: 2em 0em 0em 0em; -} - -h2.subtitle { - margin: 0.10em 0em 3.0em 0em; - padding: 0em 0em 0em 0em; - font-size: 1.8em; - padding-left: 20%; - font-weight: normal; - font-style: italic; -} - -h2 { - margin: 2em 0em 0.66em 0em; - padding: 0.5em 0em 0em 0em; - font-size: 1.5em; - font-weight: bold; -} - -h3.subtitle { - margin: 0em 0em 1em 0em; - padding: 0em 0em 0em 0em; - font-size: 142.14%; - text-align: right; -} - -h3 { - margin: 1em 0em 0.5em 0em; - padding: 1em 0em 0em 0em; - font-size: 140%; - font-weight: bold; -} - -h4 { - margin: 1em 0em 0.5em 0em; - padding: 1em 0em 0em 0em; - font-size: 120%; - font-weight: bold; -} - -h5 { - margin: 1em 0em 0.5em 0em; - padding: 1em 0em 0em 0em; - font-size: 110%; - font-weight: bold; -} - -h6 { - margin: 1em 0em 0em 0em; - padding: 1em 0em 0em 0em; - font-size: 110%; - font-weight: bold; -} - -.authorgroup { - background-color: transparent; - background-repeat: no-repeat; - padding-top: 256px; - background-image: url("figures/bypqs-title.png"); - background-position: left top; - margin-top: -256px; - padding-right: 50px; - margin-left: 0px; - text-align: right; - width: 740px; -} - -h3.author { - margin: 0em 0me 0em 0em; - padding: 0em 0em 0em 0em; - font-weight: normal; - font-size: 100%; - color: #333; - clear: both; -} - -.author tt.email { - font-size: 66%; -} - -.titlepage hr { - width: 0em; - clear: both; -} - -.revhistory { - padding-top: 2em; - clear: both; -} - -.toc, -.list-of-tables, -.list-of-examples, -.list-of-figures { - padding: 1.33em 0em 2.5em 0em; - color: #00557D; -} - -.toc p, -.list-of-tables p, -.list-of-figures p, -.list-of-examples p { - padding: 0em 0em 0em 0em; - padding: 0em 0em 0.3em; - margin: 1.5em 0em 0em 0em; -} - -.toc p b, -.list-of-tables p b, -.list-of-figures p b, -.list-of-examples p b{ - font-size: 100.0%; - font-weight: bold; -} - -.toc dl, -.list-of-tables dl, -.list-of-figures dl, -.list-of-examples dl { - margin: 0em 0em 0.5em 0em; - padding: 0em 0em 0em 0em; -} - -.toc dt { - margin: 0em 0em 0em 0em; - padding: 0em 0em 0em 0em; -} - -.toc dd { - margin: 0em 0em 0em 2.6em; - padding: 0em 0em 0em 0em; -} - -div.glossary dl, -div.variablelist dl { -} - -.glossary dl dt, -.variablelist dl dt, -.variablelist dl dt span.term { - font-weight: normal; - width: 20em; - text-align: right; -} - -.variablelist dl dt { - margin-top: 0.5em; -} - -.glossary dl dd, -.variablelist dl dd { - margin-top: -1em; - margin-left: 25.5em; -} - -.glossary dd p, -.variablelist dd p { - margin-top: 0em; - margin-bottom: 1em; -} - - -div.calloutlist table td { - padding: 0em 0em 0em 0em; - margin: 0em 0em 0em 0em; -} - -div.calloutlist table td p { - margin-top: 0em; - margin-bottom: 1em; -} - -div p.copyright { - text-align: left; -} - -div.legalnotice p.legalnotice-title { - margin-bottom: 0em; -} - -p { - line-height: 1.5em; - margin-top: 0em; - -} - -dl { - padding-top: 0em; -} - -hr { - border: solid 1px; -} - - -.mediaobject, -.mediaobjectco { - text-align: center; -} - -img { - border: none; -} - -ul { - padding: 0em 0em 0em 1.5em; -} - -ul li { - padding: 0em 0em 0em 0em; -} - -ul li p { - text-align: left; -} - -table { - width :100%; -} - -th { - padding: 0.25em; - text-align: left; - font-weight: normal; - vertical-align: top; -} - -td { - padding: 0.25em; - vertical-align: top; -} - -p a[id] { - margin: 0px; - padding: 0px; - display: inline; - background-image: none; -} - -a { - text-decoration: underline; - color: #444; -} - -pre { - overflow: auto; -} - -a:hover { - text-decoration: underline; - /*font-weight: bold;*/ -} - -/* This style defines how the permalink character - appears by itself and when hovered over with - the mouse. */ - -[alt='Permalink'] { color: #eee; } -[alt='Permalink']:hover { color: black; } - - -div.informalfigure, -div.informalexample, -div.informaltable, -div.figure, -div.table, -div.example { - margin: 1em 0em; - padding: 1em; - page-break-inside: avoid; -} - - -div.informalfigure p.title b, -div.informalexample p.title b, -div.informaltable p.title b, -div.figure p.title b, -div.example p.title b, -div.table p.title b{ - padding-top: 0em; - margin-top: 0em; - font-size: 100%; - font-weight: normal; -} - -.mediaobject .caption, -.mediaobject .caption p { - text-align: center; - font-size: 80%; - padding-top: 0.5em; - padding-bottom: 0.5em; -} - -.epigraph { - padding-left: 55%; - margin-bottom: 1em; -} - -.epigraph p { - text-align: left; -} - -.epigraph .quote { - font-style: italic; -} -.epigraph .attribution { - font-style: normal; - text-align: right; -} - -span.application { - font-style: italic; -} - -.programlisting { - font-family: monospace; - font-size: 80%; - white-space: pre; - margin: 1.33em 0em; - padding: 1.33em; -} - -.tip, -.warning, -.caution, -.note { - margin-top: 1em; - margin-bottom: 1em; - -} - -/* force full width of table within div */ -.tip table, -.warning table, -.caution table, -.note table { - border: none; - width: 100%; -} - - -.tip table th, -.warning table th, -.caution table th, -.note table th { - padding: 0.8em 0.0em 0.0em 0.0em; - margin : 0em 0em 0em 0em; -} - -.tip p, -.warning p, -.caution p, -.note p { - margin-top: 0.5em; - margin-bottom: 0.5em; - padding-right: 1em; - text-align: left; -} - -.acronym { - text-transform: uppercase; -} - -b.keycap, -.keycap { - padding: 0.09em 0.3em; - margin: 0em; -} - -.itemizedlist li { - clear: none; -} - -.filename { - font-size: medium; - font-family: Courier, monospace; -} - - -div.navheader, div.heading{ - position: absolute; - left: 0em; - top: 0em; - width: 100%; - background-color: #cdf; - width: 100%; -} - -div.navfooter, div.footing{ - position: fixed; - left: 0em; - bottom: 0em; - background-color: #eee; - width: 100%; -} - - -div.navheader td, -div.navfooter td { - font-size: 66%; -} - -div.navheader table th { - /*font-family: Georgia, Times, serif;*/ - /*font-size: x-large;*/ - font-size: 80%; -} - -div.navheader table { - border-left: 0em; - border-right: 0em; - border-top: 0em; - width: 100%; -} - -div.navfooter table { - border-left: 0em; - border-right: 0em; - border-bottom: 0em; - width: 100%; -} - -div.navheader table td a, -div.navfooter table td a { - color: #777; - text-decoration: none; -} - -/* normal text in the footer */ -div.navfooter table td { - color: black; -} - -div.navheader table td a:visited, -div.navfooter table td a:visited { - color: #444; -} - - -/* links in header and footer */ -div.navheader table td a:hover, -div.navfooter table td a:hover { - text-decoration: underline; - background-color: transparent; - color: #33a; -} - -div.navheader hr, -div.navfooter hr { - display: none; -} - - -.qandaset tr.question td p { - margin: 0em 0em 1em 0em; - padding: 0em 0em 0em 0em; -} - -.qandaset tr.answer td p { - margin: 0em 0em 1em 0em; - padding: 0em 0em 0em 0em; -} -.answer td { - padding-bottom: 1.5em; -} - -.emphasis { - font-weight: bold; -} - - - /************* / - / decorations / -/ *************/ - -.titlepage { -} - -.part .title { -} - -.subtitle { - border: none; -} - -/* -h1 { - border: none; -} - -h2 { - border-top: solid 0.2em; - border-bottom: solid 0.06em; -} - -h3 { - border-top: 0em; - border-bottom: solid 0.06em; -} - -h4 { - border: 0em; - border-bottom: solid 0.06em; -} - -h5 { - border: 0em; -} -*/ - -.programlisting { - border: solid 1px; -} - -div.figure, -div.table, -div.informalfigure, -div.informaltable, -div.informalexample, -div.example { - border: 1px solid; -} - - - -.tip, -.warning, -.caution, -.note { - border: 1px solid; -} - -.tip table th, -.warning table th, -.caution table th, -.note table th { - border-bottom: 1px solid; -} - -.question td { - border-top: 1px solid black; -} - -.answer { -} - - -b.keycap, -.keycap { - border: 1px solid; -} - - -div.navheader, div.heading{ - border-bottom: 1px solid; -} - - -div.navfooter, div.footing{ - border-top: 1px solid; -} - - /********* / - / colors / -/ *********/ - -body { - color: #333; - background: white; -} - -a { - background: transparent; -} - -a:hover { - background-color: #dedede; -} - - -h1, -h2, -h3, -h4, -h5, -h6, -h7, -h8 { - background-color: transparent; -} - -hr { - border-color: #aaa; -} - - -.tip, .warning, .caution, .note { - border-color: #fff; -} - - -.tip table th, -.warning table th, -.caution table th, -.note table th { - border-bottom-color: #fff; -} - - -.warning { - background-color: #f0f0f2; -} - -.caution { - background-color: #f0f0f2; -} - -.tip { - background-color: #f0f0f2; -} - -.note { - background-color: #f0f0f2; -} - -.glossary dl dt, -.variablelist dl dt, -.variablelist dl dt span.term { - color: #044; -} - -div.figure, -div.table, -div.example, -div.informalfigure, -div.informaltable, -div.informalexample { - border-color: #aaa; -} - -pre.programlisting { - color: black; - background-color: #fff; - border-color: #aaa; - border-width: 2px; -} - -.guimenu, -.guilabel, -.guimenuitem { - background-color: #eee; -} - - -b.keycap, -.keycap { - background-color: #eee; - border-color: #999; -} - - -div.navheader { - border-color: black; -} - - -div.navfooter { - border-color: black; -} - - -.writernotes { - color: red; -} - - - /*********** / - / graphics / -/ ***********/ - -/* -body { - background-image: url("images/body_bg.jpg"); - background-attachment: fixed; -} - -.navheader, -.note, -.tip { - background-image: url("images/note_bg.jpg"); - background-attachment: fixed; -} - -.warning, -.caution { - background-image: url("images/warning_bg.jpg"); - background-attachment: fixed; -} - -.figure, -.informalfigure, -.example, -.informalexample, -.table, -.informaltable { - background-image: url("images/figure_bg.jpg"); - background-attachment: fixed; -} - -*/ -h1, -h2, -h3, -h4, -h5, -h6, -h7{ -} - -/* -Example of how to stick an image as part of the title. - -div.article .titlepage .title -{ - background-image: url("figures/white-on-black.png"); - background-position: center; - background-repeat: repeat-x; -} -*/ - -div.preface .titlepage .title, -div.colophon .title, -div.chapter .titlepage .title { - background-position: bottom; - background-repeat: repeat-x; -} - -div.section div.section .titlepage .title, -div.sect2 .titlepage .title { - background: none; -} - - -h1.title { - background-color: transparent; - background-repeat: no-repeat; - height: 256px; - text-indent: -9000px; - overflow:hidden; -} - -h2.subtitle { - background-color: transparent; - text-indent: -9000px; - overflow:hidden; - width: 0px; - display: none; -} - - /*************************************** / - / pippin.gimp.org specific alterations / -/ ***************************************/ - -/* -div.heading, div.navheader { - color: #777; - font-size: 80%; - padding: 0; - margin: 0; - text-align: left; - position: absolute; - top: 0px; - left: 0px; - width: 100%; - height: 50px; - background: url('/gfx/heading_bg.png') transparent; - background-repeat: repeat-x; - background-attachment: fixed; - border: none; -} - -div.heading a { - color: #444; -} - -div.footing, div.navfooter { - border: none; - color: #ddd; - font-size: 80%; - text-align:right; - - width: 100%; - padding-top: 10px; - position: absolute; - bottom: 0px; - left: 0px; - - background: url('/gfx/footing_bg.png') transparent; -} -*/ - - - - /****************** / - / nasty ie tweaks / -/ ******************/ - -/* -div.heading, div.navheader { - width:expression(document.body.clientWidth + "px"); -} - -div.footing, div.navfooter { - width:expression(document.body.clientWidth + "px"); - margin-left:expression("-5em"); -} -body { - padding:expression("4em 5em 0em 5em"); -} -*/ - - /**************************************** / - / mozilla vendor specific css extensions / -/ ****************************************/ -/* -div.navfooter, div.footing{ - -moz-opacity: 0.8em; -} - -div.figure, -div.table, -div.informalfigure, -div.informaltable, -div.informalexample, -div.example, -.tip, -.warning, -.caution, -.note { - -moz-border-radius: 0.5em; -} - -b.keycap, -.keycap { - -moz-border-radius: 0.3em; -} -*/ - -table tr td table tr td { - display: none; -} - - -hr { - display: none; -} - -table { - border: 0em; -} - - .photo { - float: right; - margin-left: 1.5em; - margin-bottom: 1.5em; - margin-top: 0em; - max-width: 17em; - border: 1px solid gray; - padding: 3px; - background: white; -} - .seperator { - padding-top: 2em; - clear: both; - } - - #validators { - margin-top: 5em; - text-align: right; - color: #777; - } - @media print { - body { - font-size: 8pt; - } - .noprint { - display: none; - } - } - - -.tip, -.note { - background: #f0f0f2; - color: #333; - padding: 20px; - margin: 20px; -} - -.tip h3, -.note h3 { - padding: 0em; - margin: 0em; - font-size: 2em; - font-weight: bold; - color: #333; -} - -.tip a, -.note a { - color: #333; - text-decoration: underline; -} - -.footnote { - font-size: small; - color: #333; -} - -/* Changes the announcement text */ -.tip h3, -.warning h3, -.caution h3, -.note h3 { - font-size:large; - color: #00557D; -} diff --git a/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-titlepage.xsl b/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-titlepage.xsl deleted file mode 100644 index a435ac77ab..0000000000 --- a/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-titlepage.xsl +++ /dev/null @@ -1,3820 +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: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: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:template> - -<xsl:template name="article.titlepage.verso"> -</xsl:template> - -<xsl:template name="article.titlepage.separator"><hr/> -</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 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="abstract" mode="article.titlepage.recto.auto.mode"> -<div xsl:use-attribute-sets="article.titlepage.recto.style"> - <xsl:call-template name="anchor"/> - <xsl:apply-templates/> -<!-- orignally generated content --> -<!-- <xsl:apply-templates select="." mode="article.titlepage.recto.mode"/> --> -</div> -</xsl:template> - -<xsl:template match="title" mode="article.titlepage.recto.auto.mode"> -<div 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 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 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 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 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 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 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 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 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 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 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 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/> -</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 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 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 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 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 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 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 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 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 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 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 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 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 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 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/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/> -</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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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> - <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 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 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 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 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 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 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 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 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 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 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 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 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 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/> -</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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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/></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 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 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 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 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 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 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 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 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 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 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 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 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 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 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/></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 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 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 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 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 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 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 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 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 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 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 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 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 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 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/></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 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 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 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 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 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 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 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 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 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 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 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 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 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 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/></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 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 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 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 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 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 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 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 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 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 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 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 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 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 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/></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 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 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 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 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 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 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 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 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 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 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 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 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 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 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/></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 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 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 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 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 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 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 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 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 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 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 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 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 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 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/></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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 xsl:use-attribute-sets="sidebar.titlepage.recto.style"> -<xsl:apply-templates select="." mode="sidebar.titlepage.recto.mode"/> -</div> -</xsl:template> - -</xsl:stylesheet> - diff --git a/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs.xml b/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs.xml deleted file mode 100644 index 42dbf9c563..0000000000 --- a/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs.xml +++ /dev/null @@ -1,491 +0,0 @@ -<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" -"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" -[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] > - -<article id='brief-yocto-project-qs-intro'> - <articleinfo> - <title>Yocto Project Quick Build</title> - - <copyright> - <year>©RIGHT_YEAR;</year> - <holder>Linux Foundation</holder> - </copyright> - - <legalnotice> - <para> - Permission is granted to copy, distribute and/or modify this document under - the terms of the <ulink type="http" url="http://creativecommons.org/licenses/by-sa/2.0/uk/">Creative Commons Attribution-Share Alike 2.0 UK: England & Wales</ulink> as published by Creative Commons. - </para> - </legalnotice> - - - <abstract> - <imagedata fileref="figures/yocto-project-transp.png" - width="6in" depth="1in" - align="right" scale="25" /> - </abstract> - </articleinfo> - - <section id='brief-welcome'> - <title>Welcome!</title> - - <para> - Welcome! - This short document steps you through the process for a typical - image build using the Yocto Project. - The document also introduces how to configure a build for specific - hardware. - You will use Yocto Project to build a reference embedded OS - called Poky. - <note> - The examples in this paper assume you are using a native Linux - system running a recent Ubuntu Linux distribution. - If the machine you want to use - Yocto Project on to build an image is not a native Linux - system, you can still perform these steps by using CROss - PlatformS (CROPS) and setting up a Poky container. - See the - <ulink url='&YOCTO_DOCS_DEV_URL;#setting-up-to-use-crops'>Setting Up to Use CROss PlatformS (CROPS)</ulink>" - section in the Yocto Project Development Tasks Manual for more - information. - </note> - </para> - - <para> - If you want more conceptual or background information on the - Yocto Project, see the - <ulink url='&YOCTO_DOCS_OM_URL;'>Yocto Project Overview and Concepts Manual</ulink>. - </para> - </section> - - <section id='brief-compatible-distro'> - <title>Compatible Linux Distribution</title> - - <para> - Make sure your - <ulink url='&YOCTO_DOCS_REF_URL;#hardware-build-system-term'>build host</ulink> - meets the following requirements: - <itemizedlist> - <listitem><para> - 50 Gbytes of free disk space - </para></listitem> - <listitem><para> - Runs a supported Linux distribution (i.e. recent releases of - Fedora, openSUSE, CentOS, Debian, or Ubuntu). For a list of - Linux distributions that support the Yocto Project, see the - "<ulink url='&YOCTO_DOCS_REF_URL;#detailed-supported-distros'>Supported Linux Distributions</ulink>" - section in the Yocto Project Reference Manual. - </para></listitem> - <listitem><para> - <itemizedlist> - <listitem><para> - Git 1.8.3.1 or greater - </para></listitem> - <listitem><para> - tar 1.27 or greater - </para></listitem> - <listitem><para> - Python 3.4.0 or greater. - </para></listitem> - </itemizedlist> - If your build host does not meet any of these three listed - version requirements, you can take steps to prepare the - system so that you can still use the Yocto Project. - See the - "<ulink url='&YOCTO_DOCS_REF_URL;#required-git-tar-and-python-versions'>Required Git, tar, and Python Versions</ulink>" - section in the Yocto Project Reference Manual for information. - </para></listitem> - </itemizedlist> - </para> - </section> - - <section id='brief-build-system-packages'> - <title>Build Host Packages</title> - - <para> - You must install essential host packages on your - build host. - The following command installs the host packages based on an - Ubuntu distribution: - <note> - For host package requirements on all supported Linux - distributions, see the - "<ulink url='&YOCTO_DOCS_REF_URL;#required-packages-for-the-build-host'>Required Packages for the Build Host</ulink>" - section in the Yocto Project Reference Manual. - </note> - <literallayout class='monospaced'> - $ sudo apt-get install &UBUNTU_HOST_PACKAGES_ESSENTIAL; libsdl1.2-dev xterm - </literallayout> - </para> - </section> - - <section id='brief-use-git-to-clone-poky'> - <title>Use Git to Clone Poky</title> - - <para> - Once you complete the setup instructions for your machine, - you need to get a copy of the Poky repository on your build - host. - Use the following commands to clone the Poky - repository and then checkout the &DISTRO_REL_TAG; release: - <literallayout class='monospaced'> - $ git clone git://git.yoctoproject.org/poky - Cloning into 'poky'... - remote: Counting objects: 361782, done. - remote: Compressing objects: 100% (87100/87100), done. - remote: Total 361782 (delta 268619), reused 361439 (delta 268277) - Receiving objects: 100% (361782/361782), 131.94 MiB | 6.88 MiB/s, done. - Resolving deltas: 100% (268619/268619), done. - Checking connectivity... done. - $ git checkout tags/yocto-2.5 -b my-yocto-2.5 - </literallayout> - The previous Git checkout command creates a local branch - named my-&DISTRO_REL_TAG;. The files available to you in that - branch exactly match the repository's files in the - "&DISTRO_NAME_NO_CAP;" development branch at the time of the - Yocto Project &DISTRO; release. - </para> - - <para> - For more options and information about accessing Yocto - Project related repositories, see the - "<ulink url='&YOCTO_DOCS_DEV_URL;#locating-yocto-project-source-files'>Locating Yocto Project Source Files</ulink>" - section in the Yocto Project Development Tasks Manual. - </para> - </section> - - <section id='brief-building-your-image'> - <title>Building Your Image</title> - - <para> - Use the following steps to build your image. - The build process creates an entire Linux distribution, including - the toolchain, from source. - <note> - <itemizedlist> - <listitem><para> - If you are working behind a firewall and your build - host is not set up for proxies, you could encounter - problems with the build process when fetching source - code (e.g. fetcher failures or Git failures). - </para></listitem> - <listitem><para> - If you do not know your proxy settings, consult your - local network infrastructure resources and get that - information. - A good starting point could also be to check your - web browser settings. - Finally, you can find more information on the - "<ulink url='https://wiki.yoctoproject.org/wiki/Working_Behind_a_Network_Proxy'>Working Behind a Network Proxy</ulink>" - page of the Yocto Project Wiki. - </para></listitem> - </itemizedlist> - </note> - </para> - - <para> - <orderedlist> - <listitem><para> - <emphasis>Initialize the Build Environment:</emphasis> - Run the - <ulink url='&YOCTO_DOCS_REF_URL;#structure-core-script'><filename>&OE_INIT_FILE;</filename></ulink> - environment setup script to define Yocto Project's - build environment on your build host. - <literallayout class='monospaced'> - $ source &OE_INIT_FILE; - </literallayout> - Among other things, the script creates the - <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>, - which is <filename>build</filename> in this case - and is located in the - <ulink url='&YOCTO_DOCS_REF_URL;#source-directory'>Source Directory</ulink>. - After the script runs, your current working directory - is set to the Build Directory. - Later, when the build completes, the Build Directory - contains all the files created during the build. - </para></listitem> - <listitem><para id='conf-file-step'> - <emphasis>Examine Your Local Configuration File:</emphasis> - When you set up the build environment, a local - configuration file named - <filename>local.conf</filename> becomes available in - a <filename>conf</filename> subdirectory of the - Build Directory. - For this example, the defaults are set to build - for a <filename>qemux86</filename> target, which is - suitable for emulation. - The package manager used is set to the RPM package - manager. - <tip> - You can significantly speed up your build and guard - against fetcher failures by using mirrors. - To use mirrors, add these lines to your - <filename>local.conf</filename> file in the Build - directory: - <literallayout class='monospaced'> - SSTATE_MIRRORS = "\ - file://.* http://sstate.yoctoproject.org/dev/PATH;downloadfilename=PATH \n \ - file://.* http://sstate.yoctoproject.org/&YOCTO_DOC_VERSION_MINUS_ONE;/PATH;downloadfilename=PATH \n \ - file://.* http://sstate.yoctoproject.org/&YOCTO_DOC_VERSION;/PATH;downloadfilename=PATH \n \ - " - </literallayout> - The previous examples showed how to add sstate - paths for Yocto Project &YOCTO_DOC_VERSION_MINUS_ONE;, - &YOCTO_DOC_VERSION;, and a development area. - For a complete index of sstate locations, see - <ulink url='http://sstate.yoctoproject.org/'></ulink>. - </tip> - </para></listitem> - <listitem><para> - <emphasis>Start the Build:</emphasis> - Continue with the following command to build an OS image - for the target, which is - <filename>core-image-sato</filename> in this example: - <literallayout class='monospaced'> - $ bitbake core-image-sato - </literallayout> - For information on using the - <filename>bitbake</filename> command, see the - "<ulink url='&YOCTO_DOCS_OM_URL;#usingpoky-components-bitbake'>BitBake</ulink>" - section in the Yocto Project Overview and Concepts Manual, - or see the - "<ulink url='&YOCTO_DOCS_BB_URL;#bitbake-user-manual-command'>BitBake Command</ulink>" - section in the BitBake User Manual. - </para></listitem> - <listitem><para> - <emphasis>Simulate Your Image Using QEMU:</emphasis> - Once this particular image is built, you can start - QEMU, which is a Quick EMUlator that ships with - the Yocto Project: - <literallayout class='monospaced'> - $ runqemu qemux86 - </literallayout> - If you want to learn more about running QEMU, see the - "<ulink url="&YOCTO_DOCS_DEV_URL;#dev-manual-qemu">Using the Quick EMUlator (QEMU)</ulink>" - chapter in the Yocto Project Development Tasks Manual. - </para></listitem> - <listitem><para> - <emphasis>Exit QEMU:</emphasis> - Exit QEMU by either clicking on the shutdown icon or by - typing <filename>Ctrl-C</filename> in the QEMU - transcript window from which you evoked QEMU. - </para></listitem> - </orderedlist> - </para> - </section> - - <section id='customizing-your-build-for-specific-hardware'> - <title>Customizing Your Build for Specific Hardware</title> - - <para> - So far, all you have done is quickly built an image suitable - for emulation only. - This section shows you how to customize your build for specific - hardware by adding a hardware layer into the Yocto Project - development environment. - </para> - - <para> - In general, layers are repositories that contain related sets of - instructions and configurations that tell the Yocto Project what - to do. - Isolating related metadata into functionally specific layers - facilitates modular development and makes it easier to reuse the - layer metadata. - <note> - By convention, layer names start with the string "meta-". - </note> - </para> - - <para> - Follow these steps to add a hardware layer: - <orderedlist> - <listitem><para> - <emphasis>Find a Layer:</emphasis> - Lots of hardware layers exist. - The Yocto Project - <ulink url='&YOCTO_GIT_URL;'>Source Repositories</ulink> - has many hardware layers. - This example adds the - <ulink url='https://github.com/kraj/meta-altera'>meta-altera</ulink> - hardware layer. - </para></listitem> - <listitem><para> - <emphasis>Clone the Layer</emphasis> - Use Git to make a local copy of the layer on your machine. - You can put the copy in the top level of the copy of the - Poky repository created earlier: - <literallayout class='monospaced'> - $ cd ~/poky - $ git clone https://github.com/kraj/meta-altera.git - Cloning into 'meta-altera'... - remote: Counting objects: 25170, done. - remote: Compressing objects: 100% (350/350), done. - remote: Total 25170 (delta 645), reused 719 (delta 538), pack-reused 24219 - Receiving objects: 100% (25170/25170), 41.02 MiB | 1.64 MiB/s, done. - Resolving deltas: 100% (13385/13385), done. - Checking connectivity... done. - </literallayout> - The hardware layer now exists with other layers inside - the Poky reference repository on your build host as - <filename>meta-altera</filename> and contains all the - metadata needed to support hardware from Altera, which - is owned by Intel. - </para></listitem> - <listitem><para> - <emphasis>Change the Configuration to Build for a Specific Machine:</emphasis> - The - <ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE'><filename>MACHINE</filename></ulink> - variable in the <filename>local.conf</filename> file - specifies the machine for the build. - For this example, set the <filename>MACHINE</filename> - variable to "cyclone5". - These configurations are used: - <ulink url='https://github.com/kraj/meta-altera/blob/master/conf/machine/cyclone5.conf'></ulink>. - <note> - See the - "<link linkend='conf-file-step'>Examine Your Local Configuration File</link>" - step earlier for more information on configuring the - build. - </note> - </para></listitem> - <listitem><para> - <emphasis>Add Your Layer to the Layer Configuration File:</emphasis> - Before you can use a layer during a build, you must add it - to your <filename>bblayers.conf</filename> file, which - is found in the - <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory's</ulink> - <filename>conf</filename> directory.</para> - - <para>Use the <filename>bitbake-layers add-layer</filename> - command to add the layer to the configuration file: - <literallayout class='monospaced'> - $ cd ~/poky/build - $ bitbake-layers add-layer ../meta-altera - NOTE: Starting bitbake server... - Parsing recipes: 100% |##################################################################| Time: 0:00:32 - Parsing of 918 .bb files complete (0 cached, 918 parsed). 1401 targets, 123 skipped, 0 masked, 0 errors. - </literallayout> - You can find more information on adding layers in the - "<ulink url='&YOCTO_DOCS_DEV_URL;#adding-a-layer-using-the-bitbake-layers-script'>Adding a Layer Using the <filename>bitbake-layers</filename> Script</ulink>" - section. - </para></listitem> - </orderedlist> - Completing these steps has added the - <filename>meta-altera</filename> layer to your Yocto Project - development environment and configured it to build for the - "cyclone5" machine. - <note> - The previous steps are for demonstration purposes only. - If you were to attempt to build an image for the - "cyclone5" build, you should read the Altera - <filename>README</filename>. - </note> - </para> - </section> - - <section id='creating-your-own-general-layer'> - <title>Creating Your Own General Layer</title> - - <para> - Maybe you have an application or specific set of behaviors you - need to isolate. - You can create your own general layer using the - <filename>bitbake-layers create-layer</filename> command. - The tool automates layer creation by setting up a - subdirectory with a <filename>layer.conf</filename> - configuration file, a <filename>recipes-example</filename> - subdirectory that contains an <filename>example.bb</filename> - recipe, a licensing file, and a <filename>README</filename>. - </para> - - <para> - The following commands run the tool to create a layer named - <filename>meta-mylayer</filename> in the - <filename>poky</filename> directory: - <literallayout class='monospaced'> - $ cd ~/poky - $ bitbake-layers create-layer meta-mylayer - NOTE: Starting bitbake server... - Add your new layer with 'bitbake-layers add-layer meta-mylayer' - </literallayout> - For more information on layers and how to create them, see the - "<ulink url='&YOCTO_DOCS_DEV_URL;#creating-a-general-layer-using-the-bitbake-layers-script'>Creating a General Layer Using the <filename>bitbake-layers</filename> Script</ulink>" - section in the Yocto Project Development Tasks Manual. - </para> - </section> - - <section id='brief-where-to-go-next'> - <title>Where To Go Next</title> - - <para> - Now that you have experienced using the Yocto Project, you might - be asking yourself "What now?" - The Yocto Project has many sources of information including - the website, wiki pages, and user manuals: - <itemizedlist> - <listitem><para> - <emphasis>Website:</emphasis> - The - <ulink url='&YOCTO_HOME_URL;'>Yocto Project Website</ulink> - provides background information, the latest builds, - breaking news, full development documentation, and - access to a rich Yocto Project Development Community - into which you can tap. - </para></listitem> - <listitem><para> - <emphasis>Developer Screencast:</emphasis> - The - <ulink url='http://vimeo.com/36450321'>Getting Started with the Yocto Project - New Developer Screencast Tutorial</ulink> - provides a 30-minute video created for users unfamiliar - with the Yocto Project but familiar with Linux build - hosts. - While this screencast is somewhat dated, the - introductory and fundamental concepts are useful for - the beginner. - </para></listitem> - <listitem><para> - <emphasis>Yocto Project Overview and Concepts Manual:</emphasis> - The - <ulink url='&YOCTO_DOCS_OM_URL;'>Yocto Project Overview and Concepts Manual</ulink> - is a great place to start to learn about the - Yocto Project. - This manual introduces you to the Yocto Project and its - development environment. - The manual also provides conceptual information for - various aspects of the Yocto Project. - </para></listitem> - <listitem><para> - <emphasis>Yocto Project Wiki:</emphasis> - The - <ulink url='&YOCTO_WIKI_URL;'>Yocto Project Wiki</ulink> - provides additional information on where to go next - when ramping up with the Yocto Project, release - information, project planning, and QA information. - </para></listitem> - <listitem><para> - <emphasis>Yocto Project Mailing Lists:</emphasis> - Related mailing lists provide a forum for discussion, - patch submission and announcements. - Several mailing lists exist and are grouped according - to areas of concern. - See the - "<ulink url='&YOCTO_DOCS_REF_URL;#resources-mailinglist'>Mailing lists</ulink>" - section in the Yocto Project Reference Manual for a - complete list of Yocto Project mailing lists. - </para></listitem> - <listitem><para> - <emphasis>Comprehensive List of Links and Other Documentation:</emphasis> - The - "<ulink url='&YOCTO_DOCS_REF_URL;#resources-links-and-related-documentation'>Links and Related Documentation</ulink>" - section in the Yocto Project Reference Manual provides a - comprehensive list of all related links and other - user documentation. - </para></listitem> - </itemizedlist> - </para> - </section> -</article> -<!-- -vim: expandtab tw=80 ts=4 ---> diff --git a/documentation/brief-yoctoprojectqs/index.rst b/documentation/brief-yoctoprojectqs/index.rst new file mode 100644 index 0000000000..c5400e4ac8 --- /dev/null +++ b/documentation/brief-yoctoprojectqs/index.rst @@ -0,0 +1,455 @@ +.. SPDX-License-Identifier: CC-BY-SA-2.0-UK + +========================= +Yocto Project Quick Build +========================= + +Welcome! +======== + +This short document steps you through the process for a typical +image build using the Yocto Project. The document also introduces how to +configure a build for specific hardware. You will use Yocto Project to +build a reference embedded OS called Poky. + +.. note:: + + - The examples in this paper assume you are using a native Linux + system running a recent Ubuntu Linux distribution. If the machine + you want to use Yocto Project on to build an image + (:term:`Build Host`) is not + a native Linux system, you can still perform these steps by using + CROss PlatformS (CROPS) and setting up a Poky container. See the + :ref:`dev-manual/start:setting up to use cross platforms (crops)` + section + in the Yocto Project Development Tasks Manual for more + information. + + - You may use version 2 of Windows Subsystem For Linux (WSL 2) to set + up a build host using Windows 10 or later, Windows Server 2019 or later. + See the :ref:`dev-manual/start:setting up to use windows subsystem for + linux (wsl 2)` section in the Yocto Project Development Tasks Manual + for more information. + +If you want more conceptual or background information on the Yocto +Project, see the :doc:`/overview-manual/index`. + +Compatible Linux Distribution +============================= + +Make sure your :term:`Build Host` meets the +following requirements: + +- At least &MIN_DISK_SPACE; Gbytes of free disk space, though + much more will help to run multiple builds and increase + performance by reusing build artifacts. + +- At least &MIN_RAM; Gbytes of RAM, though a modern modern build host with as + much RAM and as many CPU cores as possible is strongly recommended to + maximize build performance. + +- Runs a supported Linux distribution (i.e. recent releases of Fedora, + openSUSE, CentOS, Debian, or Ubuntu). For a list of Linux + distributions that support the Yocto Project, see the + :ref:`ref-manual/system-requirements:supported linux distributions` + section in the Yocto Project Reference Manual. For detailed + information on preparing your build host, see the + :ref:`dev-manual/start:preparing the build host` + section in the Yocto Project Development Tasks Manual. + +- + + - Git &MIN_GIT_VERSION; or greater + - tar &MIN_TAR_VERSION; or greater + - Python &MIN_PYTHON_VERSION; or greater. + - gcc &MIN_GCC_VERSION; or greater. + - GNU make &MIN_MAKE_VERSION; or greater + +If your build host does not meet any of these three listed version +requirements, you can take steps to prepare the system so that you +can still use the Yocto Project. See the +:ref:`ref-manual/system-requirements:required git, tar, python, make and gcc versions` +section in the Yocto Project Reference Manual for information. + +Build Host Packages +=================== + +You must install essential host packages on your build host. The +following command installs the host packages based on an Ubuntu +distribution:: + + $ sudo apt install &UBUNTU_HOST_PACKAGES_ESSENTIAL; + +.. note:: + + For host package requirements on all supported Linux distributions, + see the :ref:`ref-manual/system-requirements:required packages for the build host` + section in the Yocto Project Reference Manual. + +Use Git to Clone Poky +===================== + +Once you complete the setup instructions for your machine, you need to +get a copy of the Poky repository on your build host. Use the following +commands to clone the Poky repository. + +.. code-block:: shell + + $ git clone git://git.yoctoproject.org/poky + Cloning into 'poky'... + remote: Counting + objects: 432160, done. remote: Compressing objects: 100% + (102056/102056), done. remote: Total 432160 (delta 323116), reused + 432037 (delta 323000) Receiving objects: 100% (432160/432160), 153.81 MiB | 8.54 MiB/s, done. + Resolving deltas: 100% (323116/323116), done. + Checking connectivity... done. + +Go to :yocto_wiki:`Releases wiki page </Releases>`, and choose a release +codename (such as ``&DISTRO_NAME_NO_CAP;``), corresponding to either the +latest stable release or a Long Term Support release. + +Then move to the ``poky`` directory and take a look at existing branches: + +.. code-block:: shell + + $ cd poky + $ git branch -a + . + . + . + remotes/origin/HEAD -> origin/master + remotes/origin/dunfell + remotes/origin/dunfell-next + . + . + . + remotes/origin/gatesgarth + remotes/origin/gatesgarth-next + . + . + . + remotes/origin/master + remotes/origin/master-next + . + . + . + + +For this example, check out the ``&DISTRO_NAME_NO_CAP;`` branch based on the +``&DISTRO_NAME;`` release: + +.. code-block:: shell + + $ git checkout -t origin/&DISTRO_NAME_NO_CAP; -b my-&DISTRO_NAME_NO_CAP; + Branch 'my-&DISTRO_NAME_NO_CAP;' set up to track remote branch '&DISTRO_NAME_NO_CAP;' from 'origin'. + Switched to a new branch 'my-&DISTRO_NAME_NO_CAP;' + +The previous Git checkout command creates a local branch named +``my-&DISTRO_NAME_NO_CAP;``. The files available to you in that branch +exactly match the repository's files in the ``&DISTRO_NAME_NO_CAP;`` +release branch. + +Note that you can regularly type the following command in the same directory +to keep your local files in sync with the release branch: + +.. code-block:: shell + + $ git pull + +For more options and information about accessing Yocto Project related +repositories, see the +:ref:`dev-manual/start:locating yocto project source files` +section in the Yocto Project Development Tasks Manual. + +Building Your Image +=================== + +Use the following steps to build your image. The build process creates +an entire Linux distribution, including the toolchain, from source. + +.. note:: + + - If you are working behind a firewall and your build host is not + set up for proxies, you could encounter problems with the build + process when fetching source code (e.g. fetcher failures or Git + failures). + + - If you do not know your proxy settings, consult your local network + infrastructure resources and get that information. A good starting + point could also be to check your web browser settings. Finally, + you can find more information on the + ":yocto_wiki:`Working Behind a Network Proxy </Working_Behind_a_Network_Proxy>`" + page of the Yocto Project Wiki. + +#. **Initialize the Build Environment:** From within the ``poky`` + directory, run the :ref:`ref-manual/structure:\`\`oe-init-build-env\`\`` + environment + setup script to define Yocto Project's build environment on your + build host. + + .. code-block:: shell + + $ cd poky + $ source oe-init-build-env + You had no conf/local.conf file. This configuration file has therefore been + created for you with some default values. You may wish to edit it to, for + example, select a different MACHINE (target hardware). See conf/local.conf + for more information as common configuration options are commented. + + You had no conf/bblayers.conf file. This configuration file has therefore + been created for you with some default values. To add additional metadata + layers into your configuration please add entries to conf/bblayers.conf. + + The Yocto Project has extensive documentation about OE including a reference + manual which can be found at: + https://docs.yoctoproject.org + + For more information about OpenEmbedded see their website: + https://www.openembedded.org/ + + ### Shell environment set up for builds. ### + + You can now run 'bitbake <target>' + + Common targets are: + core-image-minimal + core-image-full-cmdline + core-image-sato + core-image-weston + meta-toolchain + meta-ide-support + + You can also run generated QEMU images with a command like 'runqemu qemux86-64' + + Other commonly useful commands are: + - 'devtool' and 'recipetool' handle common recipe tasks + - 'bitbake-layers' handles common layer tasks + - 'oe-pkgdata-util' handles common target package tasks + + Among other things, the script creates the :term:`Build Directory`, which is + ``build`` in this case and is located in the :term:`Source Directory`. After + the script runs, your current working directory is set to the + :term:`Build Directory`. Later, when the build completes, the + :term:`Build Directory` contains all the files created during the build. + +#. **Examine Your Local Configuration File:** When you set up the build + environment, a local configuration file named ``local.conf`` becomes + available in a ``conf`` subdirectory of the :term:`Build Directory`. For this + example, the defaults are set to build for a ``qemux86`` target, + which is suitable for emulation. The package manager used is set to + the RPM package manager. + + .. tip:: + + You can significantly speed up your build and guard against fetcher + failures by using :ref:`overview-manual/concepts:shared state cache` + mirrors and enabling :ref:`overview-manual/concepts:hash equivalence`. + This way, you can use pre-built artifacts rather than building them. + This is relevant only when your network and the server that you use + can download these artifacts faster than you would be able to build them. + + To use such mirrors, uncomment the below lines in your ``conf/local.conf`` + file in the :term:`Build Directory`:: + + BB_HASHSERVE_UPSTREAM = "wss://hashserv.yoctoproject.org/ws" + SSTATE_MIRRORS ?= "file://.* http://cdn.jsdelivr.net/yocto/sstate/all/PATH;downloadfilename=PATH" + BB_HASHSERVE = "auto" + BB_SIGNATURE_HANDLER = "OEEquivHash" + + The hash equivalence server needs the websockets python module version 9.1 + or later. Debian GNU/Linux 12 (Bookworm) and later, Fedora, CentOS Stream + 9 and later, and Ubuntu 22.04 (LTS) and later, all have a recent enough + package. Other supported distributions need to get the module some other + place than their package feed, e.g. via ``pip``. + +#. **Start the Build:** Continue with the following command to build an OS + image for the target, which is ``core-image-sato`` in this example: + + .. code-block:: shell + + $ bitbake core-image-sato + + For information on using the ``bitbake`` command, see the + :ref:`overview-manual/concepts:bitbake` section in the Yocto Project Overview and + Concepts Manual, or see + :ref:`bitbake-user-manual/bitbake-user-manual-intro:the bitbake command` + in the BitBake User Manual. + +#. **Simulate Your Image Using QEMU:** Once this particular image is + built, you can start QEMU, which is a Quick EMUlator that ships with + the Yocto Project: + + .. code-block:: shell + + $ runqemu qemux86-64 + + If you want to learn more about running QEMU, see the + :ref:`dev-manual/qemu:using the quick emulator (qemu)` chapter in + the Yocto Project Development Tasks Manual. + +#. **Exit QEMU:** Exit QEMU by either clicking on the shutdown icon or by typing + ``Ctrl-C`` in the QEMU transcript window from which you evoked QEMU. + +Customizing Your Build for Specific Hardware +============================================ + +So far, all you have done is quickly built an image suitable for +emulation only. This section shows you how to customize your build for +specific hardware by adding a hardware layer into the Yocto Project +development environment. + +In general, layers are repositories that contain related sets of +instructions and configurations that tell the Yocto Project what to do. +Isolating related metadata into functionally specific layers facilitates +modular development and makes it easier to reuse the layer metadata. + +.. note:: + + By convention, layer names start with the string "meta-". + +Follow these steps to add a hardware layer: + +#. **Find a Layer:** Many hardware layers are available. The Yocto Project + :yocto_git:`Source Repositories <>` has many hardware layers. + This example adds the + `meta-altera <https://github.com/kraj/meta-altera>`__ hardware layer. + +#. **Clone the Layer:** Use Git to make a local copy of the layer on your + machine. You can put the copy in the top level of the copy of the + Poky repository created earlier: + + .. code-block:: shell + + $ cd poky + $ git clone https://github.com/kraj/meta-altera.git + Cloning into 'meta-altera'... + remote: Counting objects: 25170, done. + remote: Compressing objects: 100% (350/350), done. + remote: Total 25170 (delta 645), reused 719 (delta 538), pack-reused 24219 + Receiving objects: 100% (25170/25170), 41.02 MiB | 1.64 MiB/s, done. + Resolving deltas: 100% (13385/13385), done. + Checking connectivity... done. + + The hardware layer is now available + next to other layers inside the Poky reference repository on your build + host as ``meta-altera`` and contains all the metadata needed to + support hardware from Altera, which is owned by Intel. + + .. note:: + + It is recommended for layers to have a branch per Yocto Project release. + Please make sure to checkout the layer branch supporting the Yocto Project + release you're using. + +#. **Change the Configuration to Build for a Specific Machine:** The + :term:`MACHINE` variable in the + ``local.conf`` file specifies the machine for the build. For this + example, set the :term:`MACHINE` variable to ``cyclone5``. These + configurations are used: + https://github.com/kraj/meta-altera/blob/master/conf/machine/cyclone5.conf. + + .. note:: + + See the "Examine Your Local Configuration File" step earlier for more + information on configuring the build. + +#. **Add Your Layer to the Layer Configuration File:** Before you can use + a layer during a build, you must add it to your ``bblayers.conf`` + file, which is found in the :term:`Build Directory` ``conf`` directory. + + Use the ``bitbake-layers add-layer`` command to add the layer to the + configuration file: + + .. code-block:: shell + + $ cd poky/build + $ bitbake-layers add-layer ../meta-altera + NOTE: Starting bitbake server... + Parsing recipes: 100% |##################################################################| Time: 0:00:32 + Parsing of 918 .bb files complete (0 cached, 918 parsed). 1401 targets, + 123 skipped, 0 masked, 0 errors. + + You can find + more information on adding layers in the + :ref:`dev-manual/layers:adding a layer using the \`\`bitbake-layers\`\` script` + section. + +Completing these steps has added the ``meta-altera`` layer to your Yocto +Project development environment and configured it to build for the +``cyclone5`` machine. + +.. note:: + + The previous steps are for demonstration purposes only. If you were + to attempt to build an image for the ``cyclone5`` machine, you should + read the Altera ``README``. + +Creating Your Own General Layer +=============================== + +Maybe you have an application or specific set of behaviors you need to +isolate. You can create your own general layer using the +``bitbake-layers create-layer`` command. The tool automates layer +creation by setting up a subdirectory with a ``layer.conf`` +configuration file, a ``recipes-example`` subdirectory that contains an +``example.bb`` recipe, a licensing file, and a ``README``. + +The following commands run the tool to create a layer named +``meta-mylayer`` in the ``poky`` directory: + +.. code-block:: shell + + $ cd poky + $ bitbake-layers create-layer meta-mylayer + NOTE: Starting bitbake server... + Add your new layer with 'bitbake-layers add-layer meta-mylayer' + +For more information +on layers and how to create them, see the +:ref:`dev-manual/layers:creating a general layer using the \`\`bitbake-layers\`\` script` +section in the Yocto Project Development Tasks Manual. + +Where To Go Next +================ + +Now that you have experienced using the Yocto Project, you might be +asking yourself "What now?". The Yocto Project has many sources of +information including the website, wiki pages, and user manuals: + +- **Website:** The :yocto_home:`Yocto Project Website <>` provides + background information, the latest builds, breaking news, full + development documentation, and access to a rich Yocto Project + Development Community into which you can tap. + +- **Video Seminar:** The `Introduction to the Yocto Project and BitBake, Part 1 + <https://youtu.be/yuE7my3KOpo>`__ and + `Introduction to the Yocto Project and BitBake, Part 2 + <https://youtu.be/iZ05TTyzGHk>`__ videos offer a video seminar + introducing you to the most important aspects of developing a + custom embedded Linux distribution with the Yocto Project. + +- **Yocto Project Overview and Concepts Manual:** The + :doc:`/overview-manual/index` is a great + place to start to learn about the Yocto Project. This manual + introduces you to the Yocto Project and its development environment. + The manual also provides conceptual information for various aspects + of the Yocto Project. + +- **Yocto Project Wiki:** The :yocto_wiki:`Yocto Project Wiki <>` + provides additional information on where to go next when ramping up + with the Yocto Project, release information, project planning, and QA + information. + +- **Yocto Project Mailing Lists:** Related mailing lists provide a forum + for discussion, patch submission and announcements. There are several + mailing lists grouped by topic. See the + :ref:`ref-manual/resources:mailing lists` + section in the Yocto Project Reference Manual for a complete list of + Yocto Project mailing lists. + +- **Comprehensive List of Links and Other Documentation:** The + :ref:`ref-manual/resources:links and related documentation` + section in the Yocto Project Reference Manual provides a + comprehensive list of all related links and other user documentation. + +.. include:: /boilerplate.rst |