[whatwg] XUL, richness, & XForms (was : Re: Weblogs /Newsreader as web app workflow example ...)

Bill McCoy bmccoy at adobe.com
Sun Jan 9 13:33:54 PST 2005


Dave,

Yes I greatly admire XUL and Firefox has become my home browser and is in
danger of becoming my work browser so I accept that it's
industrial-strength. For widgets & layout of GUI chrome, XUL is clearly a
reasonable approach. And a pure XForms+SVG implementation would lack that
layer of widget-level markup and associating formatting capabilities
(springs/struts etc.). You need dynamic layouts not just fixed-format which
is SVG's forte. And you need more than generic controls like <xf:select1>.

I've never written more than toy XUL programs, so I greatly  hesitate to
comment on XUL, especially to you Dave. But FWIW I believe XUL has suffered
from not having a rich imaging model underneath it, so despite innovating
XBL and the "shadow tree" concept, and receiving the flattery of imitation
by Flash Flex, XAML, and others, XUL itself was/is a bit constrained, e.g.
in terms of what custom widgets can be created within the architecture (vs.
natively). SVG/sXBL could fix this part. XUL also suffers from not having a
strong built-in way to reference and bind from presentation layer to XML
data models, and to define constraints on the data models rather than at the
presentation level, in order to foster creation of declarative model-view
solutions. XForms fixes this and I believe there's no conflict that would
impair richness of XUL in combination (I believe David Birbeck has a version
of formsPlayer that is based on XUL skins). XForms is not a complete
solution, it's intended to be embedded in a hosting markup, and the
intention is that abstract widgets like <xf:select1> could have styling
performed on them to specify as rich a visualization as an author could
want, including selection of a preferred concrete (XUL-style) widget
instantiation. Because styling is dependent on the host language this is not
spec'd in XForms itself, but this is certainly the vision.

There are some other "interesting" characteristics of original XUL, like the
ways it uses RDF and to some extent particulars of its integration with CSS,
but it is a pioneering technology and rough edges are natural. The term
"XUL" is, interestingly, starting to be genericized to refer to any "XML
User Interface Language" even things like XForms and XAML (e.g.
xulplanet.org's "XUL Grand Coding Challenge" included many solutions that
were not XUL compatible at all). In that spirit it would seem interesting to
consider creating a "XUL 2.0" (much more so than further Street HTML
bolt-ons for desktop apps). Even though it might not end up strictly XUL 1.0
compatible that doesn't seem to be a big issue (XUL 1.0 barring a few
experimental efforts is basically used for Mozilla-based browser chrome not
full-scale standalone apps). And, per other posts, make such a XUL 2.0 a
real open standard not just a single-browser technology. But, again, such a
XUL 2.0 should IMO either integrate or be complementary to SVG for
declarative imaging model richness and XForms for declarative data model
richness. Pursuing this of course would help head off over-complexification
of SVG by people trying to make *it* into a complete app environment
(bolting-on to Street HTML isn't the only idea I personally have a hard time
getting on board with).

And while we people may denigrate the device independence / multi-modality
that the model-view separation of XForms fosters, it is a reality that
global enterprises are increasingly specifying that solutions be mobilized
and accessible. 

--Bill 

-----Original Message-----
From: David Hyatt [mailto:hyatt at apple.com] 
Sent: Sunday, January 09, 2005 12:25 PM
To: Bill McCoy
Cc: 'J. Graham'; whatwg at whatwg.org; 'James Graham'; 'Henri Sivonen'
Subject: Re: Weblogs /Newsreader as web app workflow example (was
RE:[whatwg] Web Forms 2.0 - what does it extend , definition of same,
relation to XForms, implementation reqs.)

Bill McCoy wrote:

>With XML technologies like XForms and SVG, one could imagine building a 
>client for news reading (even for editing/managing/HTML-publishing) 
>that would be portable across a set of adopting user agents but provide 
>the visual richness and offline usability of a native client app. And 
>the complexity level of devloping such a declarative solution could be 
>much lower than a PHP+MySQL weblog system, much less developing a 
>native app like AmphetaDesk and porting to every platform. The only 
>steps towards this today is Flash-based solutions which are proprietary 
>and built on a "stage and timeline" architecture not really suitable 
>for apps. And, again, XAML is coming.
>  
>
There are other steps.  Specifically XUL. What do you think Firefox is
written in?  Personally I think XUL is far better for building desktop apps
than any XForms + SVG solution (e.g., XForms is constrained from really
bringing richness to the desktop by the desire to remain
device-independent).

dave
(hyatt at apple.com)





More information about the whatwg mailing list