Re: [calsify] JSCalendar: alternative to current all-day events

"Robert Stepanek" <rsto@fastmailteam.com> Mon, 17 June 2019 16:23 UTC

Return-Path: <rsto@fastmailteam.com>
X-Original-To: calsify@ietfa.amsl.com
Delivered-To: calsify@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 469281201D0 for <calsify@ietfa.amsl.com>; Mon, 17 Jun 2019 09:23:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.7
X-Spam-Level:
X-Spam-Status: No, score=-2.7 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=fastmailteam.com header.b=J+e8hkAP; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=RiE9ulZi
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id YsU9Yv8MbWOF for <calsify@ietfa.amsl.com>; Mon, 17 Jun 2019 09:22:58 -0700 (PDT)
Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BA4BF12035B for <calsify@ietf.org>; Mon, 17 Jun 2019 09:22:58 -0700 (PDT)
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id E68182235E; Mon, 17 Jun 2019 12:22:57 -0400 (EDT)
Received: from imap7 ([10.202.2.57]) by compute1.internal (MEProxy); Mon, 17 Jun 2019 12:22:57 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= fastmailteam.com; h=mime-version:message-id:in-reply-to :references:date:from:to:subject:content-type; s=fm2; bh=ZdakZGK kPQJYFYBA83v0SMv4F/acDr9KN3ZfJlHBScA=; b=J+e8hkAPJN4my8O2jOgZBLN AfO0YBsSvHUATJKpre53uLhGc9uzSDLmA9v2fihsJfyOLbQiji/FrsWFcBGDuRGo IpreUjaw2K2vnXAaKvCyOi8P1TVPsKdApvwg0Y2Kwj5piRF6fVR4b+xlUnXSO6H1 bu99hel8uJqM7cJ+stvIkeOor8QuM00XWi6xErqBAzELlKDp4HGYgzYoukO7dCz2 wJu387wn3SkreTjhBHjfW8JdrRoCsTlxKgS6hYjrYa+ZXbxjFkPNHk4gvErOQSKe wsG6GWSWkDZtg10ucg7XKmU0evtE8sImssyZH5nF4TTZvBvZuzH3Jzr5mqZpcrw= =
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; bh=ZdakZG KkPQJYFYBA83v0SMv4F/acDr9KN3ZfJlHBScA=; b=RiE9ulZip8qRNcJ3yTWhEp Ws2kSrd5fFFAZ3bvYXya9OPP8KJq4vTfNHGjslfZn6BVRJ9n/6FohMHr4mZzdPFS BqQ/zomxNvOSxb7AkTv67qMZD4Oht7rJbBfWxgQ/iUGiS2sUtQ7EhGUGCF1rm+CZ hKedVTZaQsZQs+ena17BK7qNrE/x0zsDJunZuV9Y/7AGkNDbT3hTM3L2QHfGVG1S 9CYoXrG7JnAeXBAZQ9ephZW8vMVznOD0/Le+p6ttsVwK94wA8geZXv3B5nRiHuON XggQ+F3kOhEnIf1+jkC9NjkydVxDDUNUie/pHc/avVwwHMZhh/RFOCSDCdFXrQoQ ==
X-ME-Sender: <xms:YL4HXbj4YY3MpiP8ksBw8UVtFTybGx7OUU5fcnMl-r5zA-a6ZlKlCg>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduuddrudeijedguddtudcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefofgggkfgjfhffhffvufgtsegrtderreerredtnecuhfhrohhmpedftfho sggvrhhtucfuthgvphgrnhgvkhdfuceorhhsthhosehfrghsthhmrghilhhtvggrmhdrtg homheqnecuffhomhgrihhnpehivghtfhdrohhrghenucfrrghrrghmpehmrghilhhfrhho mheprhhsthhosehfrghsthhmrghilhhtvggrmhdrtghomhenucevlhhushhtvghrufhiii gvpedt
X-ME-Proxy: <xmx:YL4HXd9XvI6Ye7JawQl6nidDO2dHTx4d_yQVwEKx2wrVHHaRKvGX_g> <xmx:YL4HXYNjJcZcWAaEDOmznWEZHAxfWBAnH8zGB1u22TbuWDMIc5i39Q> <xmx:YL4HXZAbAeXSRW2u5QBQez3hJebsCYtUikZWyFEyk9fyNpjoBdk5UQ> <xmx:Yb4HXfV06LsGPgEBXC5-HnSbqmnkGvDDzVAHxOrxaI4GgD9luLwooA>
Received: by mailuser.nyi.internal (Postfix, from userid 501) id AE8E41806DD; Mon, 17 Jun 2019 12:22:56 -0400 (EDT)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.1.6-666-gb2312fa-fmstable-20190614v4
Mime-Version: 1.0
Message-Id: <d102be8b-1dfd-444c-ab5b-ecf898d7a8e3@www.fastmail.com>
In-Reply-To: <DM6PR15MB3531538370731F00D0363A6CE3EB0@DM6PR15MB3531.namprd15.prod.outlook.com>
References: <7ec4462f-9e69-409e-9925-6f0beae7424c@www.fastmail.com> <8591f785-e075-4e71-b1ef-b30afe11aa5a@www.fastmail.com> <DM6PR15MB3531538370731F00D0363A6CE3EB0@DM6PR15MB3531.namprd15.prod.outlook.com>
Date: Mon, 17 Jun 2019 18:22:56 +0200
From: Robert Stepanek <rsto@fastmailteam.com>
To: Daniel Migault <daniel.migault@ericsson.com>, "calsify@ietf.org" <calsify@ietf.org>
Content-Type: multipart/alternative; boundary="09f8cd18aa3e4f819d7769227fd10e74"
Archived-At: <https://mailarchive.ietf.org/arch/msg/calsify/yF0skuihnUn9HhLxTIj71c6UmTs>
Subject: Re: [calsify] JSCalendar: alternative to current all-day events
X-BeenThere: calsify@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: <calsify.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/calsify>, <mailto:calsify-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/calsify/>
List-Post: <mailto:calsify@ietf.org>
List-Help: <mailto:calsify-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/calsify>, <mailto:calsify-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 17 Jun 2019 16:23:02 -0000

