Subject: RE: [xsl] Position X Sort-> Please urgent! From: "Chris Bayes" <chris@xxxxxxxxxxx> Date: Thu, 27 Sep 2001 19:53:59 +0100 |
Paulo, You might want something like <xsl:template match="ORIGINAL"> <xsl:for-each select="TEST"> <xsl:sort select="." data-type="number" order="descending"/> <xsl:value-of select="."/> <xsl:variable name="var_pos" select="position()"/> <xsl:for-each select="document('XMLADD.XML')//ADDS/ADD"> <xsl:sort select="." data-type="text" order="descending"/> <xsl:if test="position()=$var_pos"><xsl:value-of select="."/></xsl:if> </xsl:for-each> </xsl:for-each> </xsl:template> Ciao Chris XML/XSL Portal http://www.bayes.co.uk/xml > -----Original Message----- > From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx > [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of > Paulo Henrique S. Bermejo > Sent: 27 September 2001 19:21 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] Position X Sort-> Please urgent! > > > Hi all, > > I'm with problems with my transformation and I need to give > my project in next week, and need to make others things. > Well... I've 2 xml documents and 1 xsl document. The first > doc xml (XMLORIGINAL.XML) The second xml document > (XMLADD.XML) have informations about first document. The > relashion this elements is for position, but I need to print > this context using the sort, and I'm having problems with > this. Exists a formal of to get a position of element in > original formate? My example: > > <!-- XMLORIGINAL.XML --> > <?xml-stylesheet type="text/xsl" href="XSLORIGINAL.XSL"?> <ORIGINAL> > <TEST>1</TEST> > <TEST>2</TEST> > <TEST>3</TEST> > <TEST>4</TEST> > <TEST>5</TEST> > </ORIGINAL> > > > <!-- XMLADD.XML --> > <ADDS> > <ADD>A</ADD> <!-- This element if referent the 1º <TEST> element --> > <ADD>B</ADD> <!-- This element if referent the 2º <TEST> element --> > <ADD>C</ADD> <!-- This element if referent the 3º <TEST> element --> > <ADD>D</ADD> <!-- This element if referent the 4º <TEST> element --> > <ADD>E</ADD> <!-- This element if referent the 5º <TEST> > element --> </ADDS> > > <!-- XSLORIGINAL.XSL --> > <xsl:template match="ORIGINAL"> > <xsl:for-each select="TEST"> > <xsl:sort select="." data-type="number" order="descending"/> > <xsl:value-of select="."/> > <xsl:variable name="var_pos" select="position()"/> > <xsl:value-of > select="document('XMLADD.XML')/ADDS/ADD[$var_pos]"> > </xsl:for-each> > </xsl:template> > > > I need to print so: > ------------------ > 5E > 4D > 3C > 2B > 1A > > And my result is: > ------------------ > 5A > 4B > 3C > 2D > 1E > > If I can't to print so, then exist another form???? > > > Thanks all, > > > Paulo. > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Position X Sort-> Please urge, Paulo Henrique S. Be | Thread | Re: [xsl] Position X Sort-> Please , Paulo Henrique S. Be |
RE: [xsl] Changing an attribute whe, Chris Bayes | Date | RE: [xsl] Changing an attribute whe, mjyoungblut |
Month |