Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xslt 使用XSL时,DOCTYPE声明丢失_Xslt - Fatal编程技术网

Xslt 使用XSL时,DOCTYPE声明丢失

Xslt 使用XSL时,DOCTYPE声明丢失,xslt,Xslt,我的XSL的输入是一个XHTML。应用XSL后,输入XHTML中的DOCTYPE声明在输出中丢失。我是否可以选择使用XSL在输出中复制/保留DOCTYPE声明。我使用的XSL处理器是SAXON。添加一个输出指令: <xsl:output doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />

我的XSL的输入是一个XHTML。应用XSL后,输入XHTML中的DOCTYPE声明在输出中丢失。我是否可以选择使用XSL在输出中复制/保留DOCTYPE声明。我使用的XSL处理器是SAXON。

添加一个输出指令:

<xsl:output 
  doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
  doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
/>


顺便说一句,输出指令堆栈-您可以拥有任意数量的指令。

如果输入xhtml具有DOCTYPE,如果我按照上面所示设置了DOCTYPE,那么我将最终将输出的DOCTYPE设置为@Rachel:Hm…这并不容易。我不知道在XSLT1.0中有什么方法可以做到这一点。您使用的XSLT版本是什么?这个页面表明在XSLT2.0中有一种方法可以做到这一点:我使用XSL2.0。将检查链接。我是否可以获取2 info doctype public和doctype system作为输入参数,并在输出中动态设置它们,如下所示?我得到的输出是:我在输出中得到变量名,如上所示。我遗漏了什么吗?@Rachel:是的,你遗漏了什么,即触发变量求值的大括号:
我很乐意投票给你一个答案,让它在xslt-1.0中自动完成。