We assume that the rule engine server is running and listening for clients to connect:
2017-11-18 01:07:32 - server start...
2017-11-18 01:07:32 - using properties from: server.properties
2017-11-18 01:07:32 - running rule engine file: /home/uwe/development/jare_server/travel discount_dev.zip
2017-11-18 01:07:32 - output with transformer: class com.datamelt.server.transform.log.LogTransformer
2017-11-18 01:07:32 - waiting on: 0.0.0.0/0.0.0.0, port: 9000 for connections
The example uses this input data:
And here is the result:
The screenprint below shows the logic how it was setup in the Business Rules Maintenance Tool:
The last rule group "Adjust Region" contains no rules, but just an action which changes the region name to a three letter code. Action can be executed based on if the relevant rule group failed or passed (or both).
You can see how the ETL transformation does not contain any business logic. If your logic changes, then you updated the rule engine project file containing the business logic, but you don't have to change the ETL process.
Hope you enjoyed this.
Carpe Diem