XSLT环绕元素

时间:2012-06-08 13:39:51

标签: xml xslt

好吧,我觉得这是一个非常愚蠢的问题,但我已经尝试了一段时间才能得到它,所以我的XSLT文件将吐出封装在某个任意元素中的输出,让我们称之为“root”。我怎么做到这一点?

这是我当前的XSLT,如果这有帮助的话:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="DCField">
    <xsl:choose>
        <xsl:when test="@FieldValueType='None'">
            <xsl:element name="{Name}">
                <xsl:value-of select="Value" />
            </xsl:element>
        </xsl:when>
        <xsl:otherwise>
            <xsl:element name="{@FieldValueType}">
                <xsl:value-of select="Value" />
            </xsl:element>
        </xsl:otherwise>
    </xsl:choose>
</xsl:template>
<xsl:template match="text()"/>
</xsl:stylesheet>

我想要它,所以我的输出看起来像:

<root>
    <element1>
    <element2>
    ...
</root>

1 个答案:

答案 0 :(得分:1)

只需将根匹配模板的内容包装在<root>标记中。

http://www.xmlplayground.com/RYv2XW(参见输出源)