I've got a DTML method that looks like this: Id: checksession <code> <dtml-if "FSSession.has_key('session')"> <dtml-return "1"> <dtml-else> <dtml-return "0"> </dtml-if> </code> Then a DTML Document: Id: index_html <code> <dtml-call FSSession> <dtml-if checksession> COOL! <dtml-else> Not so cool buddy </dtml-if> </code> This now works fine and the DTML Method (checksession) has FSSession in it's stacks thanks to index_html calling it as you should do. The problem is when I call checksession like a python expression. This fails: Id: index_html <code> <dtml-call FSSession> <dtml-if "checksession()"> COOL! <dtml-else> Not so cool buddy </dtml-if> </code> It in the latter case fails to find the FSSession object. In the above example, it looks easy to fix, but in reality it's a bit more complicated. What's the difference between <dtml-call someDTMLMethod_dtml> and <dtml-call "someDTMLMethod_dtml()"> ??