Subject: lists in header fields, was: How to reset ALTSVC

From: Julian Reschke <[email-masked]>
Date: Tue, 8 Sep 2015 12:04:56 +0200

On 2015-08-27 07:07, Julian Reschke wrote:
> ...
>> Also, since "clear" clears entries including the ones in the same
>> header, why could there be multiple alt-values?  Would instead of
>>
>> Alt-Svc       = 1#alt-value
>> alt-value     = clear / ( alternative *( OWS ";" OWS parameter ) )
>>
>> the following:
>>
>> Alt-Svc       = clear / 1#alt-value
>> alt-value     = alternative *( OWS ";" OWS parameter )
>>
>> not make more sense?
>> ...
>
> It would, but we are constrained by the HTTP header field semantics. A
> header field value is either list-shaped or it is not. We can't choose
> based on the field contents.
> ...

But then, RFC 7231 has (in 
<http://greenbytes.de/tech/webdav/rfc7231.html#header.vary>):

>   Vary = "*" / 1#field-name

I'm not totally happy with this, but it's a precedent and maybe I'm just 
too pedantic :-)

Are people ok with changing the definition as proposed by Bence Béky, or 
should I open a ticket for rfc7231bis?

Best regards, Julian

---

From: "Roy T. Fielding" <[email-masked]>
Date: Tue, 8 Sep 2015 11:59:23 +0100

On Sep 8, 2015, at 11:04 AM, Julian Reschke <[email-masked]> wrote:
> But then, RFC 7231 has (in <http://greenbytes.de/tech/webdav/rfc7231.html#header.vary>):
> 
> I'm not totally happy with this, but it's a precedent and maybe I'm just too pedantic :-)

Just a tad.

> Are people ok with changing the definition as proposed by Bence Béky, or should I open a ticket for rfc7231bis?

I think it should be clear that HTTP allows zero, singular, and infinity
as effectively separate potential value syntax for the same field name.
I don't see any problem with that (assuming the zero and singular syntax don't
contain a comma and the singular syntax is readily distinguished from 1#1value).

IOW, it's a feature.

....Roy

---

From: Julian Reschke <[email-masked]>
Date: Sat, 19 Sep 2015 20:36:08 +0200

> contain a comma and the singular syntax is readily distinguished from 1#1value).

OK, adjusted in 
<https://github.com/httpwg/http-extensions/commit/2757d7bfa244c33df5d4fdf8604c60f6645a7816>.

Best regards, Julian