XSL转换属性为元素

时间:2017-02-16 11:45:25

标签: xslt

我想将输入xml的xml属性转换为输出xml的元素。 实施例

<Price price1="2" price2="3" total="5" other="x" tax="2"/> to

 <Price>
   <price1>2</price1>
   <price2>3</price2>
   <total>5</total>
   <other>x</other>
   <tax>2</tax>
 </Price>

我试过

   <xsl:element name="Price">
   <xsl:for-each select="*:Price/@*">
   <xsl:element name="*>
  <xsl:value-of select="@*"/>
  </xsl:for-each>
   </xsl:element></xsl:element>

无法获得所需的输出。请建议。

1 个答案:

答案 0 :(得分:0)

以这种方式尝试:

<xsl:template match="Price">
    <xsl:copy>
        <xsl:for-each select="@*">
            <xsl:element name="{name()}">
                <xsl:value-of select="."/>
            </xsl:element>
        </xsl:for-each>
    </xsl:copy>
</xsl:template>