[Cbor] Re: WGLC redux (Re: đź”” WGLC on draft-ietf-cbor-cde-08)

Anders Rundgren <anders.rundgren.net@gmail.com> Mon, 31 March 2025 12:57 UTC

Return-Path: <anders.rundgren.net@gmail.com>
X-Original-To: cbor@mail2.ietf.org
Delivered-To: cbor@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 75576151A077; Mon, 31 Mar 2025 05:57:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.099
X-Spam-Level:
X-Spam-Status: No, score=-2.099 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, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id dftVzuvGKy2L; Mon, 31 Mar 2025 05:57:38 -0700 (PDT)
Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com [IPv6:2a00:1450:4864:20::330]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id CF9111519BE4; Mon, 31 Mar 2025 05:57:15 -0700 (PDT)
Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-43ce71582e9so30779025e9.1; Mon, 31 Mar 2025 05:57:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743425835; x=1744030635; darn=ietf.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=oddcWMMGPNi6J0y9/mvg10o7OkVTkpUcjb2Hm4KhMTc=; b=W9YYYNA/7sJd2pq0McOE4PmtL8lM0n3Ei1Qnz4Eu5t3Jbr6K1m+yX1IxuNj7mOO6ZQ qbJ9zhmWDBxEDLYXe/iPUU2YFzLFC2kQ4l9Ifo4NylsJGp5Tw39RqQvl6Iy5+5IlQdrW IaYkTQUNW1yxWhGbqTsUIhBPdbTpWTG4nyWwSxyzFM+5GQj5+JfNa3cospi8Dy2cMMXp ERpegMWKlyJWnbs/zDTaDtr+/GYVShVYZDEnTzWPgFc/d6p/Ilbyby4HX/GJa0RNv5Yd 2SoShoxuZeh45eGzixrDpfVht3SKlIkWR4/Se/P3UoWYllw0YkKJwuERw0siSCEhSXYF dgZA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743425835; x=1744030635; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=oddcWMMGPNi6J0y9/mvg10o7OkVTkpUcjb2Hm4KhMTc=; b=bW7YzSQUqjo2QJWflYhHYTh4VMISDLIQm82sArKWJfcHmG4ioBzvVDn+Dcw50fHnmR O92Ny6eGuw/MC5uxdyTpmuHK05DUUgBseouU/J5HRUZrBTeFEaYTdmuCHyLhk3hpETAH ggcPzNHC/fEFJoLE89MApSahJfoyh7alAnt6jh3Na1F5w5QzhzJmMVGINIwIyGekMzp7 Y7k7GEqYEUc5un6yTYRFCVgKmHaVxCQgB+RRYdjuqOzefBOBXtfqEktIYBdUE4aMacII wO9KbWp7R+pgpotMoQ1PSaivlsML87FFjIHze7DP3puEPvp2WLxY73z96UMaNnvGZyYn 2SPA==
X-Forwarded-Encrypted: i=1; AJvYcCXA0RzmwjX+O2kNEP4vwsyITa75SbSkdrVvuIC+rEFfcvBRGVdsW57Z4bVwnhXv83+KE+7n@ietf.org
X-Gm-Message-State: AOJu0YwlDRR/1swRJimZ5NcTv0jHrVCv07o8rjsrcVEFsTfQ5/EfSHOy rHDK771hf9qg2FnCcy6uI11DDpeQFrfbAUE4atZTKFLHH2JGkSXuCF8F99TN
X-Gm-Gg: ASbGncs6Z4vTFixhlnWnqw0P2gWlmRdx06iIyU9cGm8wGWdYf8YHmZx4J6b34XfYGo0 kMlcfwWgut0lR/TkCQKDMOFKRYgZWTT9yspiaOW+z87thJuFYfK3l4aLhra8wtmNEhE4XTCI6vA BXY8GpigKnsa1EKEmWOGfeHHSvP7Kn25/MLsz/+p8y9GZhYwsEeNG+rNprZZpPmlzO2DJE4IZkh ngqbbIpsd4Yh65eyO1ZTi999o795vuoi1+xE2yS41badPE4wjhzf7F0UTxq5n0u5rflKJhau4TS hXDLNie0VphAPexW4yIhY4Nm8oPBVfYBPD8un+bmEhdFghsOy3jPerc3Tm6mx84dLNKnh064GO0 MbkukhEzWRuCerEVAiizUW06Lmu3te9i0I/rBjhMKcCmWAXDyIg==
X-Google-Smtp-Source: AGHT+IFzt/XbC/eDvQMTeGSGAVbhQogReCLU1WRjyuH35dMx76VA10U8dXr+XxQ/gkOHvCSjel24lQ==
X-Received: by 2002:a05:600c:35c2:b0:43c:f8fc:f697 with SMTP id 5b1f17b1804b1-43db61d0c5fmr80428085e9.9.1743425834537; Mon, 31 Mar 2025 05:57:14 -0700 (PDT)
Received: from ?IPV6:2a01:e0a:e1b:64b0:71a0:cf25:8780:7d7d? ([2a01:e0a:e1b:64b0:71a0:cf25:8780:7d7d]) by smtp.googlemail.com with ESMTPSA id 5b1f17b1804b1-43d8314b5e7sm165962345e9.35.2025.03.31.05.57.13 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 31 Mar 2025 05:57:13 -0700 (PDT)
Message-ID: <721e2b78-9fa6-45d6-abbc-bb5936bf015d@gmail.com>
Date: Mon, 31 Mar 2025 14:57:12 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
To: Carsten Bormann <cabo@tzi.org>, CBOR <cbor@ietf.org>
References: <Z8oi3HMTum5eriSw@hephaistos.amsuess.com> <ABE85E99-9B1F-4B09-8910-9CEB58DA1240@tzi.org>
Content-Language: en-US
From: Anders Rundgren <anders.rundgren.net@gmail.com>
In-Reply-To: <ABE85E99-9B1F-4B09-8910-9CEB58DA1240@tzi.org>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Message-ID-Hash: ENUA6MSGZEQCE3MZRFKPL2BFAL2BAGAR
X-Message-ID-Hash: ENUA6MSGZEQCE3MZRFKPL2BFAL2BAGAR
X-MailFrom: anders.rundgren.net@gmail.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-cbor.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: draft-ietf-cbor-cde@ietf.org
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [Cbor] Re: WGLC redux (Re: đź”” WGLC on draft-ietf-cbor-cde-08)
List-Id: "Concise Binary Object Representation (CBOR)" <cbor.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/cbor/Z4TZwnsAmw7C-n8j7S69jr8pdS4>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cbor>
List-Help: <mailto:cbor-request@ietf.org?subject=help>
List-Owner: <mailto:cbor-owner@ietf.org>
List-Post: <mailto:cbor@ietf.org>
List-Subscribe: <mailto:cbor-join@ietf.org>
List-Unsubscribe: <mailto:cbor-leave@ietf.org>

