xsl-list
[Top] [All Lists]

Grouping problem

2003-06-12 03:34:38
*******************************************************************************************************************************************************
This email and any files transmitted with it are intended solely for the use of 
the individual or entity to whom they are addressed.
*******************************************************************************************************************************************************

Posted this yesterday


Hi, I'm fairly new to XSLT and have been having a problem with an XML file
I'm trying to process, the file being something along the lines below

        <?xml version="1.0"?>
        <?xml-stylesheet type="text/xsl" href="andytest.xsl"?>
        <Resources>
                <resource>
                        <filename Dept="A" LastModified="10/03/2003"
NextReview="10/04/2003" Stale="More Than Month Overdue">
                                Filename title
                        </filename>
                        <author>
                                Joe
                        </author>
                        <readers/>
                        <Div Head>
                                A
                        </Dept Head>
                        <Division>
                                A
                        </Division>
                </resource>
                <resource>
                        <filename Dept="A " LastModified="30/04/2003 14:02 "
NextReview="31/05/2003 " Stale="Up To Month Overdue">
                                Filename title
                        </filename>
                        <author>
                                Jill 
                        </author>
                        <readers/>
                        <Div Head>
                                 Person B
                        </Div Head>
                        <Division>
                                Div B 
                        </Division>
                </resource>
                <resource>
                        <filename Dept="A" LastModified="17/04/2003"
NextReview="29/05/2003" Stale="Up To Month Overdue">
                                Filename title
                        </filename>
                        <author>
                                Sam
                        </author>
                        <readers/>
                        <Div Head>
                                Person C        
                        </Div Head>
                        <Division>
                                A
                        </Division>
                </resource>
                <resource>
                        <filename Dept="B" LastModified="30/05/2003"
NextReview="01/07/2003" Stale="More Than Week To Go">
                                Filename Title
                        </filename>
                        <author>
                                Alice
                        </author>
                        <readers>
                                <reader count="1">
                                        Bloggs J (Joe)
                                </reader>
                                <reader count="1">
                                        Bloggs S (Sam)
                                </reader>
                                <reader count="1">
                                        Bloggs J (Jim)
                                </reader>
                        </readers>
                        <Div Head>
                                Person A
                        </LeadMinister>
                        <Division>
                                C
                        </Division>
                </resource>
        </Resources>




need to end up with 

Group by Dept: Group By Division: Group By Author


Dept    -       Division        -       Author
- ----------------------------------------------
A       -       A               -       Joe   
        -                       -       Sam
        -       B               -       Jill

B       -       C               -       Alice

The problem I'm having is I'm trying to use Meunchian grouping and while I
can get the first grouping using

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
xmlns="http://www.w3.org/1999/xhtml"; version="1.0">
<xsl:output indent="yes" method="html"/>

<xsl:key name="resources-div" match="resource" use="Division" />


<xsl:template match="/">
<html>
<head></head>
<body>
<xsl:apply-templates />
</body>
</html>
</xsl:template>

<xsl:template match="Resources">
<xsl:for-each
select="//resource[generate-id(.)=generate-id(key('resources-div',Division))
]">
<xsl:value-of select="Division" />

<xsl:for-each select="key('resources-div',Division)">
</xsl:for-each>

</xsl:for-each>

</xsl:template>


</xsl:stylesheet>

I'm having great trouble getting the second grouping and so on to work, I've
experimented with a few different formats but haven't quite got there (or
got there at all) so I was hoping someone would be able to give me a few
pointers to get me in the right direction.

Jarno replied "You can't use XSLT with IE5, it only supports Microsoft's
XSL. Upgrade to Mozilla or IE6."

Sorry I should have mentioned that we're using Java servlets to circumvent
this problem so, again any help with the code would be much appreciated.


Andy Stephen
Analytical Services
Tel: 2440796 
<mailto: Stephen AD (Andy)>



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



<Prev in Thread] Current Thread [Next in Thread>