|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: using default params?
> But I don't want to always give the full set of attributes, but
> instead have my xsl respect default values.
>
> ...
>
> So I tried to do some stupid and nonworking tricks with xsl:call-template:
>
> <xsl:template match="foo">
> <xsl:call-template name="foo_pr">
> <xsl:with-param name="col1" select="@col1"/>
> <xsl:with-param name="col2" select="@col2"/>
> <xsl:with-param name="col3" select="@col3"/>
> </xsl:call-template>
> </xsl:template>
You got very close. Try to modify your with-param calls
like this:
<xsl:with-param name="col1">
<xsl:choose>
<xsl:when test="@col1">
<xsl:value-of select="@col1"/>
</xsl:when>
<xsl:otherwise>#FFFFFF<xsl:otherwise>
</xsl:choose>
</xsl:with-param>
For readability's sake, you may find it useful to store
the color in a variable:
<xsl:template match="foo">
<xsl:variable name="expanded-col1">
<xsl:choose>
<xsl:when test="@col1">
<xsl:value-of select="@col1"/>
</xsl:when>
<xsl:otherwise>#FFFFFF<xsl:otherwise>
</xsl:choose>
</xsl:variable>
<!-- [same for $expanded-col2 and $expanded-col3 - skipped] -->
<xsl:call-template name="foo_pr">
<xsl:with-param name="col1" select="$expanded-col1"/>
<xsl:with-param name="col2" select="$expanded-col2"/>
<xsl:with-param name="col3" select="$expanded-col3"/>
</xsl:call-template>
</xsl:template>
Regards,
Nikolai
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
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
|

Cart








