I'm having trouble with what must be a namespace issue involving python, DTML and ZClasses. Using Zope 2.6: I'm working on a ZClass designed to allow for the easy creation of a web-based survey system. My "Question" ZClass is defined in a product in the Zope products directory. Within each instance of the Question ZClass (which are folderish) there is a dtml document called FormPiece (created by the Question Class constructor) that includes a small snippet of html and dtml. The html is form inputs which get their name value from a dtml-var tag that calls a python-script method. That python-script method is defined in the Question Class itself. If I view the FormPiece item itself from the management interface, it all works fine and the python-script is found and works as intended. Problems arise when I am calling the FormPiece in a different way... When I call another python-script, named "ReturnFormItem" that is a method of the Question Class on one of the Question Class objects an error is generated... Here are the contents of the ReturnFormItem: ############### print "<!-- My Sql id is: " + `context.ReturnSQLId()` + "-->" print context.FormPiece() Return printed ############### Now, when this script method is called on one of the Question Class instances, this returns a key error because FormPiece contains a dtml-var tag call to the method "ReturnSQLId" which is a method of the Question Class. Interestingly, though, the call to the same ReturnSQLId method in the ReturnFormItem script works fine. So it seems to me that by calling context.FormPiece() and then trying to call the ReturnSQLId inside the FormPiece document is being called without the "normal" namespace... Correct? If that is the case, how do I get the call to context.FormPiece() to use the same namespace as if I were calling FormPiece directly, such as from a URL? Or am I completely confused about all this? Thanks is advance, -Ted