|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Extract unique list of attributes ...
This is the Muenchian grouping solution.
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="2.0">
<xsl:output method="xml" indent="yes" />
<xsl:key name="by-grade" match="student" use="@grade" />
<xsl:template match="/root">
<root>
<grades>
<xsl:for-each select="students/student[generate-id() =
generate-id(key('by-grade', @grade)[1])]">
<grade level="{@grade}" />
</xsl:for-each>
</grades>
<xsl:copy-of select="students" />
</root>
</xsl:template>
</xsl:stylesheet>
As Mike has said, you can also use distinct-values() function with a
XSLT 2.0 stylesheet.
Regards,
Mukul
On 7/22/05, Raghupathy S <raghupathy.s@xxxxxxxxx> wrote:
> Hi,
>
> I'm a total newbie to XML / XSl, and I've been stuck with this problem.
> Would be grateful for any suggestions / pointers
>
> The problem -
> Assuming I have an xml file
>
> <root>
> <students>
> <student grade="first">abc</student>
> <student grade="first">def</student>
> <student grade="second">ghi</student>
> <student grade="third">jkl</student>
> <student grade="third">mno</student>
> </students>
> </root>
>
> I need to transform this into the following xml using an XSL
>
> <root>
> <grades>
> <grade level="first"/>
> <grade level="second"/>
> <grade level="third"/>
> </grades>
> <students>
> <student grade="first">abc</student>
> <student grade="first">def</student>
> <student grade="second">ghi</student>
> <student grade="third">jkl</student>
> <student grade="third">mno</student>
> </students>
> </root>
>
>
> I apologize if this is a totally newbie question, but ive been at my
> wits end all day, trying to get this working.
>
> Any advice / help would be most appreciated.
>
> Thanks,
> Rags
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|

Cart








