cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Peter Hunsberger" <peter.hunsber...@gmail.com>
Subject Re: [CRAZY IDEA] sitemaps in javascript
Date Tue, 28 Feb 2006 15:23:33 GMT
On 2/27/06, Irv Salisbury <irv.salisbury@gmail.com> wrote:
> I have to admit that the cocoon sitemaps we use for our projects have gotten
> out of hand.  If a new person started working on it, they would need a
> sitemap for the sitemaps.  Because of the common stuff we want to do across
> projects, we actually start with sitemap xml snippets that we include with
> DTD includes.  (Yes I know it is ugly but the best we could come up with for
> common sitemap stuff without true includes)

I've just got to ask why you've got such a large amount of stuff going
into the sitemap?  Is there no back end database that can be used for
configuration data once you've got the basic flow mapped out?

We tend to use the sitemap at a very high level, only _major_
constructs have their own entries and these serve as generic entry
points for the finer grained subcomponents based on them.  This way,
even without a back end database you can avoid having to configure
everything in the sitemap.  For example, we may have a matcher on
things like:

foo/*.display
foo/*.edit
foo/*.list
foo/*.grid

where display, edit, list and grid are main screen types.  A generic
generator then picks up the wild card pattern and uses it to
effectively pick subclasses for these types (not necessarily
literally, but you should get the idea?).  Normal query parameters or
whatever then do specific page selection and configure the resultant
page more precisely.

In our case we're currently have 12 or so generators that build 1000's
of different screens.  The main reason for even having this many
generators is that they map to major orthogonal slices of the
application (eg. validation, or page generation, or system wide data
or authentication data) that have very different usage and caching
patterns.  In theory we'll eventually cut this number in half as we
find the more general patterns of usage.  We have 3 action handlers,
one of which is used just for parameter forwarding, one for
authentication and one for everything else...  There's a single
reader, a couple of modules, and 30 or so XSLT.  We've still got a
1000 line sitemap, but probably about a 1/4 of that is for testing
purposes and another 1/4 of it can eventually disappear as we refine
things even further.

<snip/>

--
Peter Hunsberger

Mime
View raw message