Subject: RE: [xsl] Repeating Code From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Sat, 8 Oct 2005 09:55:29 +0100 |
We need to know a bit more. Let's assume somenode1 and somenode2 are simple names (rather than more complex path expressions) so that all the nodes are children of some parent, say P; but you don't necessarily want them output in document order. Then in XSLT 1.0 you can do: <xsl:apply-templates select="somenode1"/> <xsl:apply-templates select="somenode2"/> <xsl:template match="P/*"> <COL> <DATA> <xsl:value-of select="." /> </DATA> </COL> </xsl:template> In 2.0 you can change the call to <xsl:apply-templates select="somenode1, somenode2"/> In 2.0 you can also do it with a for-each loop: <xsl:for-each select="somenode1, somenode2"> <COL> <DATA> <xsl:value-of select="." /> </DATA> </COL> </xsl:for-each> but this is only possible in 1.0 if you want the output in document order (you can use "|" in place of ",", or do select="*" to process all the children). Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Nicholas Orr [mailto:nick@xxxxxxxxxxx] > Sent: 08 October 2005 06:39 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] Repeating Code > > Can anyone tell me if it is possible to use a for-each loop > (or even > some other sort of loop) to repeat code for a certain set of xsl > outputs? For example, currently my xsl contains : > > <COL> > <DATA> > <xsl:value-of select="somenode1" /> > </DATA> > </COL> > <COL> > <DATA> > <xsl:value-of select="somenode2" /> > </DATA> > </COL> > > repeating for about 30 references, and the only change is in the > select line. It works fine, but I'm wondering if there isn't a way > to make it neater. So I can have a list of <xsl:value-of select > > lines and then only have the COL and DATA parts once in the XSL file. > > Thanks, > Nick
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Repeating Code, Michael Kay | Thread | Re: [xsl] Repeating Code, omprakash . v |
Re: [xsl] Repeating Code, Ragulf Pickaxe | Date | [xsl] Concatenating a nodeset (set , Ragulf Pickaxe |
Month |