Re: Working Group Last Call: Structured Headers for HTTP

Julian Reschke <> Tue, 25 February 2020 08:10 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 12E803A09AE for <>; Tue, 25 Feb 2020 00:10:25 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.65
X-Spam-Status: No, score=-2.65 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.25, MAILING_LIST_MULTI=-1, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id w6JvPLggMLny for <>; Tue, 25 Feb 2020 00:10:23 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id A35853A076C for <>; Tue, 25 Feb 2020 00:10:23 -0800 (PST)
Received: from lists by with local (Exim 4.92) (envelope-from <>) id 1j6VFI-0005p5-PD for; Tue, 25 Feb 2020 08:07:12 +0000
Resent-Date: Tue, 25 Feb 2020 08:07:12 +0000
Resent-Message-Id: <>
Received: from ([]) by with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <>) id 1j6VFC-0005oF-OO for; Tue, 25 Feb 2020 08:07:06 +0000
Received: from ([]) by with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from <>) id 1j6VFA-0005UE-Sl for; Tue, 25 Feb 2020 08:07:06 +0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;; s=badeba3b8450; t=1582618006; bh=5/bmQ/4QU6lXV7qUSL1eYHis3ScgyloCw21IY1ajFwU=; h=X-UI-Sender-Class:Subject:To:Cc:References:From:Date:In-Reply-To; b=Pfxxb1WUD+CZDsRp23lgCI7OQQx41TGPt3IYsxTwBN6a/yU1u94jo3Nxz9oDOt11e QuI3sKefPFxqnXYeBqtVIVzScWXA9DMy0VAD49Y1Q73xcXwiRoLgEWeZidA1LZDOBm tMP2jIiud2G/hNqxP5zCdtsuBNRw32jXfjP+MA8Y=
X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c
Received: from [] ([]) by (mrgmx004 []) with ESMTPSA (Nemesis) id 1MvK4Z-1jOAY03XDl-00rFOL; Tue, 25 Feb 2020 09:06:45 +0100
To: Mark Nottingham <>
Cc: Tommy Pauly <>, HTTP Working Group <>
References: <> <> <> <> <> <> <>
From: Julian Reschke <>
Message-ID: <>
Date: Tue, 25 Feb 2020 09:06:45 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0
MIME-Version: 1.0
In-Reply-To: <>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Language: en-US
Content-Transfer-Encoding: quoted-printable
X-Provags-ID: V03:K1:PUpmpSgHX6y+F7H87ZSL2tNoT0LdkIBSMFR6MT2qfjt5pMATnXv bXiKJtgv8SoamBS7/ThKFrluxuaP/bRNDW6SFsR+6gJ22JrXNsRzrUoP7Fj3XWFvUDnZzTp nSbpnTpN59jcJb9bbYy9gJ/jd534OILgu0YfGbs1Ux6AIDmBpkSfx7nR7IBLWOrwqEBheV3 gh/MRW5aBXqW56GstNCBQ==
X-UI-Out-Filterresults: notjunk:1;V03:K0:xst1vdjq9h0=:Eu/FAEVv9C9fUlTMcyDeSv aKGYFRcaIZFiXfBfDx0PLrnq5VxLFDxJn/C1A4jFylTezc3OTLl7HpY9ifeEndtsZuYSIW1up woJl4lLK9d3SBECWRCWdgoK0dk8edNl042MEZYwWE2BCYlDFLQAEc0Cho9GZ9eolgVAfFNCeW 1lrfJogyYGotlUIJX8YGCTWv0VUDjAFSUToHMcDzUaMEzZh2CPul1IZaEOo673YU0DIHk8Bi2 4HAJtb2LoTdvmHvSy67zNakBtWPq7uc3/xDA5PgNMfkdAp+LV4AlojVpY0GBQqL7C8i7qH/WF GQboijZkCnetBmssrwadv8/FJch4MSww6umKZdHBZIl8DlNFCfwUe+eU69jbAUvtBgiWqhIIt zEc7wjRv2I9fly+wYZodJOHBkjtHkgX9y6CegCodeE5ubuwZ23A7Eo9IPXVghwxC53B5eLPU3 pALO7YM63YE2+SdroW4Ty6v13rAXB8czwR9fYsloqXkzYk2XOY9HEJsOn+Jqgk+yGaFxZWPZ2 8mFy61YAutBjxLVm3w5A+zFphdtdTxkgpruHMm3elgZI+aQh7ROtkOCwwiwdQ2035H+1b//vB jxiG7OR9hhfevsFxhZU3Z5J/862LmdIUYsrs4I4xOv+ij4ekby3Wx74poXDzYBBpU163JF6Is KGKG6RA3UmEWVdTsSvvPnSJ+m6/qIOQWNB5NM6tYFwfpbfKt9Q0IcPEwrdUQIGlgvMeCaGNtz /Xy1sRevWnoqoxUfrT3AuLZn/B55cMzTZ4rGZ6OEcddIc7CCx9dPC4kaj7kK22icPGOA80xAY 36pPeCKesUSy1cX5R40V1fID/mrO+AtWmYS7UX6vm9i6Hdp6m8fCKRVGoIXjUcao+v2irPFS7 31hjlcW9KUBJSEvVfTGs1kUFplaV6FoqvLPQHoqUvymtnt6w7mVwc5ksU3mw9sQuNpTpq60Pq ByAD7RcQvO7EInXglCJKXvcpB9p4vLTls4BIIrUJnnwqHXxGW/wGvScqBTgrNsiewMDCXtXDc zpC9Rp27gBP5GHbDDV/ToBlaZawb0dRFDu7XwzfKb619L4oS7+/kATLyK72aeUT+d46kJQyCG zizHs9fAmUL3fQEDO3o5N27CyprOBndDVHKi4h3y/kCspZCw9rpsS+FjEc/ZROKerr4DgDCY2 VhCy9pm9J0NUyZHiAFKK1a/C/OxijB5LBDwC9EJYOQNkHfKIN8Q52stqXPCoLr4WbaKgnw2LP EPZTJtPRo4tuXNLMQ
Received-SPF: pass client-ip=;;
X-W3C-Hub-Spam-Status: No, score=-8.6
X-W3C-Hub-Spam-Report: BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, W3C_AA=-1, W3C_IRA=-1, W3C_IRR=-3, W3C_WL=-1
X-W3C-Scan-Sig: 1j6VFA-0005UE-Sl f983bec36b232332f83f90a93a23078b
Subject: Re: Working Group Last Call: Structured Headers for HTTP
Archived-At: <>
X-Mailing-List: <> archive/latest/37388
Precedence: list
List-Id: <>
List-Help: <>
List-Post: <>
List-Unsubscribe: <>

On 25.02.2020 07:13, Mark Nottingham wrote:
>> On 25 Feb 2020, at 5:08 pm, Julian Reschke <> wrote:
>> I understand that. What trips me up is that we we have to different
>> cases: one in which the shorter notation MUST be used, one in which it
>> MUST NOT be used. Am I the only one who thinks that this is sub-optimal?
>> In a perfect world, the serialization should not depend on the context
>> it appears in. I understand that this is a trade-off, but it would be
>> good to see more context about how we got there, and whether
>> alternatives were discussed.
> If you're referring to the case of a Boolean as a Dictionary value (and it would be good if you confirmed that this is what you had in mind; if you're talking about Booleans wherever they might appear, I don't know how that would work), it was considered, but IIRC it would have required a substantially more complicated parsing algorithm, because of cases like this:


> Example-Field: ;param=on-default-boolean
> Parameter values are comparatively simpler, because they can't have any further substructure.

I don't quite get the example. In the spec I see:

   Example-DictHeader: a=?0, b, c=?1; foo=bar

If this would be instead:

   Example-DictHeader: a=?0, b, c; foo=bar

...what would break?

Best regards, Julian

PS: I'm tempted to propose "!a" instead of "a=?0" :-)