XSLT使用属性选择不同的值

人气:751 发布:2022-10-16 标签: xslt select unique distinct

问题描述

我正在尝试使用XSLT将列表转换为不同的值列表。

输入:

<object name="obj1"/>
<object name="obj2"/>
<object name="obj1"/>

所需输出:

<object>obj1</object>
<object>obj2</object>

有人知道如何在XSLT 1.0或2.0中完成这项工作吗?

THX

推荐答案

使用XSLT2.0和

<xsl:for-each select="distinct-values(//object/@name)">
  <object><xsl:value-of select="."/></object>
</xsl:for-each>

<xsl:for-each-group select="//object" group-by="@name">
  <object><xsl:value-of select="current-grouping-key()"/></object>
</xsl:for-each-group>

319