[Zope3-dev] ZopeTop, xul, etc.
Martijn Faassen
faassen@vet.uu.nl
Sat, 7 Dec 2002 00:30:12 +0100
Philippe Jadin wrote:
> [first posted on zope main mailing list, someone told me to post it
> here, sorry for the "cross post"]
>
> It seems there is currently work done on the future UI for zope3. I have
> some questions / comments on this
>
> - Isn't it strange to use html to create a modular user interface? As I
> see it, html is not an UI definition language.
Since Zope 3 is still primarily designed as a web application platform,
we will end up using HTML to create user interfaces. It makes sense to
do this for the Zope 3 user interface as well.
Modern HTML is not too bad for constructing UIs. HTML browsers are really
ubiquitous. There's a lot to say for HTML.
> - is there currently active projects to build a fat client interface for
> zope using xul or other technology?
No. Lots of talk in the past but no currently active project that I am
aware of. There's always been a lot of interest in this, but it hasn't
yet materialized. It shouldn't be that hard to accomplish with Zope 3,
but it is still a significant project to take on.
> If html is not the right tool for the job, and if xul is really as good
> as it seems :
>
> - zope should use an intermediate layer between the core logic /
> datastructures and the UI. This layer could be something like xul
Zope has a framework that separate views from the core logic; this is part
of the component architecture. Since most of us know HTML we're focusing on
providing 'browser' (HTML + CSS + Javascript etc) views for Zope 3 first.
This is the fastest way to get to something useful. Nothing is stopping
anyone from creating a XUL layer right now, though, as far as I'm aware.
I think creating a cross-browser HTML-based UI is easier and also more
important right now; everybody has a web browser, but not everybody runs
Mozilla.
> - xul is xml, and as such could be "converted" to xhtml. The conversion
> would reduce a lot the usability (you cannot do everything xul does with
> html), but at least there would be a single source of UI definition and
> multiple implementations (simple html, "flashy" dhtml, pure mozilla xul,
> etc...).
This is a very complicated project, unless there is always such a conversion
filter somewhere. You are proposing another abstraction layer and a
set of transformations from that to all kinds of front ends. Adding
abstraction layers by itself is pretty hard, and it seems unnecessary here.
> - xul can be used directely in mozilla, providing a very powerfull
> client-side interface. I think it can be seen as a rapid interface
> developement tool.
>
> In short,
>
> zope core -> "html ui" is not too good
> zope core -> "something" -> html would be more modular.
>
> the "something" could be xul... or wathever, the point is "there must be
> something" :)
>
> What do you think?
As described above, I think it's best to focus on a browser (HTML + CSS +
Javascript) UI first, for reasons of:
* such browsers are really common.
* Modern HTML can be made to be clean and modular to a large extent.
* we know we can do it (we are already doing it).
* we have a lot of knowledge about the topic.
That said, go ahead with XUL if you think we should do it.
By the way, I think on the wiki and mailing list archives there are already
discussions of these topics, though I may be mistaken. It may be a good idea
to do a search.
Regards,
Martijn