xslt-grouping 相关问题

分组特定于XSLT的机制。应始终使用xslt-1.0,xslt-2.0或xslt-3.0标记进行补充,以指示使用的版本。

嵌套/多级分组xslt

我有下面的xml,我需要首先对请求者进行分组,然后对于每个组,我需要根据项目是否存在进行另一个分组。 蒂姆&...

回答 2 投票 0

XSLT 可同时分组并删除重复项

下面是我的输入 XML。我想根据用户名对 XML 下面进行分组,并删除 HierarchyLocation 中的任何重复项 下面是我的输入 XML ...

回答 2 投票 0

比较数组中的元素值并获取父元素中的最大值元素

我正在尝试在 1.0 中创建一个 XSLT。请在下面找到一个示例 xml。要求是从所有 3 个字段中获取最大的 value1 字段并显示其中的标签。 请求 XML: 我正在尝试在 1.0 中创建一个 XSLT。请在下面找到一个示例 xml。要求是从所有 3 个字段中获取最大的 value1 字段并显示其中的标签。 请求XML: <?xml version="1.0" encoding="UTF-8"?> <GetTestValues xmlns="http://www.test.com/GetTestValues"> <TestSample> <Test> <value1>10000</value1> <value2>2016-01-28</value2> <value3>2017-12-10T01:36:12.403+00:00</value3> <value4>US</value4> <value5>true</value5> </Test> <Test> <value1>30000</value1> <value2>2019-01-28</value2> <value3>2019-01-28T18:04:13.763+00:00</value3> <value4>Canada</value4> <value5>false</value5> </Test> <Test> <value1>50000</value1> <value2>2019-01-28</value2> <value3>2019-01-28T18:04:13.763+00:00</value3> <value4>Canada</value4> <value5>false</value5> </Test> </TestSample> </GetTestValues> 改造后的预期反应: 请求XML: <?xml version="1.0" encoding="UTF-8"?> <GetTestValues xmlns="http://www.test.com/GetTestValues"> <TestSample> <Test> <value1>50000</value1> <value2>2019-01-28</value2> <value3>2019-01-28T18:04:13.763+00:00</value3> <value4>Canada</value4> <value5>false</value5> </Test> </TestSample> </GetTestValues> 我尝试放置 foreach,它显示了所有内容。不确定如何比较才能获得最大的价值。 <xsl:for-each select="/ns0:GetTestValues/ns0:TestSample/ns0:Test"> <ns0:value1> <xsl:value-of select="ns0:value1"/> </ns0:value1> <ns0:value2> <xsl:value-of select="ns0:value2"/> </ns0:value2> <ns0:value3> <xsl:value-of select="ns0:value3"/> </ns0:value3> <ns0:value4> <xsl:value-of select="ns0:value4"/> </ns0:value4> <ns0:value5> <xsl:value-of select="ns0:value5"/> </ns0:value5> </xsl:for-each> 在此样式表中,我遍历Test 元素集,按其value1 子元素的降序排列(以便第一个Test 元素具有最高的value1)。在 for-each 内部,我检查迭代的当前位置,如果它是 1 ,那么我复制当前的 Test 元素;其他Test元素被忽略。 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:test="http://www.test.com/GetTestValues"> <xsl:output method="xml" indent="yes" /> <!-- identity template --> <xsl:template match="@*|node()" name="identity"> <xsl:copy> <xsl:apply-templates select="@*|node()" /> </xsl:copy> </xsl:template> <!-- Select only the Test child whose value1 is greatest --> <xsl:template match="test:TestSample"> <xsl:copy> <!-- iterate over the test child elements, in descending order of value1 --> <xsl:for-each select="test:Test"> <xsl:sort select="test:value1" order="descending"/> <!-- copy the test element if it's the first (has the highest value1) --> <xsl:if test="position()=1"> <xsl:copy-of select="."/> </xsl:if> </xsl:for-each> </xsl:copy> </xsl:template> </xsl:stylesheet>

回答 1 投票 0

比较文件与键/ ID节点,如果差异在兄弟节点中则生成输出

