[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: Re: "castable as" explanation

Subject: RE: Re: "castable as" explanation
From: cknell@xxxxxxxxxx
Date: Mon, 28 Aug 2006 14:51:36 -0400
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@xxxxxxxxxx - email

-----Original Message-----
From:     Florent Georges <darkman_spam@xxxxxxxx>
Sent:     Mon, 28 Aug 2006 17:21:38 +0200 (CEST)
To:       xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject:  Re:  "castable as" explanation

cknell@xxxxxxxxxx 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

> 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: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"/>


    ~> saxon -it main xslt/tests/castable-as.xsl
    true false



 p5.vert.ukl.yahoo.com uncompressed/chunked Mon Aug 28 15:13:47 GMT 2006 
Dicouvrez un nouveau moyen de poser toutes vos questions quelque soit le sujet ! 
Yahoo! Questions/Riponses pour partager vos connaissances, vos opinions et vos expiriences. 

Current Thread


Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
First Name
Last Name
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.