请参阅 xslt-1.0 中的当前 XML 文档

Refer to current XML document in xslt-1.0

我想使用 XSLT 向 XML 文档添加一个根,并向其附加一个子节点。这对我来说很难——因为我在执行 XSLT 时没有 XML 文档的名称。 XSL 在不同的 XML 上将是 运行。

我见过有人像这样向 XML 文档添加根:

doc.AppendChild(rootNode);

其中 'doc' 是他们的 XML 文档。

但是,我不知道我的 XML 文档的名称是什么,所以我无法引用 'doc'。有什么想法吗?

顺便说一下,在 xslt-1.0 中工作。

亲切的问候

编辑:

更详细地说,当我们获取 XML 文件时,我们需要对它们进行 运行 xslt 编码。有时 XML 文档是空的(因此,根元素是空的),因此,我们需要添加一个带有子元素的根元素。

为了做到这一点,我现在需要的是一种在 xslt 代码中引用 XML 文档的方法。

来自XPath 1.0 specification

/ selects the document root (which is always the parent of the document element)

但是,这对您描述的情况没有帮助:

Sometimes the XML documents are empty (thus, they do not have a root element), and therefore, we need to add a root element to it.

因为没有根元素的文档不是 well-formed XML 文档并且不能被 XSLT 处理。