sfc0p0.setOperator( "==" );
sfc0p0.setValue( "sfc0p0Value" );
fp0.addConstraint( sfc0p0 );
ExpressionFormLine efl0sfc0p0 = new ExpressionFormLine();
ExpressionField ef0sfc0p0 = new ExpressionField( "sfc0p0",
"sfc0p0class",
SuggestionCompletionEngine.TYPE_STRING );
efl0sfc0p0.appendPart( ef0sfc0p0 );
sfc0p0.setExpressionLeftSide( efl0sfc0p0 );
SingleFieldConstraintEBLeftSide sfc1p0 = new SingleFieldConstraintEBLeftSide();
sfc1p0.setConstraintValueType( BaseSingleFieldConstraint.TYPE_TEMPLATE );
sfc1p0.setOperator( "==" );
sfc1p0.setValue( "sfc1p0Value" );
fp0.addConstraint( sfc1p0 );
ExpressionFormLine efl0sfc1p0 = new ExpressionFormLine();
ExpressionField ef0sfc1p0 = new ExpressionField( "sfc1p0",
"sfc1p0class",
SuggestionCompletionEngine.TYPE_STRING );
efl0sfc1p0.appendPart( ef0sfc1p0 );
sfc1p0.setExpressionLeftSide( efl0sfc1p0 );
model.lhs[0] = fp0;
//One field is a Template Key the other is a literal
FactPattern fp1 = new FactPattern();
fp1.setFactType( "FT1" );
SingleFieldConstraintEBLeftSide sfc0p1 = new SingleFieldConstraintEBLeftSide();
sfc0p1.setConstraintValueType( BaseSingleFieldConstraint.TYPE_TEMPLATE );
sfc0p1.setOperator( "==" );
sfc0p1.setValue( "sfc0p1Value" );
fp1.addConstraint( sfc0p1 );
ExpressionFormLine efl0sfc0p1 = new ExpressionFormLine();
ExpressionField ef0sfc0p1 = new ExpressionField( "sfc0p1",
"sfc0p1class",
SuggestionCompletionEngine.TYPE_STRING );
efl0sfc0p1.appendPart( ef0sfc0p1 );
sfc0p1.setExpressionLeftSide( efl0sfc0p1 );
SingleFieldConstraintEBLeftSide sfc1p1 = new SingleFieldConstraintEBLeftSide();
sfc1p1.setConstraintValueType( BaseSingleFieldConstraint.TYPE_LITERAL );
sfc1p1.setOperator( "==" );
sfc1p1.setValue( "sfc1p1Value" );
fp1.addConstraint( sfc1p1 );
ExpressionFormLine efl0sfc1p1 = new ExpressionFormLine();
ExpressionField ef0sfc1p1 = new ExpressionField( "sfc1p1",
"sfc1p1class",
SuggestionCompletionEngine.TYPE_STRING );
efl0sfc1p1.appendPart( ef0sfc1p1 );
sfc1p1.setExpressionLeftSide( efl0sfc1p1 );