Subject: [xsl] mathematical functions - specifically sqroot From: "bix xslt" <bix_xslt@xxxxxxxxxxx> Date: Tue, 03 Dec 2002 18:38:54 +0000 |
N = number of children sqrt = sqRoot(N)
if (sqrt - (int)sqrt > 0) w = (int)sqrt h = w + 1 else w = sqrt h = w
Thanks in advance, Bix
<xsl:template name = "sqrt" > <xsl:param name = "N" /> <xsl:param name = "Eps" select = "0.1" />
<xsl:variable name = "vrtfParams" > <param> <xsl:value-of select = "$N div 2" /> </param>
<param> <xsl:value-of select = "$N" /> </param> </xsl:variable>
<xsl:template name = "myRepeater" match = "*[namespace-uri()='MyRepeatGenerator']" > <xsl:param name = "pList" select = "/.." /> <xsl:param name = "pParams" />
<xsl:choose> <xsl:when test = "not($pList)" > <xsl:copy-of select = "$pParams[1]/node()" /> </xsl:when> <xsl:otherwise> <xsl:apply-templates select = "$pParams[2]" > <xsl:with-param name = "X" select = "$pList[last()]" /> <xsl:with-param name = "N" select = "$pParams[3]/node()" /> </xsl:apply-templates> </xsl:otherwise> </xsl:choose> </xsl:template>
<xsl:template name = "myRptFn" match = "*[namespace-uri()='MyRepeatableFunction']" > <xsl:param name = "X" /> <xsl:param name = "N" />
<xsl:value-of select = "($X + ($N div $X)) div 2" /> </xsl:template>
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] using different templates, Michael Kay | Thread | [xsl] Element creation, David Pratt |
Re: [xsl] filter, Joerg Heinicke | Date | Re: [xsl] filter --much sorry for ", Paul |
Month |