con5.setConstraintValueType( SingleFieldConstraint.TYPE_LITERAL );
fp5.addConstraint( con5 );
m.addLhsItem( fp5 );
ActionExecuteWorkItem awi = new ActionExecuteWorkItem();
PortableWorkDefinition pwd = new PortableWorkDefinition();
pwd.setName( "WorkItem" );
awi.setWorkDefinition( pwd );
PortableBooleanParameterDefinition p1 = new PortableBooleanParameterDefinition();
p1.setName( "BooleanParameter" );
p1.setBinding( "$b" );
p1.setValue( Boolean.TRUE );
pwd.addParameter( p1 );
PortableFloatParameterDefinition p2 = new PortableFloatParameterDefinition();
p2.setName( "FloatParameter" );
p2.setBinding( "$f" );
p2.setValue( 123.456f );
pwd.addParameter( p2 );
PortableIntegerParameterDefinition p3 = new PortableIntegerParameterDefinition();
p3.setName( "IntegerParameter" );
p3.setBinding( "$i" );
p3.setValue( 123 );
pwd.addParameter( p3 );
PortableStringParameterDefinition p4 = new PortableStringParameterDefinition();
p4.setName( "StringParameter" );
p4.setBinding( "$s" );
p4.setValue( "hello" );
pwd.addParameter( p4 );
m.addRhsItem( awi );
String result = BRDRLPersistence.getInstance().marshal( m );