Model Extension Report
Model Extension
Magic Library
Revision: 1.0
November 13, 2007

Approval
The original of this document is approved and signed by:
Name: 
Surname: 
Title: 
Date: 
Signature:	
Revision History
Revision	Date	Description	Author	
1.0	November 13, 2007	Initial Version Created	No Magic	
 
Table of Contents
1. Introduction	4
1.1. Purpose	4
1.2. Scope	4
1.3. Overview	4
2. Profile: DSL Customization	4
Description:	4
Stereotypes	4
Property Stereotypes	5
Global Constraints	5
3. Profile: MagicDraw Profile	5
Description:	5
Stereotypes	5
Property Stereotypes	8
Global Constraints	10
4. Profile: UML Standard Profile	10
Description:	10
Stereotypes	10
Property Stereotypes	25
Global Constraints	26
5. Profile: Validation Profile	26
Description:	26
Stereotypes	26
Property Stereotypes	27
Global Constraints	28

1. Introduction
1.1. Purpose
This Document describes Model Extension Report
1.2. Scope
This Document intends to describe Model Extension Report for Profile
1.3. Overview
NA

2. Profile: DSL Customization
Description:
NA
Stereotypes
Stereotype	Metaclass	Owner	Properties	Constraints	Description	
Customization	•	Class
	UML Standard Profile::MagicDraw Profile::DSL Customization	•	base_Class
	NA	NA	
grouped	•	Property
	UML Standard Profile::MagicDraw Profile::DSL Customization	•	base_Property
•	group
	NA	NA	
metaProperty	•	Property
	UML Standard Profile::MagicDraw Profile::DSL Customization	•	base_Property
•	newName
•	newTypes
•	suggestedValues
	NA	NA	
propertyGroup	•	Property
	UML Standard Profile::MagicDraw Profile::DSL Customization	•	base_Property
•	columns
•	properties
•	useAsNode
	NA	NA	
suggestedStringValues	•	Property
	UML Standard Profile::MagicDraw Profile::DSL Customization	•	base_Property
	NA	NA	
suggestedValues	•	Property
	UML Standard Profile::MagicDraw Profile::DSL Customization	•	base_Property
	NA	NA	
Property Stereotypes
Property	Stereotype	Type	Multiplicity	Description	
base_Class	Customization	Property	NA	NA	
base_Property	grouped	Property	NA	NA	
base_Property	metaProperty	Property	NA	NA	
base_Property	propertyGroup	Property	NA	NA	
base_Property	suggestedValues	Property	NA	NA	
base_Property	suggestedStringValues	Property	NA	NA	
columns	propertyGroup	Property	1..*	NA	
group	grouped	Property	NA	NA	
newName	metaProperty	Property	NA	NA	
newTypes	metaProperty	Property	*..*	NA	
properties	propertyGroup	Property	*..*	NA	
suggestedValues	metaProperty	Property	*..*	NA	
useAsNode	propertyGroup	Property	NA	NA	
Global Constraints
NA
3. Profile: MagicDraw Profile
Description:
MagicDraw Profile contains UML extensions used in MagicDraw internal mechanisms and some features based on UML extensions.
Stereotypes
Stereotype	Metaclass	Owner	Properties	Constraints	Description	
autoGeneratedName	•	NamedElement
	UML Standard Profile::MagicDraw Profile	•	base_NamedElement
	NA	NA	
auxiliaryResource	•	Package
	UML Standard Profile::MagicDraw Profile	•	base_Package
	NA	NA	
conceptualView	•	Diagram
	UML Standard Profile::MagicDraw Profile	•	base_Diagram
•	conceptualViewID
	NA	NA	
constructor	•	Operation
	UML Standard Profile::MagicDraw Profile	•	base_Operation
	NA	NA	
deploymentView	•	Diagram
	UML Standard Profile::MagicDraw Profile	•	base_Diagram
•	deploymentViewID
	NA	NA	
designModel	•	Diagram
	UML Standard Profile::MagicDraw Profile	•	base_Diagram
•	designModelID
	NA	NA	
destructor	•	Operation
	UML Standard Profile::MagicDraw Profile	•	base_Operation
	NA	NA	
