diff options
Diffstat (limited to 'stylesheets/db2html-chunk.xsl')
-rw-r--r-- | stylesheets/db2html-chunk.xsl | 274 |
1 files changed, 255 insertions, 19 deletions
diff --git a/stylesheets/db2html-chunk.xsl b/stylesheets/db2html-chunk.xsl index ffa65857..91cda845 100644 --- a/stylesheets/db2html-chunk.xsl +++ b/stylesheets/db2html-chunk.xsl @@ -10,67 +10,100 @@ <xsl:template name="chunk"> <xsl:param name="node" select="."/> <xsl:param name="id" select="$node/@id"/> - <xsl:variable name="depth_chunk"> + <xsl:param name="depth_chunk"> <xsl:call-template name="depth.chunk"> <xsl:with-param name="node" select="$node"/> </xsl:call-template> - </xsl:variable> + </xsl:param> <exsl:document href="{concat($id, $html_extension)}"> <xsl:call-template name="html"> <xsl:with-param name="node" select="$node"/> - <xsl:with-param name="leaf" select="$depth_chunk >= $chunk_depth"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk"/> </xsl:call-template> </exsl:document> <xsl:if test="$generate_titlepage and ($node = /*)"> - <xsl:apply-templates mode="chunk.info.mode" select="."/> + <xsl:apply-templates mode="chunk.info.mode" select="."> + <xsl:with-param name="depth_chunk" select="$depth_chunk"/> + </xsl:apply-templates> </xsl:if> <xsl:if test="$depth_chunk < $chunk_depth"> - <xsl:apply-templates mode="chunk.divisions.mode" select="."/> + <xsl:apply-templates mode="chunk.divisions.mode" select="."> + <xsl:with-param name="depth_chunk" select="$depth_chunk"/> + </xsl:apply-templates> </xsl:if> </xsl:template> <!-- == chunk.info.mode ==================================================== --> <xsl:template mode="chunk.info.mode" match="appendix"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="appendixinfo"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="appendixinfo"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="article"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="articleinfo"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="articleinfo"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="bibliography"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="bibliographyinfo"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="bibliographyinfo"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="book"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="bookinfo"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="bookinfo"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="chapter"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="chapterinfo"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="chapterinfo"/> @@ -80,6 +113,11 @@ </xsl:template> <xsl:template mode="chunk.info.mode" match="glossary"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="glossaryinfo"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="glossaryinfo"/> @@ -89,6 +127,11 @@ </xsl:template> <xsl:template mode="chunk.info.mode" match="index"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="indexinfo"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="indexinfo"/> @@ -98,6 +141,11 @@ </xsl:template> <xsl:template mode="chunk.info.mode" match="part"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="partinfo"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="partinfo"/> @@ -107,136 +155,226 @@ </xsl:template> <xsl:template mode="chunk.info.mode" match="preface"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="prefaceinfo"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="prefaceinfo"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="refentry"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="refentryinfo"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="refentryinfo"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="reference"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="referenceinfo"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="referenceinfo"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="refsect1"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="refsect1info"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="refsect1info"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="refsect2"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="refsect2info"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="refsect2info"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="refsect3"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="refsect3info"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="refsect3info"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="refsection"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="refsectioninfo"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="refsectioninfo"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="sect1"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="sect1info"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="sect1info"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="sect2"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="sect2info"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="sect2info"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="sect3"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="sect3info"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="sect3info"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="sect4"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="sect4info"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="sect4info"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="sect5"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="sect5info"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="sect5info"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="section"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="sectioninfo"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="sectioninfo"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="set"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="setinfo"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="setinfo"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> <xsl:template mode="chunk.info.mode" match="setindex"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:if test="setindexinfo"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="setindexinfo"/> <xsl:with-param name="id" select="'titlepage'"/> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> </xsl:call-template> </xsl:if> </xsl:template> @@ -245,17 +383,31 @@ <xsl:template mode="chunk.divisions.mode" match=" appendix | article | chapter | preface"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:for-each select="refentry | sect1 | section | simplesect"> - <xsl:call-template name="chunk"/> + <xsl:call-template name="chunk"> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> + </xsl:call-template> </xsl:for-each> </xsl:template> <xsl:template mode="chunk.divisions.mode" match="book"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:for-each select=" appendix | article | bibliography | chapter | colophon | glossary | index | part | preface | reference | setindex "> - <xsl:call-template name="chunk"/> + <xsl:call-template name="chunk"> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> + </xsl:call-template> </xsl:for-each> </xsl:template> @@ -264,76 +416,160 @@ reference | refsect3 | setindex | simplesect"/> <xsl:template mode="chunk.divisions.mode" match="part"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:for-each select=" appendix | article | bibliography | chapter | glossary | index | preface | refentry | reference "> - <xsl:call-template name="chunk"/> + <xsl:call-template name="chunk"> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> + </xsl:call-template> </xsl:for-each> </xsl:template> <xsl:template mode="chunk.divisions.mode" match="refentry"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:for-each select="refsect1 | refsection"> - <xsl:call-template name="chunk"/> + <xsl:call-template name="chunk"> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> + </xsl:call-template> </xsl:for-each> </xsl:template> <xsl:template mode="chunk.divisions.mode" match="refsect1"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:for-each select="refsect2"> - <xsl:call-template name="chunk"/> + <xsl:call-template name="chunk"> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> + </xsl:call-template> </xsl:for-each> </xsl:template> <xsl:template mode="chunk.divisions.mode" match="refsect2"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:for-each select="refsect3"> - <xsl:call-template name="chunk"/> + <xsl:call-template name="chunk"> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> + </xsl:call-template> </xsl:for-each> </xsl:template> <xsl:template mode="chunk.divisions.mode" match="refsection"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:for-each select="refsection"> - <xsl:call-template name="chunk"/> + <xsl:call-template name="chunk"> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> + </xsl:call-template> </xsl:for-each> </xsl:template> <xsl:template mode="chunk.divisions.mode" match="sect1"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:for-each select="refentry | sect2 | simplesect"> - <xsl:call-template name="chunk"/> + <xsl:call-template name="chunk"> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> + </xsl:call-template> </xsl:for-each> </xsl:template> <xsl:template mode="chunk.divisions.mode" match="sect2"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:for-each select="refentry | sect3 | simplesect"> - <xsl:call-template name="chunk"/> + <xsl:call-template name="chunk"> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> + </xsl:call-template> </xsl:for-each> </xsl:template> <xsl:template mode="chunk.divisions.mode" match="sect3"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:for-each select="refentry | sect4 | simplesect"> - <xsl:call-template name="chunk"/> + <xsl:call-template name="chunk"> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> + </xsl:call-template> </xsl:for-each> </xsl:template> <xsl:template mode="chunk.divisions.mode" match="sect4"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:for-each select="refentry | sect5 | simplesect"> - <xsl:call-template name="chunk"/> + <xsl:call-template name="chunk"> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> + </xsl:call-template> </xsl:for-each> </xsl:template> <xsl:template mode="chunk.divisions.mode" match="sect5"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:for-each select="refentry | simplesect"> - <xsl:call-template name="chunk"/> + <xsl:call-template name="chunk"> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> + </xsl:call-template> </xsl:for-each> </xsl:template> <xsl:template mode="chunk.divisions.mode" match="section"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:for-each select="refentry | section | simplesect"> - <xsl:call-template name="chunk"/> + <xsl:call-template name="chunk"> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> + </xsl:call-template> </xsl:for-each> </xsl:template> <xsl:template mode="chunk.divisions.mode" match="set"> + <xsl:param name="depth_chunk"> + <xsl:call-template name="depth.chunk"> + <xsl:with-param name="node" select="$node"/> + </xsl:call-template> + </xsl:param> <xsl:for-each select="book | setindex"> - <xsl:call-template name="chunk"/> + <xsl:call-template name="chunk"> + <xsl:with-param name="depth_chunk" select="$depth_chunk + 1"/> + </xsl:call-template> </xsl:for-each> </xsl:template> |