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.)
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. 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.
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.
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
======================================================================