2014-11-06 91 views
0

我有以下XML:生成XML標籤形式的XML屬性

<?xml version="1.0" encoding="UTF-8"?> 
<Types> 
<Type ID="1A" type="Generic" BasicID="1a1"> 
<properties> 
<property name="ID" value="1A" /> 
<property name="Name" value="ABC" /> 
<property name="Dept" value="DEF" /> 
</properties> 
<relationships> 
<relationship name = "Dependant1" value ="Father"/>   
<relationship name = "Dependant2" value ="Mother"/> 
<relationship name = "Dependant3" value ="Spouse"/> 
</relationships> 
</Type> 
</Types> 

我想將其轉換爲:

<?xml version="1.0" encoding="UTF-8"?> 
<Types> 
<ID>1A</ID> 
<Name>ABC</Name> 
<Dept>DEF</Dept> 
<Dependant1>Father</Dependant1> 
<Dependant1>Mother</Dependant1> 
<Dependant1>Spouse</Dependant1> 
</Types> 

我是很新的XSLT,請大家幫我出這一點。 謝謝,

回答

1

元素的轉型與

<xsl:template match="property | relationship"> 
<xsl:element name="{@name}"> 
    <xsl:value-of select="@value"/> 
</xsl:element> 
</xsl:template> 

完成再加入

<xsl:template match="/*"> 
    <xsl:copy> 
    <xsl:apply-templates select="//property | //relationship"/> 
    </xsl:copy> 
</xsl:template> 

,你有樣式表。