Hi,
I have this xml and xsl below. Right now its grouping ok.
I am just struck with one small problem
79-31-15
79 = chapter
31 = section
15 = unit
right now grouping is happening combined[79-31-15]
how about grouping just based on chapter and section[79-31] and
not including 15
how do i make this happen?
XML Content
=============
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="toc.xsl" type="text/xsl"?>
<TABLE>
<TBODY>
<ROW>
<ENTRY>
<PARA>=MISSING</PARA>
</ENTRY>
<ENTRY>
<PARA>79-31-15</PARA>
</ENTRY>
<ENTRY>
<PARA/>
</ENTRY>
</ROW>
<ROW>
<ENTRY>
<PARA>=MISSING</PARA>
</ENTRY>
<ENTRY>
<PARA>79-31-16</PARA>
</ENTRY>
<ENTRY>
<PARA>01</PARA>
</ENTRY>
</ROW>
<ROW>
<ENTRY>
<PARA>=MISSING</PARA>
</ENTRY>
<ENTRY>
<PARA>79-32-40</PARA>
</ENTRY>
<ENTRY>
<PARA>01</PARA>
</ENTRY>
</ROW>
</TBODY>
</TABLE>
XSL Content
=========
<xsl:stylesheet version='1.0'
xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:output method='xml' encoding='UTF-8' media-type='text/xml'
indent='yes'/>
<!-- ############################################################ -->
<xsl:key name='CHAPTER' match='ROW' use='(ENTRY/PARA)[2]'/>
<!-- ############################################################ -->
<xsl:template match='/'>
<xsl:for-each
select="/TABLE/TBODY/ROW[generate-id(.)=generate-id(key('CHAPTER',(ENTRY/PAR
A)[2]))]">
<xsl:sort select='(ENTRY/PARA)[2]' order='ascending' data-type='text'/>
<h1>Section <xsl:value-of select='position()'/></h1>
<table border='1'>
<tr><td>Subject</td><td>Chapter Section</td><td>fig</td></tr>
<xsl:for-each select='key("CHAPTER",(ENTRY/PARA)[2])'>
<tr>
<xsl:for-each select='ENTRY/PARA'>
<td><xsl:value-of select='.'/></td>
</xsl:for-each>
</tr>
</xsl:for-each>
</table>
</xsl:for-each>
</xsl:template>
<!-- ############################################################ -->
</xsl:stylesheet>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list