Как правило, если не указано время .... если это DTSTART; VALUE = DATE: 20110808, это целый день, но DTSTART также может
быть:
DTSTART: 19980118T073000Z
DTSTART; VALUE = ДАТА-ВРЕМЯ: 19980101T050000Z
DTSTART; TZID = Австралия / Сидней: 20080801T183000
У него может быть ДЛИТЕЛЬНОСТЬ, а НЕ КОНЕЦ (не должно быть обоих)
Если у него есть Конечная дата, а конечная дата - полночь (начало дня), а DTSTART - также полночь (предыдущий или более ранний день), то концептуально это также целый день в этом часовом поясе (хотя два неполных дня в других часовых поясах). ).
По сути, это должно было быть представлено как VALUE = DATE, а не VALUE = DATE-TIME. но что поделаешь, приходится иметь дело с тем, что появляется в файлах.
Продолжительность, если у него есть что-то после P, до T и ничего после T, то это также целый день
P1D
не:
PT15M
DTSTART:
http://tools.ietf.org/html/rfc5545#section-3.8.2.4
Длительность:
http://tools.ietf.org/html/rfc5545#section-3.8.2.5