Thanks to both of you for your replies. Your confirmation that I understood the
functioning of "castable as" led me to look elsewhere for the problem. It was a
problem with substring indexes in the section of code triggered by the "true"
evaluation of the "castable as" test.
Although it occurred in proximity, the error was not functionally related to
the "castable as" question. It's just that I was unfamiliar with "castable as",
so my suspicion as to the locus of the problem fell there.
--
Charles Knell
cknell(_at_)onebox(_dot_)com - email
-----Original Message-----
From: Florent Georges <darkman_spam(_at_)yahoo(_dot_)fr>
Sent: Mon, 28 Aug 2006 17:21:38 +0200 (CEST)
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: Re: [xsl] "castable as" explanation
cknell(_at_)onebox(_dot_)com wrote:
<xsl:variable name="is-date" select="if(DATE_PACKED_XSD
castable as xs:date) then '1' else('0')" />
Why not simply:
<xsl:variable name="is-date" as="xs:boolean"
select="DATE_PACKED_XSD castable as xs:date"/>
<xsl:choose>
<xsl:when test="$is-date = '1'">
... some processing here
</xsl:when>
<xsl:otherwise>
... some different processing here
</xsl:otherwise>
</xsl:choose>
What I expected to happen was that when the stylesheet
processed a DATE_PACKED_XSD element that could not be cast
as a date ($is-date = 0), processing would pass to the
<xsl:otherwise> branch.
What did happen was this:
stylesheet.xslt:423: Fatal Error! Invalid date "208 2-01-1
2". Non-numeric component
Mmh. What is the actual content of your xsl:when and
xsl:otherwise?
What am I misapprehending about "castable as"?
Nothing IMHO. Could you please show a little example that
reproduces the problem?
~> cat xslt/tests/castable-as.xsl
<xsl:transform
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
version="2.0">
<xsl:output method="text"/>
<xsl:template name="main">
<xsl:value-of select="
for $d in ('2006-08-29', '208 2-01-1 2') return
$d castable as xs:date"/>
</xsl:template>
</xsl:transform>
~> saxon -it main xslt/tests/castable-as.xsl
true false
Regards,
--drkm
p5.vert.ukl.yahoo.com uncompressed/chunked Mon Aug 28 15:13:47 GMT 2006
___________________________________________________________________________
Découvrez un nouveau moyen de poser toutes vos questions quelque soit le sujet
!
Yahoo! Questions/Réponses pour partager vos connaissances, vos opinions et vos
expériences.
http://fr.answers.yahoo.com
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--