| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 | <?xml version="1.0" encoding="utf-8"?><xsl:stylesheet   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"   xmlns:exsl="http://exslt.org/common"  xmlns="http://docbook.org/ns/docbook"  exclude-result-prefixes="exsl"  version="1.0"><!-- $Id: topic-maker.xsl,v 1.3 2012-04-16 00:29:35 bobs Exp $ --><!-- This stylesheet convert DocBook elements into topic element.     The chunking takes place elsewhere.  --><xsl:import href="../xhtml/docbook.xsl"/>        <xsl:param name="assembly.filename">myassembly.xml</xsl:param><xsl:param name="chunk.section.depth" select="3"/><xsl:param name="chunk.first.sections" select="1"/><xsl:param name="use.id.as.filename" select="1"/><xsl:param name="html.ext">.xml</xsl:param> <xsl:param name="base.dir">topics/</xsl:param><xsl:param name="root.filename" select="local-name(/*)"/><xsl:param name="html.extra.head.links" select="0"/><xsl:param name="stylesheet.result.type">xhtml</xsl:param><xsl:param name="navig.showtitles" select="0"/><xsl:param name="suppress.navigation" select="1"/><xsl:param name="chunk.append"/><xsl:param name="chunk.quietly" select="0"/><xsl:param name="chunker.output.method" select="'xml'"/><xsl:param name="chunker.output.encoding" select="'UTF-8'"/><xsl:param name="chunker.output.indent" select="'no'"/><xsl:param name="chunker.output.omit-xml-declaration" select="'no'"/><xsl:param name="chunker.output.standalone" select="'no'"/><xsl:param name="chunker.output.doctype-public" select="''"/><xsl:param name="chunker.output.doctype-system" select="''"/><xsl:param name="namespace">http://docbook.org/ns/docbook</xsl:param><!-- These elements are converted to topic elements --><xsl:param name="topic.elements">preface chapter article section</xsl:param><xsl:variable name="topic.list"              select="concat(' ', normalize-space($topic.elements), ' ')"/><!-- Default behavior is identity copy --><xsl:template match="node()|@*">    <xsl:copy>      <xsl:apply-templates select="@*"/>      <xsl:apply-templates/>   </xsl:copy></xsl:template><xsl:template match="preface|chapter|appendix|section|article">  <xsl:variable name="element.name">    <xsl:call-template name="element.name"/>  </xsl:variable>  <xsl:element name="{$element.name}" namespace="{$namespace}">    <xsl:apply-templates select="@*"/>    <xsl:apply-templates/>  </xsl:element></xsl:template><xsl:template name="element.name">  <xsl:param name="node" select="."/>  <xsl:variable name="src.element" select="concat(' ', local-name($node), ' ')"/>  <xsl:choose>    <xsl:when test="contains($topic.list, $src.element)">      <xsl:text>topic</xsl:text>    </xsl:when>    <xsl:otherwise>      <xsl:value-of select="local-name($node)"/>    </xsl:otherwise>  </xsl:choose></xsl:template></xsl:stylesheet>
 |