聚合具有相同值的相同类型节点的属性

M4dGh1gn0

我有这个问题:

<?xml version="1.0" encoding="utf-16"?>
<root>
    <container>
        <Facility count="1" normalied="Mauritius Branch Campus">Mauritius Branch Campus</Facility>
        <Facility count="1" relevance="0.2">Mauritius Branch Campus</Facility>
        <Country count="1" relevance="0.8">Mauritius</Country>
        <Country count="1" normalized="Mauritius">Mauritius</Country>   
    </container>
</root>

我想实现的是:

<?xml version="1.0" encoding="utf-16"?>
<root>
    <container>
        <Facility count="1" relevance="0.2" normalied="Mauritius Branch Campus">Mauritius Branch Campus</Facility>
        <Country count="1" relevance="0.8" normalized="Mauritius">Mauritius</Country>
    </container>
</root>

在该示例中,e仅报告了诸如<Facility>元素之类的元素<Country>,它们与属性的类型相同。

有没有一种方法可以通过XSLT实现呢?

提前致谢。

[R

马丁·霍恩(Martin Honnen)

使用XSLT 2.0处理器等撒克逊9可以使用for-each-group,通过下面的代码组的第一node-name(.)(假设只希望所有组Country和所有Facility在一起,而不是使用不同名称的元素),然后通过字符串内容:

<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">

    <xsl:output indent="yes"/>

    <xsl:template match="@*|node()">
        <xsl:copy>
            <xsl:apply-templates select="@*|node()"/>
        </xsl:copy>
    </xsl:template>

    <xsl:template match="container">
        <xsl:copy>
            <xsl:for-each-group select="*" group-by="node-name(.)">
                <xsl:for-each-group select="current-group()" group-by=".">
                    <xsl:copy>
                        <xsl:copy-of select="current-group()/@*"/>
                    </xsl:copy>
                </xsl:for-each-group>
            </xsl:for-each-group>
        </xsl:copy>
    </xsl:template>
</xsl:transform>

在线演示,网址http://xsltransform.net/pPzifp3

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

当不同类型的两个节点对于某个属性具有相同的值时,如何与 cypher 建立关系?

来自分类Dev

具有相同类型属性的接口或类型的 Typescript 简写

来自分类Dev

结构概念中具有相同类型的多个属性

来自分类Dev

选择查询具有相同类型值的多列

来自分类Dev

具有相同数量的离散属性的两个相同类型的文件是否具有相同的大小?

来自分类Dev

合并具有相同值的多个属性节点

来自分类Dev

为所有值都具有相同类型的对象定义类型

来自分类Dev

Scala:具有相同类的对象具有不同的类型?

来自分类Dev

具有相同类型但有不同限制的多个列表属性的类

来自分类Dev

如何表达具有返回相同类型类值的函数的类型类

来自分类Dev

创建具有相同类型参数的类型变量

来自分类Dev

创建具有相同类型参数的类型变量

来自分类Dev

Drupal 8:删除所有相同类型的节点

来自分类Dev

C#JSON-序列化具有相同属性的不同类型的多个对象

来自分类Dev

具有不同类型但元素名称和i:type属性相同的XMLArray

来自分类Dev

多次实现相同的通用接口,该通用接口包含具有不同类型参数的属性

来自分类Dev

相同类型/类的对象是否可能具有不同的数据属性?

来自分类Dev

为什么具有相同类型和值的变量print()不同?

来自分类Dev

Java:比较两个具有相同值的不同类型的对象,返回true

来自分类Dev

合并两个具有差异值的相同类型的列表并避免重复

来自分类Dev

在选择具有相同类的元素之后更改日期属性值

来自分类Dev

注入具有多个相同类型参数的构造函数

来自分类Dev

C ++在不同类型的向量上具有相同的功能

来自分类Dev

声明具有相同类型的多个TypeScript变量

来自分类Dev

从类到具有不同模板类型的相同类的转换

来自分类Dev

具有相同类型的Elastic Search父级

来自分类Dev

具有相同类型但名称不同的多个元素?

来自分类Dev

获取与数组具有相同类的所有输入的值

来自分类Dev

使用 jQuery 添加具有相同类的所有值

Related 相关文章

  1. 1

    当不同类型的两个节点对于某个属性具有相同的值时,如何与 cypher 建立关系?

  2. 2

    具有相同类型属性的接口或类型的 Typescript 简写

  3. 3

    结构概念中具有相同类型的多个属性

  4. 4

    选择查询具有相同类型值的多列

  5. 5

    具有相同数量的离散属性的两个相同类型的文件是否具有相同的大小?

  6. 6

    合并具有相同值的多个属性节点

  7. 7

    为所有值都具有相同类型的对象定义类型

  8. 8

    Scala:具有相同类的对象具有不同的类型?

  9. 9

    具有相同类型但有不同限制的多个列表属性的类

  10. 10

    如何表达具有返回相同类型类值的函数的类型类

  11. 11

    创建具有相同类型参数的类型变量

  12. 12

    创建具有相同类型参数的类型变量

  13. 13

    Drupal 8:删除所有相同类型的节点

  14. 14

    C#JSON-序列化具有相同属性的不同类型的多个对象

  15. 15

    具有不同类型但元素名称和i:type属性相同的XMLArray

  16. 16

    多次实现相同的通用接口,该通用接口包含具有不同类型参数的属性

  17. 17

    相同类型/类的对象是否可能具有不同的数据属性?

  18. 18

    为什么具有相同类型和值的变量print()不同?

  19. 19

    Java:比较两个具有相同值的不同类型的对象,返回true

  20. 20

    合并两个具有差异值的相同类型的列表并避免重复

  21. 21

    在选择具有相同类的元素之后更改日期属性值

  22. 22

    注入具有多个相同类型参数的构造函数

  23. 23

    C ++在不同类型的向量上具有相同的功能

  24. 24

    声明具有相同类型的多个TypeScript变量

  25. 25

    从类到具有不同模板类型的相同类的转换

  26. 26

    具有相同类型的Elastic Search父级

  27. 27

    具有相同类型但名称不同的多个元素?

  28. 28

    获取与数组具有相同类的所有输入的值

  29. 29

    使用 jQuery 添加具有相同类的所有值

热门标签

归档