Boolean param notation, Re: Benjamin Kaduk's Discuss on draft-ietf-httpbis-header-structure-18: (with DISCUSS and COMMENT)

Julian Reschke <julian.reschke@gmx.de> Tue, 19 May 2020 09:50 UTC

Return-Path: <ietf-http-wg-request+bounce-httpbisa-archive-bis2juki=lists.ie@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C86203A0A1E for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 19 May 2020 02:50:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.75
X-Spam-Level:
X-Spam-Status: No, score=-0.75 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.249, MAILING_LIST_MULTI=-1, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=gmx.net
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 yi7SodUZkLea for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 19 May 2020 02:49:59 -0700 (PDT)
Received: from lyra.w3.org (lyra.w3.org [128.30.52.18]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id E643A3A09F6 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Tue, 19 May 2020 02:49:58 -0700 (PDT)
Received: from lists by lyra.w3.org with local (Exim 4.92) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1jayq1-0004g4-8e for ietf-http-wg-dist@listhub.w3.org; Tue, 19 May 2020 09:47:05 +0000
Resent-Date: Tue, 19 May 2020 09:47:05 +0000
Resent-Message-Id: <E1jayq1-0004g4-8e@lyra.w3.org>
Received: from titan.w3.org ([128.30.52.76]) by lyra.w3.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <julian.reschke@gmx.de>) id 1jaypz-0004ex-Pn for ietf-http-wg@listhub.w3.org; Tue, 19 May 2020 09:47:03 +0000
Received: from mout.gmx.net ([212.227.15.19]) by titan.w3.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from <julian.reschke@gmx.de>) id 1jaypx-00033D-Ik for ietf-http-wg@w3.org; Tue, 19 May 2020 09:47:03 +0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1589881595; bh=XO5p/IFFZyHlgDexp30hwUkKjPKyAm0E3iZxnDomV6I=; h=X-UI-Sender-Class:Subject:To:Cc:References:From:Date:In-Reply-To; b=SY3iGgDneXv3tgG4Z7VnTlFrF2FOzwhCM4yUFhh3o3Mff93GMgBV1qUPqAk9G6UF7 Vi4Y963lFh6xN2dxggFe2s8gmB3P4nkcf0QBx22umc6ROzmze6oaGL9tsuJthmW6AM VAjBlkfKXe3UJ75g55ByE4z4OoB4p26N/6E1cEYI=
X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c
Received: from [192.168.1.220] ([217.91.35.233]) by mail.gmx.com (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MulqD-1ijHui1nrn-00rpbR; Tue, 19 May 2020 11:46:35 +0200
To: Mark Nottingham <mnot@mnot.net>, Benjamin Kaduk <kaduk@mit.edu>
Cc: The IESG <iesg@ietf.org>, draft-ietf-httpbis-header-structure@ietf.org, httpbis-chairs@ietf.org, HTTP Working Group <ietf-http-wg@w3.org>, Tommy Pauly <tpauly@apple.com>
References: <158985680600.32294.14997877272521602557@ietfa.amsl.com> <CFC9B0CA-6125-4705-A13E-F2260F3EC3A5@mnot.net>
From: Julian Reschke <julian.reschke@gmx.de>
Message-ID: <f606b7a2-be34-9d42-cb78-0ff46bb671a0@gmx.de>
Date: Tue, 19 May 2020 11:46:33 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0
MIME-Version: 1.0
In-Reply-To: <CFC9B0CA-6125-4705-A13E-F2260F3EC3A5@mnot.net>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: quoted-printable
X-Provags-ID: V03:K1:IXlrqWZGmWX/0LUDcL+iRa4ltAUWAi86O4Qs1URJGDEvZj70EjO H/zzoUKEH/xkihxz6M5Ug36dO+YhixeN4clNNI7s3pE2dEmGUE0j5Qw3148qUDRUgEa3JDK cHwdE85YNk31TtAJwvJFlfhTDwhjONyTjrClbrnrgx2sFZZtnAwel6Tb4W1C9XAJsL68ZWh IfPy0u0RAEA5oE/VrEk1Q==
X-UI-Out-Filterresults: notjunk:1;V03:K0:AZCCGIMarUs=:fZVbO0PD8imDXcyMe5ryO2 hxgwfPIwoC2Vi4MBv2tpjxu+/lYSUQgya2bm3Hj2VDN8mnAHxNvmZWO5TIH0No3CfaJZhSPg/ WMq96IInGE8QlqT0rjY0O7vsF13/ycq3jO3iehAQCIYihvnxO+PlAVzeHUNWXnbs4sPf66plz Y4jtfl+8xKTLY7V5b5YELYMXLOOzTa7ki7wCbhFq01bvGpxutWsWdgJW5wMONCHe+uovOcSNt 3RC/Wq/CG98eYR19Mol6HrWSitWESokCEs9tHHD3qTChzBES53i9IodrqvzPbZZYvRdzLFQGv 2xCEXh+CnatWn4SMO8yJudqC8ZgNNKveFg4ElTOCatXY7z8VbXv4yXlPxugIMla2n6k/+fgVS cSqkY8FXWLgx2SFCH7Om9z+cSccAGaKBZtCkb2fWbV/4w5jGid7tgHnKMxbek+DtJM0FIf5LC CNb0nr3Dcb01haFkNKDY3qo4VqmURzsX+mlc2LmziMnokQWuH36rb4V1CMUfmMbiB1WDHKc0R gMWyG9nkwUgPsRzwPEGSezGpsE//AVVONIZ21nITU1KPFZxYWJTHo4twKlQs1nrsVNzX/yRW+ hccW9TVagoLETatZQ6vMl2mfs9C2otcSQun5nSFP9Im0zkS4fJt65sq2Xc0GlCoSyJOUTidva 95x8xDc6BIcGrIxjaezF0dV75hPb0vniHpU+vzh00VLTXfdlmobpG3y5eJf66GrRqc2oP1TRc 6oDuvPn0qZHWqw/6+SEza89RbODIgAYUmbvZEqrIRgq7KypyisT2AB6r2mxFZylhjtoPVU9HD CtpEI+i9skK/8cx3k6W3jioXqWrqPsm+EwfFob0tdyzoNWJqQJmpwoaFKhoF0TnOtDpDCf1jJ z2XAV9A/CyP/V9vuLr1KlxR4QcsWJY+yeqLknwiPf6B4OgWyJRJqyWnuHadgscsvtmwk931O/ fxnmb1qhzAF4qZfzNF+bkxhnbdvJvdEO5TPwPdQLAgRruWr1WDuh6IC9WRWXp0WPl5ecDbisN Lci3DTdPo95dVRHE5DrJGCxQs1kwrkd3QbGJ/ueJDKXJDwz8WxDE1aVNBSxuTDToDSh4TD46r ye9xZHT909t6pyxGqxsx1nRzKuqUqHxBQctUiL17LS+f4XnUZaV+IwO37f+1e3KJyVBy5jUbs eg63cfdwGO49oDVco5SxOsek7zcq/F9DrUT5LJq9mbyVmXSBr3ltJogL4r94qH90l61Kr83AK G0ZBesp1FOhKdPmp4
Received-SPF: pass client-ip=212.227.15.19; envelope-from=julian.reschke@gmx.de; helo=mout.gmx.net
X-W3C-Hub-Spam-Status: No, score=-5.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, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, W3C_AA=-1, W3C_IRA=-1, W3C_WL=-1
X-W3C-Scan-Sig: titan.w3.org 1jaypx-00033D-Ik 805b5146047da9ef63cf6278957cf36f
X-Original-To: ietf-http-wg@w3.org
Subject: Boolean param notation, Re: Benjamin Kaduk's Discuss on draft-ietf-httpbis-header-structure-18: (with DISCUSS and COMMENT)
Archived-At: <https://www.w3.org/mid/f606b7a2-be34-9d42-cb78-0ff46bb671a0@gmx.de>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/37664
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <https://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

On 19.05.2020 07:13, Mark Nottingham wrote:
> ...
>> What's the motivation for "MUST omit values of boolean true" (in
>> parameters and dictionaries)?  It seems to make the output rules more
>> complicated without a significant gain in encoding size.
>
> It allows some existing HTTP headers to be treated as structured for the purposes of serialisation.
> ...

Well, the introduction states that redefining existing fields is a
non-goal...

IMHO...

- the reason for "MUST" is that we want exactly one way to serialize

- the reason for "omit true values" is not only saving bytes, but
improving readability (if the on-the-wire syntax is more ugly that
needed, potential users might opt into defining their own syntax instead)

BTW: we have a shorthand syntax for true values, but not for false. One
could argue we should have both (such as "!foo" == "foo=?0"), but on the
other hand, the current state makes it attractive to always define
Boolean params to "false", so that "foo=?0" will never actually occur on
the wire; and that probably is a good thing, too).

Best regards, Julian