DiagramInfo	•	Diagram
	UML Standard Profile::MagicDraw Profile	•	Author
•	base_Diagram
•	Creation date
•	Modification date
	NA	NA	
fileView	•	Package
	UML Standard Profile::MagicDraw Profile	•	base_Package
	NA	NA	
getter	•	Operation
	UML Standard Profile::MagicDraw Profile	•	base_Operation
•	getter/setter for attribute
	NA	NA	
hasGroupName	•	Property
	UML Standard Profile::MagicDraw Profile	•	base_Property
•	groupName
	NA	NA	
HyperlinkOwner	•	Element
	UML Standard Profile::MagicDraw Profile	•	base_Element
•	hyperlinkModel
•	hyperlinkModelActive
•	hyperlinkText
•	hyperlinkTextActive
	NA	NA	
iconHolder	•	Enumeration
	UML Standard Profile::MagicDraw Profile	•	base_Enumeration
	NA	NA	
implementationModel	•	Diagram
	UML Standard Profile::MagicDraw Profile	•	base_Diagram
•	implementationModelID
	NA	NA	
InvisibleStereotype	•	Element
	UML Standard Profile::MagicDraw Profile	•	base_Element
	NA	NA	
processView	•	Diagram
	UML Standard Profile::MagicDraw Profile	•	base_Diagram
•	processViewID
	NA	NA	
SDDSubsystem	•	Component
•	Package
	UML Standard Profile::MagicDraw Profile	•	base_Component
•	base_Package
•	subsystemInteractions
•	subsystemResources
	NA	NA	
setter	•	Operation
	UML Standard Profile::MagicDraw Profile	•	base_Operation
•	getter/setter for attribute
	NA	NA	
tagGroup	•	Property
	UML Standard Profile::MagicDraw Profile	•	base_Property
	NA	This stereotype should be applied to tag definition which values describes group names of other tag definitions.
Used for tags grouping in MagicDraw model elements specifications, TaggedValues tabs.	
TODO_Owner	•	Element
	UML Standard Profile::MagicDraw Profile	•	base_Element
•	TODO
	NA	NA	
typeModifier	•	Element
	UML Standard Profile::MagicDraw Profile	•	base_Element
•	typeModifier
	NA	NA	
useCaseModel	•	Model
	UML Standard Profile::MagicDraw Profile	•	base_Model
	NA	A use case model specifies the services a system provides to its users; that is, the different ways of using the system, and whose top-level package is a use case system.	
useCaseView	•	Diagram
	UML Standard Profile::MagicDraw Profile	•	base_Diagram
•	useCaseViewID
	NA	NA	
virtual	•	Dependency
	UML Standard Profile::MagicDraw Profile	•	base_Dependency
•	details
•	n
	NA	NA	
