Subject: RE: [xsl] Transforming elements into attributes From: <Jarno.Elovirta@xxxxxxxxx> Date: Fri, 30 Apr 2004 10:29:47 +0300 |
Hi, > Is there a nice 'readable' way to transform elements into attributes? > > Currently, I need to copy and paste for each one. > > XSL: > > <xsl:template match="form"> > <form> > <xsl:if test="@name"> You probably meant to say to test <xsl:if test="name"> as you example source has no attributes. > <xsl:attribute name="name"> > <xsl:value-of select="name"/> > </xsl:attribute> > </xsl:if> > <xsl:if test="@action"> > <xsl:attribute name="action"> > <xsl:value-of select="action"/> > </xsl:attribute> > </xsl:if> > <xsl:if test="@method"> > <xsl:attribute name="method"> > <xsl:value-of select="method"/> > </xsl:attribute> > </xsl:if> > <xsl:apply-templates/> > </form> > </xsl:template> <xsl:template match="form"> <xsl:copy> <xsl:for-each select="name | action | method"> <xsl:attribute name="{name()}"> <xsl:value-of select="."/> </xsl:attribute> </xsl:for-each> <xsl:apply-templates/> </xsl:copy> </xsl:template> Cheers, Jarno
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Resolving xsl:import on Xalan, Murthy, Ganesh | Thread | [xsl] Inserting White Space ( , Animesh Sharma |
RE: [xsl] Transforming elements int, Daniel Joshua | Date | [xsl] Inserting White Space ( , Animesh Sharma |
Month |