This answer is great! I guess the thing that puts me off about all the dtml/python stuff is the syntax of stuff I've never really seen in another programming language: an underscore then a dot to start the function off. I find that to be very strange.
For what I presume to be security reasons, DTML doesn't have access to the Python built-ins. Instead it uses a number of DTML functions which live in the DTML namespace (thus the underscore notation). You can see these at http://www.zope.org/Members/michel/ZB/AppendixA.dtml in the 'functions' section, as well as in your friendly Zope Help DTML reference. Granted this is a rather curious way of accessing its built-in functions. It should encourage you (nudge nudge) to work more with Python Scripts (which are much more like the Python we know and love). --jcc (definitely love) -- "It is concluded. Banquo, thy soul's flight, If it find heaven, must find it out tonight." http://jccooper.brown.rice.edu/