Subject: [calsify] JSCalendar: duration normalization and weeks

From: Robert Stepanek <[email-masked]>
Date: Fri, 29 Jun 2018 11:39:00 +0200

The current JSCalendar duration definition neither is strictly
normalized nor compatible with the iCalendar DURATION type.
Specifically, it normalizes the zero duration to be written as P0D but
does not define any other normalization. In addition, it does not
support durations expressed in weeks.
It might make sense to either require completely  normalized durations,
or to support  the full value range of  iCalendar durations. I lean
towards the latter, and intend to:
 * remove the P0D restriction for zero durations
 * allow durations to be expressed in weeks, with the same restrictions
   as iCalendar and ISO 8601 durations.
While normalization can provide value in some cases, it is likely to be
ignored by clients and robust implementations will have to deal with
them  already for iCalendar.
Side-note: at last CalConnect we discussed to allow all valid ISO8601 durations, including years and months. On second thought this would require implementations to handle in-existent dates in date-time arithmetic, and break iCalendar compatibility for no compelling reason.
What are your thoughts?

Cheers,
Robert