Subject: [xsl] Why does my XSLT produce a Warning message with never-executed code that divides a blank by 10? From: "Roger L Costello costello@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Sun, 31 Mar 2024 07:56:32 -0000 |
Hi Folks, I have a program that generates this XSLT code: <xsl:template match="/"> <xsl:variable name="test" select="' '" as="xs:string"/> <xsl:value-of select=" if (normalize-space($test) eq '') then () else xs:integer($test) div 10"/> </xsl:template> When I execute that XSLT code, I get this warning message: Warning: SXWN9000 Evaluation will always throw a dynamic error: Cannot convert zero-length string to an integer Why am I getting that Warning message? This: xs:integer($test) div 10 will never be executed because of this: if (normalize-space($test) eq '') then () So I don't understand why I am getting the Warning message. How can the XSLT code be written so that, when executed, it doesn't produce a Warning message? Note: recall that I have a program that generates the XSLT code. Sometimes the program generates $test with a blank value, other times the program generates $test with a numeric value. The generated XSLT code needs to work with both cases. /Roger
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] What is the best way to g, Michael Kay michaelk | Thread | Re: [xsl] Why does my XSLT produce , Imsieke, Gerrit, le- |
Re: [xsl] What is the best way to g, Michael Kay michaelk | Date | Re: [xsl] Why does my XSLT produce , Imsieke, Gerrit, le- |
Month |