Subject: Re: [xsl] problem passing parameter to apply-templates From: David Carlisle <davidc@xxxxxxxxx> Date: Thu, 1 Sep 2005 17:33:52 +0100 |
> > <xsl:apply-templates > > select="document('../xml/clasif2.xml')/clasif2"> > > > the select above returns a node set with "item"s that > is matched with the template matching item. No, it returns a node set of clasif2 elements (probably just one of them.) So as stated originally you have to have a template matching classif2 that takes a node parameter and passit on to its children. ><!-- clasif2.xml used above --> ><item ref="405" name="Methodology" level=""> ><item ref="407" name="models" level="leaf"> </it If that is really clasif2.xml then it is not well formed and you should geta fatal error. I'm assuming (although you have not shown it) that there is a top level classif2 element. If you want to apply templates to the item elements directly, without having a template matching classif2 you need <xsl:apply-templates select="document('../xml/clasif2.xml')/clasif2/item"> ^^^^ Then the template matching item will be passed the nodes parameter but it can only access it if you declare it as a parameter of the template: <xsl:template match="item"> <xsl:param name="nodes"/> .... --><xsl:value-of select="$nodes"/><-- <xsl:variable name="atri" select="@level"/> 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 -> |
---|---|---|
Re: [xsl] problem passing parameter, Paula Estrella | Thread | Re: [xsl] problem passing parameter, Paula Estrella |
[xsl] Template/for-each/Firefox, Brett Zamir | Date | Re: [xsl] Template/for-each/Firefox, David Carlisle |
Month |