xsl-list
[Top] [All Lists]

Re: [XSLT 2.0] Determining the datatype of the value returned from a function?

2005-06-17 09:11:00


For example, if the function returns
the integer 5 then: 
 
    "$value instance of xs:integer" 
 
should yield true 

That will be true automatically: you don't have to declare it.
Values always have some type and instance of will check that type
(at run time).

    <xsl:value-of select="$num"/>

value-of always generates a text node with string value the
serialisation of the value supplied, so you will always lose type
information that way.


You want xsl:sequence if you want to return values other than text.
<xsl:function name="ex:Test">
    <xsl:param name="letter"/>
    <xsl:choose>
         <xsl:when test="$letter eq 'A'">
             <xsl:sequence select="5""/>
         </xsl:when>
         <xsl:when test="$letter eq 'B'">
             <xsl:sequence select="xsd:decimal(5.0)""/>
         </xsl:when>
         ...
         <xsl:otherwise>
             <xsl:value-of select="'Error'"/>
         </xsl:otherwise>
    </xsl:choose>
</xsl:function>
 

David

________________________________________________________________________
This e-mail has been scanned for all viruses by Star. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________

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