XSLT转换动态值

时间:2016-07-12 21:44:44

标签: xslt xslt-1.0 xslt-2.0

需要帮助转换下面的xml ..不同的东西..不能。

<State>
<School>
<Name>ABC</Name>
<Strength>100</Strength>
</School>

<School>
<Name>XYZ</Name>
<Strength>100</Strength>
</School>
</State>

移除名称并动态学校更改为名称

<State>
<ABC>
<Strength>100</Strength>
</ABC>

<XYZ>
<Strength>100</Strength>
</XYZ>
</State>

1 个答案:

答案 0 :(得分:0)

这是一个快速解决方案:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:strip-space elements="*" /> <xsl:output method="xml" />
<xsl:template match="/">
<State>
<xsl:apply-templates select="*"/>
</State> 
</xsl:template>
<xsl:template match="/State/School">
<xsl:element name="{Name}"> 
<xsl:copy-of select="Strength"/>
</xsl:element>
</xsl:template>
</xsl:stylesheet>