Supported UML specification changes include:

Metamodel Changes

Metamodel ChangeDescription / Comment
DATA TYPES ADDED
RealAdded to the PrimitiveTypes package. You can now use values of a real type in your models.
METACLASSES ADDED
LiteralRealSpecifies the real value.
METACLASSES CHANGED
DestructionEvent → DestructionOccurrenceSpecificationThe DestructionEvent class has been renamed to DestructionOccurrenceSpecification. It represents the destruction of an instance described by the lifeline that contains this instance.
DestructionOccurrenceSpecification is a specialization of MessageOccurrenceSpecification.
METACLASSES REMOVED
ExecutionEventThese metaclasses have been removed from the Interactions package due to unsupported event types.
CreationEvent
ReceiveOperationEvent
ReceiveSignalEvent
SendOperationEvent
SendSignalEvent
PROPERTIES ADDED
Package::URI:String[0..1] {id}Provides the package with an identifier that can be used for many purposes. URI is the universally unique identification of the package following the IETF URI specification, RFC 2396 http://www.ietf.org/rfc/rfc2396.txt and it must comply with those syntax rules. You can now specify this property for packages, profiles, and models. For the notation of the URI property, see Notation Changes.
Property::isID:Boolean=FalseIndicates that the property can be used to uniquely identify an instance of the containing class, when the value is set to true. The default value is false. For the notation of the isID property modifier, see Notation Changes.
InteractionUse::returnValue:ValueSpecification [0..1]Specifies the value returned by the executed interaction.
InteractionUse::returnValueRecipient:Property [0..1]Specifies the recipient of the value which is returned by the executed interaction.
EnumerationLiteral::/classifier:Enumaration[1]The classifier of this EnumerationLiteral should now be equal to the enumeration that contains this enumeration literal. Redefines InstanceSpecification::classifier.
ASSOCIATIONS REMOVED
ExecutionOccurrenceSpecification::event: ExecutionEvent[1]The association from ExecutionOccurrenceSpecification to ExecutionEvent has been removed, as the ExecutionEvent metaclass does not exist in the UML 2.4.1
OccurenceSpecification::event:Event[1]The specification of the occurring event is not referenced any more.
BehavioredClassifier::ownedTrigger:Trigger[0..*]Trigger descriptions owned by a classifier are not referenced any more.
SUBSETTING CHANGES
Interface::redefinedInterface {subsets redefinedElement → redefinedClassifier}An interface now references all the interfaces that are redefined by this interface.
SUBSETTING ADDED
Note: These features were already available in earlier versions of MagicDraw.
Duration::expr:ValueSpecification[0..1] {subsets Element::ownedElement}Element or elements can be selected or created only under the owned element’s scope.
LinkEndData::qualifier:QualifierValue[*] {subsets Element::ownedElement}
LinkAction::endData:LinkEndData[2..*] {subsets Element::ownedElement}
CreateLinkAction::endData:LinkEndCreationData[0..*] {subsets Element::ownedElement}
DestroyLinkAction::endData:LinkEndDestructionData[2..*] {subsets Element::ownedElement}
TimeExpression::expr:ValueSpecification[0..1] {subsets Element::ownedElement}
ValuePin::value:ValueSpecification[1] {subsets Element::ownedElement}
State::deferrableTrigger:Trigger[0..*] {subsets Element::ownedElement}
StructuredActivityNode::edge:ActivityEdge[0..*] {subsets Element::ownedElement}
StructuredActivityNode::node:ActivityNode[0..*] {subsets Element::ownedElement}
ValueSpecificationAction::value: ValueSpecification[1] {subsets Element::ownedElement}
AcceptEventAction::trigger:Triger[1..*] {subsets Element::ownedElement}
Stereotype::icon:Image[0..*] {subsets Element::ownedElement}
TimeEvent::when:TimeExpression[1] {subsets Element::ownedElement}
InteractionUse::argument:ValueSpecification[*] {subsets Element::ownedElement}
StructuredActivityNode::node:ActivityNode [0..*] {subsets Element::ownedElement}
SequenceNode::executableNode: ExecutableNode[0..*] {subsets Element::ownedElement}
Transition::trigger:Trigger[0..*] {subsets Element::ownedElement}
Classifier::/feature {subsets Namespace::member}The /feature property of Classifier is now included as a part of the member property.
Feature::/featuringClassifier {subsets NamedElement::memberNamespace}The /featuringClassifier property of Feature is now included as a part of the memberNamespace property.
Property::owningAssociation {subsets RedefinableElement::redefinitionContext}A property now references the owning association of this property.
DEFAULT VALUE CHANGES
DurationObservation::firstEvent:Boolean[0..2] =TrueThe default value has been removed. In effect, the value of the firstEvent property is now by default empty.
DurationConstraint::firstEvent:Boolean[0..2] =True
PackageableElement::visibility:VisibilityKind[1] =False → PublicThe default value of this property has been changed to Public.This means that packageable elements are now by default public.
MULTIPLICITY CHANGES
EnumerationLiteral::enumeration:Enumeration [0..1] → [1]The Enumeration must now be specified. It has become mandatory.
Multiplicity of ExecutionSpecification association with ExecutionOccurrenceSpecification: [1] → [0..2]ExecutionSpecification is now associated with two ExecutionOccurrenceSpecifications:
  • The start ExecutionOccurrenceSpecification that designates the start of an action or behavior.
  • The finish ExecutionOccurrenceSpecification that designates the finish of an action or behavior.
DERIVATION CHANGES
Constraint::/context → contextThe context property of the constraint is no longer derived. It is now a settable property.
Message::/signature → signatureThe signature of the message is no longer derived. However, it remains read-only.

Notation changes

  1. If there is a value defined for the URI property of a package, model, or profile, it is automatically displayed on the corresponding shape. The following figure depicts an example of the package notation with the URI property value defined:

  2. If the isID property is set to true for the selected attribute, the {id} modifier is displayed in the property modifiers group on the class shape. The following figure depicts an example of the attribute notation when the isID property is set to true:

  3. The name of a synchronous message is now displayed on a diagram pane, even if the message does not have a signal or an operation assigned. The following figure depicts an example of the synchronous message name notation:

  4. Brackets “()” are no more added to a call message name if the message does not have a signal or an operation assigned. The following figure depicts an example of the call message name notation: