Subject: Re: [httpwg/http-extensions] Identifiers that can express all origins (#629)

From: HTTP issue updates <[email-masked]>
Date: Thu, 24 May 2018 06:33:10 -0700

In fact, several existing header fields use angle brackets as delimiters (Link, Dav, If). SH tries to get away with one delimiter syntax, so quoted-string it is.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/httpwg/http-extensions/issues/629#issuecomment-391716134

---

From: HTTP issue updates <[email-masked]>
Date: Fri, 25 May 2018 05:58:45 -0700

Given how common URLs and origins seem to be as primitive components of headers headers, perhaps splitting them out into a type distinct from "string" might make sense. The initial serialisation might even be the same, but perhaps an eventual binary format could do more interesting tricks given knowledge of the format.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/httpwg/http-extensions/issues/629#issuecomment-392050033

---

From: HTTP issue updates <[email-masked]>
Date: Tue, 29 May 2018 01:56:24 -0700

An alternative way of stating OP would be asking why identifiers are as restricted as they are in the proposal?

(I'm not entirely convinced either origin or URL is common enough to warrant its own type, FWIW.)

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/httpwg/http-extensions/issues/629#issuecomment-392703452

---

From: HTTP issue updates <[email-masked]>
Date: Tue, 29 May 2018 03:27:01 -0700

origin *is* a URI (reference), no?

It's quite common that certain delimiters are not allowed in identifiers. I assume we're discussing characters such as ":" and "/"?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/httpwg/http-extensions/issues/629#issuecomment-392729107

---

From: HTTP issue updates <[email-masked]>
Date: Tue, 29 May 2018 03:30:49 -0700

If you parse an origin as a URL and then serialize it, it would not be equal to the original input (it would have a trailing slash). And an opaque origin serializes as `null` which can't parse as a URL.

As for what's under discussion: "/" is already allowed. So ":" and ".", mainly, I think, but I'd have to double check if that's all.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/httpwg/http-extensions/issues/629#issuecomment-392729992

---

From: HTTP issue updates <[email-masked]>
Date: Tue, 29 May 2018 03:42:51 -0700

> If you parse an origin as a URL and then serialize it

Depends on what you parse and serialize it with. FWIW, how does that matter in this context?

> And an opaque origin serializes as null which can't parse as a URL.

It parses as URI reference.

> As for what's under discussion: "/" is already allowed. So ":" and ".", mainly, I think, but I'd have to double check if that's all.

Hmm. <https://greenbytes.de/tech/webdav/draft-ietf-httpbis-header-structure-04.html#identifier>:

~~~
Identifiers are short (up to 256 characters) textual identifiers; their abstract model is identical to their expression in the textual HTTP serialisation.

identifier = lcalpha *255( lcalpha / DIGIT / "_" / "-"/ "*" / "/" )
lcalpha    = %x61-7A ; a-z

Note that identifiers can only contain lowercase letters.
~~~

So I don't see ":" and "." here.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/httpwg/http-extensions/issues/629#issuecomment-392732980

---

From: HTTP issue updates <[email-masked]>
Date: Tue, 29 May 2018 03:46:09 -0700

Right, that's the issue.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/httpwg/http-extensions/issues/629#issuecomment-392733734

---

From: HTTP issue updates <[email-masked]>
Date: Tue, 29 May 2018 03:51:39 -0700

Well, you'd need more characters to be allowed so that an origin always is an identifier, no? (for instance: ",")

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/httpwg/http-extensions/issues/629#issuecomment-392734941

---

From: HTTP issue updates <[email-masked]>
Date: Tue, 29 May 2018 03:56:21 -0700

Maybe, see https://github.com/whatwg/url/issues/390. I agree that if we need to continue to allow "," in hosts we better stick to strings.

Even then I'm still interested in hearing the rationale behind the characters allowed in identifiers.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/httpwg/http-extensions/issues/629#issuecomment-392735968