iCalendar 格式是否允许重叠日期?

Does iCalendar format allow overlapping dates?

我正在生成一个 iCalendar 供稿,其他 Web 服务将使用该供稿。我想知道 iCalendar 文件格式是否允许重叠事件,例如:

BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
PRODID:-//Fabricam Calendar//EN

BEGIN:VEVENT
UID:EVENT1@fabricam.com
DTSTART:20151009T170000
DTEND:20151011T110000
SUMMARY:Event 1 -- Oct 09 to Oct 11
END:VEVENT

BEGIN:VEVENT
UID:EVENT2@fabricam.com
DTSTART:20151010T170000
DTEND:20151020T110000
SUMMARY:Event 2 -- Oct 10 to Oct 20
END:VEVENT

END:VCALENDAR

请注意,第二个事件在第一个事件的中间开始。提要完美验证。但是,当我在 Google calendar 中导入它时,会跳过具有重叠日期的 some/all 事件。

我想知道规范中是否描述了这种行为。还是我应该测试所有提要消费者以了解他们的行为?

绝对没有什么可以说你不能有重叠的事件。它实际上一直在发生! 另一方面,您的所有 DTSTART/DTEND 都处于浮动时间(与 UTC 或带有时区的本地时间相反)。所以这些事件可能不会像你认为的那样结束/Google 可能不喜欢这种类型的事件,特别是考虑到它们跨越多天。