使用值选择XML值

时间:2015-02-22 07:43:39

标签: xml xslt xslt-2.0

您好我被困在尝试获取xml中所需的所有值。我的第一个任务是遍历可用的许多不同元素,并在id为值时输出名称。

例如,我在id = 2时尝试输出名字。非常感谢任何帮助。

<Section>
      <Instance id = "1"></Instance>
      <First>James</First>
      <Last>Potter</Last>
 </Section>
 <Section>
      <Instance id = "2"></Instance>
      <First>Lily</First>
      <Last>Potter</Last>
  </Section>

目标是当id = 2时,返回名字,所以Lily。

我尝试做的是以下内容,但似乎没有效果。

 <xsl:for-each select="Section/id@Descriptor = '2'">
    <xsl:value-of select="../First"/>
</xsl:for-each>

谢谢!

2 个答案:

答案 0 :(得分:0)

您的输入仍然不完整(没有根元素),并且您的XSLT代码段缺少XSLT中最重要的内容 - context 。但也许你的意思是:

<xsl:for-each select="Section[Instance/@id=2]">
    <xsl:value-of select="First"/>
</xsl:for-each>

答案 1 :(得分:0)

如果您在样式表中使用XSLT 2.0处理器和version="2.0",那么您只需要

<xsl:value-of select="Section[Instance/@id = 2]/First"/>

在这种情况下不需要for-each