3

RFC 5545 允许 RDATE 属性具有 PE​​RIOD 数据类型。这种数据类型的语义是什么?据我所知,它是未指定的。它会改变事件的持续时间吗?如果它在时区更改中,不能有持续时间怎么办?

4

1 回答 1

2

虽然我同意你的观点,RFC5545 留下了太多需要解释的东西,但在这种情况下,它似乎为PERIODand的组合提供了一些指导RDATE

例如,标称持续时间为一天的重复实例在发生时区偏移的当天将具有多于或少于 24 小时的确切持续时间。可以在异常组件中修改特定重复的持续时间,也可以简单地通过使用 PERIOD 值类型的“RDATE”属性来修改。

当循环组件中的“RRULE”和“RDATE”属性的组合产生具有相同起始 DATE-TIME 值的多个实例时,它们应该被折叠并视为单个实例。如果“RDATE”属性指定为 PERIOD 值,则重复实例的持续时间将是“RDATE”属性指定的持续时间,而不是“DTSTART”属性定义的重复实例的持续时间。

并且示例可用:

RDATE;VALUE=PERIOD:19960403T020000Z/19960403T040000Z,
    19960404T010000Z/PT3H
于 2015-10-02T19:30:17.740 回答