W3C home > Mailing lists > Public > ietf-http-wg@w3.org > January to March 2014

alt-svc header field syntax

From: Julian Reschke <julian.reschke@gmx.de>
Date: Wed, 05 Mar 2014 20:59:36 +0100
Message-ID: <53178228.7000606@gmx.de>
To: HTTP Working Group <ietf-http-wg@w3.org>
So,

>  Alt-Svc     = 1#( alternate *( OWS ";" OWS parameter ) )
>    alternate   = <"> protocol-id <"> "=" port

<"> can be written better as DQUOTE.

That being said, HTTPbis P2 has this advice:

"Note that double-quote delimiters almost always are used with the 
quoted-string production; using a different syntax inside double-quotes 
will likely cause unnecessary confusion."

So I'd propose to either make it a full blown quoted-string, or to use a 
different quote character ("<" and ">"?).

>    Finally, note that while it may be technically possible to put
>    content other than printable ASCII in a HTTP header, some
>    implementations only support ASCII (or a superset of it) in header
>    field values.  Therefore, this field SHOULD NOT be used to convey
>    protocol identifiers that are not printable ASCII, or those that
>    contain quote characters.

The note wrt to quote characters is either a statement of fact (can't), 
or should be a MUST.

A simpler way out of this might be to say:

   alternate   = alt-token "=" port
   alt-token   = token ; alpn protocol identifier where non-token octets 
are uri-percent-escaped

That (1) avoids quoting, (2) makes it possible to use all syntactically 
valid protocol identifiers, and last but not least (3) makes the common 
case simpler.

Best regards, Julian
Received on Wednesday, 5 March 2014 20:00:16 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 1 March 2016 11:11:23 UTC