Subject: RE: An empty sequence is not allowed as the first argument ...
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Sun, 4 Jun 2006 21:14:51 +0100
|
> Mike will probably have the definitive answer on this one.
> Given how it's now late on Friday over in the UK, however,
Even later in France where I've been taking a holiday...
>
> How about having a wrapper function that will accept any
> argument or none, and does type-checking on it before calling
> your actual formatting function? XPath 2.0 has the "castable
> as" operator to help with this kind of thing.
It all depends what you want to happen when invalid data is encountered. If
you want anything other than a fatal error from the transformation, you have
to code in the checks yourself.
> In my XSLT 2.0 dates processing (which like yours, doesn't assume
> schema-validity) I have a function that assigns a date of Jan 1, year
> 1 to things that aren't properly dated (which means "things
> my code can't make a date out of").
Two other approaches are to use the empty sequence to signify an invalid
date, and to use a union type. Union types aren't particularly well
supported - but after a week on holiday, I forget exactly what the
limitations are.
Michael Kay
|