|
Subject: Re: [xsl] [XSLT 2.0] Determining the datatype of the value returned from a function? From: David Carlisle <davidc@xxxxxxxxx> Date: Fri, 17 Jun 2005 17:11:00 +0100 |
> 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
________________________________________________________________________
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| [xsl] [XSLT 2.0] Determining the da, Roger L. Costello | Thread | RE: [xsl] [XSLT 2.0] Determining th, Roger L. Costello |
| [xsl] [XSLT 2.0] Determining the da, Roger L. Costello | Date | RE: [xsl] How to output <xsl:messag, Mathieu Sagot |
| Month |