问题标签 [muenchian-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.
xml - XSLT v1.0 - Muenchian 分组问题
我在尝试使用 XSL-FO、XSLT 和 Apache FOP 生成格式化 pdf 时尝试聚合 xml 重复项时遇到问题。
我已经阅读了一些关于如何以特殊外观实现这一点的帖子:XSLT 和 xpath v1.0 查找重复项和聚合以及文章Muenchian Grouping但我仍然面临一个问题。
我的 XML 如下:
我要实现的是在我的 pdf 格式输出上聚合所有对 srname 属性具有相同值的联系人项目。我当前的 XSL 代码如下所示:
似乎在模板 Record 中,当我尝试包含 2 个 xsl:for-each 循环以实现 Muenchian 方法时,FOP 向我返回了一个错误,其中涉及在 fo 中找不到 fo:table-cell 元素:表行标签。我将其理解为 FOP 无法访问第一个 xsl:for-each 循环的事实,我想知道我是否做错了什么。
如果我删除 2 个 for-each 标签,我会得到我的 pdf 但没有聚合。我在编写代码的过程中是否遗漏了什么?
非常感谢所有帮助!谢谢你。
xml - XSLT v1.0 - 如何对不均匀的属性进行分组?
我正在尝试在 xml 元素上使用 xslt 来实现一个分组,这些属性并不真正共享任何共同值,我不确定是否应该使用muenchian 分组 ,尽管我已经在我的代码中使用这种方法对我的元素进行了分组。我也在论坛中搜索过,但没有运气,因为大多数分组似乎都发生在具有共同值的属性上。
更具体地说,我想要实现的是在 pdf 上打印,一行用于多个记录,这些记录具有 Att 元素的特定 ID,属性 Ty(Att ty="PC")上的值为“PC”。所有这些都应该与我已经存在的分组一起发生。
我的 xml 代码示例:
因此,例如对于记录 2,3,我只想打印 1 行,因为它们的邮政编码对我来说属于同一区域,因为 Ty="PC" 表示邮政,我试图在更大的区域基础上进行分组.
我在 Apache FOP 上使用以下 xsl:
尽管我过去已经为在现有分组中实际共享公共属性值的元素实现了这个逻辑,但上面的代码根本没有为我想要的聚合提供任何行,我想知道我的 OR 条件和 for 是否有问题出于某种原因,它变得虚假。
我错过了什么吗?任何帮助将非常感激,
谢谢
编辑:正如 Tomalak 在我的案例中指出的那样,我想要做的是实现手动组,这意味着代码中确实是硬编码的条件。现在没有通用的方法可以为我计算这些值。
sharepoint - Muenchian分组困难
我正在构建一个 Sharepoint 搜索结果页面,以查找第三方工具中提出的问题的答案。我有一个到他们的 sql 数据库的 bdc 连接。我只在数据库中爬行一张桌子。我需要使用 muenchian 方法在同一个表中使用多个列将问题和答案结果组合在一起。我无法更改数据库,因此我必须将结果汇总在一起以寻找有意义的东西。此表包含所有问题的条目和给出的答案。我必须将它们联系在一起,以便我们使用搜索作为应用程序来呈现问答
数据概述:核心搜索结果中返回的每条记录都有一个: 标题 - 这是问题或答案 activityid(int) - 条目的唯一 ID activitytypeid(int) - 这些标识是 Q 还是 A / 79或 82 parentid(int) - 此值包含原始问题的活动 ID - 如果记录是原始问题,则此列的值为 0 isanswer(boolean) true 或无(这有点多余,确实与 activitytypeid 相同,但我不确定是否可以使用它来帮助分组)
Review activitype id 是:79 - 提出的问题 - parentid 为 0 或 82 - answer to question - 这将有一个与原始问题的 activityid 匹配的 parent id
我正在尝试将我的搜索结果分组/排序以首先返回问题,但没有取得多大成功。在下面的示例中,它将是 activityid 19142,并且问题的答案在下面缩进,所有分组在一个集合中
在审查我的 hack 或示例方面的任何帮助都会很棒。
我只是想了解 xsl,这是一个很大的学习曲线。我还有很长的路要走,而且肯定已经跳入了这方面的深渊。
我目前得到的结果的原始 xml,没有格式化结果
我正在寻找的输出将所有答案与相应的问题分组在一起,这非常简化,但我认为这也是我想要得到的重点。
我对模板的尝试
xslt - XSLT 1.0 分组
我有一个这样的 XML:
我需要将它转换成这样的东西:
目标是仅显示属于每个应用程序最新版本的组件。
我编写了这个使用 muenchian 分组的 XSL 模板:
现在我得到这个输出:
如何过滤组件以仅获取属于同一应用程序最新版本的组件?
xslt - XSL - 用条件计算 for-each 循环中的迭代次数
如何检查程序第一次运行<xsl:if test="$DriverCount > 1">
语句的时间,以便程序只执行一次。它最后一次运行相同的 if 语句以便它只执行一次其他操作是什么时候?position()
并且数字不起作用,因为 if 语句并不总是在 position() = 1 上运行。我不能使用模板函数,也不能编写任何 XSL 函数,因为我正在使用 XF 设计器,并且这些关键字不能在那里使用。
XML
XSL
xml - Muenchian 分组没有产生任何结果
我正在尝试使用 Muenchian 分组来选择一个节点集,该节点集包含以下 XML 文档中每部电影的第一次出现,但我无法返回任何内容......
以下是我的 xsl ......
xml - Muenchian 分组混淆 (XSLT)
鉴于以下文档结构...
我正在尝试使用 muenchian 分组为每个唯一日期选择第一个 ordr 元素,并尝试了以下每一项都无济于事......
我很难彻底理解 muenchian 分组。
xml - 嵌套元素的 Muenchian 方法
我的 xml 输入是-
使用 xslt 的输出应该是
输出应在父级内具有元素序列。混合的元素序列将在父节点“s”内移动。使用的 xslt 文件是 -
问题在于输出 baz 元素(第一个 foobar 元素的子元素)同时具有 bar 和 foobar 序列。
如何从条形序列中删除 baz 元素。非常感谢。
xml - 嵌套组的 Muenchian 方法
我在嵌套元素的 Muenchian 方法之前问了一个类似的问题,但这次问题不同。我的 xml 输入是-
使用 xslt 的输出应该是
如果任何后代元素按顺序排列,则代码也应将它们放在 s 标记中。放置元素(不是后代元素)的 xslt 文件是 -
我使用了 descendant-or-self::* 而不是 * 但没有得到正确的输出。可能是什么解决方案。非常感谢。
xml - XSLT 改进
我有 2 个示例 xml 文件
第一个 xml 的所需输出与输入相同。第二个xml示例是
我有一个 xslt 文件,它将元素序列放在“s”标签中,否则输出相同的 xml 文件。
我的 xslt 是-
它工作正常。但它使用大量内存并且需要大量时间来处理大型 xml 文件。如何提高性能以使我的 xslt 更快?