Re: WWW Support Questions

Bert Bos (
Mon, 9 May 1994 21:16:07 +0100 (METDST)

Daniel W. Connolly writes:

[lots of good stuff deleted...]

| And if we are to evolve HTML technology from its current
| very-useful-but-far-from-sufficient state, we MUST apply
| more formal methods to abstract the essential techinques
| from the various applications. I suggest we take a serious
| look at the architectural-form techniques from the HyTime
| standard development, and develop (1) a set of WWW
| architectural forms for linking and navigation, and
| (2) a stylesheet mechanism so that the WWW linking and
| navigation techniques can be applied to a variety of SGML
| DTDs.
|Whew! I needed that!

Hear! Hear!

I support this view wholeheartedly. Indeed, this is the subject of the
<A HREF=""> WWW'94 workshop</A>
that I propose to organize. We need to reach enough consensus on this
topic that we can start a coordinated development effort.

Architectural forms are nice, I even wrote an HTML meta-DTD some time
ago (on paper, and I've thrown it away), but eventually I decided that
they have too many disadvantages compared to stylesheets. Unless we
have access to so many resources that we have development capacity to
spare, I think we should focus on style sheets first.

HyTime itself is much too complex for us at the present time, maybe in
five years time it will be feasible. HyTime-like Architectural Forms
have the advantage that they are pure SGML, but the disadvantage that
they are difficult to understand and that SGML doesn't seem to be a
very convenient language for writing programs in. Stylesheets can be
written in better languages.

Although I hate Lisp, I think the Scheme-based DSSSL (currently an ISO
draft standard, I believe) is the best bet when it comes to defining
the tree-transformations that define the on-screen/on-paper
representation of an SGML element. I'm waiting for the first WWW
browser with an embedded Scheme interpreter!

Surprisingly, a stylesheet in Scheme would work in exactly the
opposite way from previously proposed stylesheet mechanisms. Simple
stylesheets are `document-driven': they define for each SGML element
how it would be rendered. A formatter would read a document as a
stream and apply a style to each element it encounters.

A stylesheet in Scheme is very different: a formatter would read the
style and *execute* it as a Scheme program. The document is treated
as a database from which the Scheme program can retrieve elements,
in any order, even more than once or not at all.


                    / _   Bert Bos <>   |
           ()       |/ \  Alfa-informatica,            |
            \       |\_/  Rijksuniversiteit Groningen  |
             \_____/|     Postbus 716                  |
                    |     9700 AS GRONINGEN            |
                    |     Nederland                    |
                    | |