- From: Joakim Söderberg <joakim.soderberg@ericsson.com>
- Date: Thu, 27 Sep 2012 10:12:54 +0200
- To: Tim Berners-Lee <timbl@w3.org>
- CC: "public-media-annotation@w3.org" <public-media-annotation@w3.org>, TAG List <www-tag@w3.org>
- Message-ID: <F489797A-73AD-417F-A1C7-A768565BFBD4@ericsson.com>
Hi Tim, Thank you for the valuable input. First of all we will clarify the definitions of client-only and client-server, but the big question is of course how to deal with the two modes. The WG will discuss this in the coming weeks. At this point I would also like to reach out to the TAG team for advice if you had a similar problem? /JS who has followed our work and has On 25 Sep 2012, at 16:11, Tim Berners-Lee wrote: > > I'm Ccing www-tag as there is a general question about what > people mean by features and what we should aim for in terms > of interop. > > The question in debate is whether Media Resources is ready to > come out of CR, without two implementations of each version > of its API, sync and async. > >> From: Joakim Söderberg <joakim.soderberg@ericsson.com> >> To: Philippe Le Hegaret <plh@w3.org> >> Cc: public-media-annotation@w3.org <public-media-annotation@w3.org> >> Subject: API for Media Resources 1.0 >> Date: Mon, 27 Aug 2012 12:52:32 +0200 >> >> Dear Philippe, >> Here is the WG response to your questions. >> >> a) Availability of the code: >> All implementations are open source projects. LMF is hosted at Github, the >> browser extension can be downloaded at the prototype page (the dpi includes >> the source files and can be extracted similar to a ZIP file). The third >> implementation (web service) can be downloaded at source forge. >> >> >> b) Usage of the API >> Find included two papers that explain the implementations. They should give >> the needed details for the browser extension and the server side >> implementation. The code pieces of the API will soon be available in the LMF >> branch at Github (maybe with the next major release). Currently it can be >> found here: >> >> >> https://svn.salzburgresearch.at/svn/lmf-media/ >> >> >> This project needs the complete LMF as dependency. That´s why it seems to be >> a little bit "tiny". >> >> >> c) number of implementations >> This was discussed, that we do not see the sync and the async mode as >> separate features. > > Let me understand what your mean by that. > > You can't have your cake and eat it. > If they are not separate features, then every implementation implements both. > A client can chose which or a combination of them which it uses, and works > in either case. > > If servers sometimes implement one without the other, then of course > interop is much reduced. (Unless every client is written to work with either). > You have really two smaller specs which may > or may not be each implemented by various servers. > You have to effectively show that each spec contributes usefully > to the interop in the world, and the typical way is to show at least two > interoperable implementations. > > > >> We have the following paragraph in the status section of >> the API doc: “The API is designed for both client- and server side >> implementations. > > Not clear just from that text what it means. To me, client-side means it > runs e.g. within the page or an extension, > and server side means it runs within a server. > In either case we are talking about local calls, not remote procedure call. > > Client-server implementations are a third category, and and as they involve > network communication, in an event-driven callback environment, > making them async is important, so that calling code does not hang. > >> Depending on whether the API is implemented in a user agent >> or plugin, or as a web service, different communication patterns are more >> appropriate. > > "Communication patterns"? API design or networ protocol? > >> In the client side case, asynchronous access is typically >> preferred, while synchronous access is more appropriate for a web service. > > This is the reverse of what I would have thought, assuming client-side > means local to the client, and 'web service' means a remote call > over the network. I assume the words are being used differently, > "client-side" meaning client-server, and "web service" meaning server-local maybe? > >> Thus the two version of the interface are not considered distinct features >> but different modes of access for the different use cases.” > > > Different modes of access to the same implementation? > No, I gather not -- these are two quite incompatible APIs. > Not because they don't look similar in their parameters, > but because because if you need one and you have the > other, your code doesn't work. > > Interop means basically that if you have two products, one > says on its box "Needs x" and the other says on its box > "Provides x" and you install both, things work. > > Currently, this works with x as MR1.0-async or MR1.0-sync > but not x as MR1.0. > > In this case, you have to distinguish on the box whether > it is sync or async. If that is the case, then you have to be > up-front about it, the spec defines two APIs. you need to test both, > and ideally for each show 2 interoperable implementations. > > Tim > (Not with director decision hat on, just thinkin'). > >> >> >> >> >>
Attachments
- application/pkcs7-signature attachment: smime.p7s
Received on Thursday, 27 September 2012 08:20:31 UTC