123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165 |
- <?xml version='1.0' encoding='ISO-8859-1'?>
- <!--
- $LastChangedBy$
- $Date$
- -->
- <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns="http://www.w3.org/1999/xhtml"
- version="1.0">
- <!-- This stylesheet controls how preface, chapter, and sections are handled -->
- <!-- Chunk the first top-level section? 1 = yes, 0 = no
- If preface and chapters TOC are generated, this must be 1. -->
- <xsl:param name="chunk.first.sections" select="1"/>
- <!-- preface:
- Output non sect1 child elements before the TOC -->
- <!-- The original template is in {docbook-xsl}/xhtml/components.xsl -->
- <xsl:template match="preface">
- <xsl:call-template name="id.warning"/>
- <div>
- <xsl:apply-templates select="." mode="class.attribute"/>
- <xsl:call-template name="dir">
- <xsl:with-param name="inherit" select="1"/>
- </xsl:call-template>
- <xsl:call-template name="language.attribute"/>
- <xsl:if test="$generate.id.attributes != 0">
- <xsl:attribute name="id">
- <xsl:call-template name="object.id"/>
- </xsl:attribute>
- </xsl:if>
- <xsl:call-template name="component.separator"/>
- <xsl:call-template name="preface.titlepage"/>
- <xsl:apply-templates/>
- <xsl:variable name="toc.params">
- <xsl:call-template name="find.path.params">
- <xsl:with-param name="table" select="normalize-space($generate.toc)"/>
- </xsl:call-template>
- </xsl:variable>
- <xsl:if test="contains($toc.params, 'toc')">
- <xsl:call-template name="component.toc">
- <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/>
- </xsl:call-template>
- <xsl:call-template name="component.toc.separator"/>
- </xsl:if>
- <xsl:call-template name="process.footnotes"/>
- </div>
- </xsl:template>
- <!-- chapter:
- Output non sect1 child elements before the TOC -->
- <!-- The original template is in {docbook-xsl}/xhtml/components.xsl -->
- <xsl:template match="chapter">
- <xsl:call-template name="id.warning"/>
- <div>
- <xsl:apply-templates select="." mode="class.attribute"/>
- <xsl:call-template name="dir">
- <xsl:with-param name="inherit" select="1"/>
- </xsl:call-template>
- <xsl:call-template name="language.attribute"/>
- <xsl:if test="$generate.id.attributes != 0">
- <xsl:attribute name="id">
- <xsl:call-template name="object.id"/>
- </xsl:attribute>
- </xsl:if>
- <xsl:call-template name="component.separator"/>
- <xsl:call-template name="chapter.titlepage"/>
- <xsl:apply-templates/>
- <xsl:variable name="toc.params">
- <xsl:call-template name="find.path.params">
- <xsl:with-param name="table" select="normalize-space($generate.toc)"/>
- </xsl:call-template>
- </xsl:variable>
- <xsl:if test="contains($toc.params, 'toc')">
- <xsl:call-template name="component.toc">
- <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/>
- </xsl:call-template>
- <xsl:call-template name="component.toc.separator"/>
- </xsl:if>
- <xsl:call-template name="process.footnotes"/>
- </div>
- </xsl:template>
- <!-- sect1:
- When there is a role attibute, use it as the class value.
- Process the SVN keywords found in sect1info as a footnote.
- Removed unused code. -->
- <!-- The original template is in {docbook-xsl}/xhtml/sections.xsl -->
- <xsl:template match="sect1">
- <div>
- <xsl:choose>
- <xsl:when test="@role">
- <xsl:attribute name="class">
- <xsl:value-of select="@role"/>
- </xsl:attribute>
- </xsl:when>
- <xsl:otherwise>
- <xsl:apply-templates select="." mode="class.attribute"/>
- </xsl:otherwise>
- </xsl:choose>
- <xsl:call-template name="language.attribute"/>
- <xsl:call-template name="sect1.titlepage"/>
- <xsl:apply-templates/>
- <xsl:apply-templates select="sect1info" mode="svn-keys"/>
- </div>
- </xsl:template>
- <!-- sect2:
- When there is a role attibute, use it as the class value.
- Removed unused code. -->
- <!-- The original template is in {docbook-xsl}/xhtml/sections.xsl -->
- <xsl:template match="sect2">
- <div>
- <xsl:choose>
- <xsl:when test="@role">
- <xsl:attribute name="class">
- <xsl:value-of select="@role"/>
- </xsl:attribute>
- </xsl:when>
- <xsl:otherwise>
- <xsl:attribute name="class">
- <xsl:value-of select="name(.)"/>
- </xsl:attribute>
- </xsl:otherwise>
- </xsl:choose>
- <xsl:call-template name="language.attribute"/>
- <xsl:call-template name="sect2.titlepage"/>
- <xsl:apply-templates/>
- </div>
- </xsl:template>
- <!-- sect1info mode svn-keys:
- Self-made template to process SVN keywords found in sect1info. -->
- <xsl:template match="sect1info" mode="svn-keys">
- <p class="updated">Last updated <!-- by
- <xsl:apply-templates select="othername" mode="svn-keys"/> -->
- on
- <xsl:apply-templates select="date" mode="svn-keys"/>
- </p>
- </xsl:template>
- <!-- othername mode svn-keys:
- Self-made template to process the $LastChangedBy SVN keyword. -->
- <xsl:template match="othername" mode="svn-keys">
- <xsl:variable name="author">
- <xsl:value-of select="."/>
- </xsl:variable>
- <xsl:variable name="nameonly">
- <xsl:value-of select="substring($author,16)"/>
- </xsl:variable>
- <xsl:value-of select="substring-before($nameonly,'$')"/>
- </xsl:template>
- <!-- date mode svn-keys:
- Self-made template to process the $Date SVN keyword. -->
- <xsl:template match="date" mode="svn-keys">
- <xsl:variable name="date">
- <xsl:value-of select="."/>
- </xsl:variable>
- <xsl:value-of select="substring($date,7,26)"/>
- </xsl:template>
- </xsl:stylesheet>
|