You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by Jason Foster <ja...@engmail.uwaterloo.ca> on 2001/04/19 17:21:59 UTC

Conceptual Help (was "Script Action")

G'Day all,

A day or so ago I suggested that a ScriptAction might be a good idea.  I've
had no free cycles for the last few days, but was planning on putting
something together on the weekend.  However in the interim I have been
trying to understand Cocoon's role in the web universe.  I have collected my
impressions here and was hoping for some feedback.  If this isn't relevant,
than I apologise for wasting bandwidth.

----------

The current "best practice" for creating a web page is to use a combination
of XHTML and CSS where the content is embedded in the XHTML and the
presentation is embedded in the CSS.

The document is identified by a meaningful URI (MURI).  A meaningful URI is
one that adheres to some properties that I will discuss in a minute.  The
important point is to distinguish between meaningful URIs and "utility" URIs
(UURI).

The MURI is expected to link in the appropriate CSS by UURI.

The server is expected to deliver the XHTML and CSS files without changes.
The browser is expected to synthesize the web page from the XHTML and CSS
files.

   MURI - XHTML ---+
                   +----> rendered document
   UURI - CSS -----+

The ideal new model is something like the following:

   MURI - XML ----+
                  +----> XSL:FO ---> rendered document
   UURI - XSLT ---+

Given that browser technology is a little lacking on the XSL:FO front, this
model has been altered slightly to allow for more server-side processing.

   MURI - XML ----+
                  +----> XHTML ---+
   UURI - XSLT ---+               +----> rendered document
   UURI - CSS --------------------+

What would be extra wonderful is to have a way of going from XSL:FO to
XHTML.  This would allow the browser to offload processing from the server.

   MURI - XML ----+
                  +----> XSL:FO ---+
   UURI - XSLT ---+                +--- XHTML ---+
   UURI - XSLT --------------------+             +----> rendered document
   UURI - CSS -----------------------------------+

The last stage is to bring in more flexibility.  We keep XML as the common
underpinning, but we abstract some of the roles.

  MURI - Generator 
             +--Transformer(s)
                    +--Serializer
                           +--Renderer ---> rendered document

The key point here is that there is exactly and always *one meaningful URI*.
The user has a single point of entry which locates all of the other pieces.

So now we want to generalize this to support the modern concept of a Web
Application.  This leads to the question of what are the assumptions
underlying a WebApp?  It also leads to the question of what is a MURI?

Stay tuned for my attempt to answer this question, and to then link it in to
the idea of scripted or XSP actions.

Jason Foster


---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
For additional commands, email: cocoon-dev-help@xml.apache.org