Property Stereotypes
Property	Stereotype	Type	Multiplicity	Description	
Author	DiagramInfo	Property	1..1	NA	
base_Component	SDDSubsystem	Property	NA	NA	
base_Dependency	virtual	Property	NA	NA	
base_Diagram	DiagramInfo	Property	NA	NA	
base_Diagram	useCaseView	Property	NA	NA	
base_Diagram	deploymentView	Property	NA	NA	
base_Diagram	designModel	Property	NA	NA	
base_Diagram	implementationModel	Property	NA	NA	
base_Diagram	conceptualView	Property	NA	NA	
base_Diagram	processView	Property	NA	NA	
base_Element	InvisibleStereotype	Property	NA	NA	
base_Element	TODO_Owner	Property	NA	NA	
base_Element	HyperlinkOwner	Property	NA	NA	
base_Element	typeModifier	Property	NA	NA	
base_Enumeration	iconHolder	Property	NA	NA	
base_Model	useCaseModel	Property	NA	NA	
base_NamedElement	autoGeneratedName	Property	NA	NA	
base_Operation	setter	Property	NA	NA	
base_Operation	constructor	Property	NA	NA	
base_Operation	destructor	Property	NA	NA	
base_Operation	getter	Property	NA	NA	
base_Package	fileView	Property	NA	NA	
base_Package	SDDSubsystem	Property	NA	NA	
base_Package	auxiliaryResource	Property	NA	NA	
base_Property	tagGroup	Property	NA	NA	
base_Property	hasGroupName	Property	NA	NA	
conceptualViewID	conceptualView	Property	1..1	NA	
Creation date	DiagramInfo	Property	1..1	NA	
deploymentViewID	deploymentView	Property	1..1	NA	
designModelID	designModel	Property	1..1	NA	
details	virtual	Property	*..*	NA	
getter/setter for attribute	setter	Property	1..1	NA	
getter/setter for attribute	getter	Property	1..1	NA	
groupName	hasGroupName	Property	NA	NA	
hyperlinkModel	HyperlinkOwner	Property	0..*	NA	
hyperlinkModelActive	HyperlinkOwner	Property	0..1	NA	
hyperlinkText	HyperlinkOwner	Property	0..*	NA	
hyperlinkTextActive	HyperlinkOwner	Property	0..1	NA	
implementationModelID	implementationModel	Property	1..1	NA	
Modification date	DiagramInfo	Property	1..1	NA	
n	virtual	Property	NA	NA	
processViewID	processView	Property	1..1	NA	
subsystemInteractions	SDDSubsystem	Property	1..1	NA	
subsystemResources	SDDSubsystem	Property	1..1	NA	
TODO	TODO_Owner	Property	0..0	Specifies TO DO list for ModelElement.	
typeModifier	typeModifier	Property	NA	NA	
useCaseViewID	useCaseView	Property	1..1	NA	
Global Constraints
NA
4. Profile: UML Standard Profile
Description:
NA
Stereotypes
Stereotype	Metaclass	Owner	Properties	Constraints	Description	
assembly	•	Dependency
	UML Standard Profile::UML Standard Profile	•	base_Dependency
	NA	NA	
auxiliary	•	Class
	UML Standard Profile::UML Standard Profile	•	base_Class
	NA	A class that supports another more central or fundamental
class, typically by implementing secondary logic or control
flow. The class that the auxiliary supports may be defined
explicitly using a Focus class or implicitly by a dependency
relationship. Auxiliary classes are typically used together
with Focus classes, and are particularly useful for specifying
the secondary business logic or control flow of components
during design. See also: «focus».	
boundary	•	Class
	UML Standard Profile::UML Standard Profile	•	base_Class
	NA	A boundary is a class that lies on the periphery of a system, but within it. It interacts with actors outside the system as well as with entity, control, and other boundary classes within the system.	
buildComponent	•	Component
	UML Standard Profile::UML Standard Profile	•	base_Component
	NA	A collection of elements defined for the purpose of system level decelopment activities, such as compilation and versioning.	
call	•	Usage
	UML Standard Profile::UML Standard Profile	•	base_Usage
	NA	A usage dependency whose source is an operation and
whose target is an operation. The relationship may also be
subsumed to the class containing an operation, with the
meaning that there exists an operation in the class to which
the dependency applies.
A call dependency specifies that the source operation or an
operation in the source class invokes the target operation or
an operation in the target class. A call dependency may
connect a source operation to any target operation that is
within scope including, but not limited to, operations of the
enclosing classifier and operations of other visible
classifiers.	
control	•	Class
	UML Standard Profile::UML Standard Profile	•	base_Class
	NA	A control is a class whose objects manage interactions between collections of objects.
A control class usually has behavior that is specific for one use case, and a control object usually does not outlive the use case realizations in which it participates.	
create	•	BehavioralFeature
•	Usage
	UML Standard Profile::UML Standard Profile	•	base_BehavioralFeature
•	base_Usage
	NA	A usage dependency denoting that the client classifier
creates instances of the supplier classifier.
Specifies that the designated feature creates an instance of the classifier to which the feature is attached. May be promoted to the Classifier containing the feature.	
delegate	•	Dependency
	UML Standard Profile::UML Standard Profile	•	base_Dependency
	NA	NA	
derive	•	Abstraction
	UML Standard Profile::UML Standard Profile	•	base_Abstraction
	NA	Specifies a derivation relationship among model elements
