String based rule

Code Example:

BusinessRule rule = BusinessRuleBuilder.groovyRule("RULE_ID")
    .withAlias("w", "WIDTH")
    .withAlias("h", "HEIGHT")
    .withGroovyCode("return w * h > 100")
    .withErrorAliases("w", "h")
    .withErrorMessage("Area must be less than or equal to 100")
    .build();

This produces the following JSON output when rule is serialized:

{  
  "id": "RULE_ID",  
  "templateId": "groovyRule",  
  "errorMessage": "Area must be less than or equal to 100",  
  "namedAttributes": {  
    "w": "WIDTH",  
    "h": "HEIGHT"  
  },  
  "parameters": {  
    "customFunction": "return w \* h > 100",  
    "errorAttributes": [  
      "w",  
      "h"  
    ]  
  },  
  "requiredContexts": \[],  
  "execution": "CONTINUOUS",  
  "businessRuleScopes": \[],  
  "staticProperties": {}  
}