我想比较 XML 节点(Key/ID 节点),他们看看他们的兄弟节点是否有任何不同的值,然后在输出中获取。 合并两个 XML 文件的输入 XML 我想比较 XML 节点(Key/ID 节点),他们看看他们的兄弟节点是否有任何不同的值,然后在输出中获取。 合并两个 XML 文件的输入 XML <?xml version="1.0" encoding="utf-8"?> <aggregatedData> **<wd:Report_Data xmlns:wd="urn:report"> <wd:test> <wd:CID>0011</wd:CID> <wd:name>Test10</wd:name> </wd:test> <wd:test> <wd:CID>20012</wd:CID> <wd:name>Test12</wd:name> </wd:test> <wd:test> <wd:CID>0014</wd:CID> <wd:name>Test14</wd:name> </wd:test> </wd:Report_Data>** * <File xmlns="urn:ExternalSource"> <Root1> <CID>0011</CID> <curre>INR</curre> <name>Test1200</name> </Root1> <Root1> <CID>0000</CID> <curre>cnd</curre> <name>Test00</name> </Root1> <Root1> <CID>20012</CID> <curre>INR</curre> <name>Test12</name> </Root1> <Root1> <CID>0010</CID> <curre>INR</curre> <name>why10</name> </Root1> </File>* </aggregatedData> 现在在上面的输入文件中,如果比较节点只有“0011”和“20012”是常见的,但兄弟只在“0011”中不同。 对于 20012(File/Root1/CID 和 wd:Report_Data/wd:test/wd:CID),两个地方的子节点值相同。它不应该被采摘。 对于 0011(File/Root1/CID 和 wd:Report_Data/wd:test/wd:CID),subling 节点值在两个地方都不同,因此下面是输出。 <?xml version="1.0" encoding="utf-8"?> <FinalFile> <Root1> <CID>0011</CID> <curre>INR</curre> <name>Test1200</name> </Root1> <FinalFile> 尝试使用 XSLT2.0 和 30 使用 xsl:accumulator 但没有运气。 请任何人在这里帮助我。谢谢!

回答 0 投票 0

按元素和值分组 XSLT

我是XSLT的新手,我被一个问题卡住了。我已经做了一些搜索,我读到了关于Muenchian分组,但我不知道如何在这个prorblem中使用它。我试图在XSLT中写代码来读取每 ...

回答 1 投票 0

基于2个XMLs创建XML,并使用XSLT2.0在两个文件中查找值。

我正试图在2个XML的基础上生成一个XML。我正在轮询一个DB,返回人们的详细信息(在查询中可以有n个数量的人返回)。最终的XML应该有准确的数量......

回答 1 投票 0

使用XSLT删除第二个元素的重复节点。

我对xslt没有太多的知识。我试图从我的输入xml中删除一些重复的节点,但节点不完全重复。PremiseId值是重复的,但纬度,经度,...。

回答 1 投票 1

XSLT 1.0 : 需要对具有父ID的元素进行分组。

谁能帮我用XSLT 1.0代码来满足我需要将Parentsscc与其Logisticsscc相关联的要求,我们需要在输入文件中检查相同的Parentsscc & 需要将其与......相关联。

回答 2 投票 0

在XSLT中删除重复的XML节点

如果有人能帮助我创建xslt,根据重复元素的值(PlayBack--ControlInfo--ControlName),从XML中删除重复的节点,我会很感激。我想删除所有...

回答 1 投票 0

xslt中的子群组有多个键

我有一个像下面这样的源xml。我试图使用xslt转换为所需的格式,如下所示。XML样本

回答 1 投票 0

动态分组

我试图通过相邻节点的和来对数据进行分组。例子

回答 1 投票 0

从XML文件中删除重复元素,并且不应删除XSLT文件中的空值

如果有人可以帮助我创建xslt,以便基于重复元素的值(PlayBack--ControlInfo-ControlName1)但不包含空值,从XML中删除重复的节点,我将不胜感激。我想...

回答 1 投票 0

从Xml删除重复元素,并且不应在XSLT中删除空值

[如果有人可以帮助我创建xslt,以基于重复元素的值(PlayBack--ControlInfo-ControlName)而不是空值从XML中删除重复的节点,我将不胜感激。我想...

回答 1 投票 0

从一个XML提取值,同时使用XSLT匹配其他XML的模板

我有2个XML。我正在尝试在第一种XML上运行XSLT,并使用密钥在第二种XML中匹配数据。在第二个XML上进行模板匹配时,我无法从第一个XML的匹配节点提取数据(不知道如何...

回答 1 投票 0

使用XSLT的子组

我有如下所示的源xml。我正在尝试使用xslt转换为所需的格式,如下所示**示例XML ** [table1 ...

回答 1 投票 0

基于源字段的存在,删除节点所需的XSLT代码

在输入文件中,如果despatchAdviceLineItem包含字段serialNumber(如果存在),那么我们需要删除相应的despatchAdviceLineItem。请为我提供XSLT代码...

回答 1 投票 0

根据xslt中的一个元素将xml记录与所需的子元素分组

我正在尝试根据一个字段在其余记录中具有相等数据的条件来对XML记录进行分组。我们将收到包含文档编号的A_ROW详细信息,并且我将...

回答 2 投票 0

如何使用XSLT版本1将附近的相同元素分组

我需要通过使用XSLT版本1将附近的元素分组并将XML结构转换为另一个XML结构,并将其存储到变量中以供以后处理。我当前的解决方案:https:// xsltfiddle ....

回答 1 投票 0

将'(撇号)添加为XSLT模板中的有效字符

我在一个项目上工作,他们给出了一个有效字符列表,应按原样传递这些字符,除此以外的其他任何字符都必须替换为?(问号)。我的公司...

回答 1 投票 0

XSLT 3.0嵌套分组和计数字符串值

我有工作,并且需要通过性别进行“通过”和“失败”计数的多个工作测试。如果每个工作都有一个工作测试,则我当前的代码正在运行。如果任何工作有多个工作测试,则.. 。

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.