Subject: Re: [xsl] Do Templates Conflict? From: Brian Chrisman <incubus@xxxxxxxxxxxxxx> Date: Wed, 4 May 2005 13:31:20 -0700 |
On Wed, May 04, 2005 at 03:03:29PM -0500, Edward Bryant wrote: > > I was wondering if someone can explain why two templates that both apply to > a source xml element do not conflict. > > I have one template that applies to all the paragraphs in a document and > another that applies only to the first paragraph. I did this assuming it > would somehow not work because of the conflict between the templates. > However, to my surprise it worked fine. Now, I am even more worried because > I don't know why it worked. Can someone explain what is going on? Reason it probably worked as you expected is because you probably had two templates like: match="paragraph" and match="paragraph[position() = 1]" There's a priority scheme for templates which is fairly well documented in most places where you'd look up template matching stuff. Some of the pieces of information which I personally found most useful: a) stuff with [] predicates get higher priority b) using a '|' doesn't increase priority in and of itself You can override this priority directly, but I've been burned a few times in doing that.. generally if I have something which I very specifically want called, I'll use a call-template, or perhaps a mode. Normally, the calculated priority works well.. and I guess if I kept the actual values related those calculations in mind while programming, it might make using priorities more effective. Hope this helps. > > Does the order the templates are listed in matter? > > Does it matter that one selected a more specific context?
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Do Templates Conflict?, Dimitre Novatchev | Thread | RE: [xsl] Do Templates Conflict?, Michael Kay |
Re: [xsl] Do Templates Conflict?, JBryant | Date | Re: [xsl] Do Templates Conflict?, JBryant |
Month |