[xsl] Problem of template priority

Subject: [xsl] Problem of template priority
From: "Fabre Lambeau" <Fabre.Lambeau@xxxxxxxxxxxxx>
Date: Thu, 29 Apr 2010 01:41:37 +0100
Hi!

I have a complex XSLT stylesheet, which does import some other ones in order
to refine/delegate some of the work depending on the type of data it finds.
This works by using templates with modes, and matching rules that are more
specific, hence increasing their default priority. However, in the main sheet
(the one that imports the others), there is a case where I want to force the
most generic template to be applied, after which it can call the others.
However, no matter what I do with the priority attribute, my processor seems
to always select the template from the imported stylesheet.

Having said that, I tried to create a simple example (below), and there I get
just the opposite effect: I can never get the imported template to apply
instead of the generic one, even though it is more selective

=== Main sheet ===

<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
    <xsl:import href="./special.xsl"/>

    <xsl:template match="/">
        <xsl:apply-templates mode="process-record"/>
    </xsl:template>

    <xsl:template mode="process-record" match="feed" priority="-9">
        <helloworld>
            <xsl:next-match/>
        </helloworld>
    </xsl:template>
</xsl:stylesheet>

=== Imported sheet ===

<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
    <xsl:template mode="process-record" match="feed[@type='special']"
priority="10">
        <specialone/>
    </xsl:template>
</xsl:stylesheet>

=== Document ===

<feed type="special">
	<node/>
</feed>


With this example, no matter what value I give to the priority attributes, I
always get the following result:

<helloworld>
	<specialone/>
</helloworld>

Any idea what I'm doing wrong?

FABRE LAMBEAU 

######################################################################
Attention:
This e-mail message is privileged and confidential. If you are not the
intended recipient please delete the message and notify the sender.
Any views or opinions presented are solely those of the author.

This email was scanned and cleared by NetIQ MailMarshal.
######################################################################

Current Thread