Previous | Table of Contents | Next |
Each of the following bullet items identifies a relevant comparison point between MDIS and CWM, and describes the degree to
which the two standards either converge or diverge.
Scope
In general, the overall scope of the MDIS specification is considerably narrower than that of the CWM. Whereas the CWM defines
a metamodel of a complete data warehouse (including various types of databases and data sources, specification of warehouse
processes and deployment structures, and transformations between data sources and targets), MDIS is restricted to the specification
and interchange of database schema concepts only. While MDIS is sufficiently general to specify just about any conceivable
database schema, there is no explicit support for any process-oriented semantics. For example, an MDIS metamodel could define
a mapping (association) between a relational source and OLAP target, but can not specify the transformation logic at the meta-level
(this would have to be done within tool-specific content areas of the interchange structure).
Separation of Metamodels and Instances
MDIS is rather monolithic in that there is no crisp separation between the MDIS metamodel and its instances. Both are interchanged
in a single ASCII file, with instances realized by values associated with metamodel tags. There is no provision for a separate
definition of the metamodel itself, apart from an instance. It is not possible for two or more instances to refer to a single
metamodel definition. Instead, the metamodel definition must be copied into each instance. In comparison, the CWM metamodel,
by virtue of XMI, has a normative expression that’s completely independent of any of its instances. This normative expression
is in the form of an XML Document Type Definition (DTD), and instances, which are streamed via XML Documents, can simply contain
references to their defining DTDs.
Visual Modeling Support
The MDIS metamodel has a “text-oriented? definition, with no obvious support for graphically-oriented expressions. The CWM
metamodel, on the other hand, is an extension of the UML metamodel. This means that any graphical tool (CASE tool, Web browser,
etc.) that understands the UML metamodel can also be easily enabled to render the CWM metamodel and, therefore, CWM model
instances.
Tag Language
The tag language used to define the MDIS metamodel is specific to MDIS only. While non-proprietary in the sense of tool-specific
implementations, it does not enjoy the same level of broad, industry acceptance that XML does today.
API Support
Since CWM is MOF-compliant, the CWM metamodel has inherent API support in terms of CORBA IDL. Furthermore, this API support
can be mapped to almost any programming language for which an IDL (or straight MOF) mapping exists. MDIS, on the other hand,
does not appear to support an API. This is a disadvantage because there is no way to acquire “fine-grained,? programmatic
access to the MDIS metamodel.
Relative Cost of Entry
Implementing MDIS requires the writing of interpreters of the ASCII-based, MDIS metamodel to function according to the MDIS
specification. On the other hand, an XMI rendering of CWM can be consumed and validated by any (relatively inexpensive or
free) XML parser. The consuming XML application can then easily make use of other XML standard facilities (such as DOM) for
browsing or manipulating the metamodel and its instance data.
In conclusion, CWM is more comprehensive in scope than MDIS 1.1. CWM is more powerful, more flexible, and easier to adopt
and use than MDIS, mainly because it leverages facilities already defined by the OMG Metamodeling Architecture; that is, MOF,
UML and XMI, and because there is widespread industry support for these standards and their attendant implementation technologies
(such as XML parsers). Although CWM is oriented to the data warehousing environment, the degree of package separation in the
CWM metamodel means that submodels can easily be coopted for other purposes. Anything that can be accomplished using MDIS
can be accomplished using CWM.
However, in all fairness, it should be noted that MDIS is a relatively older standard that was crafted prior to the widespread
acceptance of technologies such as UML and XML, and that it could not have possibly leveraged such technologies at the time
it was drafted. MDIS represents a noble early attempt at defining a metadata interchange standard and is a baseline against
which subsequent standards must be compared. At the time of this writing, the MDC has decided that MDIS will be superseded
by Open Information Model (OIM), which is discussed next.