xsl-list
[Top] [All Lists]

Re: testing for string and number in XSLT 2.0 was Re: [xsl] Test For Numeric Values?

2005-04-08 13:02:01
Michael Kay wrote:

Until now I was under the impression that the "instance of" operator
is usable only if the value has been type-annotated as result of
validation against a specific xml schema (as described on page 287 of
the XPath 2.0 book), (which may not be the case with a significant
part of all transformations written and used in the real world).

Is my understanding of the applicability of the "instance of" 
operator wrong ?
   


It's incomplete... For atomic values, you can simply do things like

123 instance of xs:boolean  => false
"123" instance of xs:string => true

Also for nodes, you can do

$node instance of comment()
$node instance of element(para)
 


agreed, the missing *thing* here is something like instance of
number()....instance of text() or string().........and all this is
perhaps linked to XPath data model.

I guess what doesnt 'sit' right with me is that there are plenty of
inconsistencies in both XSLT 1.0 and 2.0 that still identify a value as
a number, in the atomic sense w/o resorting to any dependency on 'datatypes'

take for example xsl:sort

<xsl:sort select="." data-type="number"/>

what does 'number' mean here?

and if we are comfortable with this type of ambiguity of identifying
something purely as a 'number'....then why not have some fairly useful
functions such as is-number() and is-string() that exist in this no mans
land.

cheers, Jim Fuller

--~------------------------------------------------------------------
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>
--~--



<Prev in Thread] Current Thread [Next in Thread>