The more I work with the Rules API the more I'm convinced that the Vocabulary element was only created for the BRC. The most generous I can be is that someone came up with a good idea for the BRC and "retrofitted" it for the API. There are two reasons for this; The API is unsupported and undocumented. The BRL (Business Rules Language) can function happily without it - in fact a rule can reference directly the document element / .NET method etc. If you take a look at the following two bites from the ......
I don’t know about you but I find the best way to understand how something is working is from reading the code and then stepping through its execution, with VS’s trusty local and immediate windows. A friend of mine calls this “developers documentation”, and whilst I certainly wouldn’t go as far as saying it’s a substitute for good docs (and by that Chris, I mean “living models”!), I always end up doing it during any maintenance code cycles (unintended ......
Has anybody seen a Vocabulary API for the rule engine? No? That's probably because it seems to either be on its way out or never made it in the first place. According to the BizTalk SDK "The following objects are exposed by Microsoft(r) BizTalk(r) Server 2004, but are not used in BizTalk Server programming." These include the following from the Microsoft.RuleEngine Namespace Vocabulary VocabularyDefinition VocabularyDefinitionDictionary VocabularyDictionary VocabularyInfo VocabularyInfoCollection ......
The BizTalk 2004 rules execution engine is "a discrimination network-based forward-chaining inference engine designed to optimize in-memory operation". Apparently. What I understand this to mean is that it can arrive at a decision based on reasoning of facts against conditions (inference), and that it reacts to new facts being "asserted" in a way which means that only rules which are relevant are re-examined (forward chaining). Facts get put into working memory. This triggers rules whose conditions ......
OK, so tell me we haven’t all done this at least once. We come across a way to improve our output efficiency, and at the same time to enforce good design and standards – we figure we should provide the rest of the team with a tool that can help them achieve the same. We feel, for a small and fleeting moment, that warm glow. Until someone comes along and points out a far better implementation of your optimisation, and delivers up a tool that’s more extensible, better integrated and ......
I suppose my first entry in this blog should be some insightful post about the BizTalk Rules Engine (BRE). Sorry, move along please, nothing to see. You see, I want to record my journey through a whole new technology. The BRE is that technology. I’m lucky – I’ve been given the opportunity to specialise in one facet of a BizTalk, and I want to share that experience – even the good, bad and ugly times ......