An extension is composed of customized code that is executed on top of the default InfoSphere® MDM code by adding new fields to existing database tables. Since each organization may want to use InfoSphere MDM in slightly different ways, you can expand the existing InfoSphere MDM functionality to meet the specific business requirements of your organization using extensions.

Extensions allow you to either extend data elements or extend the behavior of transactions. There are two primary categories of extensions within InfoSphere MDM:
  • Data extensions: Enable you to add new data elements to existing or newly defined business objects.
  • Behavior extensions: Enable you to add new behavior to existing or newly defined business transactions.

Both types of extensions can be written as Java™ classes or as rule files that are executed by a rules engine and can be executed at the beginning or the end of standard transaction processing.

Creating and deploying an extension is a multistep process that includes defining and describing the extension within the extension framework. In the extension framework, you must set attributes such as the extension's name, description, Java class name or rule set, and any condition parameters (which must be true for the extension to be executed) that you want to place on the extension. You can add new parameters to the extension framework and edit existing parameters in the extension framework using the Administration application. See the developer topics for information on modifying InfoSphere MDM.

For existing extensions in the system, you can view any details that exist in the extension framework, such as the extension name, description, and condition parameters.

Before extensions are coded, you should define and describe them in the extension framework using the Administration application. The extension framework contains such details as an extension's name, description, and Java class name or rule set. It may also contain condition parameters, . You can modify the details of any extension that already exists in the system.
Note: After you modify the extension framework, your changes do not take effect until the next application startup.