Re: empty lists?, was: Last Call: <draft-ietf-httpbis-header-structure-18.txt> (Structured Field Values for HTTP) to Proposed Standard

Mark Nottingham <mnot@mnot.net> Mon, 18 May 2020 23:24 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 6DB473A0A21 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Mon, 18 May 2020 16:24:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.849
X-Spam-Level:
X-Spam-Status: No, score=-0.849 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-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, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=mnot.net header.b=n8b1GBa8; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=cw3EF1qp
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 r38Yz19BNm94 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Mon, 18 May 2020 16:24:27 -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 92AF93A0A20 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Mon, 18 May 2020 16:24:27 -0700 (PDT)
Received: from lists by lyra.w3.org with local (Exim 4.92) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1jap4c-0003Gb-QE for ietf-http-wg-dist@listhub.w3.org; Mon, 18 May 2020 23:21:30 +0000
Resent-Date: Mon, 18 May 2020 23:21:30 +0000
Resent-Message-Id: <E1jap4c-0003Gb-QE@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 <mnot@mnot.net>) id 1jap4b-0003Fq-9F for ietf-http-wg@listhub.w3.org; Mon, 18 May 2020 23:21:29 +0000
Received: from wout3-smtp.messagingengine.com ([64.147.123.19]) by titan.w3.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <mnot@mnot.net>) id 1jap4X-00046R-IS for ietf-http-wg@w3.org; Mon, 18 May 2020 23:21:29 +0000
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.west.internal (Postfix) with ESMTP id 16620AF2; Mon, 18 May 2020 19:21:11 -0400 (EDT)
Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Mon, 18 May 2020 19:21:11 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mnot.net; h= content-type:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; s=fm2; bh=J bKtBsNDcpR5zVdSFFa3B/Rs8oHhjfqQ5WkCzdsezng=; b=n8b1GBa8udoVjJjoM lOtO8E+1pT9j9kIBfu317AkzvjuFLqn25pdJxPoAH1AFvFffaGI/1vVZALrUE1rm 33JxzdJ2INvqr/UvNZKvb5MHCIfii881CgBfWjQaDh/ZfUzvvW0ODez0RJx/amYe RO8nR8M0+m/hTp/2DLxaH71Hc06kYFon18EjC4gohBqj6yLww+R8CmkV7xOlHobk MgIjz6eK+W08VOix97V+AT53TWaAGg8PYiHVT2djMLXMQrXQ9wCRLLGkE4LoiX1g D6X8ukAuUWZFh5P93YslnI4NNXHaxh2NNKJ2P17HbqrCihmPQAFHB2aVMQIDIFN5 mukJg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; bh=JbKtBsNDcpR5zVdSFFa3B/Rs8oHhjfqQ5WkCzdsez ng=; b=cw3EF1qpjOJSO/3Hw75igy1+elwktTTpAs073TR0vYt/ISwVq10tEsQrq hYghPjLVKmbLt0UsmrsQOKEfqjlfwe2Gx+2cLE0PuyYGUI8MdKd/lSRkSkcHIxey ZpEpLgc8Smcj9eijEiOe2TkIiLrh4j1OFM9xU3J/K2O68p7LTKBMWx17nVtYasc9 TBS7MAjJAKNe68UrllZJeKBxtmmtz4wOesPc6t2iqxEq+qSQhm7dYglrwAa/7/vP iKaeogzcnl/5LMSK70G46FmMVRvjrnH/WMFSkYh4aEkIqDqpELaeDKvm8YoK2NWs WGEllR5098LllruNCdpAGrzPuHZpw==
X-ME-Sender: <xms:ZBjDXprlMfQegfF_Cvfjg7HVlGNOkg8whSv6P8wXmHYAOAlBLo-BjA>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduhedruddtiedgvdduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurheptggguffhjgffgffkfhfvofesthhqmhdthhdtvdenucfhrhhomhepofgrrhhk ucfpohhtthhinhhghhgrmhcuoehmnhhothesmhhnohhtrdhnvghtqeenucggtffrrghtth gvrhhnpedttddutdevudefveefudeuvedvheetueeigeevvedvjeefvdejgfejudffkeff geenucffohhmrghinhephhhtthhpfihgrdhorhhgpdhmnhhothdrnhgvthenucfkphepud duledrudejrdduheekrddvhedunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghm pehmrghilhhfrhhomhepmhhnohhtsehmnhhothdrnhgvth
X-ME-Proxy: <xmx:ZBjDXro6dUuSHwuPriv6az6af5eBc_H2uHoU_ZMvUzlVmsk-d2Zgnw> <xmx:ZBjDXmN1hdobYTrCJzVgTne0OvEmoVAfLZIoS5Bz2QqM7yCqDXbCbw> <xmx:ZBjDXk5ZcUjKikIUfjLamtMx1oKKumiw8Z7_mkzv-Uf8DGuIa5QQjg> <xmx:ZhjDXlvlq9kXbyjPDgHh5-20_PZT71gMD0fqeIissumX3m-DXnpT2g>
Received: from macbook-air.mnot.net (119-17-158-251.77119e.mel.static.aussiebb.net [119.17.158.251]) by mail.messagingengine.com (Postfix) with ESMTPA id 565543280060; Mon, 18 May 2020 19:21:06 -0400 (EDT)
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.80.23.2.2\))
From: Mark Nottingham <mnot@mnot.net>
In-Reply-To: <20200518212334.GD3811@akamai.com>
Date: Tue, 19 May 2020 09:20:57 +1000
Cc: "Julian F. Reschke" <julian.reschke@gmx.de>, last-call@ietf.org, httpbis-chairs@ietf.org, HTTP Working Group <ietf-http-wg@w3.org>, Barry Leiba <barryleiba@gmail.com>, draft-ietf-httpbis-header-structure@ietf.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <721A2334-D1C9-4A34-BE4C-0FA540B4E9D4@mnot.net>
References: <158740521959.1174.9556681562748997101@ietfa.amsl.com> <bb3a29ff-1a0f-964d-c764-4d4819d338da@gmx.de> <1d494d71-b837-729a-62f3-5ba8ca6549cb@gmx.de> <20200518182746.GC3811@akamai.com> <45ec9bc0-2a81-edf1-6054-7c5bb3cb8140@gmx.de> <20200518212334.GD3811@akamai.com>
To: Benjamin Kaduk <bkaduk@akamai.com>
X-Mailer: Apple Mail (2.3608.80.23.2.2)
Received-SPF: pass client-ip=64.147.123.19; envelope-from=mnot@mnot.net; helo=wout3-smtp.messagingengine.com
X-W3C-Hub-Spam-Status: No, score=-9.8
X-W3C-Hub-Spam-Report: BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, W3C_AA=-1, W3C_DB=-1, W3C_IRA=-1, W3C_IRR=-3, W3C_WL=-1
X-W3C-Scan-Sig: titan.w3.org 1jap4X-00046R-IS d2c9f37790f4a0169c38e00eb409f5b9
X-Original-To: ietf-http-wg@w3.org
Subject: Re: empty lists?, was: Last Call: <draft-ietf-httpbis-header-structure-18.txt> (Structured Field Values for HTTP) to Proposed Standard
Archived-At: <https://www.w3.org/mid/721A2334-D1C9-4A34-BE4C-0FA540B4E9D4@mnot.net>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/37656
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 May 2020, at 7:23 am, Benjamin Kaduk <bkaduk@akamai.com> wrote:
> 
>>> You saw
>>> 
>>>    An empty List is denoted by not serializing the field at all.
>>> 
>>> right?
>> 
>> That's about serialization.
>> 
>> 4.2.1 seems to parse an empty string into an empty list.
>> 
>> AFAICT, that's in conflict with the ABNF.
> 
> Thanks for clarifying.

As per S 1.2 [1], the ABNF is not for parsing; it's for 'illustrat[ing] the range of acceptable wire representations.'

The ABNF requires at least one member because sending an empty field value is not good practice; it's not something we encourage.


> FWIW I already have a comment staged about how we seem to make the
> ABNF normative for serialization but the prose normative for parsing,
> which seems like a weird mismatch that requires justification.

ABNF isn't normative for serialisation; what led you to that conclusion? 



1. https://httpwg.org/http-extensions/draft-ietf-httpbis-header-structure.html#notational-conventions

--
Mark Nottingham   https://www.mnot.net/