我遇到了一个预期的问题,我想知道是否有比我更好的解决方案。
所以,我有一个文档节点变量:
<xsl:variable name="variableNode" as="document-node()">
<xsl:document>
<root>
<element>...content...</element>
<root>
</xsl:document>
</xsl:variable>
此文档节点变量的内容稍后由 for-each 循环处理:
<xsl:for-each select="$variableNode/root/element">
...content...
</xsl:for-each>
从这个 for-each 循环的内容中,我试图通过这个 xslt 样式表获取实际 xml 文件beeing 进程的元素。但这没有用。
因此,我将文件名放入这样的变量中
<xsl:variable name="actual_filename" select="base-uri()"/>
并通过 doc-Function 获得所需的元素。( doc($actual_filename)/ )
这在我的情况下效果很好,但我想知道它是否是一个优雅的解决方案,特别是如果输入不是文件而是其他一些 xml 内容。
你能想出更好的解决方案吗?谢谢!