Subject: Ordering by child node attribute
From: "Gian Paolo Bernardini - TeleTu" <eu1517395@xxxxxxxxx>
Date: Tue, 27 Dec 2011 14:40:26 +0100
|
Hi all,
I'd like to order an xml from this form:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<Class code="B" kind="component">
<SubClass code="b1"/>
<SubClass code="b2"/>
</Class>
<Class code="b1" kind="chapter">
<SuperClass code="B"/>
<SubClass code="b110-b139"/>
</Class>
<Class code="b2" kind="chapter">
<SuperClass code="B"/>
<SubClass code="b210-b229"/>
</Class>
<Class code="b110-b139" kind="block">
<SuperClass code="b1"/>
<SubClass code="b110"/>
</Class>
<Class code="b210-b229" kind="block">
<SuperClass code="b2"/>
<SubClass code="b210"/>
</Class>
<Class code="b110" kind="fourdigit">
<SuperClass code="b110-b139"/>
</Class>
<Class code="b210" kind="fourdigit">
<SuperClass code="b210-b229"/>
</Class>
</root>
to this form:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<Class code="B" kind="component">
<SubClass code="b1"/>
<SubClass code="b2"/>
</Class>
<Class code="b1" kind="chapter">
<SuperClass code="B"/>
<SubClass code="b110-b139"/>
</Class>
<Class code="b110-b139" kind="block">
<SuperClass code="b1"/>
<SubClass code="b110"/>
</Class>
<Class code="b110" kind="fourdigit">
<SuperClass code="b110-b139"/>
</Class>
<Class code="b2" kind="chapter">
<SuperClass code="B"/>
<SubClass code="b210-b229"/>
</Class>
<Class code="b210-b229" kind="block">
<SuperClass code="b2"/>
<SubClass code="b210"/>
</Class>
<Class code="b210" kind="fourdigit">
<SuperClass code="b210-b229"/>
</Class>
</root>
I can't use 'sort' or 'grouping-by' because it returns for example b110
before b110-b139, which is not what I'm searching for.
If anyone has an idea it would be glad :)
Thanks in advance and happy new year
PS. currently I'm using SaxonHE9-4-0-1J, sometimes Xalan. I've no
constraints on the XSL versions.
|