I have a requirement to write an application in .Net that can allow business customers to define their own rules. I have been looking into BRE (Business Rule Engine) by Microsoft that comes in Biztalk server. What I understood so far is that BRE provides you a flexible rule composer to drag drop properties from your .Net entity and then assert it against some condition (predicate). However, this is pretty basic and straight forward idea which in my mind can be simply achieved by defining my own domain specific language for writing easy to understand business rules. All I have to do is to create a grammar using ANTLR or Coco/R and an interface where you can write and compile rules and I am good to go. Can someone shed some light on how BRE is offering more and why one should prefer it over custom made solution?
What are the advantages of Business Rule Engine (Biztalk) over writing my own rule checker?
1.9k Views Asked by talaa123 At
1
There are 1 best solutions below
Related Questions in ANTLR4
- How to have `\n` significant except when it is on a line by itself?
- How can I disambiguate the following rules?
- ANTLR - No viable alternative at input
- ANTLR4 - Access token group in a sequence using context
- Error: duplicate class: llang.Scope
- Not able to parse continuos string using antlr (without spaces)
- How to create shorthand for a rule without ambiguity?
- using antlr4 C# grammar in java
- Is it possible to visit a rule without any of the lexer tokens defined in grammar?
- ANTLR4 controlling current node execution
- ANTLR 4 - How to reduce prediction time for IF statements with optional END-IF (COBOL grammar)
- ANTLR4 - label assigned to a block which is not a set
- How to modify or insert a ParserRuleContext as I am walking it with a BaseListener
- Antlr 4 : manually creating trees
- How to implement SEPARATE island grammar in ANTLR4 with correct line numbers and char index?
Related Questions in BIZTALK
- BizTalk Server - Can't configure Groups
- Looping functoid, Mapping
- How to setup Hybrid Connection's secondary connection-string in Azure
- Biztalk: Side-by-Side Versioning in different Applications
- Schema error with Azure BizTalk Services EDI Bridge
- Timeout in two-way receive port when redirecting failed messages
- BizTalk file Archive
- BizTalk and COM+
- Biztalk mapping with namespace prefix
- SQL to resume suspended messages in order
- BAM can configure only Analysis Services 2005 or 2008
- "50400: Gateway Timeout." in BizTalk services for large XML files
- cannot retrive a document specification using this name
- How handle a non-resumable ordered delivery send port
- Why would the TrackedMessages_Copy_BizTalkMsgBoxDb start failing with "Query processor could not produce a query plan"?
Related Questions in RULE-ENGINE
- Drools : Rule firing multiple times
- How to load Drools Rule From DB
- looking to build a java dynamic rule engine using easy rules api
- Are the rules fired in easy rules not exclusive based on priority?
- Get all the conditions which resulted in rule execution
- Drools rule not true, how to use 'and'?
- how deal with dynamic rules in a flow
- Logical Expression Visualizer
- Expert/Rule Engine that updates facts atomically?
- drools rules that requires multiple other rules
- Can I use DROOLS in this scenario?
- How to implement rule If I want to execute only one rule rather than execute all rules in Drools Rule Engine?
- Lightweight rules engine on server side for server functionality orchestration
- Building event stack on WSO2
- Drools all rules are getting loaded
Related Questions in BUSINESS-RULES
- Where to use business rules in MS CRM 2013
- How can I install the Rule Designer on Eclipse for the Business Rules service on Bluemix?
- what is the difference between business object, business engine and business entity and business rules
- Invoke Business Rules service from Node js application on Bluemix
- OWL 2 ontology consistency check
- CRM Business rule that uses multiple lines of text
- Json Business values from server side to client side
- how deal with dynamic rules in a flow
- Logical Expression Visualizer
- Calculating Saturday and Sunday Business Date when Friday or Monday are a Holiday
- BizTalk Dynamic Disassembler Problems - The body part is NULL
- c# Place for business rules in domain driven design
- How do you test a business rule when it's a property accessibility?
- Free "Business Rules" tools?
- How to create a "true" contract first WS with wso2brs
Related Questions in COCOR
- Expressions in a CoCo to ANTLR translator
- How to get Coco/R parser to not be greedy
- How to parse nested, mini grammar in string using Coco/R?
- Parsing a code block with EBNF expression
- Generate and parse Python code from C# application
- Exponent operator does not work when no space added? Whats wrong with my grammar
- C# File stream reading strings (Coco/R Taste)
- What are the advantages of Business Rule Engine (Biztalk) over writing my own rule checker?
- How can I test an input condition after translating the source code using Coco/R?
- Coco/R vs. ANTLR
- How to tokenize indents in Coco/R (Python, Boo like indentation)
- Coco/r: Factor deletable
- How can I use ParameterExpression to parameterize an expression tree?
- Check a mathematical string for syntax errors in Matlab
- Coco/R keeps telling me "'COMPILER' expected", even though I have the declaration
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
The question's answer really depends on factors such as: