Subject: RE: Computing string-value of nodesets From: Dimitre Novatchev <dnovatchev@xxxxxxxxx> Date: Sat, 11 Nov 2000 02:40:19 -0800 (PST) |
Here's a non-recursive solution (because some XSLT processors will crash when performing a highly recursive transformation): <xsl:template name="averageLength"> <xsl:param name="pValue"/> <xsl:variable name="vContainer"> <xsl:for-each select="$pValue"> <xsl:element name="body"> <xsl:copy-of select="."/> </xsl:element> </xsl:for-each> </xsl:variable> <xsl:variable name="theParent" select="msxsl:node-set($vContainer)"/> <xsl:choose> <xsl:when test="count($theParent//text()) > 0"> <xsl:value-of select="string-length($theParent) div count($theParent//text())"/> </xsl:when> <xsl:otherwise> 0 </xsl:otherwise> </xsl:choose> </xsl:template> Cheers, Dimitre Novatchev. P.S. Oviously, the result will vary depending on whether and how <xsl:strip-space> is used. ---------------Original Message----------------------------- From: Kay Michael <Michael.Kay@xxxxxxx> Subject: RE: Computing string-value of nodesets > I'd like to know the average string-length of a collection of > nodes (in a nodeset). You can program this by a recurive template, or you can use the Saxon extension function: saxon:sum( $nodes, saxon:expression('string-length(.)')) Mike Kay __________________________________________________ Do You Yahoo!? Thousands of Stores. Millions of Products. All in one Place. http://shopping.yahoo.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: Computing string-value of nodes, Kay Michael | Thread | xsl:exclude-result-prefixes, Nick-Lawson.org |
RE: use <xsl:value-of> within an at, Kaganovich, Yevgeniy | Date | XPath help, edmund mitchell |
Month |