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

On 2015-09-08 12:59, Roy T. Fielding wrote:
> On Sep 8, 2015, at 11:04 AM, Julian Reschke <julian.reschke@gmx.de> wrote:
>>
>> 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 :-)
>
> 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.

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

Best regards, Julian

Received on Saturday, 19 September 2015 18:36:42 UTC