问问题
76 次
2 回答
1
基本上,您需要确保在模板中保持对子节点的处理,因此您需要<xsl:apply-templates/>
(或者<xsl:apply-templates select="@* | node()"/>
,如果您还想转换或复制属性)在所有模板中匹配可以包含这些元素的italic
元素。因此,您当然可以编写一个模板匹配root/ISSUES
,但您需要确保它通过做<xsl:apply-templates/>
.
于 2013-09-13T12:39:50.573 回答
0
添加
<xsl:template match="italic">
<I>
<xsl:apply-templates select="@* | node()"/>
</I>
</xsl:template>
只要。属性和节点的处理将由您的其余代码处理。该示例展示了如何在没有任何您自己的逻辑的情况下进行复制。您的解决方案将如下所示:
<xsl:template match="/">
<xsl:message>Inside root</xsl:message>
<xsl:apply-templates select="/root/ISSUES" />
</xsl:template>
<xsl:template match="/root/ISSUES">
some logic follows here( it might even internally call many templates)
</xsl:template>
<xsl:template match="italic">
<I>
<xsl:apply-templates select="@* | node()"/>
</I>
</xsl:template>
于 2013-09-13T12:54:42.327 回答