[Jmap] AD review of draft-ietf-jmap-mdn-13

Barry Leiba <barryleiba@computer.org> Fri, 24 July 2020 04:34 UTC

Return-Path: <barryleiba@gmail.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 E38423A0B22; Thu, 23 Jul 2020 21:34:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.896
X-Spam-Level:
X-Spam-Status: No, score=-1.896 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FORGED_FROMDOMAIN=0.001, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 CxLvm5BTa_72; Thu, 23 Jul 2020 21:34:39 -0700 (PDT)
Received: from mail-io1-f48.google.com (mail-io1-f48.google.com [209.85.166.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2C11C3A0B2A; Thu, 23 Jul 2020 21:34:36 -0700 (PDT)
Received: by mail-io1-f48.google.com with SMTP id d18so8597426ion.0; Thu, 23 Jul 2020 21:34:36 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=MZ/RTyTgzg4tXTiuTCXAwqzl12UNOz6aliVvO7z0as8=; b=quEi0hj6SZG5awNVOwc7xuD3keAqU5Z06y9eJq0GAFI8gf5wxu/ppfI0co+njDwHhO EnpSqEMJsLVwC0by0EDjgf+vuHTVNKiNMeJkP1+JjwD+AXDrtsOVoT21gzLHnwbvRKnw tlHrz1oqODpp2Y6stvhTdt4azUugaAMkgCfIl0//glRg4Np6PCz10jtEcw5dJ8WDowZI tsB9/5QXc8DZaDeIa6pfwKhDaLWUi+jeyP5wsi+f/iT3LO7TbTVbqLLetZ5lzCV8obXe YtGl94V1PH8pn/F/UJP5PA32UxRyEN/LsSnCkAukejiDgmX5z9W0f+MTGc7EfUbgv/9V jt5w==
X-Gm-Message-State: AOAM533KmW2eNjy2YGdVAxbefiN/MMbOojrAYNa8GpvBE28KdsLZe3ga TrSMfjDOZKqHUv89tKu/qL9+QnQlBM/kPIu7gddcsw==
X-Google-Smtp-Source: ABdhPJy2+hep84Um1Xv2GaonGnuA8sKlLw664PxifSdMMdNNLEVJdgI9jAwg+d8GSGoAhBsImju53WmsN6k/v6PrOU0=
X-Received: by 2002:a6b:1885:: with SMTP id 127mr1994014ioy.17.1595565274485; Thu, 23 Jul 2020 21:34:34 -0700 (PDT)
MIME-Version: 1.0
From: Barry Leiba <barryleiba@computer.org>
Date: Fri, 24 Jul 2020 00:34:23 -0400
Message-ID: <CALaySJLKXa=yY8DpUUmrMEaaYadcHKO7f6hoYQFL=6_dZ2oiGA@mail.gmail.com>
To: "draft-ietf-jmap-mdn.all@ietf.org" <draft-ietf-jmap-mdn.all@ietf.org>
Cc: IETF JMAP Mailing List <jmap@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000066dc0405ab287d8b"
Archived-At: <https://mailarchive.ietf.org/arch/msg/jmap/_nK2LaY3ZO2RexpUwKhB30rtmbw>
Subject: [Jmap] AD review of draft-ietf-jmap-mdn-13
X-BeenThere: jmap@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: JSON Message Access Protocol <jmap.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/jmap>, <mailto:jmap-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/jmap/>
List-Post: <mailto:jmap@ietf.org>
List-Help: <mailto:jmap-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/jmap>, <mailto:jmap-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 24 Jul 2020 04:34:41 -0000

Thanks for the good work on this document, and I’m sorry I couldn’t get to
reviewing it more quickly.  Here’s my AD review; please let me know if you
have questions or disagreements with any of it.  I’ll set the state to
“revised I-D needed”, and will request last call after a suitable revision
is posted.

— Abstract —
It’s a small thing, and if you want to leave it as is, it’s OK, but I think
the Abstract is unnecessarily long, and doesn’t need to include background
that you might reasonably want in the Introduction.  I would just make the
entire Abstract this:

NEW
This document specifies a data model for handling Message Disposition
Notifications (MDNs, RFC 8098) in the JSON Meta Application Protocol (JMAP,
RFCs 8620 and 8621).
END

— Section 1 —

   and aims to provide a consistent interface to different
   data types.

It doesn’t aim: it does.  Make it, “and provides...”.

Please expand “MDN” on its first use in the Introduction.

Throughout, when you use “MDN” as a plural, please make it “MDNs”,
reserving “MDN” for the singular.

Throughout, when you use “an email” to mean “an email message”, please use
the longer version instead.  Also look for things such as “an existing sent
mail”, which should be “an existing sent message”, and so on.

      Client might want to display detailed
       information about a received MDN.

You need an article here: “A client” or “The client”.

— Section 1.2 —

   Keywords being case insensitive in IMAP but JSON being case
   sensitive, the "$mdnsent" keyword MUST always be used in lowercase.

I find this awkward; would you mind changing it thus?:

NEW
   Because keywords are case-insensitive in IMAP but case-sensitive
   in JMAP, the "$mdnsent" keyword MUST always be used in lowercase.
END

— Section 1.3 —
You never say explicitly that you’re defining a new capability, and you
probably should.  I would append to the first paragraph, ‘This defines a
new capability, "urn:ietf:params:jmap:mdn".’

— Section 2 —
What are the asterisks in “*MDN*” and “*Disposition*” for?

— Section 2.1 —

      always be a backreference to the creation id

What’s a “backreference”?  Do you mean “a backward reference”?

— Section 2.2 —

   The "forEmailId" property can be null or missing if the
   "originalMessageId" property is missing, not referencing an existing
   email or if the server cannot efficiently calculate the related email
   (for example if several emails get the same "Message-Id" header).

This list isn’t parallel in structure.  Please try this (which also
corrects the “email message” issue):

NEW
   The "forEmailId" property can be null or missing if the
   "originalMessageId" property is missing or does not refer to an
   existing message, or if the server cannot efficiently calculate the
   related message (for example, if several messages get the same
   "Message-Id" header).
END

— Section 3.1 —

             "reportingUA": "linagora.com; OpenPaaS",

           "originalMessageId": "<1521557867.2614.0.camel@apache.org>"

Please make sure your examples all use example domain names, and not
actual, valid names.

— Section 4.2 —

   The following subsection register one new error code

Make it “registers”.  And, really, why have this one sentence and a
subsection?  Why not just put the subsection right here?

— Section 4.2.1 —

   Description: The message has the "$mdnsent" keyword already set.  The
   client MUST NOT try again to send an MDN for this message.

This contradicts Section 2.1, which says this:

   The client SHOULD NOT issue an MDN/send request if the message has
   the "$mdnsent" keyword set.

— Section 6.2 —
8174 has to be normative, just as 2119 does.

Barry