我正在使用Perl和XSL。我嘗試將<Interval>
的值更改爲XML文件中的某個數字。我的XML看起來是這樣的:爲什麼一個元素在轉換後出現兩次?
<?xml version="1.0"?>
<Config>
<Enabled>false</Enabled>
<Interval>5</Interval>
</Config>
我的XSL是這樣的:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:apply-templates/>
</xsl:copy>
</xsl:template>
<xsl:template match="/Config/Interval">
<xsl:element name="PollingInterval">
<xsl:element name="Interval">77</xsl:element>
</xsl:element>
</xsl:template>
</xsl:stylesheet>
的問題是,我的輸出具有元素<Interval>
兩次:
<?xml version="1.0"?>
<Config>
<Enabled>false</Enabled>
<Interval><Interval>77</Interval></Interval>
</Config>
請幫助。
問得好(+1)。請參閱我的答案以獲得有關該問題的解釋以及完整且簡單的解決方案。 – 2010-08-05 16:13:33