我有三个工作的xsl文件,现在我只想让它们一起工作。
假设我的三个xslt是cham1.xsl, cham2.xsl, cham3.xsl
,我的源输入source.xml
。在输入的顶部表节点中,有一个属性outputclass
:
<root outputclass="cham1">
我想要的是如何编写另一个样式表,每当@outputclass
为cham1
,然后调用cham1.xsl
,如果@outputclass='cham2'
,则应用{{1在源上。
想知道这在xslt中是否可行?谢谢!
答案 0 :(得分:2)
基本上有两种方法:在XSLT中(在单个转换中)执行此操作,或在外部执行此操作。
要在XSLT中执行此操作,最好的方法是确保cham1.xsl,cham2.xsl和cham3.xsl中的模板规则使用不同的模式。然后,控制代码只需要在适当的模式下执行apply-templates。
在XSLT之外执行此操作取决于您的应用程序环境,例如:你是用Java,Ant,XProc等控制东西。