0

NodeList をパラメーターとして XSLT に渡しています (違いがあれば、SaxonB 9.1/XSLT 2 を使用しています)。

私がやりたいことは、nodelist のすべての要素/値を 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>
4

1 に答える 1

2

<xsl:value-of>文字列値を提供します<xsl:copy-of>。代わりに使用することをお勧めします。

于 2012-10-18T08:38:42.293 に答える