xsml:param revelation

Subject: xsml:param revelation
From: Richard Lander <rlander@xxxxxxxxxxxxx>
Date: Sun, 6 Aug 2000 16:49:21 -0700
 Hello,

Until today, I was having great trouble making my XSLT transform work in IE
(July MSXML3). I found the problem and thought I'd share it, as I think it
significant.

The error was ~ 'xsl:param not allowed here'. Given that I thought xsl:param
was allowed almost anywhere, I found that error hard to believe and
considered it an MSXML bug. Upon reading the MSXML SDK Help and the spec, I
found that I was wrong. 

Given that I've used XT exclusively, until now, I've been unknowingly
allowed non-compliant xsl:param use. I merely want other XSLT writers to
know that XT has this caveat, and that MSXML will not allow this use of
xsl:param.

Please correct me if I'm incorrect in the following description of xsl:param
and xsl:variable use:

xsl:param - allowed as child of xsl:stylesheet/xsl:transform and
xsl:template. The caveat with xsl:template is that xsl:param must be the
first child.

xsl:variable - allowed anywhere in a stylesheet that an instruction is
allowed.

The difference in use between the two is that xsl:variable cannot be
overridden from the commandline/script.

I also tested Saxon and Xalan. Saxon rejected the improper use of xsl:param,
but Xalan allowed it. I don't have a copy of any of the other parsers, so
did not check them.

Take care,

Rich


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread