function logValues()
{var buffer="";for(var id in eform.models)
{buffer=buffer+eform.models[id].toString()+"  :  "+eform.models[id].getValue()+"\n";}
return buffer;}
function logModels()
{var buffer="";for(var id in eform.models)
{buffer=buffer+logModel(id)+"\n";}
return buffer;}
function logModel(id)
{var buffer=id+" [\n";var model=eform.models[id];var first=true;for(p in model)
{if(p.indexOf("get")==0)
{buffer=buffer+(first?"\t":",\n\t");buffer=buffer+""+p+" : "+eval("model."+p+"()");first=false;}}
buffer=buffer+"\n]"
return buffer;}
function logViews()
{var buffer="";for(var id in eform.views)
{buffer=buffer+logView(id)+"\n";}
return buffer;}
function logView(id)
{var buffer=id+" [\n";var view=eform.views[id];var first=true;for(p in view)
{if(p.indexOf("get")==0)
{buffer=buffer+(first?"\t":",\n\t");buffer=buffer+""+p+" : "+eval("view."+p+"()");first=false;}}
buffer=buffer+"\n]"
return buffer;}
function logEval(expression)
{return eform.evaluator.evaluate(expression);}