|
Subject: RE: [xsl] Sorting and replacing content From: <Jarno.Elovirta@xxxxxxxxx> Date: Wed, 1 Sep 2004 12:41:25 +0300 |
Hi,
> I can manage to make a stylesheet with an <xsl:if> for each <A> to <E>
> asking whether the number is 1, 2, 3, 4 or 5, but I am sure
> there must be a
> simpler way to do this. I can not use position() since the
> position af the
> tags can change in the structure.
>
> <Root>
> <a>10</a>
> <b>20</b>
> <c>30</c>
> <d>40</d>
> <e>50</e>
> ...
>
> ...
> <A>3</A>
> <B>5</B>
> <C>1</C>
> <D>2</D>
> <E>4</E>
> </Root>
>
> Result I need:
>
> <no>30</no> <!-- C = 1 has to be first with the value of c
> (which is 30) -->
> <no>40</no>
> <no>10</no>
> <no>50</no>
> <no>30</no>
For example
<xsl:template match="Root">
<xsl:for-each select="A | A/following-sibling::*">
<xsl:sort select="." data-type="number"/>
<no>
<xsl:value-of select="../*[name() = translate(name(current()),
'ABCDE', 'abcde')]"/>
</no>
</xsl:for-each>
</xsl:template>
Cheers,
Jarno
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] Sorting and replacing con, Kenny Bogoe (BogoeMD | Thread | RE: [xsl] Sorting and replacing con, Andrew Welch |
| [xsl] Performance problems with gro, Ismael Cams | Date | Re: [xsl] Sorting and replacing con, David Carlisle |
| Month |