Subject: RE: [xsl] rewriting xslt 1 to xslt 2.0 From: "Bryan Rasmussen" <bry@xxxxxxxxxx> Date: Tue, 29 Jan 2002 11:17:39 +0100 |
>The most obvious change you can make is to replace the recursive template >with an iteration. Something like: > > > > <xsl:param name="siblings"> > <stil for="def" type="1">dyn</stil> > <stil for="def" type="2">plain</stil> > <stil for="dyn" type="1">def</stil> > <stil for="dyn" type="2">plain</stil> > <stil for="plain" type="1">def</stil> > <stil for="plain" type="2">dyn</stil> > </xsl:param> > <xsl:variable name="stilnum" select="2"/> > > <xsl:template name="changeStyles"> > <xsl:variable name="br_type" select="@browse"/> > <xsl:variable name="st_type" select="@style"/> > <tempxsl:template match="change_style"> > <xsl:variable name="stiltext" > select="$siblings/stil[@for=$st_type and > @type=position()]"/> > > <xsl:for-each select="1 to $stilnum"> > <br/> > <a> > <tempxsl:attribute name="href"><xsl:value-of > select="$br"/>assembler.asp?xmlsrc=&mspgl; > <tempxsl:value-of select="$title"/>&st=<xsl:value-of > select="$br"/><xsl:value-of select="$stiltext"/> > </tempxsl:attribute> > <xsl:call-template name="langstring"> > <xsl:with-param name="trans2" > select="concat($stiltext,'_style')"/> > </xsl:call-template> > </a> > </xsl:for-each> </xsl:template> thanks, have to stick partially recursive though, because @type=position() is 1, <xsl:for-each select="1 to $stilnum"> is especially helpful :) XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] rewriting xslt 1 to xslt , Michael Kay | Thread | [xsl] How to select elements based , Rogier Hofboer |
[xsl] Using XSLT Component, Jarkko Kähkönen | Date | [xsl] xsl:document, fo output, DPawson |
Month |