that are usually, but not necessarily, of the same type. A
derived dependency specifies that the client may be
computed from the supplier. The mapping specifies the
computation. The client may be implemented for design
reasons, such as efficiency, even though it is logically
redundant.	
destroy	•	BehavioralFeature
	UML Standard Profile::UML Standard Profile	•	base_BehavioralFeature
	NA	Specifies that the designated feature destroys an instance of the classifier to which the feature is attached. May be promoted to the classifier containing the feature.	
document	•	Artifact
	UML Standard Profile::UML Standard Profile	•	base_Artifact
	NA	A generic file that is not a «source» file or «executable».
Subclass of «file».	
entity	•	Class
	UML Standard Profile::UML Standard Profile	•	base_Class
	NA	A persistent information component representing a business
concept.	
executable	•	Artifact
	UML Standard Profile::UML Standard Profile	•	base_Artifact
	NA	Denotes a program that may be run on a node.
Denotes a program file that can be executed on a computer system.Subclass of <<file>>.	
file	•	Artifact
	UML Standard Profile::UML Standard Profile	•	base_Artifact
	NA	A physical file in the context of the system developed.	
focus	•	Class
	UML Standard Profile::UML Standard Profile	•	base_Class
	NA	A class that defines the core logic or control flow for one or
more auxiliary classes that support it. Support classes may be
defined explicitly using Auxiliary classes or implicitly by
dependency relationships. Focus classes are typically used
together with one or more Auxiliary classes, and are
particularly useful for specifying the core business logic or
control flow of components during design. See also:
«auxiliary».	
framework	•	Package
	UML Standard Profile::UML Standard Profile	•	base_Package
	NA	A package that contains model elements which specify a
reusable architecture for all or part of a
system. Frameworks typically include classes, patterns or
templates. When frameworks are specialized for an
application domain, they are sometimes referred to as
application frameworks.	
implement	•	Component
	UML Standard Profile::UML Standard Profile	•	base_Component
	NA	A component definition that is not intended to have a
specification itself. Rather, it is an implementation for a
separate «specification» to which it has a Dependency.	
implementationClass	•	Class
	UML Standard Profile::UML Standard Profile	•	base_Class
	NA	The implementation of a class in some programming
language (e.g., C++, Smalltalk, Java) in which an instance
may not have more than one class. This is in contrast to
Class, for which an instance may have multiple classes at one
time and may gain or lose classes over time, and an object (a
child of instance) may dynamically
have multiple classes.
An Implementation class is said to realize a Classifier if it
provides all of the operations defined for the Classifier with
the same behavior as specified for the Classifier's operations.
An Implementation Class may realize a number of different
Types. Note that the physical attributes and associations of
the Implementation class do not have to be the same as those
of any Classifier it realizes and that the Implementation
Class may provide methods for its operations in terms of its
physical attributes and associations. See also: «type».	
instantiate	•	Usage
	UML Standard Profile::UML Standard Profile	•	base_Usage
	NA	A usage dependency among classifiers indicating that
operations on the client create instances of the supplier.	
library	•	Artifact
	UML Standard Profile::UML Standard Profile	•	base_Artifact
	NA	Denotes a static or dynamic library.
Denotes a static or dynamic library file. Subclass of <<file>>.	
metamodel	•	Model
	UML Standard Profile::UML Standard Profile	•	base_Model
	NA	A model of a model, that typically contains metaclasses.	
modelLibrary	•	Package
	UML Standard Profile::UML Standard Profile	•	base_Package
	NA	A package that contains model elements which are inteded to
be reused by other packages. Model libraries are frequently
used in conjunction with applied profiles. This is expressed
by defining a dependency between a profile and a model
library package, or by defining a model library as contained
in a profile package. The classes in a model library are not
stereotypes and tagged definitions extending the metamodel.
A model library is analogous to a class library in some
programming languages.
When a model library is defined as a part of a profile, it is
imported or deleted with the application or removal of the
profile. The profile is implicitly applied to its model library.
In the other case, when the model library is defined as an
external package imported by a profile, the profile requires
that the model library be there in the model at the stage of the
profile application. The application or the removal of the
profile does not affect the presence of the model library
elements.	
process	•	Component
	UML Standard Profile::UML Standard Profile	•	base_Component
	NA	A transaction based component.	
realization	•	Classifier
	UML Standard Profile::UML Standard Profile	•	base_Classifier
	NA	A classifier that specifies a domain of objects and that also
