On 29.04.2010 02:41, Fabre Lambeau wrote:
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.
I'm afraid we cannot tell you why without seeing the actual code or a
minimal example that reproduces this behaviour.
There are many possible reasons why the template rule in the importing
stylesheet didn't match -- a predicate that causes the pattern not to
match, typos in mode names, missing namespace prefixes, ...
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
Before considering explicit or computed priorities, the processor has to
consider import precedence [1, 2].
This means that the imported template will always lose, no matter what
the priorities specify.
Gerrit
[1] http://www.w3.org/TR/xslt20/#conflict
[2] http://www.w3.org/TR/xslt20/#dt-import-precedence
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--