如何使用XSLT以预定义的顺序回显XML的元素?

时间:2011-07-30 01:44:09

标签: xml xslt

1 个答案:

答案 0 :(得分:1)

因为您正在使用身份转换,所以您可以通过单独应用模板来定义输出元素的顺序。例如:

<xsl:template match="product">
    <xsl:param name="file"/>
    <xsl:copy>

        <xsl:apply-templates select="@*"/>

        <xsl:if test="not(id)">
            <id><xsl:value-of select="@id"/></id>
        </xsl:if>

        <xsl:apply-templates select="name"/>
        <xsl:apply-templates select="description"/>
        <xsl:apply-templates select="price"/>
        <xsl:apply-templates select="image"/>
        <xsl:apply-templates select="url"/>
        <xsl:apply-templates select="category"/>

        <catid><xsl:value-of select="category/@id"/></catid>
        <shopid><xsl:value-of select="$file"/></shopid>

    </xsl:copy>
</xsl:template>