|
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 |