Hi Daniel,

I am not aware of any open points, the draft includes all feedback we got.

I suggest to move this document forward, irrespective of its accompanying informational RFC https://tools.ietf.org/html/draft-ietf-calext-jscalendar-icalendar. I will update the latter in the next few days.

Cheers,
Robert

On Mon, Jun 17, 2019, at 6:18 PM, Daniel Migault wrote:
> Thanks Robert for the clarification. If there are any other point to discuss or that are raising concerns, please let us know as we are close to move the document forward.

> Yours,

> Daniel

> 


> *From:* calsify <calsify-bounces@ietf.org> *On Behalf Of *Robert Stepanek
> *Sent:* Monday, June 17, 2019 12:15 PM
> *To:* calsify@ietf.org
> *Subject:* Re: [calsify] JSCalendar: alternative to current all-day events

> 

> I have uploaded RFC draft version 15 which now includes the proposed changes. I chose to keep the name "isAllDay" for the property, rather than renaming it to "showAsAllDay". I also removed the "isAllDay" property entirely from the JSTask object.

> 

> See  https://tools.ietf.org/html/draft-ietf-calext-jscalendar-15#section-5.1.4

> 

> From my initial analysis, the mapping to iCalendar is rather simple:

>  * If the JSEvent timeZone is null, the start time has zero time, and the duration is a multiple of days or weeks, then DTSTART is of type DATE. In this case, clip off any non-zero time from the recurrence rule "until" property.
>  * Otherwise map "start" to a DTSTART of type DATE-TIME.
>  * I also consider using a new iCalendar boolean property IS-ALL-DAY to cleanly map "isAllDay".
> 

> I will update the informational iCalendar mapping guideline accordingly.

> 

> Cheers,

> Robert

> 

> On Thu, Jun 6, 2019, at 5:56 PM, Robert Stepanek wrote:

>> One of the repeatedly discussed topics in JSCalendar is how to model all-day events.

>> 

>> Specifically, variants of the following uses repeatedly come up, where the current JSCalendar model seems not to be adequate:

>> 

>>  * Calendar users create an event starting e.g. 8am and ending 7pm, but want to view this an all-day event in their UI. The current model misses a flag to express this, as the isAllDay property is not appropriate to indicate the user intention.
>>  * Calendar users want to set their calendar on their birthday, when they only would like to set it for the complete day in their usual time zone. They still want it to show up as an all-day event in their UI.
>> 

>> In both cases, developers thought to use the isAllDay property to express a user intention, but came they learn they couldn't.

>> 

>> This is reason enough to revisit that part of the specification and discuss alternatives.

>> 

>> *Currently*:

>>  * Any event MUST define a start property value in the form "YYYY-MM-DDTHH:MM:SS[.DIGITS]"
>>  * An all-day event:
>>    * MUST have the isAllDay property set to "true"
>>    * MUST NOT have a non-zero time in the start and duration property values
>>    * MUST NOT define a time zone
>>  * Any other event:
>>    * MUST have the isAllDay property set to "false"
>>    * MAY define non-zero time in start, duration
>>    * MAY set a timeZone.
>>  * This allows to model iCalendar DATE, local DATE-TIME, floating DATE-TIME, UTC DATE-TIME.
>> 

>> *Alternative*:

>>  * The isAllDay boolean property gets removed.
>>  * A new showAsAllDay boolean defines how the user intends to view this event. Setting this property does not have any implications on the allowed values in the event time properties.
>>  * The start, duration, timeZone properties and their recurrence overrides can all can be defined independently. The recurrenceRule{until} property also can be defined independently.
>>  * It is up to implementations to convert this time model to iCalendar. Most probably:
>>    * an event with zero time in start, duration, until and no time zone will be converted DATE value types
>>    * an event with no time zone will be converted to a local DATE-TIME without TZID
>>    * otherwise it will be a DATE-TIME with TZID or UTC DATE-TIME
>> 

>> What do you think? Did we miss something?

>> 

>> Cheers,

>> Robert

>> 

>> 

>> 

>> 

>> 

>> _______________________________________________

>> calsify mailing list

>> calsify@ietf.org

>> https://www.ietf.org/mailman/listinfo/calsify

>> 

>