RE: [xsl] postion gives me 2 instead of 1

Subject: RE: [xsl] postion gives me 2 instead of 1
From: "Lars Huttar" <lars_huttar@xxxxxxx>
Date: Fri, 20 Jun 2003 11:14:39 -0500
Paul Tremblay wrote:
> Okay, I've found the culprit. If I use *just* the above fragment in my
> xslt stylesheet, then it works. However, if I add this:
> 
> 
> 
>     <xsl:template match = "listitem/para">
> 	<block left-indent = "3">
>              <xsl:apply-templates/>
>         </block>
>     </xsl:template>
> 
> Thenn it does not work. The processor applies the second template with
> no predicate. 
> 
> I don't understand why this is so. I thought the templates that were
> most specific got applied before the ones that were more general?

Yes, but the granularity's not quite that fine.
Templates with "typical" match patterns like  match="para"
have default priority 0.
Templates with "more specific" match patterns,
like those with multiple steps ("listitem/para") and/or predicates
("listitem/para[1]"), have default priority 0.5.

If you assign your templates explicit priorities, "you may find
that stylesheets are easier to understand and less error-prone".
[Kay p. 316]

Lars


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread