如何使用 XSLT 在日期中增加 1 天

How to Increment 1 day in Date using XSLT

我有一个场景,我们需要在现有日期中增加 1 天。就像在 <subscriptionDate>2015-05-06</subscriptionDate> 中一样,我想增加 1 天并将其值映射到 <terminationDate>2015-05-07</terminationDate>。如何使用 XSLT 实现此目的。因此,还应处理所有日期限制。就像如果天是 31 然后增加月份。

<Subscription code="12345678R1">
      <userAccount>40000005b</userAccount>
      <offerTemplate>Test</offerTemplate>
      <subscriptionDate>2015-05-06</subscriptionDate>
      <terminationDate></terminationDate>
</Subscription>

假设 XSLT 2.0,您可以为日期添加持续时间,例如

<xsl:template match="terminationDate">
  <xsl:copy>
    <xsl:value-of select="xs:date(preceding-sibling::subscriptionDate) + xs:dayTimeDuration('P1D')"/>
  </xsl:copy>
</xsl:template>

http://xsltransform.net/pPqsHTP