Re: [httpapi] Structured Fields for HTTP APIs
Julian Reschke <julian.reschke@gmx.de> Sat, 04 February 2023 06:33 UTC
Return-Path: <julian.reschke@gmx.de>
X-Original-To: httpapi@ietfa.amsl.com
Delivered-To: httpapi@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6BAD2C14CE4C for <httpapi@ietfa.amsl.com>; Fri, 3 Feb 2023 22:33:56 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.097
X-Spam-Level:
X-Spam-Status: No, score=-7.097 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmx.de
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 CCR2IwYLYx7K for <httpapi@ietfa.amsl.com>; Fri, 3 Feb 2023 22:33:51 -0800 (PST)
Received: from mout.gmx.net (mout.gmx.net [212.227.15.18]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 628B0C14CF05 for <httpapi@ietf.org>; Fri, 3 Feb 2023 22:33:51 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417; t=1675492428; bh=47XwnDYdoMXdhJKiSmNDp2JPS3eJc7ZAdRR76nNGChQ=; h=X-UI-Sender-Class:Date:Subject:To:References:From:In-Reply-To; b=LEwI9jxGGrN84ZdRo/jDuFwesZId87e0QQDFTkRc6NfrKxDa4gApVJAtGhrSalLkV VMYZv4ADfB13k0uiPKehF39rPTPeXGUE1xdNvopwqhqoNEHYckVzd/q1bO+fLwUIPz xmZFndCIUrvRWncmpIQRrleJcoWXHAk4N0n/hB2FbB3uaGwhjn/rMWpYNt4N372FGz CEmVSTHZwyHIVgVhQhmh6YsGRuF7dXA+nFuMPS9yGpvSfQ3X2/wpE/WqmIsCR19q7+ MBI9porSQefsNmZwrxLDbsXxoIJHQp4htqNyb2uhcf5CW6EW8UP7cWQZL95SM+513m nC5bU3ZT35LbA==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from [192.168.178.20] ([91.61.54.204]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MowGa-1oqRoA0IUo-00qV1n for <httpapi@ietf.org>; Sat, 04 Feb 2023 07:33:48 +0100
Message-ID: <5b7b2c1f-b594-7955-a861-cba7e6ecfcf1@gmx.de>
Date: Sat, 04 Feb 2023 07:33:45 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.6.1
To: httpapi@ietf.org
References: <DM6PR01MB59649603A686559109383E41A3C89@DM6PR01MB5964.prod.exchangelabs.com> <479442be-2bd2-3e0c-9c75-655e62d3af26@gmx.de> <CAP9qbHU7DfPgHUP_GyvtJC1HfwMUj=rqZSR2c7U+yGho=JU0Ow@mail.gmail.com> <3758a944-7cfa-a471-03fc-d256d2a83c16@gmx.de> <B87E31FF-587E-4B45-BAD4-1A58DE736D1D@mnot.net>
Content-Language: en-US
From: Julian Reschke <julian.reschke@gmx.de>
In-Reply-To: <B87E31FF-587E-4B45-BAD4-1A58DE736D1D@mnot.net>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: quoted-printable
X-Provags-ID: V03:K1:8OfdR8YI6HngW+K8/OOmuZByBA0Itzf8f9FBAaR56YiDJ7SBHHH eyNJD346p+xHQo0h/w7ayb9cqVJr/fdDiIucKs8icKGMOY+YbAOLu997hYDha+1U7msQ4EY WVhloxTFYZmd1SMwphTTr/alHF5IQ0G7RTb1/JHUX+wY4C7SCmWf0bTEa2wV+XStbwUa1SS BZNsuxBEZCSgNopdHuvfg==
UI-OutboundReport: notjunk:1;M01:P0:V4LRGv53yO0=;tkpcBi0LR88HCGBtnNJpHeKCjO3 O69NLNwSn6NZsV/Yj3Lg/TtWvdfSqtpd+sMeGv55hULE8Cl5J5vgJYAajLJIotF3x201KlCK/ 8/ASLzNe3jow72AYnBv3t76ORvxZCwEJjdzkAQoDC6UQ/9rFUhr0A5RpefFoo+vs/x4cyqtxv 1GjZPDm5eOomQSfUomWE2QXhyUgkBIMmef6Mg/za+VMS+fT6D+LAQVDiA9GyDWcuLunzBLJeU PQHiKJjwPYtGvmDqFvtrCBFVuHtw3xdOQvzNYuYZS/L7pEPM0kNurCZh9CpkOuZHA8RlyUim+ DI5rwXv1lsJBJ4aWgHNiWULRKHHIuTKtXUqaXBxYv0N2UpnQKnymtiTejYusJYQP92+2jd6o/ jlTNYlQ7ZHGpQE04vT4fqfQh/3AE7WMW2W+DnvvJWmOfNPsKNaYZDj+MD9OayBRqjz3HVtf47 UlOHvxwBv4pqQr5Y/3xnv0KKudCYfZKtXpwSLNemOi7OADwgCUELSYWKlYhWyFq4t6p6Iezuz I3la6NHSzSj1U9NugVwEk1K9wr63xOhVy6DwEOt1BbkCrGA1CVj7tT5rHvswetKS88UFlPZCO +onOZ2MZgmWlOqPBemdpN7HduWYt2Bs5Z5yUr9mzpx0Q2qdwsVSTqtiA5Wwx1vePj3gJk8vgy Kva1lNUenVfbw9iEp4oX5d1zWEeL5STZ9f/Mg3HClAuueKAcJ7G2Vc/NSKxPJygzxFPOc2rrt vrhB0Q5Fctv36AcQnE0gqI+nUuPYND/HNgAbGklPyxMt8M2j6O/7D9PQt78iDFNHvCbSgoc6o rdh6eTaFxaCXTZZlDBfJRUo9ZZlfCXkZ/+iwaUvbZ3JyjLQhR1g7NE3TL45s0PWtRlUABu30w LZp5hT8pJ73uJ8IbBsGKQrv/tleej11wXt8a+sXyA/qqHnFQEHoAgUj1rr9QWCkpoY+flY52g Y9HD0A==
Archived-At: <https://mailarchive.ietf.org/arch/msg/httpapi/euqajFqdXSh7R2ftBEv4x9SwP3o>
Subject: Re: [httpapi] Structured Fields for HTTP APIs
X-BeenThere: httpapi@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Building Blocks for HTTP APIs <httpapi.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/httpapi>, <mailto:httpapi-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/httpapi/>
List-Post: <mailto:httpapi@ietf.org>
List-Help: <mailto:httpapi-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/httpapi>, <mailto:httpapi-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 04 Feb 2023 06:33:56 -0000
On 04.02.2023 07:24, Mark Nottingham wrote: > >> On 2 Feb 2023, at 12:28 am, Julian Reschke <julian.reschke@gmx.de> wrote: >> >>>>> [..] If headers with unknown >>>>> syntax are a problem for existing tooling, how has that tooling survived >>>>> the introduction of any new header over the past decade? [...] >>> >>>> the question in fact was a bit different - use SF to combine >>>> multiple related things into a single field, or use multiple fields so >>>> it's easier to extract the various parts. >>>> With the latter approach you actually do not need a new field value >>>> parser, >>> >>> Yes Julian, you got the point. >>> In general, I question whether it is sensible to >>> enforce SF usage in API contexts where consolidated practices >>> (that we might like or not) already exist. >> >> Well, if the consolidated practice is to either use problematic >> substring/regexp matches, or spreading things about multiple fields, I >> disagree (not sure if this is the case here). > > That's one of the issues. > > You also need to consider all of the corner cases about combining multiple instances of a field -- even if a field only allows one instance, we often see that more than one occurs on the wire, so error handling needs to be defined. SF does this for you. > > Additionally, "simple" headers often need to be extended, at which point you have significant interoperability problems. SF again gives you an extensibility path. Yes. And then there's escaping, whitespace, number overflows, whatnot. > Regarding Date, I have to say I'm concerned. The HTTP WG had what I'd consider a strong consensus for the current unix date approach, but it's not clear to me whether it's actually going to be used. An unambiguous signal (yes or no) about whether this community will use it in its drafts would be helpful, IMO. That's my recollection as well. Best regards, Julian
- [httpapi] Structured Fields for HTTP APIs Darrel Miller
- Re: [httpapi] Structured Fields for HTTP APIs Julian Reschke
- Re: [httpapi] Structured Fields for HTTP APIs Martin J. Dürst
- Re: [httpapi] Structured Fields for HTTP APIs Roberto Polli
- Re: [httpapi] Structured Fields for HTTP APIs Julian Reschke
- Re: [httpapi] Structured Fields for HTTP APIs Mark Nottingham
- Re: [httpapi] Structured Fields for HTTP APIs Julian Reschke
- Re: [httpapi] Structured Fields for HTTP APIs Darrel Miller
- Re: [httpapi] Structured Fields for HTTP APIs Sanjay Dalal
- Re: [httpapi] Structured Fields for HTTP APIs Erik Wilde
- Re: [httpapi] Structured Fields for HTTP APIs Julian Reschke
- Re: [httpapi] Structured Fields for HTTP APIs Erik Wilde
- Re: [httpapi] Structured Fields for HTTP APIs Julian Reschke
- Re: [httpapi] Structured Fields for HTTP APIs Mark Nottingham