- From: Jin Yu <jyu@openxup.org>
- Date: Sun, 21 May 2006 11:22:28 -0700
- To: "'Robin Berjon'" <robin.berjon@expway.fr>
- Cc: <public-webapi@w3.org>
> 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? I guess XUP got buried into hundreds of W3C Notes. It's indeed hard to sort through them these days. Back then (2002) Dave Raggett reviewed the XUP Note and forwarded it to MMI and XForms working groups, but there weren't enough interest to take any further actions within W3C at that time. Now with the "AJAX" buzz word, rich web user interfaces finally got people's attention. > > 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). Yes, I agree. It's a good idea to separate out the protocol layer. Actually I'm a member of the IETF Widex working group, which is working on the protocol layer for remote UI. > > 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? Actually I consider DOM's event model (capturing / bubbling) to be more complicated than the delegation-based event model found in desktop toolkits such as Swing (event listener) and .NET Windows Forms (event handler). Further, capturing / bubbling works well locally in a client, but not in a networked UI environment where UI events need to be transported over the internet. Having said that, DOM event model is fine if the implementation disables capturing / bubbling; then it is pretty much the same as delegation-based event models. The other thing I want to mention is the terminology used in the REX working draft. It refers to updates to the DOM as "mutation events". I think this is very confusion and it has also been pointed out by Maciej Stachowiak earlier on the list. I would clearly separate out the two concepts: - DOM updates It is the DOM updates which cause the mutation events, so we should call it "DOM updates". In the rich web client context, we should call it "UI updates", which is the term used by XUP and the Widex working group. - UI events These are the UI related events caused by end user actions; e.g. button click, checking a check box, key stokes, etc. This concept is well defined in Widex, but not in REX. In the rich web client context, we shall no longer be limited by HTML DOM events, which were created for page-based applications. A more fluid, desktop-like user interface requires rich UI events, such as those found in Swing, XUL, and XAML. Of course, the event details should be left to the respective XML UI languages (or whatever comes out of Application Formats WG). However, REX should have a "UI event" concept that is extensible and flexible. > > 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. We have built an open source project (<http://www.openxup.org>) on top of XUP. On that web site you can find an implementation prototype as well as some research papers we have published. In addition, the version 2 of XUP spec is available at <http://www.openxup.org/TR/xup/>. It contains numerous improvements to the original W3C XUP Note. I'd very much like to work on REX. But unfortunately Martsoft is no longer a W3C member and the OpenXUP project doesn't have the funding to join W3C. So in the near term I can only participate in REX-related discussions on the public list. Regards, Jin ________________________________________ Jin Yu OpenXUP.org
Received on Monday, 22 May 2006 11:04:55 UTC