Re: [calsify] draft-ietf-calext-jscalendar and participants

Neil Jenkins <neilj@fastmailteam.com> Wed, 17 February 2021 02:50 UTC

Return-Path: <neilj@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 3CFE53A0E25 for <calsify@ietfa.amsl.com>; Tue, 16 Feb 2021 18:50:12 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level:
X-Spam-Status: No, score=-2.097 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=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=rIhPkIL+; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=ttuVVFiv
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 AYsM_aCuxOYB for <calsify@ietfa.amsl.com>; Tue, 16 Feb 2021 18:50:10 -0800 (PST)
Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0A8FE3A0B83 for <calsify@ietf.org>; Tue, 16 Feb 2021 18:50:09 -0800 (PST)
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id C84B15C01BC for <calsify@ietf.org>; Tue, 16 Feb 2021 21:50:08 -0500 (EST)
Received: from imap7 ([10.202.2.57]) by compute3.internal (MEProxy); Tue, 16 Feb 2021 21:50:08 -0500
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=Ia3e+v0 tkWcRt8obZqXW3gBqWtg9QXBJeOtFGy8yu9M=; b=rIhPkIL+YpsrdInGEo1LOZ2 uAUuBIFnPFCD7bUchyDdfS8QnTc/NmyhA/nyASAOkMjlAeNQjOQI4ChiDFmlHsNc e43knOusqz+V07x+xsh0MjoYSwObMTKvipY/oX0xTscbHqJ6DTql6WvIQVF1uPOm khltxvQKMGkeQF+dK19nrajXE+b4AA/B4KRCXOZe0WAbR81vv4mk/k14Q8JjMxoD 2sSkOZ9fIX9OdnExJJ13v8HULswgM7qLcKdE1MQbu++bVPYIl/jaHTofN8Xz5e1H fiTxFGjPpkbX9NUmyc0F4I/mlD2U+HrKkW5vTZOtuyNLcGG+L/OQxZEhFhxWufw= =
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=fm2; bh=Ia3e+v 0tkWcRt8obZqXW3gBqWtg9QXBJeOtFGy8yu9M=; b=ttuVVFivLpiqLPRatThs4p wMn2pW4f74fdXkT8xxZixQDUdjgyQ4mduXHGU/V8ZFaTLogkOwbwhjUAaTrFJioz BXZTU/84y7GQ4VODywqBzJGt3qZxmMI0fxAKRcQpE3I3l06OKMwTJnmi0eRDaJ8l jjkmkbtRJze9Ze7fSc9cT1AEu78eZdlIAXjIUDOLg3/6glD8lo/Ge2ASJVe5dgh8 xA7vbi2BxGds20xhmM+6b0upgGL64qMYDTcAYOK6nE+E6ZciY9ai4jctIGrcyHbQ pjoaknN71TuN4dMGtKnLAfh3k4QzJjQpbWuPIWP/wTVtJNsf/VDp3V8ABz7MqDpA ==
X-ME-Sender: <xms:YIQsYL-vsbMitbwEzRzzIF3ZlOIzE2AOOKFyP1P0Tu7tWhYA9eY4mQ> <xme:YIQsYHuKlxTSSMNGh6Ga7Qu14WJ9gwQpuxDvvlKlyzx5DYmckJAfBt4FkMAVD_0cg Slx0hQtpmLh7Q>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrjedugdehtdcutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecunecujfgurhepofgfggfkjghffffhvffutgesrgdtre erreertdenucfhrhhomhepfdfpvghilhculfgvnhhkihhnshdfuceonhgvihhljhesfhgr shhtmhgrihhlthgvrghmrdgtohhmqeenucggtffrrghtthgvrhhnpeevvdetvdduleekhf eghfetfeettdelhfehfeevffevleekuddtudffieevjeevhfenucevlhhushhtvghrufhi iigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehnvghilhhjsehfrghsthhmrghilh htvggrmhdrtghomh
X-ME-Proxy: <xmx:YIQsYJDQtDUMM_xfK7X3jMOOzGPawB1ppvr0lpaijZRskXlR132IQg> <xmx:YIQsYHeZAbuPxkSxcbIHerME57spCle4c2a4VMAMp1TyP_qTMvs_FQ> <xmx:YIQsYAMGh_cVjiaAjfwzpj_W5YfzvCZ5Z2wEKXTda77XR_JEYw-G7Q> <xmx:YIQsYGaz-hkOn95X42Gu3Op19Jl_MZzBr4-Hw3JQMy9DbGvvd-LM5w>
Received: by mailuser.nyi.internal (Postfix, from userid 501) id 58C8A36005C; Tue, 16 Feb 2021 21:50:08 -0500 (EST)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.5.0-alpha0-141-gf094924a34-fm-20210210.001-gf094924a
Mime-Version: 1.0
Message-Id: <d2de6358-9994-4d41-aa6c-1258e5ff2d0b@dogfood.fastmail.com>
In-Reply-To: <d240c4fe-1961-4493-97e2-f9b3e5c13668@www.fastmail.com>
References: <cf63883d-e134-62ea-3e53-af6945b755e1@gmail.com> <f3631111-c3d7-46e1-b83a-2e994621a799@dogfood.fastmail.com> <d240c4fe-1961-4493-97e2-f9b3e5c13668@www.fastmail.com>
Date: Wed, 17 Feb 2021 13:50:07 +1100
From: "Neil Jenkins" <neilj@fastmailteam.com>
To: calsify@ietf.org
Content-Type: multipart/alternative; boundary=b899406c38684ed89ec8a8797c22cc96
Archived-At: <https://mailarchive.ietf.org/arch/msg/calsify/XHKf_UHX02AaPQBcF3tW3jpCmGM>
Subject: Re: [calsify] draft-ietf-calext-jscalendar and participants
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: Wed, 17 Feb 2021 02:50:12 -0000

