Re: [xsl] casting in xpath

Subject: Re: [xsl] casting in xpath
From: Abel Braaksma <abel.online@xxxxxxxxx>
Date: Fri, 09 Feb 2007 14:49:05 +0100
Robert C Corsaro wrote:
Is something like this possible?:

//Node[xs:int(@number-att)=$myNum]

My problem is that I don't know if @number-att will be padded with zeros
or not

you mean, I think, xs:integer(@number-att), which is indeed possible. It will fail with an error if the @number-att contains any [^0-9.+-] (with some exceptions). However, there are several ways to prevent this (unrecoverable) error to be raised:


(: number() never fails :)
xs:integer(number(@number-att))

(: more cleanly, gives you more control :)
if (@number-att castable as xs:integer) then xs:integer(@number-att) else 0


etc.


Cheers,
-- Abel Braaksma
  http://xslt.metacarpus.com

Current Thread