Difference between revisions of "MDT-UML2Tools How To Use UML Profiles"

From Eclipsepedia

Jump to: navigation, search
Line 16: Line 16:
* Metaclass
* Metaclass
* Extension link
* Extension link
Zipped diagram is [http://wiki.eclipse.org/images/f/f5/SampleProfileD.zip here]
=== Define Profile ===  
=== Define Profile ===  

Latest revision as of 13:23, 12 November 2008


[edit] Introduction

UML cannot cover needs of all possible domains. Standard UML metamodel has to be augmented in order to meet requirements of a particular domain. That's why Profile mechanism was created - a way to create a lightweight extension of Standard UML.

[edit] Summary

Here is the workflow of creating and using UML profile:


[edit] Create Profile

[edit] Create Profile Definition Diagram

First, create Profile Definition Diagram using wizard 'Profile Definition Diagram' from 'UML 2.1 Diagrams' located in File > New > Other > ... menu item.
Profile is a root element of the created diagram.
Key elements of Profile Definition diagram are:

  • Profile
  • Stereotype
  • Metaclass
  • Extension link

18.10 Defining a simple EJB profile.gif
Zipped diagram is here

[edit] Define Profile

When profile is completely finished, it's time to define it. This is obligatory step in our workflow, because it saves defined profile as a static Ecore structure in the UML model, it allows subsequent use of profile content.
In order to define a profile in UML2 Tools call action "Profile > Define" from the context menu of the profile diagram:

[edit] Register Profile

Adding profile to the registry simplifies profile application later. The step can be omitted.
Profiles are registered in plugin descriptor (plugin.xml file) using 'org.eclipse.uml2.uml.dynamic_package' extension point. The plugin should be deployed to the platform later.
For example, UML Standard profile is registered this way:

    <profile uri="http://www.eclipse.org/uml2/schemas/Ecore/5" location="platform:/plugin/org.eclipse.uml2.uml.resources/profiles/Ecore.profile.uml#_0"/>

[edit] Use Profile

[edit] Apply Profile

In order to allow to apply the stereotypes defined in the profile to elements in the model, profile should be applied.
To Apply profile call 'Apply Profile> [Profile Name]' action from the context menu of the diagram:
What profiles appears in the drop-down list in the 'Apply Profile' action? Only those profiles that had been registered (see #Register Profile) or profiles from loaded resources(see #Load resource). To make the particular profile appear in the list, register it or load corresponding *.profile.uml resource.

[edit] Load resource

In order to load resource defining profile:

  1. Call 'Load resource...' action from the context menu of the diagram.
  2. In the displayed wizard choose 'Browse Workspace...' button.
  3. Choose needed resource, file containing profile ends with 'profile.uml' :


[edit] Apply Stereotype

The final step in creating extended element is applying a stereotype. Stereotypes can be applied to both nodes and links. Create an element of the extended metaclass, in the context menu of the newly-created element call 'ApplyStereotype>[name of stereotype]':
Now element is extended.

[edit] Apply stereotype using label in-place editor

Another way to apply a stereotype is to use stereotype label in-place editor. Select stereotype label and type comma-separated list of stereotypes. Added to the list stereotypes will be applied, if a stereotype was removed from the list, it will be un-applied:
ApplyProfile inplace.jpg

[edit] Extended element

The extended element is labeled with a name of the applied stereotype in the guillemets:
Tagged values (properties of the applied stereotype) will be shown and editable in the 'Tagged Values' tab of the Properties View:

For more information about working with Profile reference Introduction_to_UML2_Profiles tutorial.