UML2MOF is a command-line tool that lets you convert models created using
UML 1.4 into MOF 1.4 metamodels. This in fact makes any XMI compliant
UML 1.4 modeling tool also a MOF 1.4 metamodeling tool.
The tool is build using MDR - it loads a given UML XMI into MDR (using XMI reader),
then uses the JMI interfaces to map the model into MOF and finally
exports the model into MOF XMI (using XMI writer).
UML Profile for MOF
As MOF and UML are different (although very similar), there are model
elements in UML that are not present in MOF and vice versa. Thus, in
order to represent a MOF model in UML a "UML Profile for MOF" is needed.
The profile is a set of UML extensions in form of stereotypes and tags, that
a modeler can use in order to represent MOF elements that do not have a
straightforward mapping to UML. In order to be able to map your UML
model to MOF, you need to follow this profile. Click here to learn more.
UML Tools Support
Each UML tool provides a different support for UML. Possibilities of how
to create a MOF metamodel in these tools differ - tools usually support
only a subset of whole UML. That's why the profile needs to be flexible
and allow modeling of one MOF construct in various ways. Thus, for known
tools supporting UML 1.4, template files with predefined stereotypes
and tags from the UML Profile for MOF are provided here together with sample models and
information regarding things that are specific to a given tool with
respect to the profile.
Downloading, Building and Running the Tool
After you create a MOF metamodel using your prefered UML tool, you will
need to convert it from UML XMI that the UML tool produces, into MOF XMI.
That's what the UML2MOF tool will do for you. Read here to learn how to download/build and use the tool.
On-line Version
To make it easier for you to convert files using UML2MOF tool, there is an on-line version
of it (a servlet built on top of UML2MOF) which can be used for converting UML models
conforming to the UML Profile for MOF (see below) to MOF metamodels.
To go to the on-line version click here.
The on-line version was finalized and published by Matteo Bordin (many thanks!) at Soluta.net
website. Soluta.net is a consulting company based in Europe committed to component based
development and specialized in providing MDA services.