Subject: RE: [xsl] suppressing default template rules From: Jarno.Elovirta@xxxxxxxxx Date: Tue, 26 Mar 2002 14:24:56 +0200 |
Hi, > Please find below the xml and xsl files i am working > on. What i am trying to do is print the firstname and > secondname when the employee element is encountered. > But now i am getting two sets of values printed. I > assume that the second set is due to the > built(default) in template rule for matching all > text() nodes. If so what could be the way out. > > > <?xml version="1.0" ?> > <custdet> > <employee> > </employee> > <firstname>first</firstname> > <lastname>last</lastname> > </custdet> > > > <?xml version="1.0"?> > <xsl:stylesheet > xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > version="1.0"> > > <xsl:template match="firstname"> > <b> > <xsl:value-of select="."/> > </b> > </xsl:template> > > <xsl:template match="lastname"> > <i><b> > <xsl:value-of select="."/> > </b></i> > </xsl:template> > > <xsl:template match="employee"> > <xsl:apply-templates select="//firstname"/> > <xsl:apply-templates select="//lastname"/> > </xsl:template> add <xsl:template match="custdet"> <xsl:apply-templates select="employee" /> </xsl:template> And perhaps it would be wise if you re-evaluated the source document schema to make it a bit more hierarchical. Also, the template for employee is quite inefficient, <xsl:template match="employee"> <xsl:apply-templates select="../firstname"/> <xsl:apply-templates select="../lastname"/> </xsl:template> would probably be a better solution. Santtu XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] suppressing default template , Aseef Jamaluddin | Thread | RE: [xsl] suppressing default templ, Aseef Jamaluddin |
Re: [xsl] time from server to docum, cutlass | Date | [xsl] select the correct value from, Carlos |
Month |