Re: Network API editor's draft

On Wed, 07 Mar 2007 23:07:36 +0100, Ian Hickson <ian@hixie.ch> wrote:

> On Thu, 8 Mar 2007, Charles McCathieNevile wrote:
>> >
>> > Note that the WHATWG version of this draft is in heavy flux; there are
>> > hundreds of outstanding comments on it. Is the intent that this
>> > specification replace the WHATWG version?
>>
>> Hmm. It is intended to be used by a similar audience. There is no
>> compulsion on the WHAT-WG to remove their version at any given time, and
>> maybe keeping it for now would motivate people to actually work on the
>> spec.
>
> Well, the two specs are incompatible (they define the same thing, so any
> differences between the two would be a problem to someone implementing
> both). So eventually, one has to go. I'd assume the intent is to
> eventually drop the WHATWG one, but, well, see my comments about Window.

Hi Ian,

I share your concern. First of all, the current specification is only the  
TCPConnection part from the WHATWG specification with some modifications.  
This was the part of the specification that was closest to mature  
(although there are multiple issues with it that need to be addressed).

Note that the current specification doesn't follow the charter for the  
group and one of these documents would need to be rewritten. According to  
the charter: "Network communication methods covered by this deliverable  
are network sockets and possibly protocols other than HTTP. This allows a  
Web application to perform more networking operations (eg. IRC, other  
instant messaging protocols, Java Message Service and Session Initiation  
Protocol). Also, it may be necessary to produce documentation for, or a  
specification of, connection policy and security."

I'm also a bit concerned that I don't know of browser which has  
implemented the TCPConnection object from the WHATWG specification.

Personally I would rather see the W3C network API become a low level  
socket API with an optional security model/policy. This would also be more  
aligned toward the charter for this group.

With regards to the changes from the WHATWG specification:

- Connection, PeerToPeerConnection and LocalBroadCastConnection interfaces  
are removed including the sections describing these connections
- the network attribute on the TCPConnection interface is removed
- WHATWG doesn't mention any security exception so I have used the  
SECURITY_ERR from WHATWG (which has an open issue on not being defined in  
that spec)
- the source attribute on the ConnectionReadEvent is removed
- WindowHTML is renamed to Window
- a pointer from the TCPConnection to the Window object is added (like on  
XMLHttpRequest)
- "The common protocol for TCP-based connections" is renamed to  
"Communication on the network"
- the part about initializing a connecting in "TCP connections" is moved  
to a new section called "Initializing the TCPConnection object"
- the part about constructing the TCPConnection object in "TCP  
connections" is moved to a new section called "The TCPConnection  
constructor"

--
Cheers,

- Gorm

Received on Thursday, 8 March 2007 11:33:14 UTC