[xsl] An empty sequence is not allowed as the first argument ...

Subject: [xsl] An empty sequence is not allowed as the first argument ...
From: cknell@xxxxxxxxxx
Date: Fri, 02 Jun 2006 16:02:21 -0400
I've written an XSLT function to format dates fetched from a database. This worked well until I pulled some records with NULL values for the date I wished to format. When my stylesheet encountered this element, Saxon emitted this error message and ended with a fatal error:

Fatal Error! An empty sequence is not allowed as the first argument of ck:std-date-string-fmt()

You may well ask, "What did you expect?" The answer is that I was not expecting anything. I was happily ignorant of the lurking danger. I tried to supply a default empty string value for the parameter that causes the function to choke when no value is supplied, only to be upbraided by Saxon telling me that default values are not permitted in function parameters.

(I had slipped in an xsl:choose to catch the empty-sting cases, but without being able to assign a default value, that failed.)

Does an empty sequence have some kind of xs:type that I could cast to an xs:string, and if so, how is it done? If not, how do I handle cases when no data comes from my database?
-- 
Charles Knell
cknell@xxxxxxxxxx - email

Current Thread