1 xsl文件中可以有2个输出方法吗?
我想实现这个目标
html文件夹< - 其中的所有html文件
root(主文件夹)< - xml文件
我的下面代码只生成xml文件,没有创建html文件夹文件夹,也没有生成html文件
以下是xlst:
<xsl:output method="text"/>
<xsl:output method="html" indent="yes" name="html"/>
<xsl:variable name="filename" select="concat('chapter1', '.html')"/>
<xsl:value-of select="$filename"/>
<xsl:result-document href="main-folder/html-folder/{$filename}" format="html">
<xsl:output method="text"/>
<xsl:output method="xml" indent="yes" name="xml"/>
<xsl:result-document href="mainfolder/index.xml" method="xml" encoding="UTF-8" indent="yes">
答案 0 :(得分:0)
是的,这是可能的,但首先检查您的XSL以确保遵循这些规则:
结果文档中的输出方法(以及format
和indent
)必须通过适当的属性设置:
<xsl:result-document method="xml" format="" indent="yes" ...>
修复你的XSL将是这样的:
<xsl:variable name="filename" select="concat('chapter1', '.html')"/>
<xsl:result-document href="main-folder/html-folder/{$filename}" method="html" indent="yes">
...
</xsl:result-document>
<xsl:result-document href="mainfolder/index.xml" method="xml" encoding="UTF-8" indent="yes">
...
</xsl:result-document>
result-document的官方文档。