If I create a DTML method called 'method' containing only: <dtml-if 'method'> There is always true </dtml-if> I get: Error Type: SystemError Error Value: infinite recursion in document template Surely it should just always be true and so should evaluate as such without infinitely recursing? Chris PS: traceback ;-) Traceback (innermost last): File *zope path*/lib/python/ZPublisher/Publish.py, line 214, in publish_module File *zope path*/lib/python/ZPublisher/Publish.py, line 179, in publish File *zope path*/lib/python/Zope/__init__.py, line 202, in zpublisher_exception_hook (Object: ApplicationDefaultPermissions) File *zope path*/lib/python/ZPublisher/Publish.py, line 165, in publish File *zope path*/lib/python/ZPublisher/mapply.py, line 160, in mapply (Object: account) File *zope path*/lib/python/ZPublisher/Publish.py, line 102, in call_object (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 150, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) File *zope path*/lib/python/OFS/DTMLMethod.py, line 146, in __call__ (Object: account) File *zope path*/lib/python/DocumentTemplate/DT_String.py, line 502, in __call__ (Object: account) SystemError: (see above)