Web-based BRE composer
  • 09 Apr 2021
  • 7 Minutes to read
  • Dark
    Light
  • PDF

Web-based BRE composer

  • Dark
    Light
  • PDF

Article Summary

The BizTalk360 Business Rules Composer has been developed to work exactly the same way as it works with the Business Rules Composer that comes with BizTalk Server. However, we have added few additional components to the feature that will be useful for business users while creating their business rules. With the BizTalk360 Business Rules Composer, you can create more advanced and complex business rules to suit your business scenarios.

  1. "Where" function - We have developed a new 'Where' function that can be used as an argument to query the database tables and retrieve information. You can do this using the BizTalk Business Rules Composer, but it is much harder to read and understand. This function can be used as an argument within the actions (then) part of the business rule. The "where" function has some inbuilt validations that are in place - Users must provide 3 values to the where function. The first and second value must be a custom vocabulary that targets the database we want to query
  • The first value must be of the same data type as the parent argument of the where function
  • The second value must target the same table as the first argument
  • The third argument can either be a manual input or a custom vocabulary that is of the same data type as the second value of the where function
  1. If, Else, Else If - In addition to the existing statements And, Or, Not, the BizTalk360 Business Rules Composer contains three additional statements - If, Else, Else If. These statements can be applied to the actions (then) part of the business rule to create more complex business rules. While creating a business rule, each "if"-block will be considered as a separate rule and you will notice multiple rules with suffix information (alphanumerical values) getting created for each if-block when the rule is saved.

  2. Date Time Picker - Any function that involves picking a date/time (DateTime data type) contains the date time picker (calendar) option. We have built this functionality to minimize the errors while creating the business rules and for ease of using the tool for business users.

  3. Download Test Result - With the BizTalk360 Business Rules Composer, you can download the modified XML file through the Download Test Result button. Test policy for 'XML values' will not change the values in the XML File directly for Security Reasons. Instead, the modified file will be available as a zip file for download.

Adding a New Policy and Business Rule

Follow the following steps to create a new business policy and a new version using the BizTalk360 Business Rules Editor.

  • Log in to the BizTalk360 application
  • Select an Environment from the Landing page
  • Click the Operations tab in the Navigation panel
  • Click the expand button next to the BizTalk Services tab and select Business Rules Composer
  • Under the Policies Pane, click Add New Policy
  • You will notice the policy getting created with a default name 'Policy 1'. You can edit the name right away, or later by selecting 'Policy 1' and clicking Edit
  • Once a policy is created, a new version is automatically created underneath the policy with the name 'Version: 1.0 Not Saved'
  • You can start to create a new rule at this step if you only need one version of the business policy. To create another version, click Add New Version. The new version will be created as Version: 1.1 Not Saved
  • Once a policy is created, a new version is automatically created underneath the policy with the name 'Version: 1.0 Not Saved'. Select the version and click Add Rule
  • From the Vocabulary Pane, expand the functions and predicates to get the detailed list
  • All the functions and predicates in the list are the same as what is available in the BizTalk Business Rules Composer. Also, you cannot create any vocabularies directly from BizTalk360. The current version of BizTalk360 supports the creation of custom vocabularies only in the BizTalk Business Rules Composer
  • Drag the predicates towards the 'if'' block and functions towards the 'then' block to build your business rule. You can also use the custom vocabulary that you defined to create the business rule. In the below screenshot, we will be taking an example from one of the custom vocabularies that we created for this purpose

Saving, Publishing, and Deploying the Policy

  • Follow all the steps from the 'Adding a New Policy and Business Rule' section
  • Once you have finished creating the business rule, select the version (Version: 1.0 Not Saved). Click Save. You will notice that the version details change to Version 1.0 Saved. Once a rule is saved, you will notice the next level of rule information being created with the same rule name suffixed by alphanumeric characters



You will still be able to edit the business rule by selecting the entry with the rule name alone. The second level entry of the rule information (with the suffix details) will be only read-only.


  • Once the business rule version is saved, you will notice the Publish button getting activated. You can Publish a business rule once it has been saved.
  • Click the 'Publish' button to publish the business rule. You will notice the version details changes to Version 1.0 Published.

Testing the Policy

It is a best practice to test the policy before actually deploying the policy/version into the production environment. To test the policy using BizTalk360 Business Rules Composer, you need to specify one or more instances for the following fact types - XML Documents, Database Tables, and .NET Classes.

To understand how to work with the BizTalk360 Business Rules Composer's Policy testing section, we will consider one classic example of processing a purchase order. If the monthly primary income and the secondary income are greater than the requested loan amount, then update the loan status of this loan to Approved. To test this using the BizTalk360 Business Rules Composer, let's assume the business policy (version) has been created and published.

Follow the following steps to test the policy with the XML schema file.

  • Log in to the BizTalk360 application
  • Select an Environment from the Landing page
  • Click the Operations tab in the Navigation panel
  • Click the expand button next to the BizTalk Services tab and select Business Rules Composer
  • Select the policy from the list in the Policies pane. In our case, let's select the ProcessPurchaseOrder policy.
  • Select the appropriate version of the policy from the drop-down. Let’s select Version 1.1 Published.
  • Once you select the version information from the policies pane, you will notice that the Help/Rules Creation Pane would now become the Policy Testing pane. The policy testing pane contains the following sections:
  1. Fact Types - Lists the fact types - XML Documents, Database Tables, and .NET Classes
  2. Select File - Option to choose the XML file. When adding a Database Table, this option would display as "Add Instance". Similarly, when adding a .NET Class, this would display as "Create Fact". Once you have added the input for the fact type, when you select the input file, you will notice the button changing to Remove Instance.
  3. Test - The rule engine fires the test and the result is displayed in the results pane
  4. Download Test Result - This is new functionality in BizTalk360 Business Rules Composer. This button will be displayed only when the test is trying to change the value in the XML file (the status field in this case!). As per the above scenario, when the input file contains a value (quantity) less than or equal to Monthly income, the status of the loan should be changed to "Approved". When the BizTalk360 Business Rules Composer is trying to make this change, you will notice the Download Test Result button. Clicking on the button will download the "modified" purchase order (where status is set to Approved). On the other hand, when the rule doesn't match, you will not see the Download Test Result button
  5. Result Execution pane - The pane that displays the test execution result, just like the BizTalk Business Rules Composer
  • For our scenario, we will only be using the 'XML Documents' facts type to test the business rule. Expand the (+) next to XML Documents and select RuleTest.PO (since we have constructed the rule to be based on the schema file, you will notice the RuleTest.PO appearing as a drop-down)
  • Once you have selected the schema file, click Select File. You will be prompted to choose the XML input file (in our example the purchase order file). Let's say we have 2 purchase orders - PO1.xml & PO2.xml. Select the PO1.xml file
  • Click Test
  • Depending on the result, if any of the purchase orders match the rule condition, you will notice the Download Test Result button appearing next to the Test button
  • Click the Download Test Result button to download the test result file (that contains the modified values - Status = Approved)
  • The process remains the same for the PO2.xml file as well. If the input file contains the quantity value >=500, the condition will not be met and no changes will be done to the input file. In this case, you will not see the Download Test Result button




Was this article helpful?

What's Next
ESC

Eddy, a super-smart generative AI, opening up ways to have tailored queries and responses