xml - 我想从 XML 结构中删除重复节点
问题描述
我想使用 XSLT 从 XML 下面删除重复的节点。我正在使用 XSLT 将 XML 转换为另一个 XML 结构。我怎样才能得到想要的结果?
我有这段代码是从一个应用程序生成的,它正在进入另一个应用程序。因此,来自源应用程序的数据包含一些冗余节点,如下例所示。所以我必须将转换后的 XML 放到目标应用程序将使用的文件夹中
解决方案
安排起来很简单
例如,我正在寻找这样的 xml 结构中的重复文件名
<file>
<name>some-name</name>
</file>
我做了这样的钥匙:
<xsl:key name="dupfile" match="file" use="name"/>
然后我创建一个这样的模板
<xsl:template match="file[not(generate-id() = generate-id(key('dupfile', name)[1]))]">
</xsl:template
它被称为 Muenchian 方法,在此处找到有关此的信息:http: //www.jenitennison.com/xslt/grouping/muenchian.html
推荐阅读
- javascript - 使用 React 更新值后无法获取存储值
- macos - 从 Darwin/XNU 版本中提取 macOS 版本名称
- android - 零持续时间的 Android 动画
- python - HTTP 错误 404:使用图形 API 抓取 Facebook 群组帖子时出现禁止错误
- css - 如何调整图像以适应 Bootstrap 中的 div?
- rust - 如果我不关心它的字段,我如何断言枚举是一个特定的变体?
- java - 将较长的 getTime() 分成 4 条短裤,实际上并不适用 Modbus
- laravel-5 - 具有动态语言环境的 Laravel 可翻译工厂播种
- c# - C#:使用 Python.Runtime 未找到
- sdl - SDL 分层渲染系统