defines the physical implementation of those objects. For
example, a Component stereotyped by «realization» will
only have realizing Classifiers that implement behavior
specified by a separate «specification» Component. See
«specification». This differs from «implementation class»
because an «implementation class» ia a realization of a Class
which can have features such as attributes and methods
which is useful to system designers.	
refine	•	Abstraction
	UML Standard Profile::UML Standard Profile	•	base_Abstraction
	NA	Specifies a refinement relationship between model elements
at different semantic levels, such as analysis and design. The
mapping specifies the relationship between the two elements
or sets of elements. The mapping may or may not be
computable, and it may be unidirectional or bidirectional.
Refinement can be used to model transformations from
analysis to design and other such changes.	
responsibility	•	Usage
	UML Standard Profile::UML Standard Profile	•	base_Usage
	NA	A contract or an obligation of an element in its relationship
to other elements.	
script	•	Artifact
	UML Standard Profile::UML Standard Profile	•	base_Artifact
	NA	A script file that can be interpreted by a computer system.
Subclass of «file».	
send	•	Usage
	UML Standard Profile::UML Standard Profile	•	base_Usage
	NA	A usage dependency whose source is an operation and
whose target is a signal, specifying that the source sends the
target signal.	
service	•	Component
	UML Standard Profile::UML Standard Profile	•	base_Component
	NA	A stateless, functional component (computes a value).	
source	•	Artifact
	UML Standard Profile::UML Standard Profile	•	base_Artifact
	NA	Denotes a source file that can be compiled into an executable file.Subclass of <<file>>.	
specification	•	Classifier
	UML Standard Profile::UML Standard Profile	•	base_Classifier
	NA	A classifier that specifies a domain of objects without
defining the physical implementation of those objects. For
example, a Component stereotyped by «specification» will
only have provided and required interfaces, and is not
intended to have any realizingClassifiers as part of its
definition. This differs from «type» because a «type» can
have features such as attributes and methods which is useful
to analysts modeling systems. Also see: «realization»	
subsystem	•	Component
	UML Standard Profile::UML Standard Profile	•	base_Component
	NA	A unit of hierarchical decomposition for large systems. A
subsystem is commonly instantiated indirectly. Definitions
of subsystems vary widely among domains and methods,
and it is expected that domain and method profiles will
specialize this construct. A subsystem may be defined to
have specification and realization elements. See also:
«specification» and «realization».	
systemModel	•	Model
	UML Standard Profile::UML Standard Profile	•	base_Model
	NA	A systemModel is a stereotyped model that contains a
collection of models of the same physical system. A
systemModel also contains all relationships and
constraints between model elements contained in
different models.	
trace	•	Abstraction
	UML Standard Profile::UML Standard Profile	•	base_Abstraction
	NA	Specifies a trace relationship between model elements or sets
of model elements that represent the same concept in
different models. Traces are mainly used for tracking
requirements and changes across models. Since model
changes can occur in both directions, the directionality of the
dependency can often be ignored. The mapping specifies the
relationship between the two, but it is rarely computable and
is usually informal.	
type	•	Class
	UML Standard Profile::UML Standard Profile	•	base_Class
	NA	A class that specifies a domain of objects together with the
operations applicable to the objects, without defining the
physical implementation of those objects. However, it may
have attributes and associations. Behavioral specifications
for type operations may be expressed using, for example,
activity diagrams. An object may have at most one
implementation class, however it may conform to multiple
different types. See also: «implementationClass».	
utility	•	Class
	UML Standard Profile::UML Standard Profile	•	base_Class
	NA	A class that has no instances, but rather denotes a named
