我正在尝试将标识符引用的 XML 节点的值复制到图的另一个节点中。原始文件如下所示:
<Root>
<Object id="Id1">
<FileName>file.png</FileName>
</Object>
<Description>
<Content>
<Title>Nice Object</Title>
<ObjectReference>Id1</ObjectReference>
</Content>
</Description></Root>
在 XSLT 中,我使用一个变量来标识引用节点标识符的值。
<xsl:template match="Content">
<xsl:variable name="IdObject">
<xsl:value-of select="ObjectReference"/>
</xsl:variable>
<Out>
<Title>
<xsl:value-of select="Title"/>
</Title>
<FileName>
<xsl:value-of select="//Object[@id='$IdObject']/Filename"/>
</FileName>
</Out></xsl:template>
'FileName' 的值不会被复制。我认为我选择了错误的参考节点。我尝试使用“祖先::”和“父::”。那也行不通。你有想法吗?谢谢 我想获得以下结果:
<Out>
<Name>Nice Object</Name>
<FileName>file.png</FileName>
</Out>