|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Reordering a complex hierarchical structure
something like this if i understood correctly <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output indent="yes"/> <xsl:key name="id" match="service" use="id"/> <xsl:template match="/"> <xsl:for-each select="/x/session/service[generate-id()=generate-id(key('id',id))]"> <service> <xsl:copy-of select="name|id"/> <xsl:for-each select="key('id',id)/../metric"> <xsl:sort select="@name"/> <xsl:copy-of select="."/> </xsl:for-each> </service> </xsl:for-each> </xsl:template> </xsl:stylesheet> $ saxon session.xml session.xsl <?xml version="1.0" encoding="utf-8"?> <service> <name>somename</name> <id>1</id> <metric name="andanothermetric">value3</metric> <metric name="andanothermetric">value6</metric> <metric name="anothermetric">value2</metric> <metric name="anothermetric">value5</metric> <metric name="somemetric">value1</metric> <metric name="somemetric">value4</metric> </service> <service> <name>anothername</name> <id>2</id> <metric name="andanothermetric">value9</metric> <metric name="andanothermetric">value12</metric> <metric name="anothermetric">value8</metric> <metric name="anothermetric">value11</metric> <metric name="somemetric">value7</metric> <metric name="somemetric">value10</metric> </service>
|
Back To School Sale!Save 30% off all Stylus Studio 2008 Products when you purchase from our Online Shop. 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
|






