Hi Mike,
The error isn't recoverable, but it is preventable. Before
attempting the conversion of a string to a dateTime, you can test:
<xsl:if test="$x castable as xs:dateTime">
Thanks Michael, that's what I was missing. This just invokes the
lexical parsing of $x and compares with the lexical requirements for
xs:dateTime, correct? Or is its behavior more determined than that?
It checks whether all the requirements of xs:dateTime are met (not
just that it's in the correct format, but that it actually is a legal
dateTime) -- in other words it tells you precisely whether or not the
cast will fail.
Just a minor nit, wouldn't syntactic consistency suggest
*castable-as* for the operator name? Is it really two tokens?
Yes, it's really two tokens. There are a number of operators in XPath
2.0 that are two tokens, such as "cast as", "instance of", "treat as".
In contrast, "isnot" is one word...
Cheers,
Jeni
---
Jeni Tennison
http://www.jenitennison.com/
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list