[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [docbook-apps] choice of xsl modes in customization layer
Hi, This can be accomplished using a customization similar to the html/onechunk.xsl variant, which is described here: http://www.sagehill.net/docbookxsl/OneChunk.html onechunk.xsl employs the chunking mechanism, but creates a single chunk. The customization just makes everything in onechunk.xsl conditional on the name of the root element. So you are not switching between chunking and non-chunking, just how big the chunks are. Here is the customization, which you can tweak as needed: <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:import href="../docbook-xsl-1.76.1/html/chunk.xsl"/> <xsl:param name="base.dir">htmlout/</xsl:param> <xsl:param name="use.id.as.filename" select="1"/> <xsl:param name="onechunk"> <xsl:choose> <xsl:when test="local-name(/*[1]) = 'book'">0</xsl:when> <xsl:otherwise>1</xsl:otherwise> </xsl:choose> </xsl:param> <xsl:param name="root.filename"> <xsl:choose> <xsl:when test="$onechunk != 0"></xsl:when> <xsl:otherwise>index</xsl:otherwise> </xsl:choose> </xsl:param> <xsl:param name="suppress.navigation"> <xsl:choose> <xsl:when test="$onechunk != 0">1</xsl:when> <xsl:otherwise>0</xsl:otherwise> </xsl:choose> </xsl:param> <xsl:template name="href.target.uri"> <xsl:param name="object" select="."/> <xsl:choose> <xsl:when test="$onechunk != 0"> <xsl:text>#</xsl:text> <xsl:call-template name="object.id"> <xsl:with-param name="object" select="$object"/> </xsl:call-template> </xsl:when> <xsl:otherwise> <xsl:variable name="ischunk"> <xsl:call-template name="chunk"> <xsl:with-param name="node" select="$object"/> </xsl:call-template> </xsl:variable> <xsl:apply-templates mode="chunk-filename" select="$object"/> <xsl:if test="$ischunk='0'"> <xsl:text>#</xsl:text> <xsl:call-template name="object.id"> <xsl:with-param name="object" select="$object"/> </xsl:call-template> </xsl:if> </xsl:otherwise> </xsl:choose> </xsl:template> </xsl:stylesheet> Bob Stayton Sagehill Enterprises bobs@sagehill.net ----- Original Message ----- From: "Nathalie Sequeira" <n@n-faktor.net> To: <docbook-apps@lists.oasis-open.org> Sent: Wednesday, December 15, 2010 2:17 AM Subject: [docbook-apps] choice of xsl modes in customization layer > Hello, > > I have a docBook base that contains books and articles that are to be presented as > HTML. > > Seeing that there are docBook <article> and <book>, it would be desirable to make > use of both, and to use chunking for the books (e.g. Table of contents, and single > chapters each on another page), while articles do better displayed unchunked. > > In the customization layer, I would think I'd have to build something like > > if the dB starts with <article> --> use (i.e. import!) html/docbook.xsl > if the dB starts with <book> --> use docbook-chunk > > But I can't do that, since imports need to be top level, right? > So, is there a provision in docbook to get this done? > > Thank you! > Nathalie > > --------------------------------------------------------------------- > To unsubscribe, e-mail: docbook-apps-unsubscribe@lists.oasis-open.org > For additional commands, e-mail: docbook-apps-help@lists.oasis-open.org > > >
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]