2014-03-27 72 views
0

我有一个单一的XSLT文件,将所有输入转换为其他XML。这里我的挑战是如何从输入XML保留DTD。例如,假设a.xml使用“x.dtd”,而b.xml使用“y.dtd”。当我得到结果文档时如何保留输入的XML文档DTD声明。撒克逊XSLT - 从输入保留Doctype

通过下面的方法,我得到了所有结果文档中的静态DTD。

<xsl:output method="xml" indent="no" doctype-system="some.dtd" doctype-public="somepath" name="xml"/> 

回答

0

不能在标准的XSLT做到这一点,但你可以使用安德鲁·韦尔奇的LexEv实用程序(我相信集成在KernowForSaxon,可从SourceForge)做到这一点。 LexEv通过将DTD或至少DOCTYPE声明转换为XML表示,然后在转换回DTD语法之前,通过转换将其转换或保留。