mirror of https://github.com/apache/openjpa.git
348 lines
12 KiB
XML
Executable File
348 lines
12 KiB
XML
Executable File
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
Licensed to the Apache Software Foundation (ASF) under one
|
|
or more contributor license agreements. See the NOTICE file
|
|
distributed with this work for additional information
|
|
regarding copyright ownership. The ASF licenses this file
|
|
to you under the Apache License, Version 2.0 (the
|
|
"License"); you may not use this file except in compliance
|
|
with the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing,
|
|
software distributed under the License is distributed on an
|
|
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
KIND, either express or implied. See the License for the
|
|
specific language governing permissions and limitations
|
|
under the License.
|
|
-->
|
|
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
|
xmlns:fo="http://www.w3.org/1999/XSL/Format"
|
|
version='1.0'>
|
|
<!-- used by docbkx-maven-plugin to reference the core styles -->
|
|
<xsl:import href="urn:docbkx:stylesheet"/>
|
|
|
|
<!-- no pictures in note/warn/caution pargs -->
|
|
<xsl:param name="admon.graphics" select="0" />
|
|
<xsl:param name="autotoc.label.separator" select="'. '"/>
|
|
<xsl:param name="toc.indent.width" select="24"/>
|
|
|
|
<!-- required for PDF bookmarks and some other stuff -->
|
|
<xsl:param name="fop.extensions" select="1"/>
|
|
<!-- <xsl:param name="use.extensions" select="1"/> -->
|
|
|
|
<xsl:param name="ulink.hyphenate" select="''"/>
|
|
|
|
<!-- don't show link source -->
|
|
<xsl:param name="ulink.show" select="0"/>
|
|
|
|
|
|
<!-- <xsl:param name="ulink.footnotes" select="1"/> -->
|
|
<!-- <xsl:param name="ulink.hyphenate" select="1"/> -->
|
|
|
|
<!-- don't ever hyphenate words -->
|
|
<!-- <xsl:param name="hyphenate">false</xsl:param> -->
|
|
|
|
<!-- left justify -->
|
|
<xsl:param name="alignment">left</xsl:param>
|
|
|
|
<!-- print page numbers in references -->
|
|
<xsl:param name="insert.xref.page.number" select="1"/>
|
|
|
|
<!-- make all cross-refernce links appear in bold and dark blue -->
|
|
<xsl:attribute-set name="xref.properties">
|
|
<!-- <xsl:attribute name="color">#AFAFAF</xsl:attribute> -->
|
|
<xsl:attribute name="color">#17184A</xsl:attribute>
|
|
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
|
</xsl:attribute-set>
|
|
|
|
|
|
<!-- page break before level1 sections -->
|
|
<!--xsl:attribute-set name="section.level1.properties">
|
|
<xsl:attribute name="break-before">page</xsl:attribute>
|
|
</xsl:attribute-set-->
|
|
|
|
<!-- Chapters: white font on light blue backgrouns -->
|
|
<xsl:attribute-set name="title.properties">
|
|
<xsl:attribute name="color">#000000</xsl:attribute>
|
|
<xsl:attribute name="font-weight">bold</xsl:attribute>
|
|
<xsl:attribute name="background-color">#3366CC</xsl:attribute>
|
|
</xsl:attribute-set>
|
|
|
|
|
|
<!-- Section title: underline -->
|
|
<xsl:attribute-set name="section.title.properties">
|
|
<!-- <xsl:attribute name="color">#005BA6</xsl:attribute> -->
|
|
|
|
<!-- simulate underline with border of 1px bottom -->
|
|
<xsl:attribute name="border-bottom-width">1px</xsl:attribute>
|
|
<xsl:attribute name="border-top-width">0px</xsl:attribute>
|
|
<xsl:attribute name="border-left-width">0px</xsl:attribute>
|
|
<xsl:attribute name="border-right-width">0px</xsl:attribute>
|
|
<xsl:attribute name="border-style">solid</xsl:attribute>
|
|
<xsl:attribute name="border-width">1px</xsl:attribute>
|
|
<xsl:attribute name="border-color">#17184A</xsl:attribute>
|
|
</xsl:attribute-set>
|
|
|
|
|
|
<!-- Examples and other fomal sections: italic -->
|
|
<xsl:attribute-set name="formal.title.properties">
|
|
<xsl:attribute name="font-size">
|
|
<xsl:value-of select="$body.font.master * 1.2"/>
|
|
<xsl:text>pt</xsl:text>
|
|
</xsl:attribute>
|
|
|
|
<xsl:attribute name="font-style">italic</xsl:attribute>
|
|
</xsl:attribute-set>
|
|
|
|
|
|
<xsl:param name="segmentedlist.as.table" select="1"/>
|
|
<xsl:param name="variablelist.as.blocks" select="1"/>
|
|
|
|
<xsl:param name="html.stylesheet">documentation.css</xsl:param>
|
|
<xsl:param name="annotate.toc" select="1"/>
|
|
<xsl:param name="toc.section.depth" select="8"/>
|
|
<xsl:param name="generate.section.toc.level" select="8"/>
|
|
<xsl:param name="generate.index" select="1"/>
|
|
<xsl:param name="chapter.autolabel" select="1"/>
|
|
<xsl:param name="appendix.autolabel" select="1"/>
|
|
<xsl:param name="part.autolabel" select="1"/>
|
|
<xsl:param name="preface.autolabel" select="1"/>
|
|
<xsl:param name="qandadiv.autolabel" select="1"/>
|
|
<xsl:param name="section.autolabel" select="1"/>
|
|
<xsl:param name="section.label.includes.component.label" select="1"/>
|
|
<xsl:param name="label.from.part" select="1"/>
|
|
|
|
<xsl:param name="generate.toc">
|
|
/appendix toc
|
|
article toc
|
|
book toc,figure,table,example,equation
|
|
/chapter toc
|
|
part toc
|
|
/preface toc
|
|
qandadiv toc
|
|
qandaset toc
|
|
reference toc
|
|
/section toc
|
|
set toc
|
|
</xsl:param>
|
|
|
|
|
|
<!-- small margins for the PDF -->
|
|
<xsl:param name="page.margin.inner">0.3in</xsl:param>
|
|
<xsl:param name="page.margin.outer">0.3in</xsl:param>
|
|
|
|
|
|
<!-- without this, some parts of the body seem to overrin the -->
|
|
<!-- page number part of the footer -->
|
|
<xsl:param name="body.margin.bottom">0.88in</xsl:param>
|
|
<xsl:param name="page.margin.bottom">0.01in</xsl:param>
|
|
|
|
<!-- make source code listings be boxed and have a grey background -->
|
|
<xsl:attribute-set name="monospace.verbatim.properties"
|
|
use-attribute-sets="verbatim.properties">
|
|
<xsl:attribute name="font-family">
|
|
<xsl:value-of select="$monospace.font.family"/>
|
|
</xsl:attribute>
|
|
<xsl:attribute name="font-size">
|
|
<xsl:value-of select="$body.font.master * 0.7"/>
|
|
<xsl:text>pt</xsl:text>
|
|
</xsl:attribute>
|
|
|
|
<xsl:attribute name="background-color">#F0F0F0</xsl:attribute>
|
|
<xsl:attribute name="border-color">#000000</xsl:attribute>
|
|
<xsl:attribute name="border-style">solid</xsl:attribute>
|
|
<xsl:attribute name="border-width">1px</xsl:attribute>
|
|
<xsl:attribute name="padding-top">0.5cm</xsl:attribute>
|
|
<xsl:attribute name="padding-bottom">0.5cm</xsl:attribute>
|
|
<xsl:attribute name="padding-left">0.5cm</xsl:attribute>
|
|
<xsl:attribute name="padding-right">0.5cm</xsl:attribute>
|
|
</xsl:attribute-set>
|
|
|
|
|
|
<!-- admonition (note/warn/caution) title properties: italics, -->
|
|
<!-- with a blue background and white text -->
|
|
<xsl:attribute-set name="admonition.title.properties">
|
|
<xsl:attribute name="font-size">
|
|
<xsl:value-of select="$body.font.master * 1.5"/>
|
|
<xsl:text>pt</xsl:text>
|
|
</xsl:attribute>
|
|
|
|
<xsl:attribute name="font-style">bold</xsl:attribute>
|
|
<xsl:attribute name="text-align">center</xsl:attribute>
|
|
|
|
<xsl:attribute name="color">#FFFFFF</xsl:attribute>
|
|
<xsl:attribute name="background-color">#17184A</xsl:attribute>
|
|
|
|
<xsl:attribute name="border-color">#000000</xsl:attribute>
|
|
<xsl:attribute name="border-style">solid</xsl:attribute>
|
|
<xsl:attribute name="border-width">0px</xsl:attribute>
|
|
<xsl:attribute name="padding-left">0.2cm</xsl:attribute>
|
|
<xsl:attribute name="padding-right">0.2cm</xsl:attribute>
|
|
</xsl:attribute-set>
|
|
|
|
<!-- admonition (note/warn/caution) properties: gray background -->
|
|
<xsl:attribute-set name="admonition.properties">
|
|
<xsl:attribute name="background-color">#B0B3B2</xsl:attribute>
|
|
<xsl:attribute name="border-color">#000000</xsl:attribute>
|
|
<xsl:attribute name="border-style">solid</xsl:attribute>
|
|
<xsl:attribute name="border-width">0px</xsl:attribute>
|
|
<xsl:attribute name="padding-top">0.2cm</xsl:attribute>
|
|
<xsl:attribute name="padding-bottom">0.2cm</xsl:attribute>
|
|
<xsl:attribute name="padding-left">0.2cm</xsl:attribute>
|
|
<xsl:attribute name="padding-right">0.2cm</xsl:attribute>
|
|
</xsl:attribute-set>
|
|
|
|
<xsl:attribute-set name="book.titlepage.recto.style">
|
|
<xsl:attribute name="font-size">18px</xsl:attribute>
|
|
<xsl:attribute name="text-align">center</xsl:attribute>
|
|
<xsl:attribute name="padding-top">3cm</xsl:attribute>
|
|
</xsl:attribute-set>
|
|
|
|
|
|
|
|
<!-- patches and fixes for stylesheet bugs -->
|
|
|
|
|
|
<!--
|
|
fix for duplicate ids generated by <qandaset> attributes
|
|
overrides docbook-xsl/fo/qandaset.xsl
|
|
|
|
See: http://lists.oasis-open.org/archives/docbook/200309/msg00070.html
|
|
-->
|
|
<xsl:template match="question">
|
|
<xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable>
|
|
|
|
<xsl:variable name="entry.id">
|
|
<xsl:call-template name="object.id">
|
|
<xsl:with-param name="object" select="parent::*"/>
|
|
</xsl:call-template>
|
|
</xsl:variable>
|
|
|
|
<xsl:variable name="deflabel">
|
|
<xsl:choose>
|
|
<xsl:when test="ancestor-or-self::*[@defaultlabel]">
|
|
<xsl:value-of select="(ancestor-or-self::*[@defaultlabel])[last()]
|
|
/@defaultlabel"/>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:value-of select="$qanda.defaultlabel"/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:variable>
|
|
|
|
<fo:list-item id="{$entry.id}" xsl:use-attribute-sets="list.item.spacing">
|
|
<!--
|
|
This adds duplicate id attributes for some reason
|
|
See: http://lists.oasis-open.org/archives/docbook/200309/msg00070.html
|
|
<fo:list-item-label id="{$id}" end-indent="label-end()">
|
|
-->
|
|
<fo:list-item-label end-indent="label-end()">
|
|
<xsl:choose>
|
|
<xsl:when test="$deflabel = 'none'">
|
|
<fo:block/>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<fo:block>
|
|
<xsl:apply-templates select="." mode="label.markup"/>
|
|
<xsl:if test="$deflabel = 'number' and not(label)">
|
|
<xsl:apply-templates select="." mode="intralabel.punctuation"/>
|
|
</xsl:if>
|
|
</fo:block>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</fo:list-item-label>
|
|
<fo:list-item-body start-indent="body-start()">
|
|
<xsl:choose>
|
|
<xsl:when test="$deflabel = 'none'">
|
|
<fo:block font-weight="bold">
|
|
<xsl:apply-templates select="*[local-name(.)!='label']"/>
|
|
</fo:block>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:apply-templates select="*[local-name(.)!='label']"/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</fo:list-item-body>
|
|
</fo:list-item>
|
|
</xsl:template>
|
|
|
|
|
|
<xsl:template match="answer">
|
|
<xsl:variable name="id"><xsl:call-template name="object.id"/></xsl:variable>
|
|
<xsl:variable name="entry.id">
|
|
<xsl:call-template name="object.id">
|
|
<xsl:with-param name="object" select="parent::*"/>
|
|
</xsl:call-template>
|
|
</xsl:variable>
|
|
|
|
<xsl:variable name="deflabel">
|
|
<xsl:choose>
|
|
<xsl:when test="ancestor-or-self::*[@defaultlabel]">
|
|
<xsl:value-of select="(ancestor-or-self::*[@defaultlabel])[last()]
|
|
/@defaultlabel"/>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:value-of select="$qanda.defaultlabel"/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:variable>
|
|
<fo:list-item xsl:use-attribute-sets="list.item.spacing">
|
|
<!--
|
|
This adds duplicate id attributes for some reason
|
|
See: http://lists.oasis-open.org/archives/docbook/200309/msg00070.html
|
|
<fo:list-item-label id="{$id}" end-indent="label-end()">
|
|
-->
|
|
<fo:list-item-label end-indent="label-end()">
|
|
<xsl:choose>
|
|
<xsl:when test="$deflabel = 'none'">
|
|
<fo:block/>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<fo:block>
|
|
<xsl:variable name="answer.label">
|
|
<xsl:apply-templates select="." mode="label.markup"/>
|
|
</xsl:variable>
|
|
<xsl:copy-of select="$answer.label"/>
|
|
</fo:block>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</fo:list-item-label>
|
|
<fo:list-item-body start-indent="body-start()">
|
|
<xsl:apply-templates select="*[local-name(.)!='label']"/>
|
|
</fo:list-item-body>
|
|
</fo:list-item>
|
|
</xsl:template>
|
|
|
|
|
|
<!-- the default stylesheets move the alphabet letter out of the fo
|
|
block. this fixes that. -->
|
|
<xsl:template name="indexdiv.title">
|
|
<xsl:param name="title"/>
|
|
<xsl:param name="titlecontent"/>
|
|
|
|
<fo:block
|
|
font-size="14.4pt"
|
|
font-family="{$title.fontset}"
|
|
font-weight="bold"
|
|
keep-with-next.within-column="always"
|
|
space-before.optimum="{$body.font.master}pt"
|
|
space-before.minimum="{$body.font.master * 0.8}pt"
|
|
space-before.maximum="{$body.font.master * 1.2}pt">
|
|
<xsl:choose>
|
|
<xsl:when test="$title">
|
|
<xsl:apply-templates select="." mode="object.title.markup">
|
|
<xsl:with-param name="allow-anchors" select="1"/>
|
|
</xsl:apply-templates>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:copy-of select="$titlecontent"/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</fo:block>
|
|
</xsl:template>
|
|
|
|
</xsl:stylesheet>
|
|
|