[Jmap] Re: Éric Vyncke's No Objection on draft-ietf-jmap-contacts-09: (with COMMENT)

Neil Jenkins <neilj@fastmailteam.com> Fri, 31 May 2024 05:36 UTC

Return-Path: <neilj@fastmailteam.com>
X-Original-To: jmap@ietfa.amsl.com
Delivered-To: jmap@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9D0C7C180B48; Thu, 30 May 2024 22:36:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.097
X-Spam-Level:
X-Spam-Status: No, score=-7.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_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=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="jc/F1n5n"; dkim=pass (2048-bit key) header.d=messagingengine.com header.b="TnsB9q4e"
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id E5ALDNSHi4QV; Thu, 30 May 2024 22:36:28 -0700 (PDT)
Received: from wfout5-smtp.messagingengine.com (wfout5-smtp.messagingengine.com [64.147.123.148]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C9BBDC14F712; Thu, 30 May 2024 22:36:28 -0700 (PDT)
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailfout.west.internal (Postfix) with ESMTP id D763E1C001D1; Fri, 31 May 2024 01:36:27 -0400 (EDT)
Received: from imap43 ([10.202.2.93]) by compute5.internal (MEProxy); Fri, 31 May 2024 01:36:28 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= fastmailteam.com; h=cc:cc:content-type:content-type:date:date :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm2; t=1717133787; x=1717220187; bh=Al/9c2+hrzJeu6ziySZ1GqIJbpcbmNFQtCvYJ/YPUpU=; b= jc/F1n5nEVdntfLrINr6LcR3X3wS5PjntgTzQC6DL0+zMjA4Knrm+suaPLniFwlY lF6rXWxrr2yB25r6S8qbwkR42KjqPo9XgfmIaOeVwlC0rCKf/wE4+ecJs402hyOx wJ2miMty5jL0zTymJW30TZk6Jv/68ydb8M3EPBrXrubGQVwDXcDGtlUN2Au23s0r +exuwLEjtZi7kzT01O6yfjly2QmJmEWPRaqSXVOKgWNXEWVzCWv7C+sWR/IiCcwz Mil/9Px33nyj0AQTpC7qjK5tnb+68j1u5WRN6IHSbbXLr0tJhtRw3quIBlfFvcki FPcBqFrMSbGP/DuaxiqpJQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:subject:subject:to :to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; t=1717133787; x=1717220187; bh=Al/9c2+hrzJeu6ziySZ1GqIJbpcb mNFQtCvYJ/YPUpU=; b=TnsB9q4ecOcPWvlMOMz+2RwJB4hFV8zvQ3Qky89NZWyY UjxWargctaiz9Iush/UHH1cFL+CngFKcMiN3wPpcyMb02TziYMhkQkMDoYRhfCl/ uBKmWyzpfJs2ugxdN6tJ5tT6XsEOh74shmIWiATxf7ZCh9GEk61egVEacIznN+8f qbPQsjZNbbdOumNy4ButAmmPnmJwB6XM2npQ7EJGWH6hf2gxgUYQSx5YMBaywIDt sD27OzIkjGRp43QK7lPtvmJC8+7eOl/VLEJJe6SQnyJX14Irqjgc1tBXW0QOH7R3 wmFUf1r83tLQ43XhBDA/99wc2sTZOMm2mYQ32o0YOw==
X-ME-Sender: <xms:2mFZZg8WvOoOcPtiX0nDk53KseM9EJac7qW5pXL2YlpfiDRnp_npJw> <xme:2mFZZov6sI05e-KpaYc476y4Uyycju99kFr_0cH_Lai1i11cwp-kinAh4dJqsDqxV xzjXLTZ1q5hxQ>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdekhedgleehucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepofgfggfkjghffffhvfevufgtsegrtderreerreejnecuhfhrohhmpedfpfgv ihhlucflvghnkhhinhhsfdcuoehnvghilhhjsehfrghsthhmrghilhhtvggrmhdrtghomh eqnecuggftrfgrthhtvghrnhepvdeijedtheejjeekleelgfetleeifedtgfevudeijeei vefggfeileefudfftdetnecuffhomhgrihhnpehrfhgtqdgvughithhorhdrohhrghdpih gvthhfrdhorhhgnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhf rhhomhepnhgvihhljhesfhgrshhtmhgrihhlthgvrghmrdgtohhm
X-ME-Proxy: <xmx:2mFZZmDn987vxZDKg0pv1Z9lyzIecDnNEuPrB5W__9f8j-EE28NlwQ> <xmx:2mFZZgcw0arsrNOsTNRfhHqLFFyK2z3rqsB9HBy_RddBlLrYZlKQSw> <xmx:2mFZZlOB70CXQtHzBPcfCxkBeooX-hnk4wAoAnuYaouiyTZmnyX0PA> <xmx:2mFZZqk-lYez4zXC_W9SQIcCNFBECdTOpWExn7wF8ghYBU43Jb1OPQ> <xmx:22FZZo1SL6wlmE5qlqEXYv741wG0DEss6GnF49kpqrk8LIWKATPKBzso>
Feedback-ID: ibc614277:Fastmail
Received: by mailuser.nyi.internal (Postfix, from userid 501) id D69552D4007D; Fri, 31 May 2024 01:36:26 -0400 (EDT)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.11.0-alpha0-497-g97f96844c-fm-20240526.001-g97f96844
MIME-Version: 1.0
Message-Id: <c3a48ca9-69bb-47df-bc9f-b60cd2e8ad37@dogfoodapp.fastmail.com>
In-Reply-To: <171670671898.338.1417265531258109162@ietfa.amsl.com>
References: <171670671898.338.1417265531258109162@ietfa.amsl.com>
Date: Fri, 31 May 2024 15:36:22 +1000
From: Neil Jenkins <neilj@fastmailteam.com>
To: Éric Vyncke <evyncke@cisco.com>, iesg <iesg@ietf.org>
Content-Type: multipart/alternative; boundary="18b2d9858051480f8a86e06563842b39"
Message-ID-Hash: OF3WRHIYTFSPE6TPSGUMZHZI6AFIOZQB
X-Message-ID-Hash: OF3WRHIYTFSPE6TPSGUMZHZI6AFIOZQB
X-MailFrom: neilj@fastmailteam.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-jmap.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: draft-ietf-jmap-contacts@ietf.org, jmap-chairs@ietf.org, IETF JMAP Mailing List <jmap@ietf.org>, Jim Fenton <fenton@bluepopcorn.net>
X-Mailman-Version: 3.3.9rc4
Precedence: list
Subject: [Jmap] Re: Éric Vyncke's No Objection on draft-ietf-jmap-contacts-09: (with COMMENT)
List-Id: JSON Message Access Protocol <jmap.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/jmap/45d3Z6BOgze3Yg8ULzjFdKdJ0Ec>
List-Archive: <https://mailarchive.ietf.org/arch/browse/jmap>
List-Help: <mailto:jmap-request@ietf.org?subject=help>
List-Owner: <mailto:jmap-owner@ietf.org>
List-Post: <mailto:jmap@ietf.org>
List-Subscribe: <mailto:jmap-join@ietf.org>
List-Unsubscribe: <mailto:jmap-leave@ietf.org>

Hi Éric,

Thank you for your review.

On Sun, 26 May 2024, at 16:58, Éric Vyncke via Datatracker wrote:
> In `This MUST be an integer >= 1, or null for no limit` does null represent the
> integer 0 or NULL (lile in SQL) ? Suggest adding text to clarify, perhaps only
> double quotes around null.

This is the JSON `null` value. The type signature `UnsignedInt|null` for this property indicates the value can either be an UnsignedInt, as defined in RFC8620, Section 1.3 <https://www.rfc-editor.org/rfc/rfc8620.html#section-1.3>,  or a JSON null value. This is consistent with how we have specified this in all the other JMAP documents, and a reference to the notational conventions is at the top of the document <https://www.ietf.org/archive/id/draft-ietf-jmap-contacts-09.html#name-notational-conventions>.

> In `If true, the user may create an AddressBook in this account` suggest to use
> 'if and only if' construct.

I have rewritten to:

The user may create an AddressBook in this account if, and only if, this is true.

> ## Section 2
> 
> Which type is 'id' ? Integer ? String ? Also applies to sections 3. If
> well-known by the JMAP community, suggest a reminder in the terminology.

Again, this is referenced at the beginning of the document in Section 1.1 Notational Conventions <https://www.ietf.org/archive/id/draft-ietf-jmap-contacts-09.html#name-notational-conventions>, which says:

*Type signatures, examples and property descriptions in this document follow the conventions established in **Section 1.1* <https://rfc-editor.org/rfc/rfc8620#section-1.1>* of [**RFC8620* <https://www.ietf.org/archive/id/draft-ietf-jmap-contacts-09.html#RFC8620>*]**. The Id and UnsignedInt data types defined in Sections **1.2* <https://rfc-editor.org/rfc/rfc8620#section-1.2>* and **1.3* <https://rfc-editor.org/rfc/rfc8620#section-1.3>* of **[**RFC8620* <https://www.ietf.org/archive/id/draft-ietf-jmap-contacts-09.html#RFC8620>*]** are also used in this document.*

> 'isDefault' text could be clearer when no AddressBook has isdefault=true.

If no AddressBook is default, it's entirely up to the client what to do. I could add this, although it seems a bit redundant.

> In the `mayRead`and others, should the following text be a normative MAY ?

No, because it's expressing a permission (is the user allowed to do this), not a choice for the implementor.

> ## Section 3.3.1
> 
> Use of `UTCDate` seems to refer to UTC date and time. It is perhaps well-know
> in the JMAP community but could benefit from some explanations.

This is defined in Section 1.4 of RFC 8620 — looks like I missed referencing this in the Notational Conventions, I'll add it in. Thanks for flagging.

> Can all `String` be UTF-8 encoded ?

Yes.

Cheers,
Neil.