xsl:output指令被忽略了?

时间:2009-09-10 09:20:46

标签: xml xslt

我有一个XML和一个适当的XSL,我需要提供给Java应用程序。希望此Java应用程序在XSL转换后生成HTML页面。这不是我的Java应用程序,因此我不知道它在内部使用哪个XSL处理器。

问题是它完全忽略了我的xsl:output指令;因此,它不是生成HTML,而是生成纯XML。

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">     
<xsl:output method="html" omit-xml-declaration="yes" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" indent="yes" />

您对如何做有任何建议吗?你有解决方法吗?

感谢。

2 个答案:

答案 0 :(得分:0)

可能是因为doc类型指向XHTML strict,处理器合理地假设XML输出是可接受的吗?

答案 1 :(得分:0)

XSLT将生成输出作为文本,输出指令在w3schools解释。将“XML”输出与“HTML”或“XHTML”区分开来的唯一方法是进行一些小的格式化。

根据您的XSLT引擎,它可能有单独的方法来输出XML和文本,因为使用它将XML作为格式良好的XML文档输出更为常见。