I have updated the draft of the File API, and welcome more review. Note that it is no longer called "FileUpload" since this term has become misleading.

In particular, here are some of the issues addressed (and some not):

> Any reason you're using an XHTML file to edit this? Also, the indentation is awkward.

http://dev.w3.org/2006/webapi/FileUpload/publish/FileAPI.html

> For what concerns the "file as URI" feature:
>What about reusing the "cid" scheme?

After having looked at the RFCs for cid and mid schemes, I don't think the cid scheme is appropriate for our use case, since it is tightly tied to the notion of message body, which isn't necessarily true in all cases of file data.

I have a proposal in this draft for the "file as URL" proposal (originally broached in IRC, but which has seen some discussion on the listserv). I'd welcome feedback on it, especially the processing model for these URLs. A simple ABNF using UUIDs as unique identifiers has been proposed here.

> File API should probably have some way to get only parts of the file.

This has been added as a new method.  Feedback welcome!

>[The existing design] limits the number of callbacks to one. That one callback >can only be added in the invocation to read.
>Instead, allow multiple callbacks to be added with the DOM Events API

While this was an intriguing suggestion (and seemed like it was a more powerful programming model), I wasn't convinced that it was needed for the File API. It did lead to a more complicated model that didn't seem to fully justify the power. However, I did study subsequent use cases, and eliminated error callbacks, allowing callbacks themselves to handle error conditions. Also, I introduced a cancelReads( ) which can be used with timeouts. I'm not convinced that an event model is necessary for asynchronous data accessors on file data; DOM events aren't useful in all cases. It's also worth nothing that the File API in general may be subject to further iteration in the Device API WG, which may introduce notions of "write" APIs.

>Note of course that whatever API supports ranges needs to ensure that
>the data isn't forcibly coerced into valid Unicode, as the underlying
>data for an image can include all sorts of patterns which aren't valid
>UTF8/16/....

It was clear that getAsText was insufficient, so more asynchronous data accessor methods have been added.

> I think FileDialog is a bad idea. We already have UI for selecting multiple files: <input type=file
>multiple>.

This has now been eliminated from this draft. I'm keen to move towards fpwd, and it seemed that FileDialog was needlessly controversial. I think it still is useful, and think it could be added later.

-- A*

Reply via email to