Re: [xsl] Template priority query

Subject: Re: [xsl] Template priority query
From: Chris Loschen <closchen@xxxxxxxxxxxxxxxxxx>
Date: Thu, 10 Jun 2004 07:31:37 -0400
At 07:11 AM 6/10/2004, you wrote:
At 2004-06-10 06:53 -0400, Chris Loschen wrote:
Quick sanity check -- I've got two templates like this:

<xsl:template match="a | b | c">...</xsl:template>

<xsl:template match="*[@length]">...</xsl:template>

My assumption has been that the first of these is more specific
and so would have a higher priority than the second, but my output
suggests that the second is firing instead of the first. Is my assumption
faulty,

Yes. Priorities are applied *severally*, as if you had three separate template rules for your first template rule, each with only a simple name and a priority of zero. Your second rule is more complex than a simple name, therefore it has higher priority of .5.


Note that there are no higher implied priorities ... all patterns more complex than a simple name have an implied priority of .5.

OK, got it, thanks. So my choices are either specifically assigning a higher priority to template 1 or removing the length
attribute from elements a, b, and c. Either one would probably work here. I'll try them out. Thanks for your help.



Yours,


Chris Loschen
closchen@xxxxxxxxxxxxxxxxxx
781-718-3017 (cell)



Current Thread