Hi,
Wendell Piez wrote:
Robert,
At 06:09 PM 9/30/2004, you wrote:
Hi and thanks,
I was hoping to get the benefit of a quick boolean test. Perhaps this
is a JAXP thing? I would think setting a parameter to an empty string:
transformer.setParameter("permission", "");
would equate to (if the permission param was not sent):
<xsl:param name="permission" select="''"/>
(since that is what I am passing)
Yes, but if you then test="$permission", the test will fail, because the
empty string tests as false. (This is what David and others have tried
to tell you.)
I got that after after a few other posts (especially Wolgang's and
Bertoni's).
fact of life...
Setting the parameter to default to "false()" is not the same as setting
it to have no value: it has a value, precisely, of Boolean false.
Yes, I get that. If the parameter is not sent to the transformation then
I want it to be false(). My thinking was that:
<xsl:if test="$myBool">
</
is more performant than:
<xsl:if test="not($myStr='')">
</
When
an empty string is coerced to a Boolean, as it always is when it is
tested directly, it also gets a value of false.
I realize it is in the spec (now...) and I have to live with it. I guess
I was thinking along the lines that:
'' != false()
in any other languages I have dealt with,
Also, it appears to be inconsistent (I understand a @test is not a
@select, ) that:
<xsl:value-of select="''"/>
does not output false. So if it can be selected and output then why
should it evaluate to false?
just rambling... :)
To me, this seems like a bug for java processors (at least Saxon and
Xalan)
No, it's the way the spec outlines the built-in casting of datatypes.
If it were my project, I'd set the default to the string ".", which
would not test as false, and which conveniently means, in most
directory-traversal syntaxes, the current working directory.
That is what I did :) (actually './')
thanks,
-Rob
Cheers,
Wendell
======================================================================
Wendell Piez
mailto:wapiez(_at_)mulberrytech(_dot_)com
Mulberry Technologies, Inc. http://www.mulberrytech.com
17 West Jefferson Street Direct Phone: 301/315-9635
Suite 207 Phone: 301/315-9631
Rockville, MD 20850 Fax: 301/315-8285
----------------------------------------------------------------------
Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================
--+------------------------------------------------------------------
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>
--+--