Jump to content


  • Content Count

  • Joined

  • Last visited

Community Reputation

0 Neutral

About msambasiva@gmail.com

  • Rank
  1. msambasiva@gmail.com

    New bee - XSLT issue

    New bee - XSLT issue Below is the code snippet for getting required output. But I've to find out chapter title using on attribute value (linkend="CHAP_1"). In toc, there might be chance of missing chapter reference. In the toc section, if there is no reference for CHAP_3, then expected output should be as below. XML: ===== XML: ==== <?xml version = '1.0' encoding = 'UTF-8'?> <book> <toc id="TOC"> <title>Contents</title> <itemizedlist> <listitem> <para> <xref linkend="CHAP_1"/> </para> </listitem> <listitem> <para> <xref linkend="CHAP_2"/> </para> </listitem> <listitem> <para> <xref linkend="CHAP_4"/> </para> </listitem> </itemizedlist> </toc> <chapter id="CHAP_1"> <title>Subject Areas</title> </chapter> <chapter id="CHAP_2"> <title>Business Questions</title> </chapter> <chapter id="CHAP_3"> <title>Job Roles</title> </chapter> <chapter id="CHAP_4"> <title>Duty Roles</title> </chapter> </book> Expected HTML OUTPUT:(third item is missing from toc) ====================================================== Contents • Subject Areas • Business Questions • Duty Roles Subject Areas Business Questions Job Roles Duty Roles XSL: ===== <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="/"> <html> <head> <title><xsl:value-of select="book/toc/title" /></title> </head> <body> <xsl:apply-templates /> </body> </html> </xsl:template> <xsl:template match="book"> <xsl:for-each select="chapter"> <ul> <li><a href="#{@id}"><xsl:value-of select="title"/></a><br/></li> </ul> </xsl:for-each> <xsl:apply-templates/> </xsl:template> <xsl:template match="chapter"> <xsl:variable name="Id" select="@id"/> <h2> <a name="{$Id}"><xsl:value-of select="title"/></a></h2> </xsl:template> </xsl:stylesheet> Thanks in advance, Samba