[media-types] "Unwrapping" structured suffixes

Jeffrey Yasskin <jyasskin@google.com> Wed, 13 March 2024 22:44 UTC

Return-Path: <jyasskin@google.com>
X-Original-To: media-types@ietfa.amsl.com
Delivered-To: media-types@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D6CE0C14F68E for <media-types@ietfa.amsl.com>; Wed, 13 Mar 2024 15:44:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -22.607
X-Spam-Level:
X-Spam-Status: No, score=-22.607 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, ENV_AND_HDR_SPF_MATCH=-0.5, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001, USER_IN_DEF_DKIM_WL=-7.5, USER_IN_DEF_SPF_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=google.com
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 Q9E0hTmCB9iU for <media-types@ietfa.amsl.com>; Wed, 13 Mar 2024 15:44:14 -0700 (PDT)
Received: from mail-vs1-xe2c.google.com (mail-vs1-xe2c.google.com [IPv6:2607:f8b0:4864:20::e2c]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 392CAC14F685 for <media-types@ietf.org>; Wed, 13 Mar 2024 15:44:14 -0700 (PDT)
Received: by mail-vs1-xe2c.google.com with SMTP id ada2fe7eead31-47605f03b15so39047137.0 for <media-types@ietf.org>; Wed, 13 Mar 2024 15:44:14 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1710369853; x=1710974653; darn=ietf.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=exkQvGysv4TpiWNrE+9t2HrGSlmkxkfcwjkwZ4I3o9c=; b=by+zb9dE1xUwUhV0KbvFhD4ETCvzh9V3G84VhJ91QS08qV5QjydFtZUuj4HaqILhPr hgRx+umAE2Uv2JuzmDyR2wL9E4WyLalPGz4Aw4sqP10IWcBA+lty9Iegoj1ibBLzROSZ uht+TOKmdENLjsXSr8gUsnhKj7pMRdxsYxubgb16JO8w6mEqLvJLMDgulJHwbLwjjWyi HBiyJxZSGxuYHPvVzEPOxSInrjlnCEWDOJr5jO6k5QQvPIS8w1lvW8LxBY7smT6ahhoY eW5HZSaSR1tUAQfz8H0udpghFKOBXIvDrcOCobJwJwUUu32luX1rNw/7uw9Y3clyzT8Y qBMQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710369853; x=1710974653; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=exkQvGysv4TpiWNrE+9t2HrGSlmkxkfcwjkwZ4I3o9c=; b=qMv2kpxCJw6/cXgCuti3w/YTSMkqwJfJkR6R6mj+3zqAZ3rccJNZWpTD4G+0pumGAA bhoiWvoIVW8b6MYyJhc6+0Zk50GAFYMGM3bCoYjYrxxt7ehl8WMTvUBrD/RchR5uMDBY 9ntpu1VseTwprr+Fd+9ncSQM0H394wF4RyO9iqQz/UWL2g5agOlYWVJcGfI5B2FOrvdo pU7H/TgUUEBoVsRYd321FUNv4Rh64necAxEGGvWlqNYCeErEAti7LzGL9xevSy/QvLRu G9ief3MepKOCotieK8ZiFCydSHsaGmNkV4aE1Y2bdibBGE/VoNsrBRHd9JK5oOudh7kM /7XA==
X-Gm-Message-State: AOJu0YxwISkyitWY9mMihnd9mmeWe/FL2yB9yUyvZPbFDtqlyURhPpmB ZbK4cNCe7Y0C4760FKyp4MZc1bkk2gFDXYm4IIHMDmZBP/fnacWay1pRjbSuBaj/2Qh27UojHj/ vmlJa/28Jr2b3PerAb+JMP34EUeeCmZGLxZLufeIUp5pOhdse3a9zyM4=
X-Google-Smtp-Source: AGHT+IEbu/8fFLxrSC1CSztdK2eL0kdvwbgWwjpiy7O+pFRvneHvqaKeNSFDTJXtAQ0y3d+hNgk793M6FGWyYWhG4Uk=
X-Received: by 2002:a05:6102:12d1:b0:472:fe23:85e8 with SMTP id jd17-20020a05610212d100b00472fe2385e8mr312338vsb.20.1710369852869; Wed, 13 Mar 2024 15:44:12 -0700 (PDT)
MIME-Version: 1.0
From: Jeffrey Yasskin <jyasskin@google.com>
Date: Wed, 13 Mar 2024 15:44:01 -0700
Message-ID: <CANh-dX=X1wpqmYP6jsaR9Ps=qhfqzBm78rM=Z+YrRGWwfCa+mQ@mail.gmail.com>
To: media-types@ietf.org
Content-Type: multipart/alternative; boundary="000000000000843b350613928393"
Archived-At: <https://mailarchive.ietf.org/arch/msg/media-types/vP5bLHbQPsnme0XvzobSoA8MB94>
Subject: [media-types] "Unwrapping" structured suffixes
X-BeenThere: media-types@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "IANA mailing list for reviewing Media Type \(MIME Type, Content Type\) registration requests." <media-types.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/media-types>, <mailto:media-types-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/media-types/>
List-Post: <mailto:media-types@ietf.org>
List-Help: <mailto:media-types-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/media-types>, <mailto:media-types-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 13 Mar 2024 22:44:17 -0000

Hi media-type folks,

When looking through the existing structured suffixes in
https://www.iana.org/assignments/media-type-structured-suffix/media-type-structured-suffix.xhtml,
there seem to be 2 kinds: ones like +xml, +cbor, +json, etc., which
describe the meta-format of the media type they appear in, and ones like +gzip
and +zstd, which appear to say that you can uncompress a foo/bar+gzip media
type to get some bytes that you can then process as foo/bar.

In my reading,
https://www.ietf.org/archive/id/draft-ietf-mediaman-suffixes-07.html#name-media-types-with-multiple-s
reinforces this possibility by referring to the left side of the first + as
the "base" subtype. I wouldn't expect to need a "base" media type if
something weren't unwrapped into that base format.

However, based on a discussion with some of the proponents of the
mediaman-suffixes draft in https://github.com/w3c/vc-data-model/issues/1364,
I think this interpretation is not what the authors were hoping to get
across. It sounds like +gzip and +zstd are also expected to be just
descriptions of the overall media type, and a tool isn't supposed to unwrap
a layer of suffix and try again with the "base" media type.
https://www.ietf.org/archive/id/draft-ietf-mediaman-suffixes-07.html#name-partial-processing-of-suffi
mentions a security problem with this possibility but doesn't directly say
not to do it.

I don't have a strong opinion about what do with this, and I don't want to
unnecessarily delay the RFC, but Harald thought it would be useful if I
posted to describe this confusion.

Jeffrey