我有一个 xml 文件,其中包含多个具有相似子元素的相似元素。例如
<root>
<elem>
<condition>A</condition>
<value>111</value>
</elem>
<elem>
<condition>B</condition>
<value>555</value>
</elem>
<elem>
<condition>A</condition>
<value>222</value>
</elem>
</root>
其中一个元素包含我需要在 xsl 中提取的值。该值必须由元素子节点中的另一个元素中声明的条件来标识。假设条件是'B',我需要那个元素'555'的值。
我知道如何在我使用的 xml 编辑器 XPath 中获得正确的值(Rinzo - Eclipse)=>
/root/elem[condition='B']/value
但是当我尝试在 xsl => 中获得它时,我无法获得(任何)价值
<xsl:value-of select="/root/elem[condition='B']/value"/>
xsl 中的值将在单个元素中,因此不能使用 for-each 循环。恕我直言,原始 xml 格式不正确,但我对此无能为力。
所以问题是,如何使用 xsl:value-of 在 xsl 文件中获取该值?