[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Patterns usage in XSLT template rules
Hi,
At 08:40 AM 5/2/2005, Bruce wrote: On 5/2/05, Ramkumar Menon <ramkumar.menon@xxxxxxxxx> wrote: > I run into a compilation error while using this stylesheet.. > > <xsl:template match="(/)"> > <o1:NeverPrints/> > </xsl:template> The reason for this is that match patterns cannot contain just any arbitrary XPath expression: they have their own grammar, which doesn't include matching on elements grouped with the "( )" operator. You couldn't say match="2 + 1" either, since although "2+1" is valid XPath (it returns the number 3), it doesn't match the grammar for patterns. But you could say apply-templates select="(/)" and be okay -- since apply-templates' "select" takes any XPath (as long as, in this case, it returns a node-set), not just a pattern. Learning the restrictions on patterns (you can't say match="preceding-sibling::*" either) and understanding the reason for them (back to the processing model) is part of a full understanding of XSLT. Cheers, Wendell
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|