xsl-list
[Top] [All Lists]

RE: [xsl] Use of data() function (was: Re: [xsl] [OT])

2008-02-29 09:24:47
I'm not sure this is a great example - if it can be made more 
real world let me know and I'll add it to http://schema-aware.com

As I said, I don't think you need data() very often because atomization
nearly always happens automatically when you need it. Testing a
boolean-valued attribute like if(@married) is a case where it's very easy to
fall into the trap of assuming that atomization will happen when it doesn't.
It's probably especially dangerous when using variables:


<xsl:function name="f">
<xsl:param name="isMarried"/>
<xsl:if test="$isMarried">...


f(@married)

Another good reason for declaring parameter types: if the param is declared
with as="xs:boolean" then the attribute node will be atomized as part of the
function call.

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>