[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: variable problem
The "as" attribute declares the type of the variable, it does not cause conversion to that type (except for wha I call weak conversions: atomization of nodes, conversion of untyped values to typed values, and numeric promotion). To convert a double to an integer, use an explicit cast - xs:integer(@end - @begin). I'm a little surprised by the error message here, I would have expected it to complain about the variable itself, not about its use as an operand of "to", but it's right according to the spec to report a type error here. (I would have personally preferred the spec to be a bit more tolerant, but that's a different question) Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Kent Seegmiller [mailto:hookjaw20@xxxxxxxxxxx] > Sent: 21 January 2006 04:48 > To: XSLT > Subject: variable problem > > When I try to convert a variable to and integer i.e. > <xsl:variable name="gap" as="xs:integer" select="@end - @begin"/> > <xsl:for-each select="1 to $gap"> > ... > </xsl:for-each> > I get the error: > XPTY0004: Required type of second operand of 'to' is > xs:integer; supplied > value has xs:double > > Why do I get this error and how can it be resolved?
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|