使用 XSLT 访问 XML 地图元素

Accessing an XML map element using XSLT

我看到下面的 XML 代码。访问键 "var2" 的值的 XSLT 语法是什么?

.
.
<array key = "objects">
    <map>
        <string key "var1">ID</string>
        <string key "var2">Name</string>
        <string key "var3">Weather</string>
    <map>
</array>
.
.

我不是 XSLT 专家,但我在我的 XSLT 工作中熟悉 XML 变量,并打算在变量中分配 "var2" 的值以显示在我翻译的文档中。

这实际上取决于您当前在 XML 中的位置,但是要在任何地方访问它...

<xsl:variable name="var2" select="//array/map/string[@key='var2']" />

或者,如果您有多个 array 对象,并且想要针对特定​​对象...

<xsl:variable name="var2" select="//array[@key='objects']/map/string[@key='var2']" />

(请注意,我假设您的实际 XML 是有效的 XML,因为它应该是 <string key="var2"> 而不是 <string key "var2">