UML Modeler primary package. This package exposes the entry point for the UML Modeler API though {@link com.ibm.xtools.modeler.UMLModeler UMLModeler}.

Package Specification

The UML Modeler API consists of a single static utility class, {@link com.ibm.xtools.modeler.UMLModeler UMLModeler}, and of several other classes and interfaces that are accessible from UMLModeler. The implementation of these other classes and interfaces spans several plug-ins in the product. These plug-ins are re-exported from the plug-in that exposes UMLModeler, which is com.ibm.xtools.modeler. To use the UML Modeler extensibility, API clients must only add a single plug-in dependency to com.ibm.xtools.modeler.

Extensibility Architecture

The foundation of the UML Modeler extensibility is called the modeling platform. The modeling platform consists of a set of services that enable the management of UML 2.0 models and is based on a UML 2.0 meta-model that the Eclipse UML2 Project provides. Because the meta-model is an EMF-based implementation of the UML 2.0 specification, the objects that represent user models are UML2 objects.

For example, {@link com.ibm.xtools.modeler.UMLModeler#openModel UMLModeler.openModel} returns a UML2 object {@link org.eclipse.uml2.Model Model}. Like all UML2 objects, Model indirectly extends the {@link org.eclipse.emf.ecore.EModelElement EModelElement} EMF object.

The modeling platform includes a set of subsystems that offer services for EMF-based models such as the UML 2.0 meta-model. The most important of these services, the Modeling Services Layer (MSL), enables controlled access to EMF models through its {@link com.ibm.xtools.emf.msl.EditingDomain EditingDomain}.

The following modeling platform services are also available for EMF-based models:

Query Services
Services that perform queries on EMF models
OCL Query Services
Services that perform Object Constraints Language (OCL) queries on EMF models
Validation Services
Services that validate EMF models that use constraints
Presentation Services
Services that enable the use of a notation meta-model to display diagrams of EMF models

The modeling platform also exposes interfaces to manage UML2 models and notation-based diagrams:

{@link com.ibm.xtools.uml.core.IUMLHelper UMLHelper}
A helper for using UML2 models
{@link com.ibm.xtools.uml.ui.IUMLUIHelper UMLUIHelper}
The UI counterpart of UMLHelper
{@link com.ibm.xtools.uml.diagram.IUMLDiagramHelper UMLDiagramHelper}
A helper for using UML 2.0 notation-based diagram
UML Notation
UML 2.0 specific extensions to the notation meta-model