xsl-list
[Top] [All Lists]

RE: XSLT 2.0 empty string

2005-02-28 07:53:10
I think the point of the example was that the expectation was that the
variable didn't have a set (sequence) semantic but rather was a string
as if string($f) had been applied, due to the as attribute on the
xsl:variable (which is a 2.0 feature of course).

The variable was defined as:

<xsl:variable name="foo" select="nothing" as="xs:string?"/>

The select expression yields a node-sequence, the as expression requires
atomic values, so XSLT invokes atomization. The result of atomizing an empty
node-sequence is an empty sequence of strings. 

But I think it's true to say that as="xs:string" does _not_ force an
empty sequence to coerce to an empty string, isn't it?

The only conversions forced by the "as" attribute are atomization and
numeric promotion (e.g. int to double). It doesn't cause a cast. If the "as"
attribute had said "xs:string" rather than "xs:string?", a type error would
be reported.

Michael Kay
http://www.saxonica.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>
--~--



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