2017-10-11 92 views

回答

0

我假设你正在讨论改变“所有”实例的事件时间。

iCalendar规范没有针对这种情况强制任何要求。通常的做法是让客户将重复事件分成2: *通过在RRULE中添加一个UNTIL日期来限制现有的重复事件。 UNTIL值对应于时间更改前的最后一个实例。在该时间段内编辑过的所有实例都将被保留。 *新事件(带有新的UID等)被创建,并且具有对应于新时间的DTSTART。该时间段的编辑实例(例外)将被删除。

这两个事件通过交叉引用RELATED-TO属性链接在一起。

+0

仅当使用“this and future/all following”事件编辑事件时才会将事件拆分为两个。我所指的是,据说一次或两次重复事件被“只有这个”选项编辑到不同的时间,然后如果父事件的开始和结束时间是用“所有事件”编辑的,如果已编辑的事件被删除或维护?此外,如果要保留事件,这些编辑事件的“RECURRENCEID”应该适当地更改吗? –

+0

是的,这对应于这个和未来,如果你认为过去是永恒的,那么这是唯一真正有意义的模型。如果您没有别的选择,只能修改现有事件,并且如果要保留例外情况,那么您应该修改RECURRENCE-ID。 – arnaudq

+0

是否保留所有异常是一个相当困难的问题:如果您真的想要准确无误,您必须考虑每个实例首先创建异常的原因。如果与会者相关的更改(例如,与会者拒绝了特定实例),则可以删除该例外,因为与会者现在可以在新时间加入。如果是会议室(此时可能不再可用),则与位置相同。如果它是一个描述的变化,另一方面,你可能想保留它。 – arnaudq

相关问题