2013-06-25 45 views
2

我有這樣一個文件 -使用XSLT把圍繞XML標籤的包裝元素

<item> 
    <id>5</id> 
    <name>Bob</name> 
</item> 
<item> 
    <id>6</id> 
    <name>Harry</name> 
</item> 

我想的東西,如「項目」繞到它,所以它看起來像這樣

<items> 
    <item> 
     <id>5</id> 
     <name>Bob</name> 
    </item> 
    <item> 
     <id>6</id> 
     <name>Harry</name> 
    </item> 
</items> 

如果可能,我寧願選擇一個通用的解決方案,以便使用「id」和「name」以外的標籤。這可能通過XSLT?

+0

這不適用於xlst,因爲您的輸入XML格式不正確(缺少根元素)。 –

+0

嘗試發佈所有你真正的XML。 –

回答

0

不是最有創意的解決方案,但它應該包裝它。

<xsl:template match="/"> 
    <items> 
     <xsl:apply-templates select="item" /> 
    </items> 
</xsl:template> 

<xsl:template match="item"> 
    <xsl:copy /> 
</xsl:template> 
+0

我收到錯誤「元素上不允許使用屬性@select」 – Narabhut

+0

您是對的。我有一段時間沒有完成XSLT。我認爲'select =「。」'隱含在'' – austin

3

帶XSLT的包裝元素通常不是什麼大問題。但隨着你的意見,這將無法正常工作。

需要XSLT 格式良好的XML作爲輸入,並且由於缺少頂級元素,您的XML格式不正確。