xsl-list
[Top] [All Lists]

Re: R: [xsl] IQuestion about XSLT and Math Operations

2005-12-05 06:11:12
At 2005-12-05 13:09 +0100, drkm wrote:
"G. Ken Holman" wrote:
> At 2005-12-05 00:23 +0100, Villani Alessandro wrote:

> ><?xml version="1.0" encoding="utf-8"?>
> ><xsl:stylesheet
> > xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
> > version="1.0">
> >      <xsl:output method="xml"
> >        omit-xml-declaration="yes" indent="yes"/>
> >      <xsl:template match="parameters">
> >           <xsl:param name="r50">
> >...
> You can just do:
>    <c2><xsl:value-of select="r3 * r2"/></c2>

  That's not the same things (it's an xsl:param, not an xsl:variable).

Some of my students come to class confused about this. Constructs defined by <xsl:param> and <xsl:variable> are used in *precisely* the same way once a value is bound. The sole difference between the two is how the value is bound: for a variable the value can only be the value declared, while for a parameter the value is the declared value only if it is not overridden when the template invoked with a <xsl:with-param>. Otherwise they are treated as exactly the same kind of thing.

In the author's example, the parameter is declared as a parameter of an unnamed template rule, thus the *only* way that a value other than the default value is bound to the parameter is through <xsl:with-param> as a child of <xsl:apply-templates>. Given that all of the information used is provided for in the source tree, I doubt that the template rule match was necessarily parameterized ... without more of the example code showing his use of <xsl:apply-templates> I made the assumption (and it was an assumption) that the author was using <xsl:param> unnecessarily and that <xsl:variable> was just as suitable.

Because as I said, except for how the value is bound, they are indeed the same thing when being used. There are no differences in reference and use.

I hope this is considered helpful.

. . . . . . . . . Ken


--
Upcoming XSLT/XSL-FO hands-on courses:  Denver,CO March 13-17,2006
World-wide on-site corporate, govt. & user group XML/XSL training.
G. Ken Holman                 mailto:gkholman(_at_)CraneSoftwrights(_dot_)com
Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/s/
Box 266, Kars, Ontario CANADA K0A-2E0    +1(613)489-0999 (F:-0995)
Male Cancer Awareness Aug'05  http://www.CraneSoftwrights.com/s/bc
Legal business disclaimers:  http://www.CraneSoftwrights.com/legal


--~------------------------------------------------------------------
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>
--~--