Re: Origin computation

On Thu, Dec 11, 2008 at 2:50 PM, Julian Reschke <julian.reschke@gmx.de> wrote:
>
> Looking at <http://dev.w3.org/html5/spec/Overview.html#origin>:
>
> "3. If url does not use a server-based naming authority, or if parsing url
> failed, or if url is not an absolute URL, then return a new globally unique
> identifier."
>
> I'm always becoming nervous when a spec requires a globally unique
> identifier, but doesn't state the syntax. How are different implementations
> supposed to mint globally unique identifiers if the syntax is totally
> unrestricted?

My understanding is that those are "opaque identifiers" and only an
implementation detail. The identifier needs only be unique in the
scope where it can be compared to another origin.
There doesn't seem to be any needed interoperability.

>From the same section:
"The origin of a resource and the effective script origin of a
resource are both either opaque identifiers or tuples consisting of a
scheme component, a host component, a port component, and optionally
extra data."

and bit later, when it comes to Unicode/ASCII serialization:
"1. If the origin in question is not a scheme/host/port tuple, then
return the literal string "null" and abort these steps."

AFAICT, nowhere outside of section "3. Origin" is the "opaque
identifiers or tuples" used; either the "same origin" algorithm is
called or the spec uses the Unicode or ASCII serialization.


-- 
Thomas Broyer

Received on Thursday, 11 December 2008 14:26:41 UTC