RE: [xsl] Bizarre problem with MSXML4 that doesn't happen in MSXM L3

Subject: RE: [xsl] Bizarre problem with MSXML4 that doesn't happen in MSXM L3
From: "Kovach, Dave" <dave.kovach@xxxxxxx>
Date: Fri, 11 Apr 2003 20:00:19 +0200
I migrated from msxml3 to msxml4 and I think your problem might
lie in how you are instantiating msxml and defining the objects
for your xml object and your xsl object. There are differences
in doing so for 3 vs. 4...

other than that I have followed the spec of XSLT and never had
a single problem with msxml vomiting on a stylesheet...

I did find some problems in how I setup the objects though. But,
nothing more than just following what MS suggests as the appropriate
ways to setup your objects fixed any abnormailities.

I do some heavy lifting of passing mass parameters and xml
objects (returned sql data) from an .asp (pseudo controller) 
to xslt... and I am shocked by how well it works...

(I am of no help I guess)

DK

-----Original Message-----
From: David Carlisle [mailto:davidc@xxxxxxxxx]
Sent: Friday, April 11, 2003 9:51 AM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [xsl] Bizarre problem with MSXML4 that doesn't happen in
MSXML3



Probably unrelated to your problem but this looks very suspicious code


  <xsl:when test="boolean(/object/securityacl)=true">


If there is a /object/securityacl element then this will compare the
string "true" with the string value of a <true> element child of the
current element. If there is no such <true> element, the test will be
false. 

If there is not a /object/securityacl element then it will compare 
the string "false" with the string value of a <true> element child of the
current element. If there is no such <true> element, the test will be
false.

Is that really what was intended?

I suspect that you intended

<xsl:when test="/object/securityacl">

which is true just if there is an /object/securityacl element.

Similarly

<xsl:when test="count(object/data/row) > 0">

implies finding all the rows and counting them (unless your system
optimises this expression for you)

<xsl:when test="object/data/row">

is the same test but probably more likely to be optimised.

David

________________________________________________________________________
This e-mail has been scanned for all viruses by Star Internet. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________

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

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


Current Thread