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(_at_)goya(_dot_)com(_dot_)au]
Sent: 08 October 2005 06:39
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
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
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail:
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--