Dr Darren's MagicDraw UML and SysML Plugin eSchool
Motto: "Learn good ways to work with MagicDraw UML and its SysML Plugin !"
About the eSchool
UML2 in MagicDraw
MagicDraw UML tips
MD SysML Plugin
MagicDraw for Java
MagicDraw for XML
Advanced UML and SysML Training

(11275): 8.3.2: Unit/Dimension Notation "to underline or not to underline"

Relates to:

Issue 12128: Suggest Unit and ValueType both extend abstract DimensionedType, and inherit a 'dimension' attribute
Issue 12219: Section: 08 Blocks: suggest need Quantity stereotype and definition



Proposed resolution:

'Unit and Dimension elements are defined using a rectangular box notation similar to a class, in which only the «unit» or «dimension» stereotype keyword, the name of the Unit or
Dimension, and optionally the “dimension” property value of a Unit may appear.'

MD SysML achieves this by NOT extending InstanceSpecification (see image below) !

The MD SysML <<Unit>> and <<Dimension>> both extend DataType

The resolution states:

the notation that SysML defines for Dimension and Unit differs the standard UML notation for InstanceSpecification


Which is just one reason not to choose Unit [InstanceSpecification] and Dimension [InstanceSpecification]..


OMG Issue Resolution




Unit and Dimension elements are defined using a rectangular box notation similar to a class

Which is one reason for indeed choosing the "Class-like" DataType as base for Unit and Dimension
(even though one then has to restrict Dimension to not be used as a type).

I would already reject the proposal resolution on the basis of this text:


OMG Issue Resolution




Even though the base metaclass of Unit and Dimension is InstanceSpecification

because I reject that metamodel.

In fact a Unit can only be sensibly modelled as "a special kind of Quantity", on in which values of quantities with a chosen unit may be stated. Unit must extend Quantity ! Please visit (and please view the metamodel images carefully):

Unit is (like ValueType) well modelled as a DimensionedType [DataType] (and can be used to type directly for the unitary case):

This leaves however Dimension open to have a different base metaclass from Unit, however then (given that the notation is supposed to be the same) this is hard for UML-based tool vendors.

The observation that the notation needs to be clarified is correct, however binding it to the specific metamodel is not necessary.

Image: 
Search
The MagicDraw SysML Plugin Tutorial Overview