On 3/31/06, Khorasani, Houman <Houman(_dot_)Khorasani(_at_)comverse(_dot_)com>
wrote:
Hello everyone,
I got a "for-each" problem here and am wondering if you could solve it:
This is the input XML file:
<A>
<B>
<Product Quantity="5" Code="A75570" Description="REMINDER CALL -
WA"/>
</B>
</A>
I am interested in the Quantity attribute of 5.
I would like to run the "for-each" loop about 5 times:
<xsl:variable name="loop" select=" A/B/Product[(_at_)Quantity]"/>
<xsl:for-each select="$loop">
<xsl:call-template name="xxx">
</xsl:call-template>
</xsl:for-each>
Would that be possible like this?
No, as the context is a single <Product> node...
Doing what you are after is simple is XSLT 2.0, you could just use
select="1 to $quantity".
In 1.0 it's a lot harder, you will need to write a recursive named
template that calls itself decrementing the count with each call, or
use the Piez 'hack' of select="$someElementList[position() <= 5]"
As you haven't said if you can use 2.0 or not, I won't expand on the
1.0 solutions until then :)
cheers
andrew
--~------------------------------------------------------------------
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>
--~--