- 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 create a diagram from UML2 model (*.uml file)?
- 2 Extending UML2 Tools
- 3 Working with Structure Diagrams
- 4 Working with Profile Definition Diagram
- 4.1 Is it possible to add constraints to the profile (perhaps OCL)?
- 4.2 Can I have multiple generalizations for stereotypes?
- 4.3 Is the source code for umlprofile_diagram in the CVS Repository?
- 4.4 Has there been any work on profiles to support different Icons?
- 4.5 What UML2 Tools diagrams support profile and stereotype using?
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?
UML2 Tools provides diagram editors for
- Profile Definition
- Composite Structures
- State Machine
- Use Case
- Sequence (expected in Galileo M3)
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 create a diagram from UML2 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 Structure Diagrams
Is it possible to show content of multiple packages in a single diagram?
Yes, it is possible:
In this case packages 'Factory' and 'Types' are contained inside their parent 'Package' package.
Package is shown in 'frame' notation here, that's why its content is displayed. In order to show a package in 'frame' notation, invoke 'Show as > Frame' action from the context menu of the package.
In order open a particular package in its own diagram editor, doble-click the package:
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.
Is the source code for umlprofile_diagram in the CVS Repository?
This PSF file consists of plugin for profile diagram editor(org.eclipse.uml2.diagram.profile) and its dependencies from UML2Tools. Use 'Import>Team>Team Project Set' action in order to import projects into your workspace. Other useful information on generating UML2Tools diagram is in How To Regenerage Diagrams wiki.
Has there been any work on profiles to support different Icons?
Different icons for stereotyped element can be used, for example, when you set the stereotype of a class to plane and you want the diagram to use your defined shape of a plane when displaying the model. UML2 Tools developers hope to implement the functionality soon. You can track bug 246358for the changes.
What UML2 Tools diagrams support profile and stereotype using?
Currently, Only Class Diagram editor supports profile and stereotype application, but they will be available in other structure diagrams soon (bug 252748).