Previous | Table of Contents | Next |
The MDC-OIM Data Transformations metamodel, like its CWM counterpart, defines metadata that describes the processes that map
and transform the contents of various source and target data stores. This might include, for example, the transformation of
operational data to a normalized, relational representation or analysis-oriented store. Both also provide facilities whereby
data lineage may be tracked across a series of transformations.
There are, however, some fundamental differences between the two metamodels. In particular, the OIM Data Transformation model
is specific to the OIM Database Schema model. In its current form, it can describe relational-to-relational transformations
only, and has certain dependencies on the Database Schema package (for example, the CodeDecodeSet derives from Database Schema
Columns).
The CWM Transformation package, on the other hand, is more generalized and is not tied to any one particular data store or
schema. This is because the CWM Transformation package describes transformational mappings in terms of the Object Model core
metaclasses of Classifier and Feature. Hence, transformation mappings may be defined on any CWM metaclasses that derive from
these metaclasses.
For example, under CWM, Relational Tables and Multidimensional Dimensions derive from Object Model Class, respectively, and
CWM Relational Columns and Multidimensional DimensionedObjects derive from Object Model Attribute, respectively. So the same
Transformation metamodel can be used to describe both relational-to-relational mappings, as well as relational-to-multidimensional
mappings.
The CWM and MDC-OIM metamodels are most similar, however, in their overall representation of the transformation process. Both
metamodels support the specification of transformations in terms of TransformationSteps, TransformationTasks, and dependencies
or constraints between steps. Both support the generic specification of Transformation logic based on expressions; however,
CWM Transformations can be specified using either an opaque expression (a textual string) or a tree-based expression structure
(which comes from the CWM Foundation package’s Expression model). Using structured expressions further facilitates the tracking
of transformation lineage.
The historical records of transformations are modeled in similar ways in CWM and MDC-OIM. OIM’s StepExecution and ActivityExecution
correspond to similar objects in the CWM Warehouse Operation package.