And/Or grouping of Boolean rules (Devops 3143)

Posted about 2 months ago by Knowledge - hopp

Post a topic
Knowledge - hopp
Knowledge - hopp Admin

Certain rule types are locked down to return a boolean. The returned boolean then decides what happens to the object being processed.


Source Engine:

  • Condition Rule: Do we want to step in and process the collection of child business objects
  • Filter Rule: Should the current Source Object in the Extraction Map be discarded
  • Exit Rule: Should the Business Object instance be dropped

Target Engine

  • Entry Rule: Should the Business Object instance be dropped
  • Condition Rule: Should the Target Object be created
  • Exit Rule: Should the Business Object instance be dropped

Bag Methods that return a Boolean can be used in all of the above cases.


In all the above cases, more than 1 rule can be deployed, here Condition Rules on a Target Object:



Currently, this works like an AND: 

  • The rules are called in order
  • If a rule returns False, then processing stops (remaining rules are not called) and the object is handled accordingly


This epic is to change this behavior, so the Boolean rules can be grouped and combined with AND / OR. Here screenshot from Azure DevOps query editor:



  • Grouping should be possible , similar to grouping conditions in parenthesis in SQL
    • Could ve indentation in the list 
  • Innermost groupings should be resolved first

Challenges:

  • If a Filter Rule discards an Source Object in the Source Map, it is marked in the xml with a discardedBy="FilterRules.RuleName". This is visible in the Portal. We need a solution for how this would be marked if the discard was done by a logical grouping of rules
  • Maybe keep the discardedBy attribute and assign it the value '(grouping)' if not discarded by just 1 rule  

0 Votes


0 Comments

Login or Sign up to post a comment