- From: Julian Reschke <julian.reschke@gmx.de>
- Date: Tue, 29 Jun 2010 21:27:13 +0200
- To: arun@mozilla.com
- CC: Web Applications Working Group WG <public-webapps@w3.org>, public-device-apis <public-device-apis@w3.org>
On 29.06.2010 20:40, Arun Ranganathan wrote:
> ...
>> I may sound like a broken record, but it's still not clear to me why
>> you need a custom URI scheme here. If you plan to actually register it
>> with IANA (you do, right?), you will have to explain why it's needed.
>
> Both you and I may sound like broken records, since we've definitely
> been down this road before :)
I know :-)
> I do plan to register it via IANA.
>
> Note that we started off with a URN scheme (urn:uuid). This was chosen
> initially to bypass a cycle with IANA, but this wasn't adequate. No
> browser implementation really uses URN schemes; they aren't used in web
> pages; implementers, including Firefox, cited a preference for URLs with
A URN is a URI. blob is a would-be URI as well. No web page uses "blob"
right now, so I'm not sure what point you're trying to make.
> a scheme (for instance, nightly builds of Firefox use moz-filedata: as a
> scheme). Moreover, we wanted something that could be used in all places
> on the web platform that URLs are used today, including Web APIs like
> XMLHttpRequest, and for elements (like <img src..>). Lastly, while a URN
> scheme could have been used with an attribute called URL, that seemed
> wrong.
I don't see why you can't do these things with urn:uuid:.
> We have file URIs ("file://") on the web platform today, and some
> implementations actually support use such as that mentioned above. But a
> scheme that referred to individual Blobs or Files that could be used
> with response codes was the best course of action (with no path, etc.).
All true & understood; but I still don't see why this needs a new URI
scheme.
> ...
>> - How do you guarantee uniqueness if opaqueString is free form? Is
>> this just "unique per producer"? Are you sure that never ever two blob
>> URIs from different producers will get into the same context? If
>> you're sure about that, why do you need a URI scheme in the first place?
>
> It is likely to be unique per producer. In fact, Chrome folks may wish
> to use origin tokens in the URI scheme, and even if they didn't, the use
> of UUID would result in differences per producer. If by different
> producers, you mean that a Blob URI coined by Chrome may have no meaning
> in Firefox, you're likely to be right.
So if a blob URI produced by Firefox leaks into Chrome, what happens? If
this *can* happen, you may need to require more than per-producer
uniqueness.
> While the *format* that the URI takes may vary per producer, it seems
> wise to at least define a scheme that can be used commonly by user
> agents. Authors may never interact with the URI itself, but only with
> the Blob.url property -- that is true. But at least a scheme gets us
> something that's better than total arbitrariness. Do you disagree
> strongly? I also think that leaving things undefined isn't desirable in
> general.
I actually do not see what benefit this scheme brings.
>> - You don't need to make statements about fragment identifiers; they
>> are not part of the URI scheme itself
>>
>
> That's right. I want to emphasize that they are allowed. I took this
> from the RFC on WWW URIs, cited in the text. Maybe I can add a
> non-normative section on the use of fragment identifiers? Is that your
> suggestion?
The semantics of fragment identifiers follow from RFC 3986, Section 3.5
(<http://greenbytes.de/tech/webdav/rfc3986.html#rfc.section.3.5>) and
the media type that is being retrieved. So normative statements would be
incorrect, but explaining what's going on wouldn't hurt.
>> - That being said, if you do you should point out how they work (do
>> they depend on the media type of a representation?)
>>
>
> Right -- I do in the spec. They depend entirely on the media type of a
> Blob. Is the existing text insufficient?
I didn't see it. Most is accurate. I'd rephrase
"This scheme can allow for fragment identifiers for well-defined format
types...."
though. The scheme can't allow or disallow anything; it really only
depends on the media types of the representations you get upon deref.
> ...
Best regards, Julian
Received on Tuesday, 29 June 2010 19:27:53 UTC