Semantic Module Framework Overview
Motivation

Rules can be a tool for hard-core developers, for business analysts, or for someone in between. Rule primitives need to be tailored to the target of the rule authors. Rule primitives are the parts that are put together to for a rule. Broadly they are categorized as rules, conditions, consequences or durations. These components are defined through the Semantics Provider Interface. The Semantic Module Framework allows for the grouping of semantically similar components into a reusable package.

The modules may be defined by the semantics of a particular computer language such as Java or Python. Also, they may be defined in terms of higher-level user-centric concepts such as email filtering and security control. Each module is typically packaged as a jar that is simply added to the classpath.

Various tools and utilites, such as the I/O subsystem, may use the common components to interact with the rule-system.