[gwp] [ARCHIVAL] Re: GWP and XML

Daniel Veillard (Daniel.Veillard@w3.org)
Wed, 21 Oct 1998 13:50:39 -0400

I resend this message for archival purposes, sorry for the
people who already got it. BTW, there is now 6 persons on this list.

I also started reformatting the comments of the gnome-xml library
to follow the conventions proposed by Miguel, this mean that hopefully
people using the library will have a good description of the interfaces.
The documentation is otherwise nearly inexistant.

Concerning GWP, I was wondering if it was possible to get the
inner document handling core DOM alike ? The pointers are in the archive.
The nice thing about DOM is that it will ease developping plugin
manipulating the live document. I know that GWP has already existing
APIs for this kind of things, I'm just wondering if the model are so
much different that doing a DOM interface would be too difficult or
useless.

Daniel

----- Forwarded message from Daniel Veillard <Daniel.Veillard@w3.org> -----

Date: Thu, 15 Oct 1998 18:37:23 -0400
From: Daniel Veillard <Daniel.Veillard@w3.org>
To: "J. Patrick Narkinsky" <patrick@narkinsky.ml.org>,
Seth Alves <alves@hungry.com>
Cc: Dill <dill2@netscape.net>, Daniel.Veillard@w3.org, toshok@hungry.com
Subject: Re: GWP and XML
Reply-To: Daniel.Veillard@w3.org
X-Mailer: Mutt 0.93
Organization: World Wide Web Consortium (W3C http://www.w3.org/)

> > so xsl --> xml as dsssl --> sgml ?
> >
>
> Exactly. Although I should clarify that you CAN use dsssl (and CSS) with
> XML apparently, although I've never tried it.

Well CSS should work with XML, if not that means that your application
don't support CSS. There is nothing which prevents from using CSS with XML,
just the opposite, that's simple (well somewhat) and clean.

> Daniel? I suspect that you grok XSL much better than I.

Humm, not that much actually,

> However, never having been found without an opinion, I suspect that you
> could at least make a partial implementation work with eye towards making
> it complete later. I've had a hard time figuring out all the formatting
> details of XSL -- the documents are still a bit sketchy with a lot of
> "This works just like the same parameter in CSS/DSSSL".

I really think that people should leave the XSL group finish it's spec
quietly before jumping into that train rolling full speed ! Having worked
on CSS implementation during the working draft lifetime, and changing my
code in incompatible way all year long wasn't pleasant. Moreover XSL add
document structures manipulation which isn't trivial to implement if you
don't have an internal structure mechanism close to something like DOM.
I guess the point which is clear is that for the formating and displaying
properties, XSL will be as close to CSS as possible. So I really think that
going first to a CSS implementation (if you want) and then add the
extra manipulation stuff to build an XSL implementation once stable is
a far better plan than trying to go directly to XSL.
Now for the implementation, I already (as I mentionned before) worked
on a CSS implementation, so I have a somewhat decent idea on how to
implement it, but I not very warm doing it. I'm currently focusing on the
XML and DOM support and I would rather help than code (moreover the
implementation is usually extremely dependant on the rendering engine used
so someone working on the display part of GWP would probably be far more
efficient than me).
Here is what I think is a good batle plan to implement CSS first:

1/ I would say that the first step is to make sure that you have enought
power in your formatting engine to support the formatting model of CSS

http://www.w3.org/TR/REC-CSS2/box.html

and provide a layer to make it simple to code on top of it. This will be
reused probably "as if" for a XSL implementation. That's the first serious
part of code.

2/ Then building a CSS spec parser is the second step. Not too difficult
and can be done by someone not really aware of GWP internals.

3/ Building a formating engine taking into account structure and cascading
is non-trivial, that's the second serious part of the code.

http://www.w3.org/TR/REC-CSS2/cascade.html

4/ Add progressively the support for the multiple formating properties
of CSS, starting with the one you already support and adding lacking ones
in the library designed at (1). That's the kind of job that best done
collectively every one adding a couple more feature in his spare time.

Once done, you will have a good idea of how to deal with a static structure
and the code needed for 80% of the implementation of the XSL rendering.
Supporting XSL will be a matter of more XML parsing to decode XSL and
the dynamic structure manipulation of the document.

BTW the people at Mozilla/Netscape are going the same path, you can
probably do some code reuse if the license doesn't conflict (at least
look at their CSS code)
http://www.mozilla.org/newlayout/overview.html

Yes, I know giving direction without directly contributing sucks,
I'm ready to help on the design, but I'm really too short on time to take
the plunge, I want full XML and DOM before anything else. But having a
gnome formatting engine for CSS (and XSL) at the end too would be marvelous,

Daniel

-- 
Daniel.Veillard@w3.org | W3C  MIT/LCS  NE43-344  | Today's Bookmarks :
Tel : +1 617 253 5884  | 545 Technology Square   | Linux, WWW, rpm2html,
Fax : +1 617 258 5999  | Cambridge, MA 02139 USA | badminton, Kaffe,
http://www.w3.org/People/W3Cpeople.html#Veillard | HTTP-NG and Amaya.

---- Mailing-list gwp@rufus.w3.org To unsubscribe: echo "unsubscribe gwp" | mail majordomo@rufus.w3.org