Subject: RE: [xsl] Can i use apply-templates to match a xsl:template eleme nt? From: Maria Amuchastegui <mamuchastegui@xxxxxxxxxxx> Date: Fri, 18 Mar 2005 10:29:24 -0500 |
Can you post the XML data? Maria -----Original Message----- From: Chris [mailto:phatfish@xxxxxxxxx] Sent: Friday, March 18, 2005 10:19 AM To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: Re: [xsl] Can i use apply-templates to match a xsl:template eleme nt? Hi thanks, i did look at call-template before in my testing but discarded it because it didnt output my foreach loop in the template that i was calling. But it does seem thats what i should be using, although im not sure why the loop isnt being outputted -- and reading the specifications didnt really make it any clearer :) Bellow was the "main" template that i was hoping to output, it just contains a test for-each loop. Is it possible to have the template im calling output its content as i wanted? <?xml version="1.0" encoding="UTF-8"?> <xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html"/> <xsl:include href="layout.xsl"/> <xsl:include href="header.xsl"/> <xsl:template match="releasepage" name="main" > <div>A table for the main template</div> <table> <tbody> <xsl:for-each select="releases/row"> <tr> <xsl:for-each select="date"> <td> <xsl:apply-templates/> </td> </xsl:for-each> <xsl:for-each select="name"> <td> <xsl:apply-templates/> </td> </xsl:for-each> </tr> </xsl:for-each> </tbody> </table> </xsl:template> </xsl:transform> On Fri, 18 Mar 2005 08:45:45 -0500, Maria Amuchastegui <mamuchastegui@xxxxxxxxxxx> wrote: > You could do that with a named template: > > <?xml version="1.0" encoding="UTF-8"?> <xsl:transform version="1.0" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > <xsl:output method="html"/> > <xsl:template match="page"> > <html> > <head> > > </head> > <body> > <div id="header"> > <xsl:call-template name="header"/> > </div> > <div id="main"> > <xsl:call-template name="main"/> > </div> > </body> > </html> > </xsl:template> > > <xsl:template name="header"> > <!-- do stuff here --> > </xsl:template> > > <xsl:template name="main"> > <!-- do stuff here --> > </xsl:template> > > </xsl:transform> > > > -----Original Message----- > From: Chris [mailto:phatfish@xxxxxxxxx] > Sent: Friday, March 18, 2005 8:39 AM > To: XSL List > Subject: [xsl] Can i use apply-templates to match a xsl:template element? > > I would like the output of a xsl:template element to appear in a > specific location in stylesheet. Can i use apply-templates to match > the template i want and have it output there? > > eg: > <?xml version="1.0" encoding="UTF-8"?> <xsl:transform version="1.0" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > <xsl:output method="html"/> > > <xsl:template match="page"> > <html> > <head> > > </head> > <body> > <div id="header"><xsl:apply-templates > select="header"/></div> > <div id="main"><xsl:apply-templates > select="main"/></div> > </body> > </html> > </xsl:template> > > </xsl:transform> > > This file will be included into my stylesheets and used as a base > layout. I would like the xsl:template with name="main" to output into > the location above. But im not sure if this is allowed, does select > only relate an element in the source xml document? > > I hope you can see what im trying to do, Thanks :)
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Can i use apply-templates, Chris | Thread | Re: [xsl] Can i use apply-templates, Chris |
Re: [xsl] Can i use apply-templates, Chris | Date | RE: [xsl] Problem while Xpath-ing a, JBryant |
Month |