Data Representation
Model Notation |

The SEDRIS DRM is based on Rational's Unified Modeling Language (UML)
notation. The SEDRIS DRM uses some minor extensions (
Central to the UML notation is the concept of a class of data. A class
is an abstract, user-defined description of a type of data. It identifies
the attributes of the data and the operations that can be performed on
instances ( A class of data has a name, a set of attributes that describe its characteristics, and a set of operations that can be performed on the objects of that class. (NOTE: A "method" is an implementation of an operation.) In UML notation, a class is represented by a rectangular box having three segments. To minimize the amount of information on the SEDRIS DRM diagrams, all the attribute information is placed in the data dictionary. Since the data defined by the SEDRIS DRM are used to capture the contents of an environmental database, they do not experience dynamic changes. Therefore, no operations are defined for any of the SEDRIS classes of data. In the SEDRIS DRM diagrams, a class is represented by a single rectangle with the Class Name. The SEDRIS DRM contains two kinds of classes - abstract and concrete.
Abstract classes are never instantiated (
Critical items of information to be captured in the DRM diagrams are the logical relationships between the classes of data. There are three kinds of relationships between classes of data: association, inheritance, and aggregation. Each type of relationship is represented by a different notation.
A direct line between two classes denotes the weakest of relationships: association. The following notation indicates that every object in Class A is associated with exactly one object in Class B, and that every object in Class B is associated with exactly one object in Class A. (In SEDRIS, if one object is associated with another object, then the two objects are different representations of the same "real world" object.) Numerals are used at either end (or both ends) of the association relationship to convey multiplicity of each class. In the above notation, the numeral "1" means "exactly one". The "0..1" notation is used to denote "zero or one". The following notation indicates that every object in Class A is associated with zero or one object in Class B, and that every object in Class B is associated with exactly one object in Class A. The "0..*" notation is used to denote "zero or more"
( A numeral followed by a "..*" is used to denote a specific
"range" ( An "{ordered}" annotation is used to denote that a collection of objects is "ordered". Otherwise, a collection of objects is assumed to have no particular order. The following notation indicates that the ordering of the objects in Class B is important to the relationship shared between Class A and Class B. An "open arrow" is used to denote a "one-way" association. The following notation indicates that every object in Class A is associated with zero or more objects in Class B, and that every object in Class B is associated with exactly one object in Class A. However more importantly, this notation indicates that a Class A object will "know" what Class B objects with which it is associated, and that a Class B object will "not know" what Class A object with which it is associated. A "dashed line connected to the association relationship line"
is used to denote an "association" or "link" class,
indicating that the association relationship between two classes has its
own attributes. The following notation indicates that every object in Class
A is associated with zero or more objects in Class B, and that every object
in Class B is associated with exactly one object in Class A. It also indicates
that each (Class A, Class B)
A "solid line with a large hollow triangle" used to connect
lines between two classes denotes the generalization (or The following notation indicates that Class A is the Parent or Superclass, while Classes B and C are the Child or Subclasses. Objects in Classes B and C "inherit" the attributes of Class A (their parent), while having additional unique attributes of their own. This relationship is sometimes referred to as the "is-a" relationship - an object in Class B or Class C "is-a" type of Class A. There are no multiplicity numerals used with the generalization relationship, since the SEDRIS DRM does not support multiple inheritance. The "is-a" relationship is always one-to-one. (Excluding the representation of multiple inheritance relationships is a deviation from the UML notation.)
A "diamond" used to connect lines between two classes denotes the aggregation relationship. The following notation indicates that Class A is an aggregation of (or contains) objects of Class B. In other words, Class A "has-a" Class B. The aggregation relationship may also appear with multiplicity numerals, as described above.
The meaning of this notation is described below.
This section provides reference material that summarizes important information regarding the SEDRIS UML notation. Top of this
Page |

Last updated: October 8, 2004 |