Subject: RE: [xsl] Apply-templates - how to omit top level element tags? From: "Mike Schinkel" <mikes@xxxxxxxxx> Date: Wed, 7 Sep 2005 15:49:47 -0400 |
Thanks. Question, I use "Name" in many contexts in my XML. How can I do this when I don't always want "Name" to be handled that way? -Mike -----Original Message----- From: Antsnio Mota [mailto:amsmota@xxxxxxxxx] Sent: Wednesday, September 07, 2005 3:44 PM To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: Re: [xsl] Apply-templates - how to omit top level element tags? You should use <h1><xsl:apply-templates select="Name"/></h1> and then a template for Name <xsl:template match="Name"> <xsl:value-of select="."/> </xsl:template> or better <xsl:apply-templates select="Name"/> <xsl:template match="Name"> <h1> <xsl:value-of select="."/> </h1> </xsl:template> On 9/7/05, Mike Schinkel <mikes@xxxxxxxxx> wrote: > To all: > > I'm trying to figure out how to use <xsl:apply-templates> (or anything > else) to get the right output: > > I've got an XML file and am generated XHTML. > > In my XSL file, I have the following variable and template: > > ========================================== > <xsl:variable name="trademark-symbol">™</xsl:variable> > <xsl:template match="htsg:TrademarkSymbol" name="htsg:TrademarkSymbol"> > <xsl:value-of select="$trademark-symbol"/> </xsl:template> > ========================================== > > In my XML file, I have a fragment that looks like this: > > ========================================== > <Name>This is the Title of the > Publication<myns:TrademarkSymbol/></Name> > ========================================== > > I want to generate output that looks like this: > > ========================================== > <h1>This is the Title of the Publication(tm)</h1> > ========================================== > > However, if I use this in my XSL: > > ========================================== > <h1><xsl:apply-templates select="Name"/></h1> > ========================================== > > I get the following that includes the <Name> element: > > ========================================== > <h1><Name>This is the Title of the Publication(tm)</Name></h1> > ========================================== > > When I try instead to use this: > > ========================================== > <h1><xsl:value-of select="Name/text()"/></h1> > ========================================== > > I just get this w/o the trademark: > > ========================================== > <h1>This is the Title of the Publication</h1> > ========================================== > > Again, this is what I want to generate as output: > > ========================================== > <h1>This is the Title of the Publication(tm)</h1> > ========================================== > > > I look forward and appreciate any suggestions, even those that might > have be taking a completely different route, but I also really want to > understand how to accomplish this using apply-templates or value-of or > whatever. > > Thanks in advance for your help. > > -Mike Schinkel > Publisher - How-To-Select(tm) Guides > http://www.howtoselectguides.com/ > mailto:mikes@xxxxxxxxxxxxxxxxxxxxx > 404-591-5701 (V) > 404-591-5731 (F)
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Apply-templates - how to , António Mota | Thread | Re: [xsl] Apply-templates - how to , António Mota |
Re: [xsl] Apply-templates - how to , António Mota | Date | Re: [xsl] Apply-templates - how to , António Mota |
Month |