Greg Faron <gfaron(_at_)integretechpub(_dot_)com> wrote:
At 04:36 PM 11/13/2002, you wrote:
Greg Faron <gfaron(_at_)integretechpub(_dot_)com> wrote:
<xsl:if test="string-length() = 0">
^^ Is this a typo?
No. When called without an argument, the context node is
converted to a
string and used as the argument. There are many alternative ways to test
whether the string value of the context node is the empty string,
I simply
carried the one that the OP used so as not to confuse the
reference. Other
possibilities include
string(.) = ''
normalize-space() = ''
normalize-space(.) = ''
not(string(.))
normalize-space(string-length(.)) = 0
etc.
Right, I realized that shortly *after* I posted, but I figured I owed you the
right to answer the question I asked you. :-)
Wendell posted "not(string())", but according to topxml.com (I know,
it's not the canonical source), a call to string() with no
arguments always
returns the empty string. I haven't verified that one either way...
Actually, I would rather put the "td" element into the named template,
like so:
I left it out in case the calling template would care to modify
attributes of 'td' such as rowspan or width. Personal choice, I guess.
Point well taken. I can see the advantage of doing it either way depending on
context.
-- Roger Glover
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list