collection of non-member attributes and operations, all of
which are class-scoped.	
Property Stereotypes
Property	Stereotype	Type	Multiplicity	Description	
base_Abstraction	derive	Property	NA	NA	
base_Abstraction	refine	Property	NA	NA	
base_Abstraction	trace	Property	NA	NA	
base_Artifact	source	Property	NA	NA	
base_Artifact	executable	Property	NA	NA	
base_Artifact	library	Property	NA	NA	
base_Artifact	document	Property	NA	NA	
base_Artifact	script	Property	NA	NA	
base_Artifact	file	Property	NA	NA	
base_BehavioralFeature	create	Property	NA	NA	
base_BehavioralFeature	destroy	Property	NA	NA	
base_Class	utility	Property	NA	NA	
base_Class	boundary	Property	NA	NA	
base_Class	implementationClass	Property	NA	NA	
base_Class	auxiliary	Property	NA	NA	
base_Class	entity	Property	NA	NA	
base_Class	control	Property	NA	NA	
base_Class	focus	Property	NA	NA	
base_Class	type	Property	NA	NA	
base_Classifier	specification	Property	NA	NA	
base_Classifier	realization	Property	NA	NA	
base_Component	implement	Property	NA	NA	
base_Component	process	Property	NA	NA	
base_Component	service	Property	NA	NA	
base_Component	buildComponent	Property	NA	NA	
base_Component	subsystem	Property	NA	NA	
base_Dependency	assembly	Property	NA	NA	
base_Dependency	delegate	Property	NA	NA	
base_Model	metamodel	Property	NA	NA	
base_Model	systemModel	Property	NA	NA	
base_Package	modelLibrary	Property	NA	NA	
base_Package	framework	Property	NA	NA	
base_Usage	responsibility	Property	NA	NA	
base_Usage	create	Property	NA	NA	
base_Usage	instantiate	Property	NA	NA	
base_Usage	call	Property	NA	NA	
base_Usage	send	Property	NA	NA	
Global Constraints
Name	Specification	Context	Description	Constraint Element	
xor	xor	UML Standard Profile	The xor constraint is applied to a set of associations, specifying that
over that set, exactly one is manifest for each associated instance. Xor is
an exclusive or (not inclusive or) constraint.	NA	
5. Profile: Validation Profile
Description:
NA
Stereotypes
Stereotype	Metaclass	Owner	Properties	Constraints	Description	
debugIcon	•	EnumerationLiteral
	UML Standard Profile::Validation Profile	•	base_EnumerationLiteral
	NA	NA	
definition	•	Constraint
	UML Standard Profile::Validation Profile	•	base_Constraint
	NA	NA	
errorIcon	•	EnumerationLiteral
	UML Standard Profile::Validation Profile	•	base_EnumerationLiteral
	NA	NA	
fatalIcon	•	EnumerationLiteral
	UML Standard Profile::Validation Profile	•	base_EnumerationLiteral
	NA	NA	
imaged	•	EnumerationLiteral
	UML Standard Profile::Validation Profile	•	base_EnumerationLiteral
•	highlightColor
	NA	NA	
infoIcon	•	EnumerationLiteral
	UML Standard Profile::Validation Profile	•	base_EnumerationLiteral
	NA	NA	
invariant	•	Constraint
	UML Standard Profile::Validation Profile	•	base_Constraint
	NA	NA	
validationRule	•	Constraint
	UML Standard Profile::Validation Profile	•	abbreviation
•	base_Constraint
•	errorMessage
•	severity
	NA	NA	
validationSuite	•	Package
	UML Standard Profile::Validation Profile	•	base_Package
	NA	NA	
warningIcon	•	EnumerationLiteral
	UML Standard Profile::Validation Profile	•	base_EnumerationLiteral
	NA	NA	
Property Stereotypes
Property	Stereotype	Type	Multiplicity	Description	
abbreviation	validationRule	Property	0..1	NA	
base_Constraint	validationRule	Property	NA	NA	
base_Constraint	invariant	Property	NA	NA	
base_Constraint	definition	Property	NA	NA	
base_EnumerationLiteral	imaged	Property	NA	NA	
base_EnumerationLiteral	debugIcon	Property	NA	NA	
base_EnumerationLiteral	infoIcon	Property	NA	NA	
base_EnumerationLiteral	warningIcon	Property	NA	NA	
base_EnumerationLiteral	errorIcon	Property	NA	NA	
base_EnumerationLiteral	fatalIcon	Property	NA	NA	
base_Package	validationSuite	Property	NA	NA	
errorMessage	validationRule	Property	0..1	NA	
highlightColor	imaged	Property	0..1	NA	
severity	validationRule	Property	1..1	NA	
Global Constraints
NA