Subject: Re: [xsl] dynamically set priority in xsl:template From: Georges Schmitz <georges.schmitz@xxxxxxxxx> Date: Fri, 02 Mar 2007 11:29:34 +0100 |
Andrew Welch wrote: > On 3/2/07, Georges Schmitz <georges.schmitz@xxxxxxxxx> wrote: >> I want to dynamically set the priority of a template (with >> $expand.level), with the objective to control the "amount of output" >> from outside the stylesheet via parameter setting. >> >> <xsl:param name="slenderise.level" select="-1" /> >> >> <xsl:template match="@db:type | >> @db:size | >> @db:nullable" >> mode="slenderise" >> priority="$slenderise.level" /> > ... > <xsl:variable name="suppress" select="tokenize($names, ' ')" > as="xs:string*"/> Thank you for this hint, but it isn't practicable for me (I gave just a simplified example); the stylesheet is rather complex: 11 apply-templates in mode "slenderise" ... I would prefer the "pass-fail" solution proposed by Michael Kay, but when I tried the following, I get again an error: <xsl:template match="@db:type | @db:size | @db:nullable" mode="slenderise" priority="2" /> use-when="$slenderise.level = 1" ==> XPST0008: Error in use-when expression. XPath syntax error at char 18 on line 211 in {$slenderise.level = 1}: Variable $slenderise.level has not been declared The parameter is definitively set, so what is wrong? "$slenderise.level = 1" can be evaluated to a boolean, or am I missing another thing?
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] dynamically set priority , Andrew Welch | Thread | Re: [xsl] dynamically set priority , David Carlisle |
Re: [xsl] dynamically set priority , Andrew Welch | Date | Re: [xsl] dynamically set priority , David Carlisle |
Month |