我将 NodeList 作为参数传递给 XSLT(如果有任何区别,我使用 SaxonB 9.1/XSLT 2)。
我想要做的是将节点列表中的所有元素/值插入到 XSLT 输出(即 XML 文件)中。
当我在下面做时,它只打印节点的文本值(即它根本不生成 XML 元素)
<xsl:param name="NL" />
. <xsl:template match="/">
. <xsl:value-of select="$NL" />
. </xsl:template>
<xsl:stylesheet>
我可以使用 XPath 访问特定元素,即。$NL/节点 1。为了在输出中包含所有 NodeList 的 XML 元素和值,我需要做什么?
我也尝试像下面这样循环,但它只打印 NOdeList 的“顶级”元素 - 它不包括这些元素的任何子节点。
<xsl:for-each select="$NL/*">
. <xsl:element name="{./name()}">
. <xsl:value-of select="./text()"/>
. </xsl:element>
</xsl:for-each>