使用XSLT获取具有子节点值的xml父节点标记名

使用XSLT获取具有子节点值的xml父节点标记名,xml,xslt,xml-parsing,Xml,Xslt,Xml Parsing,我需要使用xslt转换XML 我想将具有子节点的节点转换为其标记名的节点 是父项的名称,其值是其一个子项的值 例如: 给定的xml: <Parent> <ChildA>1</ChildA> <ChildB>2</ChildB> </Parent> 1. 2. 所需的xml输出: <Parent>2</Parent> 2 您没有指定您感兴趣的子节点 大概是这样的: <xsl:tem

我需要使用xslt转换XML

我想将具有子节点的节点转换为其标记名的节点 是父项的名称,其值是其一个子项的值

例如:

给定的xml:

<Parent>
  <ChildA>1</ChildA>
  <ChildB>2</ChildB>
</Parent>

1.
2.
所需的xml输出:

<Parent>2</Parent>
2

您没有指定您感兴趣的子节点

大概是这样的:

<xsl:template match="Parent">
  <Parent>
    <xsl:value-of select="ChildB"/>
  </Parent>
</xsl:template>
使用第二个子节点的值。这:

<xsl:template match="Parent">
  <Parent>
    <xsl:value-of select="*[last()]"/>
  </Parent>
</xsl:template>


使用最后一个子节点的值…

我认为您需要大括号:
name=“{../name()}”
<xsl:template match="Parent">
  <Parent>
    <xsl:value-of select="*[2]"/>
  </Parent>
</xsl:template>
<xsl:template match="Parent">
  <Parent>
    <xsl:value-of select="*[last()]"/>
  </Parent>
</xsl:template>