Subject: Re: [xsl] check for ancestors attribute From: David Carlisle <davidc@xxxxxxxxx> Date: Tue, 8 Feb 2005 11:19:28 GMT |
> How do I need to extend this template to match not only <foo > name="bar"> but further restrict my template to those <foo>s that have > an ancestor with attribute type="general". > > <xsl:template match="foo[@name='bar']"> the direct translation of what you wrote would be <xsl:template match="foo[@name='bar'][ancestor::*[@type='general']]"> although I'd probably write that as <xsl:template match="*[@type='general']//foo[@name='bar']"> > It seem to be not OK to write: > > <xsl:template match="foo[@name='bar' and ancestor::@type='general']"> @ is attribute:: and you can't use two axese in one step, that should have been <xsl:template match="foo[@name='bar' and ancestor::*/@type='general']"> which is equivalent to the first form above. David ________________________________________________________________________ This e-mail has been scanned for all viruses by Star. The service is powered by MessageLabs. For more information on a proactive anti-virus service working around the clock, around the globe, visit: http://www.star.net.uk ________________________________________________________________________
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] check for ancestors attribute, Robert Soesemann | Thread | [xsl] problem locating the xsl file, ficfic m |
[xsl] check for ancestors attribute, Robert Soesemann | Date | [xsl] problem locating the xsl file, ficfic m |
Month |