Re: Looping using XSL
At 02:21 AM 10/2/2002, you wrote:
Doesnt <xsl:for-each select="//*[position() <= rating]">
I'd like to see your XPath. The XPath "//*[position() <= 17]" will return a node set with 17 members, or with as many members as your document has nodes, whichever is less.
Sorry if the words 'looping' and 'iterate' have confused the issue but I'm not sure what else to call it.
Oh, it's me who's confusing the issue. I merely quibble since it's not "looping" or even (in the strictest sense) iterating (though that's what the spec calls "for-each"), since like everything in XSLT what you are really doing is specifying the output, and it's up to the processor to decide (for example) what order to do things in, or whether to do them all together or whatever, as long as the output tree comes out correctly.
But it has the same effect.
I guess what's needed is some way of testing against the number in the rating node and write out the html line until the rating is equalled.
That's still procedural thinking (and will work fine if you adopt a recursive solution, the true way to do "loops" in XSLT). This way of approaching it is to say "I don't care about testing against 'rating', just give me number(rating) nodes and I'll do x for each one".
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format