Short return since I was mentioned :)

I'm working with Open Banking and similar high-profile applications.

In these contexts, client developers get ZERO possibility of using their favorite encoding format.
However, Open Banking only represents a fraction of a gazillion, in practice, rather similar applications.
If CBOR is [ever] going to be a viable solution in this space, you need a pretty good and universal profile, as well as compatible tools.

Such tools will follow the current de-facto standard.  That is, using Object Oriented concepts and Encapsulation.

This is the rationale for *my* work.

We can WGLC cbor-cde anytime, personally, I stick to RFC8949.

Thanks,
Anders

On 2025-03-31 14:29, Carsten Bormann wrote:
> Hi,
> 
> preparing for Wednesday’s interim, I looked at the ~ 32 messages on this mailing list that mentioned the draft since WGLC, preparing for submitting -09.
> 
> I couldn’t really do much with the messages that said they wanted some other documents instead, such as a discussion of CBOR interoperability considerations, which the CDE document is not about.
> 
> Anders agreed that this document should move forward, but had these points [1]:
> 
> [1]: <https://mailarchive.ietf.org/arch/msg/cbor/2tgHTlheVhaOMpecfeZ-ORFm1hE>
> 
>> UNCLEAR RATIONALE:
> 
> Both abstract and first paragraph of the introduction provide rationale for CDE (and the new term “basic serialization”).
> 
>> UNFINISHED RESEARCH:
> 
> Anders has a question about dCBOR, which is irrelevant to the present document.
> (There also is no research necessary to answer this question.)
> 
>> COMPATIBILITY ISSUES:
> 
> Anders believes there is some interoperability danger from creating CBOR profiles.
> I actually agree, which is why CDE unifies the existing approaches to deterministic encoding in one common best current practice, which also could be called “profile" (but: there is only one).
> There also is an attempt to describe dCBOR as a competitor profile to CDE, which it isn’t.
> 
>> MIXING LEVELS:
>> The CDE draft spans everything from encoding numbers
> 
> (Which is indeed properly the subject of CDE)
> 
>> to how
>> you deal with objects having multiple representations (like some
>> CBOR date objects).
> 
> CDE points out that you might have to say something about this (deterministic representation down from the application level) in conjunction with CDE (deterministic encoding of CBOR data items).
> It doesn’t define a best current practice for *what* to say (too application specific), but does introduce terms that might help with *how* to say it.
> In any case, it points out that the fact that you might have to say something doesn’t invalidate CDE as the one common best current practice for deterministic encoding.
> This is necessary to understand when using this BCP.
> 
>> VERBOSITY:
>> CDE is (obviously) a follow-up document to RFC 8949. As such it
>> inherited a style of writing which I as a "normal engineer" have
>> issues with.  Both documents feels more like "PhD dissertations",
>> than specifications targeting implementers.  Personally, I used
>> https://cbor.me as the "truth", when navigating RFC 8949.
> 
> Indeed, we clearly have different styles.
> The “implementer’s manual” style Anders seems to like just doesn’t cut it when creating actual specifications.
> It is great for blog posts and Wiki pages, though (hint, hint).
> 
> 
> Laurence [2] points out that much of the CDE document is already specified in RFC 8949.
> Still, he thinks that CDE should be standards-track, not BCP as currently planned.
> I don’t think this would be entirely wrong, but BCP just is closer to what this document does: delineating an important set of related statements already in RFC 8949 and supplying a common term for them, including making a choice where one is left open by RFC 8949.
> 
> There are also a few things in [2] that aren’t quite right, but I won’t niggle with the text in the comment.
> I just would like to state my disagreement with his finding of CDE to be "an opportunity to refine the normative definitions of basic serialization, preferred serialization, and CDE” in the sense of restating RFC 8949 and making CDE update RFC 8949.
> Restatements are bad [restate], and, if at all, I’d go into the inverse direction to point out that many CBOR-based standards (e.g., COSE) miraculously already make use of CDE as is (as always, of the subset of CDE they need, which is small for COSE).
> But that would be informational, and it maybe fits better on a Wiki page.
> 
> [restate]: https://www.ietf.org/archive/id/draft-bormann-restatement-03.html
> 
> Laurence also would like to rename “basic serialization” into “CIE” (CBOR Interoperable Encoding), which would be highly misleading, as it would imply other choices provided by RFC 8949 aren’t interoperable, which they surely are.
> 
> [2]: <https://mailarchive.ietf.org/arch/msg/cbor/OW3t8mohL9QMxYugJ7nzV-NBd5A>
> 
> Michael [3] thinks we should publish "a set of canonical encoding templates”.  I’m not quite sure what that would be, but the point of CDE is that we only need one “Common Deterministic Encoding” and not a menu of templates to choose from.  In any case, he was quite affirmative of this document.
> 
> [3]: <https://mailarchive.ietf.org/arch/msg/cbor/6dwAUypkoJTkxg2xwhOERpORdug>
> 
> 
> We have a number of additional comments that essentially reflect a process of becoming aware of the application-level deterministic representation (ALDR) issue and how it is different from CDE (but can be addressed in a way that works well together with CDE).
> I think these comments are great support for not ignoring ALDR.
> 
> We got lots of great editorial input from Laurence that I tried to incorporate after aligning terminology.
> Some of this is already merged, and there is a PR [09] with some more that previews what I will submit as -09.
> There is now some minimal consideration of how the existence of encoding variants influences interoperability with partial implementations in Appendix A [09-iop].
> Please check [09-html] and [09-diff].
> This PR also includes a slightly updated form of three useful tables of examples in Anders’ “base” document, now forming Appendix D.
> 
> [09]: https://github.com/cbor-wg/draft-ietf-cbor-cde/pull/28
> [09-iop]: https://cbor-wg.github.io/draft-ietf-cbor-cde/models-edit/draft-ietf-cbor-cde.html#appendix-A-5
> [09-html]: https://cbor-wg.github.io/draft-ietf-cbor-cde/models-edit/draft-ietf-cbor-cde.html
> [09-diff]: https://author-tools.ietf.org/api/iddiff?url_1=https://cbor-wg.github.io/draft-ietf-cbor-cde/draft-ietf-cbor-cde.txt&url_2=https://cbor-wg.github.io/draft-ietf-cbor-cde/models-edit/draft-ietf-cbor-cde.txt
> 
> I’ll do another editorial round before submitting, so comments are welcome (of course, even after submitting -09 as well).
> 
>> On 2025-03-06, at 23:34, Christian AmsĂĽss <christian@amsuess.com> wrote:
>>
>> The call will run until Marh 26th […]
> 
> I’m not a chair of this group, so I’ll leave it to the chairs to consider whether the other feedback we got (e.g., from Wolf McNally [wm]) was affirmative.
> 
> [wm]: <https://mailarchive.ietf.org/arch/msg/cbor/2tgHTlheVhaOMpecfeZ-ORFm1hE>
> 
>> PS. We don't have a shepherd assigned for this document, any volunteers?
> 
> Any takers?  We could discuss this on Wednesday as well.
> 
> GrĂĽĂźe, Carsten
> 
> _______________________________________________
> CBOR mailing list -- cbor@ietf.org
> To unsubscribe send an email to cbor-leave@ietf.org