|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: string-length
Sorry for asking this question: but where would I put this template name="add-data". I cannot put it in a vriable tag, that won't work. If i place it outside, how does it "know" what DATA is? Ben -----Original Message----- From: owner-xsl-list@xxxxxxxxxxxxxxxx [mailto:owner-xsl-list@xxxxxxxxxxxxxxxx]On Behalf Of Steve Tinney Sent: Sunday, April 02, 2000 5:41 PM To: xsl-list@xxxxxxxxxxxxxxxx Subject: Re: string-length > I want to select all nodes (in order) as long as the additive > string length is less then 915 > <CATEGORY> > <DATA> > .... > </DATA> > <DATA> > .... > </DATA> Use recursion, and pass the length of cumulative length of your string as a parameter. Wrap the whole thing inside a variable. <xsl:variable name="str"> <xsl:call-template name="add-data"/> </xsl:variable> <xsl:template name="add-data"> <xsl:param name="strlen" select="0"/> <xsl:param name="index" select="1"/> <xsl:if test="strlen < 915"> <xsl:value-of select="DATA[$index]"/> </xsl:if> <xsl:if test="$index <= count(DATA)"> <xsl:call-template name="add-data"> <xsl:with-param name="strlen" select="$strlen+string-length(DATA[$index])"/> <xsl:with-param name="index" select="$index+1"/> </xsl:call-template> <xsl:if> </xsl:template> (Untested, and probably not exactly what you want when, e.g., the first DATA node has more than 915 characters, but you get the idea) Steve XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list 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
|

Cart








