[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
Hi,
You can just start with the recursive copy template and add specific rules to handle the specific processing you want in different contexts. For instance the example below changes X in A and changes Y in <B attribute="Y">
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:template match="node() | @*">
<xsl:copy>
<xsl:apply-templates select="node() | @*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="X">
<A>
<xsl:apply-templates select="node() | @*"/>
</A>
</xsl:template>
<xsl:template match="Y">
<B attribute="Y">
<xsl:apply-templates select="node() | @*"/>
</B>
</xsl:template>
</xsl:stylesheet>
San wrote:
Re: [xsl] element name as attribute value
Subject: Re: [xsl] element name as attribute value From: George Cristian Bina <george@xxxxxxxxxxxxx> Date: Tue, 23 Jan 2007 12:07:17 +0200 |
Hi,
You can just start with the recursive copy template and add specific rules to handle the specific processing you want in different contexts. For instance the example below changes X in A and changes Y in <B attribute="Y">
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:template match="node() | @*">
<xsl:copy>
<xsl:apply-templates select="node() | @*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="X">
<A>
<xsl:apply-templates select="node() | @*"/>
</A>
</xsl:template>
<xsl:template match="Y">
<B attribute="Y">
<xsl:apply-templates select="node() | @*"/>
</B>
</xsl:template>
</xsl:stylesheet>
Best Regards, George --------------------------------------------------------------------- George Cristian Bina <oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger http://www.oxygenxml.com
San wrote:
Hi all,
Hope you can help me with this problem (seems easy but somehow i can't figure how to do it :(( ) I have this xml file
<X> <Y/> </X>
I would like to have the output (element Y as attribute value from other element e.g. B)
<A> <B attribute="Y"> </A>
I tried with <xsl:copy-of select="child::node()"/> it worked but only in the element part, can't put it
as attribute value.
It become like
<A> <Y/> </A>
Really appreciate when someone can help this desperate person.
Many thanks before san
____________________________________________________________________________________
Need Mail bonding?
Go to the Yahoo! Mail Q&A for great tips from Yahoo! Answers users.
http://answers.yahoo.com/dir/?link=list&sid=396546091
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] element name as attribute, Andrew Welch | Thread | Re: [xsl] element name as attribute, David Carlisle |
Re: [xsl] element name as attribute, Andrew Welch | Date | Re: [xsl] element name as attribute, David Carlisle |
Month |
Keywords