<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://training-course-material.com/index.php?action=history&amp;feed=atom&amp;title=OCUP2I_02_Classification</id>
	<title>OCUP2I 02 Classification - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://training-course-material.com/index.php?action=history&amp;feed=atom&amp;title=OCUP2I_02_Classification"/>
	<link rel="alternate" type="text/html" href="https://training-course-material.com/index.php?title=OCUP2I_02_Classification&amp;action=history"/>
	<updated>2026-04-21T08:48:58Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://training-course-material.com/index.php?title=OCUP2I_02_Classification&amp;diff=45052&amp;oldid=prev</id>
		<title>Filip Stachecki: /* Instances⌘ */</title>
		<link rel="alternate" type="text/html" href="https://training-course-material.com/index.php?title=OCUP2I_02_Classification&amp;diff=45052&amp;oldid=prev"/>
		<updated>2016-10-21T11:37:44Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Instances⌘&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:Private]]&lt;br /&gt;
[[Category:OCUP2]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;noprint&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;slideshow style=&amp;quot;nobleprog&amp;quot; headingmark=&amp;quot;⌘&amp;quot; incmark=&amp;quot;…&amp;quot; scaled=&amp;quot;false&amp;quot; font=&amp;quot;Trebuchet MS&amp;quot; &amp;gt;&lt;br /&gt;
;title: UML 2.5 Certification - OCUP 2 Intermediate Exam Preparation&lt;br /&gt;
;author: &amp;lt;br/&amp;gt;Filip Stachecki (Filip@NobleProg.pl),presenter: Bernard Szlachta bs@nobleprog.co.uk&lt;br /&gt;
&amp;lt;/slideshow&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
==Module 2. Classification⌘==&lt;br /&gt;
===References⌘===&lt;br /&gt;
UML 2.5 specification:&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Chapter 9: Classification&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
** Classifiers&lt;br /&gt;
** Properties&lt;br /&gt;
** Operations&lt;br /&gt;
** Generalization Sets&lt;br /&gt;
** Instances&lt;br /&gt;
&lt;br /&gt;
===Classifiers⌘===&lt;br /&gt;
[[File:Feature.png]]&lt;br /&gt;
* A Classifier represents a classification of instances according to their Features. &lt;br /&gt;
* Classifiers are organized in hierarchies by Generalizations.&lt;br /&gt;
&lt;br /&gt;
===Properties⌘===&lt;br /&gt;
[[File:ClipCapIt-141022-114925.PNG]]&lt;br /&gt;
* Properties are Structural Features that represent:&lt;br /&gt;
** the attributes of Classifiers (when a property is owned by a Classifier other than an Association)&lt;br /&gt;
** the member Ends of Associations (roles)&lt;br /&gt;
** the parts of Structured Classifiers.&lt;br /&gt;
====Property Notation⌘====&lt;br /&gt;
[[File:ClipCapIt-141022-122321.PNG]]&lt;br /&gt;
 &amp;lt;property&amp;gt; ::= [&amp;lt;visibility&amp;gt;] [‘/’] &amp;lt;name&amp;gt; [‘:’ &amp;lt;prop-type&amp;gt;] [‘[‘ &amp;lt;multiplicity-range&amp;gt; ‘]’] &lt;br /&gt;
                [‘=’ &amp;lt;default&amp;gt;] [‘{‘ &amp;lt;prop-modifier &amp;gt; [‘,’ &amp;lt;prop-modifier &amp;gt;]* ’}’]&lt;br /&gt;
 &amp;lt;visibility&amp;gt; ::= ‘+’ | ‘-‘ | ‘#’ | ‘~’&lt;br /&gt;
 &amp;lt;prop-modifier&amp;gt; ::= ‘readOnly’ | ‘union’ | ‘subsets’ &amp;lt;property-name&amp;gt; &lt;br /&gt;
                      | ‘redefines’ &amp;lt;property-name&amp;gt; | ‘ordered’ | ‘unordered’ &lt;br /&gt;
                      | ‘unique’ | ‘nonunique’ | ‘seq’ &lt;br /&gt;
                      | ‘sequence’ | ‘id’ | &amp;lt;prop-constraint&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;inherited-property&amp;gt; ::= ’^’ &amp;lt;property&amp;gt;  [[File:ClipCapIt-141024-151711.PNG]]&lt;br /&gt;
=====Important Property Modifiers⌘=====&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;readOnly&amp;#039;&amp;#039;&amp;#039; means that the Property is read only.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;ordered&amp;#039;&amp;#039;&amp;#039; means that the Property is ordered, i.e., isOrdered = true.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;unordered&amp;#039;&amp;#039;&amp;#039; means that the Property is not ordered, i.e., isOrdered = false.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;unique&amp;#039;&amp;#039;&amp;#039; means that there are no duplicates in a multi-valued Property, i.e., isUnique = true.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;nonunique&amp;#039;&amp;#039;&amp;#039; means that there may be duplicates in a multi-valued Property, i.e., isUnique = false.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;id&amp;#039;&amp;#039;&amp;#039; means that the Property is part of the identifier for the class.&lt;br /&gt;
&lt;br /&gt;
===Operations⌘===&lt;br /&gt;
* An Operation is a &amp;#039;&amp;#039;&amp;#039;behavioral feature&amp;#039;&amp;#039;&amp;#039; of a classifier, which specifies name, type, parameters, and constraints&lt;br /&gt;
* can have preconditions and postconditions&lt;br /&gt;
* can have a type (the type of the return parameter)&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bnf&amp;quot;&amp;gt;&lt;br /&gt;
[&amp;lt;visibility&amp;gt;] &amp;lt;name&amp;gt; ‘(‘ [&amp;lt;parameter-list&amp;gt;] ‘)’ [‘:’ [&amp;lt;return-type&amp;gt;] &lt;br /&gt;
[‘[‘ &amp;lt;multiplicity-range&amp;gt; ‘]’] [‘{‘ &amp;lt;oper-property&amp;gt; [‘,’ &amp;lt;oper-property&amp;gt;]* ‘}’]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;parameter-list&amp;gt; ::= &amp;lt;parameter&amp;gt; [‘,’&amp;lt;parameter&amp;gt;]*&lt;br /&gt;
&lt;br /&gt;
&amp;lt;parameter&amp;gt; ::= [&amp;lt;direction&amp;gt;] &amp;lt;parameter-name&amp;gt; ’:’ &amp;lt;type-expression&amp;gt; &lt;br /&gt;
             [’[’&amp;lt;multiplicity-range&amp;gt;’]’] [’=’ &amp;lt;default&amp;gt;]&lt;br /&gt;
             [’{’ &amp;lt;parm-property&amp;gt; [’,’ &amp;lt;parm-property&amp;gt;]* ’}’]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;direction&amp;gt; ::= ’in’ | ’out’ | ’inout’ (defaults to ’in’ if omitted)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;oper-property&amp;gt; ::= ‘redefines’ &amp;lt;oper-name&amp;gt; | ‘query’ | ‘ordered’ | ‘unordered’ &lt;br /&gt;
       | ‘unique’ | ‘nonunique’ | ‘seq’ | ‘sequence’ | &amp;lt;oper-constraint&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
====Operation examples⌘====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
 +createWindow (location: Coordinates, container: Container [0..1]): Window&lt;br /&gt;
 +toString (): String&lt;br /&gt;
 +toString(return : String)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Generalization Sets⌘===&lt;br /&gt;
[[File:ClipCapIt-161021-114605.PNG]]&lt;br /&gt;
* GeneralizationSet provides a way to group Generalizations into orthogonal dimensions.&lt;br /&gt;
* A GeneralizationSet may be associated with a Classifier called its powertype. &lt;br /&gt;
* These techniques provide additional power for organizing classification hierarchies.&lt;br /&gt;
* If &amp;#039;&amp;#039;&amp;#039;isCovering&amp;#039;&amp;#039;&amp;#039; is true, then every instance of the general Classifier is an instance of (at least) one of the specific Classifiers. &lt;br /&gt;
* If &amp;#039;&amp;#039;&amp;#039;isDisjoint&amp;#039;&amp;#039;&amp;#039; is true, then no instance of any of the specific Classifiers may also be an instance of any other of the specific Classifiers. By default, both properties are false.&lt;br /&gt;
====Generalization Sets Notation⌘====&lt;br /&gt;
[[File:ClipCapIt-161021-123637.PNG]]&lt;br /&gt;
====Generalization Sets constraints⌘====&lt;br /&gt;
[[File:ClipCapIt-161021-123755.PNG]]&lt;br /&gt;
&lt;br /&gt;
The constraints may appear in either order: {complete, disjoint} is equivalent to {disjoint, complete}. The default values are {incomplete, overlapping}. If only one constraint is shown, the other takes its default value.&lt;br /&gt;
====Generalization Sets examples⌘====&lt;br /&gt;
[[File:ClipCapIt-161021-132914.PNG]]&lt;br /&gt;
&lt;br /&gt;
===Instances⌘===&lt;br /&gt;
[[File:InstanceSpecification.png]]&lt;br /&gt;
* An &amp;#039;&amp;#039;&amp;#039;Instance Specification&amp;#039;&amp;#039;&amp;#039; is a model element that represents an instance in a modeled system.&lt;br /&gt;
* May be partial or complete representations of the instances that it corresponds to.&lt;br /&gt;
* May represent an instance at a point in time (a snapshot).&lt;br /&gt;
* Instance Specification &amp;#039;&amp;#039;&amp;#039;is a model element&amp;#039;&amp;#039;&amp;#039; and should not be confused with the instance that it is modeling.&lt;br /&gt;
====Instance Specification Example⌘====&lt;br /&gt;
[[File:ClipCapIt-160407-122818.PNG]]&lt;br /&gt;
&lt;br /&gt;
InstanceSpecification with Slots.&lt;br /&gt;
* A Slot specifies that an instance modeled by an Instance Specification has a value or values for a specific StructuralFeature&lt;/div&gt;</summary>
		<author><name>Filip Stachecki</name></author>
	</entry>
</feed>