1) testroot (at the root folder): <dtml-var "input.test1()">
try : <dtml-var "input.test1"> or : <dtml-with input> <dtml-var test1> </dtml-with> Both ought to work...
2) test1(at the 'input' folder): <dtml-var test2> Note: I tried to add quotes and parenthesis but it made no difference here. I also tried to fully qualify the variable, making it 'intput.test2' because I thought that maybe it was evaluating it from the perspective of the caller, which is in the root folder. But this did not work either.
<dtml-var test2> should work here.. It is in test1 the error lies.. I am not even remotely programmer-ish , but AFAIK the () that you used in test1 is used to tell python to evaluate a function or something (please correct me if i am wrong) , which is not what you want.. I