Re: [core] Benjamin Kaduk's Discuss on draft-ietf-core-multipart-ct-03: (with DISCUSS and COMMENT)

Christer Holmberg <christer.holmberg@ericsson.com> Tue, 23 July 2019 16:29 UTC

Return-Path: <christer.holmberg@ericsson.com>
X-Original-To: core@ietfa.amsl.com
Delivered-To: core@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id F168412012C; Tue, 23 Jul 2019 09:29:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.001
X-Spam-Level:
X-Spam-Status: No, score=-2.001 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=ericsson.com
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 jMnWvCCXlGO1; Tue, 23 Jul 2019 09:29:34 -0700 (PDT)
Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70077.outbound.protection.outlook.com [40.107.7.77]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 04FEE120121; Tue, 23 Jul 2019 09:29:33 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=f8M2bPT6a1cIM//hBZG+MURad64WI/fsymI82HWN9LgPJow336D+NzR18FdYJqg3BPNlaH0Bol56l7AxNm9W7mpNQvaElBl9t6lCCmI/tQvtbt+hPCl6NGkk8rNltWesU+NcSYyi+2L9K5qhKLlWZL9s6NCbfhkI/JpowHVnM080j+rzzFW+7FJAvlzWDn83tUjVf3UKKNlfPtypiwHkJAMPHzfQWFoCo12DmWPRSLN77yhLhIKbKYBCeZKQ+SnYvQbEMoIev0+d4IJOZtMjO28CA7dE/xsJWZPEYB194F7eTmzke49eyFRociKx3imEZQSk5sY0d1mEnG+KPz5tHg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=M5CBLeQFiJQmsdpBVPh8SUvJ0bL07xFdu25d8TZv5VY=; b=W8MEu11XdNGMLsvAD7guq+2DmRxGjRWLQv5UbOFjjjjLqwwDuuVI7/xJ7Zbf2D1BCTFL3lIU8BlRcFdiDV1qQifLRsEPjcABVJe/bYtwoMNsjnSwAGX07Wuo0y6c+UPZqC5LtU2u3em9DctsNT3L9D/ggvudrSA/c2+qa+yiHsWt27uySsnWdR0y8zfz205cc2gavFsztMxxSSFsXk30t0PncAtbXBCSsDaUc6alP8zhxbQjdIG+LML9sRMwYCqKZgZCn+U1peBrkeg1GMqIreMFyWuYVyoEttb6xJiEf9lUYcn7XSULbKyeNSh8pb/uwLfrJXl/gQkLJR9nnCsBHw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1;spf=pass smtp.mailfrom=ericsson.com;dmarc=pass action=none header.from=ericsson.com;dkim=pass header.d=ericsson.com;arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=M5CBLeQFiJQmsdpBVPh8SUvJ0bL07xFdu25d8TZv5VY=; b=CREjEsZ4Co6d9fpqFPCVzFGkbOMf+wnQo4MeJyPNBLNYF1Pd9Kga6cZl89vD6L6j9at4/bZnMCDsOA451JPHLZ1T7/JMAZRsn3WixCNgMsKRNiMtQvDpQur7+UQAk00KK/GEsKt74+vvBjFgpRT7xKU3SWddHsm8nRZO/VtV7+I=
Received: from HE1PR07MB3161.eurprd07.prod.outlook.com (10.170.245.23) by HE1PR07MB3196.eurprd07.prod.outlook.com (10.170.246.11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2115.10; Tue, 23 Jul 2019 16:29:31 +0000
Received: from HE1PR07MB3161.eurprd07.prod.outlook.com ([fe80::ec0d:f9d3:7159:ba7]) by HE1PR07MB3161.eurprd07.prod.outlook.com ([fe80::ec0d:f9d3:7159:ba7%6]) with mapi id 15.20.2115.005; Tue, 23 Jul 2019 16:29:31 +0000
From: Christer Holmberg <christer.holmberg@ericsson.com>
To: Carsten Bormann <cabo@tzi.org>, Benjamin Kaduk <kaduk@mit.edu>, Alexey Melnikov <aamelnikov@fastmail.fm>, The IESG <iesg@ietf.org>
CC: "core-chairs@ietf.org" <core-chairs@ietf.org>, "draft-ietf-core-multipart-ct@ietf.org" <draft-ietf-core-multipart-ct@ietf.org>, "core@ietf.org" <core@ietf.org>
Thread-Topic: [core] Benjamin Kaduk's Discuss on draft-ietf-core-multipart-ct-03: (with DISCUSS and COMMENT)
Thread-Index: AQHVAOimBuqCQRkqtUGyk3kOn/Ph5aZbnn+AgF1dcYCADkHzgIAR2jEA
Date: Tue, 23 Jul 2019 16:29:31 +0000
Message-ID: <7D31A395-E210-4836-820F-562D227C05D4@ericsson.com>
References: <155675554069.2851.9351849772053196736.idtracker@ietfa.amsl.com> <459433ef-5cb5-4c3e-a32e-a5d063b1ccf0@www.fastmail.com> <BE1600FF-FBFB-44F4-A405-9C73ADA6E3FC@tzi.org> <20190504232153.GA19805@kduck.mit.edu> <A4F204A4-904F-4105-BAC1-BF276EF91E99@arm.com> <41ABE257-66A5-4606-BCB5-C7DD45D02195@tzi.org>
In-Reply-To: <41ABE257-66A5-4606-BCB5-C7DD45D02195@tzi.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/10.1a.0.190609
authentication-results: spf=none (sender IP is ) smtp.mailfrom=christer.holmberg@ericsson.com;
x-originating-ip: [89.166.49.243]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: c831d113-e124-498f-063a-08d70f8af09a
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(2017052603328)(7193020); SRVR:HE1PR07MB3196;
x-ms-traffictypediagnostic: HE1PR07MB3196:
x-ms-exchange-purlcount: 3
x-microsoft-antispam-prvs: <HE1PR07MB31960846B67F1867BE4544FF93C70@HE1PR07MB3196.eurprd07.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:8882;
x-forefront-prvs: 0107098B6C
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(979002)(4636009)(39860400002)(346002)(136003)(366004)(376002)(396003)(51444003)(199004)(189003)(40434004)(66476007)(53546011)(64756008)(66446008)(66556008)(6506007)(6436002)(53936002)(71200400001)(71190400001)(99286004)(6486002)(66574012)(6306002)(8936002)(66946007)(6512007)(76116006)(86362001)(966005)(305945005)(5660300002)(76176011)(102836004)(229853002)(25786009)(14454004)(2906002)(6246003)(2171002)(36756003)(68736007)(7736002)(6116002)(316002)(3846002)(476003)(2616005)(110136005)(58126008)(446003)(478600001)(44832011)(26005)(5024004)(8676002)(11346002)(81156014)(54906003)(81166006)(4326008)(33656002)(14444005)(66066001)(186003)(256004)(486006)(969003)(989001)(999001)(1009001)(1019001); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR07MB3196; H:HE1PR07MB3161.eurprd07.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1;
received-spf: None (protection.outlook.com: ericsson.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: +niAJb/+AsxLXDQCDvjGcp0WT356mWHQ/UhQj8FdyNWNT0RvmwhCUKyWqLXB0YSmrFovzKx0djVsCxggDt7tK8hGLnJLa5MeeIQdZKeuxMQZAonwIjSZ21/IITxwsXvbymSW2qLjNPVzEHQr8y3N8dY5yI/qxnQHwq5vH4gdxazw3ZV2m9xzLlaD3TxC7H7S5MnrpVRcrtFw6tIow16K2qIJvwAthLdnim3n4fdwTDAPzK8LINlCFbwa/Xxlh7yMs9UiY9I+HEKrnvIHckKZ9jM8/iSB8Vx/3DnlblhOELqOeJve6IHCWB29a/fQPKpMFiIUZieIFg5VoagbbCIE70PjG0IkZFK1uhyhr7UmXYCrJ3s9Srq7JdnME7oMpip34pmxMJcZgLDpzVcrK3r+LS71EwqgfJoRDyuJLFlk2eQ=
Content-Type: text/plain; charset="utf-8"
Content-ID: <916FB4E3061BF743BA915DD1117360BC@eurprd07.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: ericsson.com
X-MS-Exchange-CrossTenant-Network-Message-Id: c831d113-e124-498f-063a-08d70f8af09a
X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Jul 2019 16:29:31.1244 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 92e84ceb-fbfd-47ab-be52-080c6b87953f
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: christer.holmberg@ericsson.com
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR07MB3196
Archived-At: <https://mailarchive.ietf.org/arch/msg/core/evl3XJMHCILiznhozCxgAwp1Zgc>
Subject: Re: [core] Benjamin Kaduk's Discuss on draft-ietf-core-multipart-ct-03: (with DISCUSS and COMMENT)
X-BeenThere: core@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Constrained RESTful Environments \(CoRE\) Working Group list" <core.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/core>, <mailto:core-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/core/>
List-Post: <mailto:core@ietf.org>
List-Help: <mailto:core-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/core>, <mailto:core-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 23 Jul 2019 16:29:38 -0000

Hi,

>    Let me try to add my personal view to this.
>    
>    In the Web, we have a lot of places where we put things into a sequence, without being too specific about what the semantics of that sequence is.
>    
>    E.g., if I ask for a directory listing in a Web browser, I get a bag (collection) of file entries, each represented by a file name, other metadata, and a link. 
>    This is not a multipart body, but is just structured as HTML (and actually could include the linked content via data URIs).
>    
>    But actually, most directory listers allow me to ask for a specific sequence, e.g. newest first or alphabetic by filename.  There is nothing in the media type 
>     I get back that would explain the chosen semantics, it is just context from what I clicked on (i.e., the URL in a link put on table heads).  So once I click on “Date”, 
>     I expect the sequence to be by change time.  (Really nice listers will then tell you so by a little triangle in the header, but it works without that.)  
>    
>    Multipart-core is a similar thing: The basic semantics of the sequence is a bag (collection), but the context might provide some more specific semantics that depends on the order in the sequence.

Section 1 (Introduction) gives a few examples regarding ordering, but then it says that if "these rules" are not sufficient, then one should use something else than application/multipart-core.

First, I can't parse any rules from the text. It is more examples of multipart usage.

Second, if there are any rules, I don't think they shall be in the Introduction section. Perhaps in a Applicability section, or somewhere else.

Third, if one is supposed to retrieve the semantics from the "context", that needs to be more clear. I guess it should be part of the rules the draft talks about.

Regards,

Christer

  






    
    
    > On Jul 3, 2019, at 11:08, Thomas Fossati <thomas.fossati@arm.com> wrote:
    > 
    > Hi Ben, Alexey,
    > 
    > First, apologies for taking so long to reply.
    > 
    > Second, I am not sure I agree with the core of Ben's DISCUSS.  Here's my
    > reflections:
    > 
    > The aim of this is to define a (very) flexible container type capable of
    > expressing things like - borrowing from ASN.1 - SEQUENCE, SEQUENCE OF,
    > SET, SET OF, CHOICE and ANY in a simple and uniform way.
    > 
    > The main point is it's up to the application that uses multipart-core
    > to define a) the flavour of aggregation and b) what the embedded
    > representations mean (see for example [1]) - which, incidentally, is
    > also what allows the spec to be so compact & lightweight.
    > 
    > Personally, I think that trying to specialise the container semantics (a
    > la mixed / alternative / parallel) is a complication that doesn't add
    > much value.  (Pardon the bluntness, but it seems to me that mimicking
    > the email application model in this context is a rather futile exercise
    > in coherency.)
    > 
    > Deciding to not restrict the aggregation semantics - at least for me -
    > is a precise design choice.  Note however that we leave the door open
    > to future or application-specific refinements of the aggregation via
    > content-format override (see last para of [2]).
    > 
    > Cheers, thanks!
    > 
    > [1] https://tools.ietf.org/html/draft-ietf-ace-coap-est-12#section-5.3
    > [2] https://tools.ietf.org/html/draft-ietf-core-multipart-ct-03#section-1
    > 
    > On 05/05/2019, 00:22, "Benjamin Kaduk" <kaduk@mit.edu> wrote:
    > 
    >    On Thu, May 02, 2019 at 03:11:25PM +0200, Carsten Bormann wrote:
    >> Hi Alexey,
    >> 
    >> On May 2, 2019, at 14:40, Alexey Melnikov <aamelnikov@fastmail.fm> wrote:
    >>> 
    >>> Hi Benjamin,
    >>> 
    >>> On Thu, May 2, 2019, at 1:05 AM, Benjamin Kaduk via Datatracker wrote:
    >>> 
    >>>> ----------------------------------------------------------------------
    >>>> DISCUSS:
    >>>> ----------------------------------------------------------------------
    >>>> 
    >>>> It's not clear to me that we're really specifying the semantics of a
    >>>> single media-type.  The introduction discusses how we may want multiple
    >>>> representations to appear in a sequence, potentially representing
    >>>> different content.
    >>> 
    >>> I think this is similar to multipart/mixed.
    >> 
    >> We were indeed trying to follow the model of multipart/mixed.
    >> This offers a number of embedded representations the sequence of which may or may not be important.
    >> 
    >>>> Or we may have a set of related representations that
    >>>> conceptually are the same content (but are they literally the same
    >>>> resource, or related content?).
    >>> 
    >>> My understanding is that they are related contents.
    >> 
    >> There is no promise that the related items are conceptually the same content.
    >> The difference between the first situation and the second one mainly is that the sequence is not important in the second (i.e., we are using the sequence to describe a bag).
    >> 
    >>>> And there is yet a third option -- one
    >>>> that I'm not sure I fully understand -- wherein the representation is
    >>>> not important, but rather which format is chosen of the several
    >>>> possibilities, to the extent that extreme compression of the
    >>>> representation is possible, with the compression just outputting the
    >>>> format indicator.
    >>> 
    >>> Hmm, I missed that. I think this is similar to multipart/alternative
    >> 
    >> That wasn’t the intention.
    > 
    >    I think that analogies to multipart/mixed and/or multipart/alternative
    >    would help the reviewer assess whether the document text succeeds at
    >    describing the intended behavior (though it's not clear that using such a
    >    reference to attempt to define the behavior by reference is a useful plan).
    > 
    >> The choice in the third situation mentioned in the introduction is made by the originator of the representation, not the receiver.  The selected representation is still packaged in an application/multipart-core envelope so the media type does not need to diverge — it is essentially used as the (type!) union (a.k.a. choice) of the media types that the application wants to be able to put in the envelope.
    >> 
    >> We may have painted ourselves into a corner in RFC 7641 with the mandate that the representations provided by an observable resource stay within the same media type (content-format) over time.  This makes it difficult in CoAP to observe a resource that alternates between a “pending” and a “ready” state that have different structures of their representation.  Multipart-core can be used to package either into the same media type.
    > 
    >    So while this may not be quite multipart/alternative, there are still
    >    alternatives involved; they are just delievered in separate (streamed)
    >    responses, as opposed to together in the same one.  That is, the
    >    alternation is over time and not at the choice of the recipient.
    > 
    >> I don’t think the third situation has semantics that differ from the first two.
    >> You still get a bag with a representation in it (or maybe none).  You still need to look into the bag to see what form it takes this time.  Actually, the second situation might also apply, so you might indeed get a couple representations in certain instances because that’s what best describes the resource at this particular time.
    > 
    >    I think it's important to be clear about whether the sequencing within a
    >    given content array is or is not semantically relevant, and under what
    >    conditions a recipient might only consult a subset of the array
    >    (multipart/alternative) vs. assembling a conglomerate from components of
    >    different types (multipart/mixed).
    > 
    >    -Ben
    > 
    > 
    > IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
    > 
    > 
    
    _______________________________________________
    core mailing list
    core@ietf.org
    https://www.ietf.org/mailman/listinfo/core