AttributeCol attr = new AttributeCol();
attr.attr = "salience";
attr.defaultValue = "66";
dt.attributeCols.add( attr );
ConditionCol con = new ConditionCol();
con.boundName = "f1";
con.constraintValueType = BaseSingleFieldConstraint.TYPE_LITERAL;
con.factField = "age";
con.factType = "Driver";
con.header = "Driver f1 age";
con.operator = "==";
dt.conditionCols.add( con );
ConditionCol con2 = new ConditionCol();
con2.boundName = "f2";
con2.constraintValueType = BaseSingleFieldConstraint.TYPE_LITERAL;
con2.factField = "name";
con2.factType = "Person";
con2.header = "Person f2 name";
con2.operator = "==";
dt.conditionCols.add( con2 );
ConditionCol con3 = new ConditionCol();
con3.boundName = "f1";
con3.constraintValueType = BaseSingleFieldConstraint.TYPE_RET_VALUE;
con3.factField = "rating";
con3.factType = "Driver";
con3.header = "Driver rating";
con3.operator = "==";
dt.conditionCols.add( con3 );
ConditionCol con4 = new ConditionCol();
con4.boundName = "f2";
con4.constraintValueType = BaseSingleFieldConstraint.TYPE_PREDICATE;
con4.factType = "Person";
con4.header = "Person f2 not needed";
con4.factField = "(not needed)";