RuleLab.Net BRE Assembly

 

Implementation Model

 

With the BRE Assembly your .NET application can utilize the BRE functionality locally, without having to run the BRE through the Web Service. The RuleLab.Net files that you compose online must be downloaded and passed to the BRE Assembly. The business users can still take advantage of the central rule repository and easy access to Rules editing tools while your backend application is running the BRE locally without sacrificing the performance.

 

It is important to timely update your local XML file copies with the updates made online. Unless your business model can rely on manual downloads, you may want to use the RuleLab.Net Web Service for downloading the files. The following methods are available for synchronizing your local and online file copies:

GetDateTimeChanged() and DownloadFile(). Please see the RuleLab.Net Web Service documentation and the DownloadRulesFile() function in the Web Service Application Sample available on the Integration/Downloads page.

 

The BRE Assembly is available for a download via the Integration/Downloads link on your RuleLab.Net screen.

 

RuleLab.Net lets you execute the BRE by passing in your Data, Rules, Facts, Atoms and XML References documents. All documents that you pass to the BRE should have been validated via the Rules Designer.

 

The BRE returns an updated Data document and a State XML document. Using the State document, your application can check if any rules have fired, whether input data fields were missing, what fields prevented rules from firing, if rule conflicts have occurred. An application can supply the required field data and call the BRE to execute a subsequent pass. This loop (BRE Session) should continue until the Application has no new data to supply and no rules have fired OR if the application goals have been reached. For more information see the BRE specification.

 

Methods and Properties 

 

Please refer to the Web Service specification for more detailed information on each method.

 

 

XmlDocument XMLReferences            

XML document containing XML References

XmlDocument XMLAtoms                   

XML document containing Atoms

XmlDocument XMLFacts                     

XML document containing Facts

XmlDocument XMLVocabulary                    

Reserved; do not set

XmlDocument XMLRules      

XML document containing Rules

string CurrencySymbol                          

Currency symbol, the default is ‘$’

bool EnableRuleEvaluationDetails          

Enable collecting rule processing details under the <evaluatedRules> tag of BRE State

 

bool EnableRuleConflictsDetails

Enable collecting rule processing details under the <conflicts> tag of BRE State

 

XmlDocument IncludeRules(                  

XmlDocument xmlRules,                     

int basePriority,          

out XmlDocument xmlRules)              

Add Rules document to the set of included Rules and return the Status.

Rules XML document created with the Rules Designer

Included Rules priority offset

Rules XML document created with the Rules Designer

 

XmlDocument RunBRE(       

XmlDocument xmlAppData,               

XmlDocument xmlBREState,        

 

ref XmlDocument outXmlAppData,          

ref XmlDocument outXmlBREState)   

Execute the BRE pass and return the Status.

Application data XML document

BRE State XML document;

   must be set to NULL for the first pass of the BRE

Updated data document

Updated State document;

   must be copied into xmlBREState for subsequent BRE passes

 

XmlDocument GetReasoning(

string varName,   

 

XmlDocument xmlBREState,

ref XmlDocument outXmlReasoning

Get the XML document showing the BRE reasoning process.

The name of the variable (same as the Reference name) that was

assigned a value by the BRE. 

State XML document returned by the BRE

Reasoning XML document generated by the BRE

 

 

 

The use of the BRE Software is governed by the Licensing Agreement. You can purchase additional BRE Software Licenses via the “Subscription” screen. To accesses it, log into the Rules Designer at http://www.rulelab.net, click the “Your Account” button, click the “Subscription” tab. You must be a subscriber to the RuleLab.Net Service in order to purchase additional licenses and download BRE upgrades.

 

Related topics

 

System architecture

BRE Web Service

BRE State