[XML-SIG] Python / XML / XSLT vs. Cocoon for website server side

Torsten Rueger torsten.rueger at hiit.fi
Fri Aug 15 13:03:16 EDT 2003

I don't know about Zope and many of the other technologies you mention.
But I have built three bigger applications (40-70 dynamic pages, 20-30 
posts) with the approach I'll outline, and it has worked very well.

>  Cheetah?

That's the way to go. You'll have easy to understand templates, I've 
even had graphic designers create them. They can learn the concepts of 
a simple syntax like that easily (couple of days). After that it 
becomes a matter of documenting your classes and making the api public 
to the designers. I mean the classes you make available to the 
templates, often called Business logic or application model.

So you use an object model between your gui (templates) and your 
database. Working without such an object model , which often is the XML 
way, becomes messy.
Then you can use XML as a storage technology, if you want to. That's 
what I find XML is good for. But you can use YAML or RDBMS, or as I 
prefer an OODBMS (specifically I prefer the lightweight versions such 
as DyBase http://www.garret.ru/~knizhnik/dybase.html).

If you want to use XML - DB, I'll just chip in that we're currently 
using Sleepycat from python and that works ok. Even it is a bit big and 
difficult to install.

On the topic of porting, I would estimate that you would off course 
have to write all code again. but that should be straightforward. But 
the templates should be much less work, as Java has both WebMacro and 
Velocity with very similar syntax to Cheetah (not by chance as cheetah 
is  WebMacro inspired).

Comparing this approach to my (limited) XML/XSLT experience:
Templates: easier to write and much easier to maintain
Business/Application logic: In the object model where it belongs vs 
spread out all over the place
Gui Logic: Much cleaner separation.
Total effort: Half or one third.

just another 2 pence


More information about the XML-SIG mailing list