Сравните два дочерних узла в XSLT2 - PullRequest
1 голос
/ 09 апреля 2019

Я новичок в XSLT2.У нас есть требование создать таблицу истории устройств из XML.Столбец таблицы отображает изменение данных устройства.Мы должны выделить значение, измененное между двумя столбцами истории устройства.Как мы сравниваем дочерние узлы и выделяем разницу n xslt2.

Буду признателен за любую помощь

XML-файл (здесь id2 должен быть выделен жирным шрифтом, чтобы указать разницу).

<?xml-stylesheet type="text/xsl" href="DeviceHistory.xsl"?>
<DeviceHistory>
  <Part Name="xyzz">
    <Details>
      <Date>08-04-2019</Date>
      <DeviceInfo>Id1:459800800691
        id2:000007</DeviceInfo>
    </Details>
     <Details>
      <Date>08-04-2019</Date>
      <DeviceInfo>Id1:459800800691
        id2:000008</DeviceInfo>
    </Details>
  </Part>
</DeviceHistory>

XSL-файл:

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

<xsl:template match="/DeviceHistory">
    <html>
        <body> 
            <xsl:apply-templates select="Part"/>
        </body>
    </html>
</xsl:template>     

<xsl:template match="Part">
    <table border='1'>
        <tr>
            <xsl:for-each select="Details">
              <td class='FRUVal' valign='middle' width='380'> 
                <table>
                    <tr><xsl:apply-templates select="Date"/></tr>
                    <tr ><xsl:apply-templates select="DeviceInfo"/></tr>
                </table>
            </td>
              </xsl:for-each>
        </tr>
    </table>        
</xsl:template>
</xsl:stylesheet>
...