У меня есть версия XSL 2.0 для удаления дубликатов с использованием <xsl:sequence>
. Я просто удаляю повторяющиеся элементы Entry из базы данных xml ниже. Кроме того, мне нужно рассмотреть поле даты и удалить старый. В качестве альтернативы я мог бы удалить ту, которая не является текущей, поскольку новая запись всегда ставится на печать с текущей даты. В этом случае удалите идентификатор Entry for ID от 2016-09-01 (полужирный). Имейте в виду, что я не хочу удалять запись, которая не является дублирующей, независимо от даты.XSLT более конкретное использование выбора последовательности для повторяющихся элементов с разными датами
<?xml version='1.0' encoding='utf-8'?>
<Data>
<Entry>
<ID>aces</ID>
<Info>
<Code2>0006</Code2>
<AMOUNT>7.52<AMOUNT>
<Info>
<Date>2016-12-18-05:00</Date>
</Entry>
<Entry>
<ID>chawk</ID>
<Info>
<Code2>0007</Code2>
<AMOUNT>7.53<AMOUNT>
<Info>
<Date>2016-11-01-05:00</Date>
</Entry>
**<Entry>
<ID>aces</ID>
<Info>
<Code2>0006</Code2>
<AMOUNT>7.53<AMOUNT>
<Info>
<Date>2016-09-01-05:00</Date>
</Entry>**
</Data>
Вот мой текущий XSL:
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:template match="/*">
<Data xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xsl:for-each-group select="Entry" group-by="ID">
<xsl:sequence select="."/>
</xsl:for-each-group>
</Data>
</xsl:template>
</xsl:stylesheet>
Заранее спасибо за вашу помощь.
Это работает ... СПАСИБО! – user1375987