XPath 不显示重复值(递归查询)

XPath do not show duplicate values (recursive query)

在我的情况下,我有一个具有递归部分 (.//) 的查询。在 XML-XSLT(使用 Xpath)的结果中,我只想看到唯一值。我与 Altova Stylevision 合作建立了这个 XSLT。

我的XML:

<Subject>
<Subject>
        <L2 Name="Asset 1">
          <IDR3 Name="IDR A" />
        </L2>
        <L2 Name="Asset 2">
          <IDR3 Name="IDR B" />
        </L2>
</Subject>  
<Subject>
        <L2 Name="Asset 3">
          <IDR3 Name="IDR B" />
        </L2>
        <L2 Name="Asset 4">
          <IDR3 Name="IDR B" />
        </L2>
    <Subject>
            <L2 Name="Asset 5">
              <IDR3 Name="IDR A" />
            </L2>
            <L2 Name="Asset 2">
              <IDR3 Name="IDR B" />
            </L2>
    </Subject>      
</Subject>          
<Subject>
    <Subject>
        <Subject>
            <L2 Name="Asset 7">
              <IDR3 Name="IDR C" />
            </L2>
            <L2 Name="Asset 8">
              <IDR3 Name="IDR B" />
            </L2>
        </Subject>
    </Subject>      
</Subject>      

整个“主题”是一个递归部分。我希望得到以下结果:

我用来设置初始 XSLT 的字符串:

.//Subject/L2/IDR3/@Name

我尝试了 preceding::siblingdistinct-values 的多种解决方案,但我无法弄清楚这个,因为我必须处理递归性 (downwards/upwards)。我真的希望有人能帮我解决这个问题。

问候

为什么不简单:

distinct-values(//IDR3/@Name)

演示:https://xsltfiddle.liberty-development.net/6q1SDmh