我在看Muenchian Grouping。我尝试查找与我的 xml 类似但找不到的示例。大多数示例结构良好,而我的示例令人困惑。
这是我的 XML 的缩短版本(请注意,我无法更改 XML 结构,因为它是标准的东西,而且我无法控制),我正在使用 XSLT 1,因为系统现在只支持该版本。
<object>
<creator id="123">
<name>ABC</name>
<city>Hamilton</city>
</creator>
<creator><references>456</references></creator>
<contact><references>123</references></contact>
<creator id="456">
<name>XYZ</name>
<city>New York</city>
</creator>
<associatedParty><references>123</references>
<role>Sponsor</role>
</associatedParty>
</object>
我想要的输出是:
<party id="123">
<name>ABC</name>
<city>Hamilton</city>
<role>Creator</role>
<role>Contact</role>
<role>Sponsor</role>
</party>
<party id="456">
<name>XYZ</name>
<city>New York</city>
<role>Creator</role>
<role>Contact</role>
</party>
现在 id 属性被用作引用元素的值。并且输出中的标记可以是创建者、联系人或元素内部的任何内容(如果它位于关联方元素下)。
我坚持创建密钥以从它们的 id/references 属性对它们进行分组。据我所见,使用 xsl:key 的示例仅适用于具有相同名称的节点,而我发布的示例具有不同的节点名称。任何帮助,将不胜感激!!!!