[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] recursive recursion
Dear All, I suspect that this is a really easy problem, but I am having a problem getting my head around the problem. I have two attributes each with multiple values like x;y;z and a;b. I want to output every possible permutation of each of these attributes, for example xa,ya,za,xb,yb,zb So I need to recurse within the recursive algorithmn, but almost every thing I try doesn't work. Does anyone clever with recursion have some advice. thanks kent Here is some code I tried. <xsl:call-template name="returnStringBeforeX"> <xsl:with-param name="myStringA" select="x;y;z"/> <xsl:with-param name="myStringB" select="a;b"/> </xsl:call-template> <xsl:template name="returnStringBeforeX"> <xsl:param name="myStringA"/> <xsl:param name="myStringB"/> <xsl:choose> <!-- This rule fires when threre is something after ;, what is on the left is ready so we output this result --> <xsl:when test="substring-after($myStringA, ';') !='' "> <xsl:value-of select="substring-before($myStringA, ';')"/> <xsl:value-of select="substring-before($myStringB, ';')"/> <!-- We have not finished recursing so we call the funktion again --> <xsl:call-template name="returnStringBeforeX"> <xsl:with-param name="myStringA" select="substring-after($myStringA, ';')"/> <xsl:with-param name="myStringB" select="substring-after($myStringB, ';')"/> </xsl:call-template> </xsl:when> <xsl:otherwise> <!-- We have finished recursing so we output what is ready --> <xsl:value-of select="$myStringA"/> <xsl:value-of select="$myStringB"/> </xsl:otherwise> </xsl:choose> </xsl:template>
|
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
|