Here is an xml I want to transform to below result using xsl. Any help please.This is some thing like windows directory structure.here the depth of the directory is dynamic.
<?xml version="1.0" encoding="UTF-8"?>
<root>
<qc name="accounting" level="1">
<qc name="fund" level="2">
<qc name="v1_0" level="3"/>
</qc>
</qc>
<qc name="asset_allocation" level="1">
<qc name="fund" level="2">
<qc name="v1_0" level="3"/>
</qc>
</qc>
<qc name="asset_allocation" level="1">
<qc name="fund" level="2">
<qc name="v1_1" level="3"/>
</qc>
</qc>
<qc name="credit_quality" level="1">
<qc name="account" level="2">
<qc name="v1_0" level="3"/>
</qc>
</qc>
<qc name="credit_quality" level="1">
<qc name="fund" level="2">
<qc name="v1_0" level="3"/>
</qc>
</qc>
<qc name="credit_quality" level="1">
<qc name="v1_0" level="2"/>
</qc>
<qc name="credit_quality" level="1">
<qc name="v2_0" level="2"/>
</qc>
<qc name="portfolio" level="1">
<qc name="credit_quality" level="2">
<qc name="v1_0" level="3"/>
</qc>
</qc>
</root>
In above xml I have with each level name. I want to group the same names at the same level.
Result:
<root>
<qc name="accounting" level="1">
<qc name="fund" level="2">
<qc name="v1_0" level="3"/>
</qc>
</qc>
<qc name="asset_allocation" level="1">
<qc name="fund" level="2">
<qc name="v1_0" level="3"/>
<qc name="v1_1" level="3"/>
</qc>
</qc>
<qc name="credit_quality" level="1">
<qc name="account" level="2">
<qc name="v1_0" level="3"/>
</qc>
<qc name="fund" level="2">
<qc name="v1_0" level="3"/>
</qc>
<qc name="v1_0" level="2"/>
<qc name="v2_0" level="2"/>
</qc>
<qc name="portfolio" level="1">
<qc name="credit_quality" level="2">
<qc name="v1_0" level="3"/>
</qc>
</qc>
</root>