business-rulesrule-engineilogjrules

when should I use BOM to XOM mapping ExtenderName in ILOG Jrules


In the rule studio BOM editor , there is BOM to XOM mapping window and it asks for execution name and extender name. I can write java code in a separate project and import it as BOM. So what is the purpose of this extender mechanism ? As always IBM doc says how to do it. But doesn't tell why !


Solution


  • As far as I remember the first displayed is execution:
    It is used when you create a "Virtual Member" meaning in Ilog terminology: a method or attribute or class which doesn't rely on a XOM.
    Remember that you can create an empty BOM or you can add a method or attribute in a BOM class based on a XOM
    The easiest example is "age" NO database will ever store such field but you could had a piece a logic in a "virtual attribute or method" in order to do the comparison between Date of birth and today.

    If you create a class from scratch (not an attribute or method) a kind of "Virtual Object" you still need to tell JRules how to consider this Object at runtime.

    So you use this field to tell JRules, here is a virtual class based on no XOM but at execution time use it as an java.lang.Object

    I never used this field with any other Class than java.lang.Object

    Does it make sense?

    Second one is really like "extends" in pure java. Never used it... No need.

    Hope it helps