This is part of the RFC5545 specification, which is based on the ISO8601:
Format Definition: This value type is defined by the following
notation:
dur-value = (["+"] / "-") "P" (dur-date / dur-time / dur-week)
dur-date = dur-day [dur-time]
dur-time = "T" (dur-hour / dur-minute / dur-second)
dur-week = 1*DIGIT "W"
dur-hour = 1*DIGIT "H" [dur-minute]
dur-minute = 1*DIGIT "M" [dur-second]
dur-second = 1*DIGIT "S"
dur-day = 1*DIGIT "D"
and I dont quite understand the dur-value
formatting. I think that the /
stand for an or
right? That means that you should not be able to mix dur-date
, dur-time
and dur-week
?
If thats the case and the chaining of dur-date = dur-day[dur-time]
actually permits the use of dur-date
and dur-time
in the same duration value, but forbids that dur-week
is mixed with anything else.
So this P1W1D
duration value would be invalid?