[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] should there be an error condition with XPATH function when param not defined?


Subject: Re: [xsl] should there be an error condition with XPATH function when param not defined?
From: James Fuller <jim.fuller@xxxxxxxxxxxxxx>
Date: Thu, 12 Jan 2006 14:01:57 +0100

Michael Kay wrote:

>>having some problems interpreting what is expected behavior with the
>>following XSLT.
>>
>>xml
>><test>1</test>
>>
>>xslt
>><xsl:template match="/">
>>    <xsl:apply-templates select="."/>
>></xsl:template>
>>    
>>
>
>That template rule will give you infinite recursion.
>  
>
>><xsl:template match="test">
>>    <xsl:value-of select="contains(test, $somevariable)"/>
>></xsl:template>
>>    
>>

ya cut and paste error, should read

    <xsl:value-of select="contains(., $somevariable)"/>


>>note that $somevariable has not been declared with either xsl:param or
>>xsl:variable.
>>    
>>
>
>If $somevariable has not been declared, then you get a static error.
>  
>
ok, not in firefox I am using though.

>>in http://www.w3.org/TR/xpath spec it is clear that the contains()
>>function should return a false condition and I cant find 
>>anything to the
>>contrary that would say that this should throw an error (as 
>>it doesnt in
>>Firefox XSLT processor).
>>    
>>
>
>XPath 1.0 Section 3.1: A VariableReference evaluates to the value to which
>the variable name is bound in the set of variable bindings in the context.
>It is an error if the variable name is not bound to any value in the set of
>variable bindings in the expression context.
>  
>
ahhh, read that and it bounced off my frontal lobe...thx for confirming
that this should be a static error.

cheers, Jim Fuller


Current Thread
Keywords