home *** CD-ROM | disk | FTP | other *** search
/ Internet Magazine 2003 October / INTERNET108.ISO / pc / software / windows / building / xmlspy / xmlspyentcomplete5.exe / Data1.cab / _601CFA44CDE9490B9255330A33CEFA05 < prev    next >
Encoding:
Extensible Markup Language  |  2002-09-04  |  1.8 KB  |  61 lines

  1. <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  2.                 xmlns:doc="http://nwalsh.com/xsl/documentation/1.0"
  3.         version="1.0"
  4.                 exclude-result-prefixes="doc">
  5.  
  6. <xsl:import href="docbook.xsl"/>
  7. <xsl:import href="chunk.xsl"/>
  8.  
  9. <xsl:output method="xml" indent="no" encoding='utf-8'/>
  10.  
  11. <xsl:param name="toc.list.type" select="'tocentry'"/>
  12.  
  13. <xsl:template name="subtoc">
  14.   <xsl:param name="nodes" select="NOT-AN-ELEMENT"/>
  15.   <xsl:variable name="filename">
  16.     <xsl:apply-templates select="." mode="chunk-filename"/>
  17.   </xsl:variable>
  18.  
  19.   <xsl:variable name="chunk">
  20.     <xsl:call-template name="chunk"/>
  21.   </xsl:variable>
  22.  
  23.   <xsl:if test="$chunk != 0">
  24.     <xsl:call-template name="indent-spaces"/>
  25.     <tocentry linkend="{@id}">
  26.       <xsl:processing-instruction name="dbhtml">
  27.         <xsl:text>filename="</xsl:text>
  28.         <xsl:value-of select="$filename"/>
  29.         <xsl:text>"</xsl:text>
  30.       </xsl:processing-instruction>
  31.       <xsl:text> </xsl:text>
  32.       <xsl:apply-templates mode="toc" select="$nodes"/>
  33.       <xsl:call-template name="indent-spaces"/>
  34.     </tocentry>
  35.     <xsl:text> </xsl:text>
  36.   </xsl:if>
  37. </xsl:template>
  38.  
  39. <xsl:template name="indent-spaces">
  40.   <xsl:param name="node" select="."/>
  41.   <xsl:text>  </xsl:text>
  42.   <xsl:if test="$node/parent::*">
  43.     <xsl:call-template name="indent-spaces">
  44.       <xsl:with-param name="node" select="$node/parent::*"/>
  45.     </xsl:call-template>
  46.   </xsl:if>
  47. </xsl:template>
  48.  
  49. <!-- ==================================================================== -->
  50.  
  51. <xsl:template match="/" priority="-1">
  52.   <xsl:text> </xsl:text>
  53.   <toc role="chunk-toc">
  54.     <xsl:text> </xsl:text>
  55.     <xsl:apply-templates select="/" mode="toc"/>
  56.   </toc>
  57.   <xsl:text> </xsl:text>
  58. </xsl:template>
  59.  
  60. </xsl:stylesheet>
  61.