Mega Code Archive

 
Categories / XML / XSLT StyleSheet
 

Copy value

File: Data.xml <?xml version="1.0" encoding="utf-8"?> <PurchaseOrder>   <From>a</From>   <To>b</To>   <Address>     <Street>Street</Street>     <City>Town</City>     <State>MO</State>     <ZipCode>11111</ZipCode>   </Address> </PurchaseOrder> File: Transform.xslt <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"   version="1.0">   <xsl:template match="/">     <Invoice>       <xsl:apply-templates select="PurchaseOrder/To" />       <xsl:apply-templates select="PurchaseOrder/From" />       <xsl:apply-templates select="PurchaseOrder/Address" />       <xsl:comment>         The rest of the Invoice would go here.       </xsl:comment>     </Invoice>   </xsl:template>   <xsl:template match="To">     <xsl:element name="From">       <xsl:value-of select="." />     </xsl:element>   </xsl:template>   <xsl:template match="From">     <xsl:element name="To">       <xsl:value-of select="." />     </xsl:element>   </xsl:template>   <xsl:template match="Address">     <xsl:copy-of select="." />   </xsl:template> </xsl:stylesheet> Output: <?xml version="1.0" encoding="UTF-8"?><Invoice><From>b</From><To>a</To><Address>     <Street>Street</Street>     <City>Town</City>     <State>MO</State>     <ZipCode>11111</ZipCode>   </Address><!--         The rest of the Invoice would go here.       --></Invoice>