Re: [Last-Call] Opsdir last call review of draft-ietf-cbor-cddl-control-05

Carsten Bormann <cabo@tzi.org> Thu, 16 September 2021 14:50 UTC

Return-Path: <cabo@tzi.org>
X-Original-To: last-call@ietfa.amsl.com
Delivered-To: last-call@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D422C3A2BD7; Thu, 16 Sep 2021 07:50:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level:
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, 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 YLFfUV9N4-ln; Thu, 16 Sep 2021 07:50:36 -0700 (PDT)
Received: from gabriel-smtp.zfn.uni-bremen.de (gabriel-smtp.zfn.uni-bremen.de [134.102.50.15]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 897F93A2BD9; Thu, 16 Sep 2021 07:50:30 -0700 (PDT)
Received: from [192.168.217.118] (p548dcf6e.dip0.t-ipconnect.de [84.141.207.110]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by gabriel-smtp.zfn.uni-bremen.de (Postfix) with ESMTPSA id 4H9Kkr2Kzdz2xR2; Thu, 16 Sep 2021 16:50:28 +0200 (CEST)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.120.23.2.7\))
From: Carsten Bormann <cabo@tzi.org>
In-Reply-To: <163177805091.20542.1431332039721128802@ietfa.amsl.com>
Date: Thu, 16 Sep 2021 16:50:27 +0200
Cc: ops-dir@ietf.org, cbor@ietf.org, draft-ietf-cbor-cddl-control.all@ietf.org, last-call@ietf.org
X-Mao-Original-Outgoing-Id: 653496627.66554-8f1c597fc3babe2dfb011a6073e1c913
Content-Transfer-Encoding: quoted-printable
Message-Id: <2AF7FD17-4661-4E30-AFA3-79FB0B142EF9@tzi.org>
References: <163177805091.20542.1431332039721128802@ietfa.amsl.com>
To: Tianran Zhou <zhoutianran@huawei.com>
X-Mailer: Apple Mail (2.3608.120.23.2.7)
Archived-At: <https://mailarchive.ietf.org/arch/msg/last-call/YTemMl9s4aUYaoTsO2dCooIISEo>
Subject: Re: [Last-Call] Opsdir last call review of draft-ietf-cbor-cddl-control-05
X-BeenThere: last-call@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: IETF Last Calls <last-call.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/last-call>, <mailto:last-call-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/last-call/>
List-Post: <mailto:last-call@ietf.org>
List-Help: <mailto:last-call-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/last-call>, <mailto:last-call-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 16 Sep 2021 14:50:40 -0000

Hi Tianran,

thank you for this thoughtful review.

> 1. " The present document defines a number of control operators that did not
> make it into RFC 8610:" This confused me why it was not included into RFC 8610.
> Is there any WG decision to make this draft seperate from RFC8610?

At the time RFC 8610 went into its finishing phase, we identified a number of features where waiting for their completion would unduly hold up the completion of the RFC.
A document was created (“the freezer”) to capture those features:
https://datatracker.ietf.org/doc/draft-bormann-cbor-cddl-freezer/
The WG did have several discussions about this, including a survey Francesca (WG chair at the time) made that helped clarify our priorities.

The cddl-control draft essential is an extraction from the freezer, with some further development of course (otherwise we could have put in the features into RFC 8610).  This particular extraction focuses on features that can be attached to existing extension points of RFC 8610, with leaving a “CDDL 2.0” or some such to the next step after that.

“were not ready at the time RFC 8610 was completed” maybe is a bit more explicit.

Now https://github.com/cbor-wg/cddl-control/commit/91c7c39

> 2. Why this document is informational while RFC8610 is standard?
> This somewhat related to the first question.
> I looked into the shepherd comments, but the reason is still not clear to me.
> 
> "This is Informational. It provides extensions to CDDL through an extension
> registry that's only "specification required". It is being done through the
> IETF process (and working group) because much of it was already planned to be
> shipped as "included batteries" with original CDDL, because there expertise on
> ABNF (which it is linking into CDDL) is in here, and because the proposed
> additions are expected to be used as important tools future CDDL-based
> specifications."
> 
> I do not think "an extension registry that's only "specification required""
> should be the reason for informaitonal.

Actually, I agree with your view here.

This is really an instance of a larger question that we have had repeatedly:  What is the intended status of documents that “just” exercise extension points of a base standard, which could as well have been exercised by a "specification required” registration?

I believe the fact that a “specification required” registration would have sufficed (and the base document is not “updated”) is not sufficient to make the decision.  Instead, we should have focused on the question what the normative intent is.  We do expect CDDL users to be able to use these features (and we have two known public implementations), so the intent is for this specification to stand on the same level as the base document itself.

I have stronger opinions about this than a couple of months ago because we just went through very much the same kind of discussion again with draft-ietf-core-senml-data-ct, where we did reach the conclusion that “standards track” was the right answer.

Now
https://github.com/cbor-wg/cddl-control/issues/10

I did not make a change to the document itself now because I think we need to await the result of this discussion.

> 3. A nit in section 2:
> "As an 80 % solution" is not easy to understand what this mean to the later
> words.

   CDDL as defined in [RFC8610] does not have any mechanisms to compute
   literals.  As an 80 % solution, this specification adds three control
   operators: [details]

So what was meant here is that the need for computing the value of literals may be wider, but 80 % (proverbial, not actually measured) of the use cases should be addressed with these three control operators.

So, again, let’s make this more explicit:

-literals.  As an 80 % solution, this specification adds 
+literals.  To cover a large part of the use cases, this specification adds 

Now https://github.com/cbor-wg/cddl-control/commit/87ad909

The changes are assembled in
https://github.com/cbor-wg/cddl-control/pull/9

Thanks again for helping us to weed out unneeded jargon!

Grüße, Carsten