Subject: Re: Passing Variable into an external xml document template From: Gary L Peskin <garyp@xxxxxxxxxxxx> Date: Wed, 16 Aug 2000 14:24:54 -0700 |
Sia -- document('Menus.xml') in your apply-templates returns the root node of the Menus.xml document. This is then used for the apply-templates. Since you do not have a rule matching the root node, the built-in root node rule is used. This invokes apply-templates for each child of the root. In this case, that's the MenuTreeList template. However, since this is invoked from the built-in rule, no parameters are passed. Change your select to document('Menus.xml')/MenuTreeList and everything should work as you want. Also, you'll need a closing quote after theMenu in: <xsl:with-param name="theMenu select="MenuName"/> HTH, Gary Sia Rahimi wrote: > > Hi, > > Known: > (1) How to pass parameters to a template > (2) How to use an an external xml file > > Problem: > Within the template of an external xml file, > I want to process based on the parameter Passed in. > > XML main: > <MenuDisplay> > <MenuName>Main</MenuName> > </MenuDisplay> > > XML external (Menus.xml): > <MenuTreeList> > <MenuTree name="Login"> > <MenuItem> > <Text>Please Login</Text> > </MenuItem> > </MenuTree> > <MenuTree name="Main"> > <MenuItem> > <Text>System News</Text> > </MenuItem> > <MenuItem> > <Text>Customer Menu</Text> > </MenuItem> > </MenuTree> > </MenuTreeList> > > XSL: > <xsl:stylesheet > version="1.0" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > <xsl:template match="MenuDisplay"> > <xsl:apply-templates select="document('Menus.xml')"> > <xsl:with-param name="theMenu select="MenuName"/> > </xsl:apply-templates> > </xsl:template> > <xsl:template match="MenuTreeList"> > <xsl:param name="theMenu"/> > <xsl:apply-templates select="MenuTree[@name=$theMenu]"/> > </xsl:template> > </xsl:stylesheet> > > It seems that the parameter theMenu is not set. > > Thanks to Jeni's site I have come this far, but, although > the current problem seems like another problem answered by Jeni > "Re:Loading an external file of index" it does not seem to > work for me. (using xalan). > > Thanks for any help you may be able to provide. XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Passing Variable into an external x, Sia Rahimi | Thread | Re: Passing Variable into an extern, Warren Hedley |
Re: "replies go to the list" policy, Martin Stricker | Date | RE: Using tags within tags, David Allouche |
Month |