Subject: Re: [xsl] type error on 3rd argument of key function From: Martin Honnen <Martin.Honnen@xxxxxx> Date: Thu, 14 Feb 2013 18:18:01 +0100 |
<xsl:variable name="formats" as="element()+"> <lookup:format from="eps" to="image"/> <lookup:format from="gif" to="image"/> <lookup:format from="jpg" to="image"/> </xsl:variable>
Assuming the above is correctly typed and I have the following key declaration
<xsl:key name="formats" match="lookup:*/@to" use="../@from"/>
Then the following invocation fais
key('formats',xfile/@format,$ formats)
with the error
A sequence of more than one item is not allowed as the third argument of key().......
But if I untype the $format variable (remove the as attribute from the $format variable), it works.
Experienced this on Saxon 9.1.0,7 and 9.3.0.5.
You could use as="document-node()" if you want to use an "as" attribute to type annotate the variable.
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] type error on 3rd argument of, Ihe Onwuka | Thread | Re: [xsl] type error on 3rd argumen, Ihe Onwuka |
[xsl] type error on 3rd argument of, Ihe Onwuka | Date | Re: [xsl] type error on 3rd argumen, Ihe Onwuka |
Month |