xsl-list
[Top] [All Lists]

Re: [xsl] Please look at my mini-template

2009-05-15 19:57:07

        <xsl:with-param name="right">
                        <xsl:value-of select="substring($right, 3)"/>
        </xsl:with-param>

it's a comon mistake to use with-param or xsl:variable with conttent an
xsl:value-of but it's almst always better to instead do

        <xsl:with-param name="right" select="substring($right, 3)"/>

as apart from being easier to type it makes a string which is a
relatively lightweight object as opposed to a resul tree fragment
with a root node and a child text node with string value the string you
want, which is more expensive to build, and more expensive to use.

Probably, depending on your use case, I wouldn't have had a left
parameter and just output the string as you go along rather than
concatenating the result into left at each stage

<xsl:template name="hex2path">
        <xsl:param name="right"/>
        <xsl:choose>
            <xsl:when test="(string-length($right) > 2)">
                 <xsl:value-of select="concat(substring($right, 1, 2), '/')"/>
                <xsl:call-template name="hex2path">
                        <xsl:with-param name="right" select="substring($right, 
3)"/>
                </xsl:call-template>
            </xsl:when>
            <xsl:otherwise>
                <xsl:value-of select="$right"/>
            </xsl:otherwise>
        </xsl:choose>
    </xsl:template>

David

________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.

This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs. 
________________________________________________________________________

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>