Subject: [xsl] Grouping of a plain html files From: "J. S. Rawat" <jrawat@xxxxxxxxxxxxxx> Date: Thu, 30 Oct 2008 12:31:26 +0530 |
Hi all, Can anybody help me out to get the required output.
Input <div class="TOC"> <p class="TOC_entry_level1">Ent<i>r</i>y 1-1</p> <p class="TOC_entry_level1">Ent<b>r</b>y 1-2</p> <p class="TOC_entry_level1">Ent<b>r</b>y 1-3</p> <p class="TOC_entry_level2">Ent<b>r</b>y 2-1</p> <p class="TOC_entry_level2">Ent<b>r</b>y 2-2</p> <p class="TOC_entry_level1">Ent<i>r</i>y 1-4</p> <p class="TOC_entry_level2">Ent<b>r</b>y 2-3</p> </div
XSL <xsl:template match="div[@class='TOC']"> <toc> <xsl:apply-templates select="p[1][@class='TOC_entry_level1']"/> </toc> </xsl:template>
<xsl:template match="p[@class='TOC_entry_level1']"> <entry1> <xsl:apply-templates select="." mode="label1"/> <xsl:if test="following::p[1][@class='TOC_entry_level2']"> <xsl:apply-templates select="following::p[1][@class='TOC_entry_level2']"/> </xsl:if> </entry1> <xsl:apply-templates select="following::p[1][@class='TOC_entry_level1']"/> </xsl:template>
<xsl:template match="p[@class='TOC_entry_level2']"> <entry2> <xsl:apply-templates select="." mode="label1"/> </entry2> <xsl:if test="following::p[1][@class='TOC_entry_level2']"> <xsl:apply-templates select="following::p[1][@class='TOC_entry_level2']"/> </xsl:if> <xsl:if test="following::p[1][@class='TOC_entry_level1']"> <xsl:apply-templates select="following::p[1][@class='TOC_entry_level1']"/> </xsl:if> </xsl:template>
<xsl:template match="p" mode="label1"> <xsl:apply-templates/> </xsl:template>
OUTPUT of Above XSL <toc> <entry1>Ent<i>r</i>y 1-1</entry1> <entry1>Ent<b>r</b>y 1-2</entry1> <entry1>Ent<b>r</b>y 1-3 <entry2>Ent<b>r</b>y 2-1</entry2> <entry2>Ent<b>r</b>y 2-2</entry2> <entry1>Ent<i>r</i>y 1-4 <entry2>Ent<b>r</b>y 2-3</entry2> </entry1> </entry1> </toc>
REQUIRED OUTPUT <toc> <entry1>Ent<i>r</i>y 1-1</entry1> <entry1>Ent<b>r</b>y 1-2</entry1> <entry1>Ent<b>r</b>y 1-3 <entry2>Ent<b>r</b>y 2-1</entry2> <entry2>Ent<b>r</b>y 2-2</entry2> </entry1> <entry1>Ent<i>r</i>y 1-4 <entry2>Ent<b>r</b>y 2-3</entry2> </entry1> </toc> Thanks ...JSR
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Extensions in AltovaXML, Vladimir Nesterovsky | Thread | [xsl] Insert character for missing , Jesse Gillies |
Re: [xsl] XQuery Updates in XSLT, Liam Quin | Date | Re: [xsl] XQuery Updates in XSLT, John Snelson |
Month |