如何在合并之前重构XSL文件?

时间:2012-12-10 14:15:05

标签: xslt refactoring

我有一个包含大量模板的相当大的XSL文件。现在我需要从另一个XSL文件中附加模板。不幸的是,这里使用的一些模板名称与第一个文件中的模板名称相同。因此,如果我只是复制并粘贴它们,整个XSL就会崩溃。

在追加第二个XSL文件之前,重构第二个XSL文件的最简单方法是什么?我可以将其模板放入不同的命名空间中吗?

2 个答案:

答案 0 :(得分:1)

如果要编写新代码,可以将模板名称放在命名空间中。

如果代码已经存在,您可以编写一个新的转换来处理XSLT转换并替换任何

/*/xsl:template/@name

其值与'_', $SomeSuffix连接,其中$SomeSuffix是全局/外部参数。

您可以使用相同的过程将tepmplates的名称替换为命名空间中的名称,该命名空间作为参数提供。

答案 1 :(得分:0)

如果您已命名模板(即template name="foo"),则使用命名空间来区分它们,即<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:l1="http://example.com/l1" version="1.0"><xsl:template name="l1:foo">...</xsl:template></xsl:stylesheet>