问题标签 [xslt-grouping]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
688 浏览

xml - 使用属性作为键( xsl )合并相似的数据 xml 节点

我想用这种格式转换一个包含 N 个部分的文件:

进入

使用属性 Section 的值作为创建元素的键。

我尝试了一些东西,但我做不到。

你可以帮帮我吗?

谢谢。

0 投票
4 回答
2211 浏览

xml - XSL 从平面树问题创建嵌套列表

我需要能够从平面树创建嵌套列表。例如,输入可能是这样的:

并且输出应该嵌套如下:

我尝试了一些方法,但似乎无法得到它。任何帮助是极大的赞赏。注意:我需要使用 XSLT 1.0 来执行此操作。

0 投票
1 回答
739 浏览

xslt - 按xslt中的属性分组

嗨,我有点卡在这个问题上,我的 xml 是

我希望能够输出为

我确定我需要使用某种 Muenchian 分组,但对于我的特定用途,我很难理解它。

0 投票
3 回答
759 浏览

xslt - 对元素进行分组并删除重复节点 - XSLT 1.0

我看过Muenchian Grouping - 一个节点内的组,而不是整个文档内的组,但它对我来说不太有效。单独的 Muenchian 方法对我也不起作用。

我还查看了XSLT 1.0:分组和删除重复但不能完全遵循它。

我有以下 XML:

结果应如下所示:

因此,对于 中的匹配<PriceValue>元素<Recordset>,所有相应的都<CodeBusinessUnits>需要在 中列出<Stores><Prices>如果没有,则需要创建一个额外的节点。

我已经尝试了几个小时,但是商店编号总是重复的,或者即使 PriceValue 相同,它们也不会聚合。

0 投票
1 回答
2884 浏览

xslt - XSLT 1.0 在多个级别上对多个值进行分组

  • 根据评论编辑 *

你好,

我是 XSLT 菜鸟,需要一些帮助。我正在尝试使用 XSLT 1.0 进行过滤器/组组合(不能将 XSLT 2.0 用于此应用程序)。

这是一个xml的例子

现在我想做的是输出 html,在其中我得到 XML 的子集,<type>然后根据排名进行分组。例如,如果用户选择所有类型为 Metal 的项目,则输出应为:

<p class="nospace"><font color="#800000">
<b>Rank 1</b></font></p>
<li id="mylist"><b>Widget 3</b></li>
<br\>

<p class="nospace"><font color="#800000">
<b>Rank 2</b></font></p>
<li id="mylist"><b>Widget 1</b></li>
<br\>

如果用户用户选择类型 Old 输出将是

<p class="nospace"><font color="#800000">
<b>Rank 2</b></font></p>
<li id="mylist"><b>Widget 1</b></li>
<li id="mylist"><b>Widget 2</b></li>
<br\>

我可以很容易地使用等级上的键进行分组,但是尝试同时执行这两种方法是行不通的。这是我尝试过的 xslt 示例:

我从中得到的结果是,我确实得到了我想要的 xml 子集,但它也显示了所有各种等级值。我想将其限制为 $typeParam 中指定的类型的等级。

我尝试将 for-each 语句移到代码的前面,并修改 if 语句以选择 $typeParam,但都不起作用。我也尝试过将我的密钥与等级和类型连接起来,但这似乎也不起作用(只有在 $typeParam 中的类型是类型下的第一个孩子时它才有效)。

谢谢

杰夫

0 投票
0 回答
162 浏览

xslt - XSLT 将一些元素转换为属性并按属性值排序

可能重复:
XSLT 无法根据属性值对节点进行分组

我有一个独特的情况。我正在尝试使用 XSLT 将一个 XML 转换为另一个。这是我的源 XML

而且我需要 XSL 将其转换为以下 xml

如您所见,它将所有“公共”属性节点放在一个基于类型的属性节点中。它还从 Attributes/Attribute/Value 中提取 Items/item/@shortname,其中 Attributes/Attribute/Name = 'Vendor Model'。相同的值用于 longname 和 sku。它从 Items/Item/@value 中提取 Items/Item/@categorypath,其中 Name=FamilyName & Items/Item/@Vvalue,其中 Name= DepartmentName & Items/Item/@Value,其中 Name = GroupName。

我能够将其部分转换为这种格式。但无法聚合 Attr 节点并根据 Attributes/@type 对其进行排序。

提前致谢

0 投票
1 回答
845 浏览

xml - 增强的 XSL 从平面树问题创建嵌套列表

前段时间我问了一个非常相似的问题([1]:XSL to create nested list from flat tree question “Create nested list from flat tree problem”),但我的问题稍微扩大了。最初我没有考虑嵌套在列表中的段落。所以现在,输入:

我需要这个输出:

也可能有缩进段落不在列表中的实例,但我想一旦我摆脱了这只猴子,我就可以弄清楚这一点。我需要使用 XSLT 1.0,再次感谢任何帮助。

0 投票
1 回答
1025 浏览

grouping - XSLT 1.0 对同一级别同名但值不同的节点的值进行分组

我可以使用一些帮助。

这是我的 XML 的说明性示例:

我的 xslt 的精简示例版本如下:

我想做的是在 XSLT 1.0 中(使用 Muenchian 方法)在颜色节点上进行分组,所以我的 html 输出将是:

到目前为止,我的代码可以做到这一点,但只能选择第一个条目。换句话说,在上面的例子中,我当前的输出是:

非常感谢您提供解决方案的帮助和解释为什么会发生这种情况。

谢谢!杰夫

0 投票
2 回答
305 浏览

xslt - 维护嵌套元素的分组方法 XSLT 2.0 - 分离多余的

我将项目符号项目分组并将它们作为项目符号项目的第二个列表嵌入到一些列表元素中。我可以将项目分组,但我的递归模板正在选择从我在文档中的当前位置到最后的所有内容。我需要为我的嵌套列表设置一个终点。

我的输出如下所示:

但它应该看起来像这样(在第一个 li 下没有子项目符号 5 和 6):

我不确定如何正确地对 XSLT 中的子项目符号进行分组以使它们处于正确的位置。

这是我的来源:

这是我的样式表:

关于如何在 2.0 中实现这一点的任何建议?我试图创建一些计数变量,但在当前组上下文之外建立端点还没有任何运气。我知道必须有一种明显(更优雅)的方式来完成这项工作。

0 投票
1 回答
329 浏览

xslt-grouping - 列出由 xslt 分组返回的元素

嗨,我有以下 xml

我使用以下 xslt 按年份分组

这是输出,它非常接近我想要的输出。

我想要的只是对所有名称进行编号(从名称总数到 1 的降序),例如

如果我们可以将变量重新分配给新值会很简单,但我认为这是不可能的,所以我必须找到另一个解决方案。谁能帮我找出如何解决这个问题。

谢谢