This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Grouping the information - XSLT


Hi Friends,

      I have some problem in the grouping the parallel information in the XSLT. I hope, you people will provide me a solution. <term> and <def> are defined as parallel elements. <def> element can occur without <term>.

Xml Coding:
<term>A</term><def>A stands for ...</def>
<term>B</term><def>B stands for ...</def>
<def>C stands for ....</def>
<def>D stands for ....</def>
<term>E</term><def>E stands for ...</def>

Output Should be:
<p align="justify">A    A stands for ...</p>
<p align="justify">B    B stands for ...</p>
<p align="justify">C stands for ....</p>
<p align="justify">D stands for ....</p>
<p align="justify">E    E stands for ...</p>

I am using the below template to display the above output. But it is not coming perfectly.

<xsl:template match="def">
<p align="justify">
<xsl:if test="preceding::term[1]">
<xsl:value-of select="preceding::term[1]"/>
</xsl:if>
<xsl:if test="not(preceding::term)">
</xsl:if>
<xsl:apply-templates/></p>
</xsl:template>

Output using the above template

<p align="justify">A    A stands for ...</p>
<p align="justify">B    B stands for ...</p>
<p align="justify">B    C stands for ....</p>
<p align="justify">B    D stands for ....</p>
<p align="justify">E    E stands for ...</p>

Thanks in Advance.

Regards,
Kumar V.


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]