1

I need to migrate my current Business Rules Engine to another programming language and maintain same functionality.

Now I'm using Drools.

On my current design I have the following:

  1. A class with a bunch of attributes that will be analyse by the engine.
  2. The drools engine that will analyse the generated object over a list of rules.
  3. An API Rest for communicate with the service

The workflow is:

  1. Receive a POST over the API Rest
  2. Generate an object of type MyClass
  3. Pass that object to the Drools engine
  4. The first rule that match, stop the process and dispatch an alert of some type. If there's no match also dispatch another type of alert.
  5. This rules service POST the result to another API Rest.

Mandatory needs for the engine and rules:

  • Multi-parameter rules. I mean that I need the rules to accept multiple AND checks in the same rule.
  • Similar workflow as the current.
  • Open Source
  • Rules priorities (a.k.a salience)
  • No Java

Desirable needs:

  • The rules engine should continue processing after a match or match the more restrictive rule.
  • Python language (it can be other but please argument why use that one)

Which rules engine I could use in Python?

1

There are few Python libraries business-rules, Intellect and pyknow which claim to do the same thing. Check those and see what suits you better.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.