<?xml version='1.0' encoding='UTF-8'?><!-- -*- indent-tabs-mode: nil -*- --> <!-- This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program; see the file COPYING.LGPL. If not, see <http://www.gnu.org/licenses/>. --> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:db="http://docbook.org/ns/docbook" xmlns="http://www.w3.org/1999/xhtml" exclude-result-prefixes="db" version="1.0"> <!--!!========================================================================== DocBook to HTML - Footnotes FIXME: Describe this module --> <!--**========================================================================== db2html.footnote.link Output a link to a footnote. :Revision:version="3.4" date="2011-11-10" status="final" $node: The #{footnote} element to process. This templates outputs an inline link to the footnote displayed at the bottom of the page. --> <xsl:template match="footnote | db:footnote" name="db2html.footnote.link"> <xsl:param name="node" select="."/> <xsl:variable name="anchor"> <xsl:text>-noteref-</xsl:text> <xsl:choose> <xsl:when test="$node/@id"> <xsl:value-of select="$node/@id"/> </xsl:when> <xsl:when test="$node/@xml:id"> <xsl:value-of select="$node/@xml:id"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="generate-id($node)"/> </xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:variable name="href"> <xsl:text>#</xsl:text> <xsl:choose> <xsl:when test="$node/@id"> <xsl:value-of select="$node/@id"/> </xsl:when> <xsl:when test="$node/@xml:id"> <xsl:value-of select="$node/@xml:id"/> </xsl:when> <xsl:otherwise> <xsl:text>-note-</xsl:text> <xsl:value-of select="generate-id($node)"/> </xsl:otherwise> </xsl:choose> </xsl:variable> <sup class="footnote"> <a class="footnote" href="{$href}" id="{$anchor}"> <xsl:value-of select="count($node/preceding::footnote | $node/preceding::db:footnote) + 1"/> </a> </sup> </xsl:template> <!--**========================================================================== db2html.footnote.note Output a footnote. :Revision:version="3.4" date="2011-11-10" status="final" $node: The #{footnote} element to process. This templates outputs the actual text of a footnote as a block-level element. --> <xsl:template name="db2html.footnote.note"> <xsl:param name="node" select="."/> <xsl:variable name="anchor"> <xsl:choose> <xsl:when test="$node/@id"> <xsl:value-of select="$node/@id"/> </xsl:when> <xsl:when test="$node/@xml:id"> <xsl:value-of select="$node/@xml:id"/> </xsl:when> <xsl:otherwise> <xsl:text>-note-</xsl:text> <xsl:value-of select="generate-id($node)"/> </xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:variable name="href"> <xsl:text>#</xsl:text> <xsl:text>-noteref-</xsl:text> <xsl:choose> <xsl:when test="$node/@id"> <xsl:value-of select="$node/@id"/> </xsl:when> <xsl:when test="$node/@xml:id"> <xsl:value-of select="$node/@xml:id"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="generate-id($node)"/> </xsl:otherwise> </xsl:choose> </xsl:variable> <div id="{$anchor}"> <xsl:call-template name="html.class.attr"> <xsl:with-param name="node" select="$node"/> <xsl:with-param name="class" select="'footnote'"/> </xsl:call-template> <a class="footnote" href="{$href}"> <xsl:value-of select="count($node/preceding::footnote | $node/preceding::db:footnote) + 1"/> </a> <xsl:apply-templates select="$node/node()"/> </div> </xsl:template> <!--**========================================================================== db2html.footnote.footer Output all footnotes for a page. :Revision:version="3.4" date="2011-11-10" status="final" $node: The division-level element containing footnotes $depth_of_chunk: The depth of the containing chunk in the document. This template collects all #{footnote} elements under ${node} and outputs them with *{db2html.footnote.note}. It checks if each footnote would be displayed on a separate page by a child division-level element, and if so, it doesn't output that footnote. --> <xsl:template name="db2html.footnote.footer"> <xsl:param name="node" select="."/> <xsl:param name="depth_of_chunk"> <xsl:call-template name="db.chunk.depth-of-chunk"/> </xsl:param> <xsl:variable name="notes" select="$node//footnote | $node//db:footnote" /> <xsl:variable name="include"> <xsl:for-each select="$notes"> <xsl:variable name="depth"> <xsl:call-template name="db.chunk.depth-of-chunk"/> </xsl:variable> <xsl:choose> <xsl:when test="$depth = $depth_of_chunk"> <xsl:text>y</xsl:text> </xsl:when> <xsl:otherwise> <xsl:text>x</xsl:text> </xsl:otherwise> </xsl:choose> </xsl:for-each> </xsl:variable> <xsl:if test="contains($include, 'y')"> <div class="footnotes"> <xsl:for-each select="$notes"> <xsl:if test="substring($include, position(), 1) = 'y'"> <xsl:call-template name="db2html.footnote.note"> <xsl:with-param name="node" select="."/> </xsl:call-template> </xsl:if> </xsl:for-each> </div> </xsl:if> </xsl:template> </xsl:stylesheet>
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
db2html-bibliography.xsl | File | 14.66 KB | 0644 |
|
db2html-block.xsl | File | 23.32 KB | 0644 |
|
db2html-callout.xsl | File | 3.65 KB | 0644 |
|
db2html-classsynopsis.xsl | File | 24.32 KB | 0644 |
|
db2html-cmdsynopsis.xsl | File | 22.26 KB | 0644 |
|
db2html-css.xsl | File | 6.51 KB | 0644 |
|
db2html-division.xsl | File | 37.22 KB | 0644 |
|
db2html-ebnf.xsl | File | 2.08 KB | 0644 |
|
db2html-footnote.xsl | File | 5.89 KB | 0644 |
|
db2html-funcsynopsis.xsl | File | 7.12 KB | 0644 |
|
db2html-index.xsl | File | 8.4 KB | 0644 |
|
db2html-inline.xsl | File | 39.16 KB | 0644 |
|
db2html-links.xsl | File | 8.26 KB | 0644 |
|
db2html-list.xsl | File | 23.1 KB | 0644 |
|
db2html-math.xsl | File | 6.02 KB | 0644 |
|
db2html-media.xsl | File | 18.08 KB | 0644 |
|
db2html-refentry.xsl | File | 8.34 KB | 0644 |
|
db2html-suppressed.xsl | File | 3.62 KB | 0644 |
|
db2html-table.xsl | File | 50.97 KB | 0644 |
|
db2html-xref.xsl | File | 7.23 KB | 0644 |
|
db2html.xsl | File | 1.74 KB | 0644 |
|
db2xhtml.xsl | File | 2.65 KB | 0644 |
|