On Wed, 17 Feb 2021, at 04:17, Robert Stepanek wrote:
>> For example I might have an ATTENDEE that looks like
>> ATTENDEE;CN=Michael Douglass;CUTYPE=INDIVIDUAL;PARTSTAT=ACCEPTED;ROLE=CHAIR;EMAIL=mikeadouglass@gmail.com:/aMzkzNTI4MzkzNTI4MzkzNQPuXCcDTdG5iXfOhcljjCSqMYrUXDcs6f1z7CyXejTR/principal/
> The difference is that the participant id has no meaning outside a single JSEvent. But a calendar user address is an identifier for an entity across events.
> 
> It allows for unambigously mapping the ATTENDEE or ORGANIZER property value to JSCalendar and reverse. It's not clear from a multi-valued sendTo property which one should be used as the property value.

My reading of the current RFCs, although I think they are not super clear, is that the calendar user address is the only "sendTo" method. An email may be specified in addition but this is not intended as an iMIP destination (so would not be in the JSCalendar sendTo, just the participant's email property). Is your interpretation that the calendar user address is more like a uid? If so, can you use it for anything other than as an opaque token for equality comparison?

> There is one other benefit of making more use of calendar user addresses in JSCalendar: the DELEGATED-FROM, DELEGATED-TO, MEMBER-OF, SENT-BY parameters all use calendar user addresses. But in JSCalendar we use participant ids for these properties. If a DELEGATED-FROM calendar user address has no ATTENDEE in iCalendar, we would need to create an artificial participant in JSCalendar. This participant could have an "informational" role, expectReply=false, because it's really not a participant. When mapping back to iCalendar we would need to figure out if to create an ATTENDEE for that. When we use calendar user addresses rather than participant ids for these properties then there is no ambiguity.

It seems a bit weird to me that you would have unresolvable identifiers like this (they don't seem particularly useful). I'd also say that you'd be making the JSCalendar object more awkward to work with (you'd have to linearly scan or build a separate index to get from one of these pointers to the participant it refers to). I would generally say a slightly more cumbersome translation is preferable to all objects in the new format being harder to use.

Neil.