Hi,

On Feb 12, 2006, at 23:05, Jin Yu wrote:
I just went through the REX working draft. It's very interesting and I
believe this is essential for a richer and more interactive web. In the draft, I did not find any reference to XUP, which is very similar in nature;
so I just want to bring it up to share with you.

That's my fault. When I started looking at similar solutions existing elsewhere to see if the need had already been addressed, I looked in many places... but not W3C! XUP looks like a very nice start for a specification, it's a shame that while W3C accepted your Member Submission (back then called "Notes") but that it was not put on the Recommendation track by a WG. Do you know why that was the case?

In XUP, UI updates are the same as mutation events in REX's terminology. Basically, UI updates are just remote DOM manipulations (add, remove, update
elements, etc.) of a UI model, which is a DOM instance of an XML UI
language. In XUP, the UI updates are bi-directional. That is, the user agent sends UI updates to server, containing end user's direct manipulations as well as the UI changes made by scripts; and the server sends UI updates to
the user agent, containing server-side application's changes to the UI
model.

This can be done in REX as well: there is no assumption that the communication is only unidirectional (although that mode is supported since it's a strong requirement). If there are intended request/ response semantics, they are expected to be at the protocol binding layer (so for instance if someone made a SOAP binding for REX, I would expect it to have some strong similarities with XUP).

In addition, XUP supports multiple event models. It supports DOM-style
capture / bubbling events, as well as Java Swing-style delegation- based
events.

For REX we decided to only support DOM Events as that is simpler and is more likely to integrate well with the event infrastructure used by many W3C UI technologies. Can you think of specific things that could not be done by using only this model?

The major difference with REX is that XUP is a protocol, and it has a SOAP binding. The SOAP binding is not critical; in fact XUP could be used with
other transport mechanisms as well.

Right, REX is meant to be a "pluggable" piece of technology, to be reused in a variety of situations. Proposals have already been made to integrate it with streaming protocols, with BEEP, and with HTTP. No one has yet suggested providing a SOAP binding for it, but I would expect that to be straightforward enough. The precise reason why it isn't a protocol is because when we started we already knew that people wanted to use it both in broadcasting and in request/response scenarios.

I hope XUP will be a useful reference material for this WG.

It definitely is, thank you very much. In fact, we intend to "steal" some of its features at some point :) Of notable interest are session initiation (for protocol bindings) and listener manipulation.

Thanks a lot!

--
Robin Berjon
   Senior Research Scientist
   Expway, http://expway.com/



Reply via email to