- 1 General
- 1.1 What is UML2Tools?
- 1.2 Which UML diagrams are supported by UML2Tools?
- 1.3 How can I start with UML2Tools?
- 1.4 Which GMF version is used to generate UML2Tools source code?
- 1.5 Where can I find GMF-sources?
- 1.6 What metamodel do UML2Tools use?
- 1.7 What are *.uml and *.umlclass_diagram files for?
- 1.8 Can I restore diagram from semantic model (*.uml file)?
- 2 Extending UML2 Tools
- 3 Working with Profile Definition Diagram
What is UML2Tools?
UML2 Tools is a set of GMF-based editors for viewing and editing UML models.
Which UML diagrams are supported by UML2Tools?
Class, Profile Definition, Component, Activity, State Machine, Composite Structures, Deployment and Use Case diagram editors are available in UML2Tools.
How can I start with UML2Tools?
First, install UML2Tools and its dependencies to your Eclipse platform. You can also install UML2 Tools via Update Manager. To check that UML2Tools feature is installed correctly go to Help/About Eclipse SDK, in the appeared dialog press 'Feature Details' button, feature with id 'org.eclipse.uml2.diagram' should present at the list. If so then New Diagram wizards are available in the 'New/Other/UML 2.1 Diagrams' wizard group. Then you may create diagram by your choice.
Which GMF version is used to generate UML2Tools source code?
UML2Tools diagrams use 'fresh' GMF. Source code is regenerated with up-to-date GMF on every significant change in GMF and on milestone. It is so because GMF provides more and more features with every iteration. However, some amount of custom code exists in this project. This code is put into 'custom-src' folder or marked with '@generated-not' tag. Note that we use 'Generate UML2Tools Diagrams' action in the context menu of *.gmfgen files to generate code. This action is available if you have GMF-sources checked out in your development workspace.
Where can I find GMF-sources?
GMF-sources (GMF files from which java-code is generated) are located in Eclipse CVS:
cvs -d pserver:dev.eclipse.org:/cvsroot/modeling co org.eclipse.mdt/org.eclipse.uml2tools/plugins/org.eclipse.uml2.diagram.def .
What metamodel do UML2Tools use?
UML2Tools use an EMF-based implementation of the UML™ 2.x metamodel for the Eclipse platform from UML2 project.
What are *.uml and *.umlclass_diagram files for?
UML2Tools diagram is presented by two files in the file system - domain model file (*.uml) and diagram file (*.umlclass_diagram, *.umlstatemachine_diagram). This is a standard for GMF-generated diagram editors. More information on GMF page.
Can I restore diagram from semantic model (*.uml file)?
Yes, it's easy. To 'visualize' diagram from *.uml file use 'Initialize Class Diagram' action from the context menu of the file. There are also actions to initialize Component, Activity or State Machine diagram, choose the one you need. Appropriate diagram file (*.umlclass, *.umlcomp etc) will be created and then open. This feature is provided by GMF.
Extending UML2 Tools
I want to customize the UML2Tools class diagram. How can I regenerate the diagrams?
There is a special "MDT-UML2Tools How To Regenerage Diagrams" page in with step by step instruction.
Working with Profile Definition Diagram
Is it possible to add constraints to the profile (perhaps OCL)?
'Constraint' palette entry is used to create Constraint elements, 'Constrained Element' link connects it with the constrained elements. Constraints are defined in textual form by default. But you can create OCL Constraint as well, as they are supported by subsequent Java-code generation. In order to create an OCL Constraint create 'Constraint' element using UML2 Tools, then go to UML Editor and edit 'language' property of OpaqueExpression there. Then the user returns to UML2 Tools editors and works with the constraint. Palette tool for OCL Constraint should be created soon (bug 252876)
Can I have multiple generalizations for stereotypes?
In the example below ThirdLevel extends Propery and generalizes TopLevel and Second Level:
However, the user gets this error when runs “UML Editor->Profile->Define”:
It's not a bug. 'Define profile' dialog allows you to configure many options, Multiple Generalization is one of them. You can change default value of 'Super Class Order' option from 'Report' to 'Process':
After that Profile will be applied well.