On 2/27/06, Irv Salisbury <[EMAIL PROTECTED]> 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