Clickable Business Models eBusiness Education Acronyms Cross References
B2B Content Standards EC Technology Standards Glossary Implementation Guidelines
Implementation Options General Recommendations References Methodology/Legends
 Home | Copyright Notice and Legal Disclaimers | Navigation Help | Tour! | Downloads | Contact Us | Site Index | Search
Methodology | Legends | Conventions Used in EIDX Documentation | EIDX's Use of UML Class Diagrams | Procedures and Templates

EIDX's use of UML Class Diagrams

On this Page:

 

Also Recommended:

 

 

The UML Class Diagrams done on this web site are conceptual models, and not necessarily represent how we would do UML class diagrams for conversion to XML DTDs or XML Schema. 

Notation used  is as follows:

Relationships

Symbol Relationship Type Means
inheritance.jpg (1331 bytes) Inheritance This is the "is a type of," relationship, and means that the object on the none-arrow end inherits all the objects on the arrow-end.  In the example below, Discrete_Purchase_Order and Blanket_Order_Qty_Firm are types of Purchase_Order_Documents.

Purchase_Order_Document may be an abstract class that cannot be instantiated - you can't produce a "Purchase_Order_Document; it exists only to define attributes that are common to two or more other things.

You can instantiate (produce) an actual Discrete_Purchase_Order or Blanket_Order_Qty_Firm, which each inherit all the attributes of Purchase_Order_Document.

The terms "Generalization" and "Specialization" are also used.  The object on the arrow-end is a generalization, and the object(s) on the none-arrow end are specializations.  Discrete_Purchase_Order is a specialization of Purchase_Order_Document.

Multiplicity is not denoted; the relationship in inheritance is always 1:1.

Synonyms The terms "Generalization" and "Specialization" are also used.  The object on the arrow-end is a generalization, and the object(s) on the none-arrow end are specializations.  Discrete_Purchase_Order is a specialization of Purchase_Order_Document.
aggregate.jpg (1626 bytes) Aggregation This is the "has a" type of relationship.  The objects on the diamond end "have" the object(s) on the arrow end of the line.  In aggregation, if the object(s) on the diamond end are "destroyed", the objects on the arrow end are not destroyed - they can exist separately from the object(s) on the diamond end.

The difference between aggregation and composition may be subjective, especially when dealing with groupings of data objects used in business document definitions.  Does Receipt_Data cease to exist if Line_Item_Comsumption_Plan ceases to exist?  The example below suggests that if Line_Item_Consumption_Plan is destroyed, Receipt_Data could still exist by itself.   In the second example, both Replenishment Scenarios "have" Order Model 2 in them.  If the Replenishment Scenarios are destroyed, Order Model 2 could still exist and be implemented by itself.  It could be argued, on the other hand, that Order Model 2 has no meaning except in the context of a Replenishment Scenario, and that the "composition" symbol should be used to indicate that if all the Replenishment Scenarios that use Order Model 2 are destroyed, then Order Model 2 is destroyed also.

Multiplicity is denoted per the table below.

composition.jpg (1688 bytes) Composition This is the "is part of" relationship.  The objects on the arrow end of the line are part of the object on the filled-diamond end of the line.  If the object(s) on the filled-diamond end of the line are destroyed, the objects on the arrow end are also destroyed.

In the example below, Order_Line_Item is part of Discrete_Purchase_Order and also part of Blanket_Order_Qty_FIrm. Order_Line_Item has no existence by itself. Discrete_Purchase_Order and Blanket_Order_Qty_FIrm are both destroyed, Order_Line_Item ceases to exist.  As long as at least one of Discrete_Purchase_Order and Blanket_Order_Qty_FIrm exist, Order_Line_Item can exist.

Multiplicity is denoted per the table below.

Multiplicity (Cardinality)

one.jpg (5619 bytes)

Mandatory, only 1allowed Class 2 is a mandatory component of Class 1.  Class 1 contains one and only 1 occurrence of Class 2.
one.jpg (5619 bytes) Mandatory,
1 or more allowed
Class 2 is a mandatory component of Class 1.  Class 1 contains one or more occurrences of Class 2.
zeroormore.jpg (5804 bytes) Optional, 0 or more allowed Class 2 is an optional component of Class 1.  Class 1 may contain zero or many occurrences of Class 2.
zeroorone.jpg (5825 bytes) Optional, no more than 1 allowed Class 2 is an optional component of Class 1.  Class 1 can contain zero or one occurrences of Class 2.


1 Attribute 1 (no designation) is mandatory and occurs only 1 time.
1 or more Attribute 2 (1..n) is mandatory and may occur one or more times.
zero or more Attribute 3 (0..n) is optional and may occur zero or more times.
zero or 1 Attribute 4 (0..1) is mandatory but if used, may occur only 1 time.

 


Last updated 06 February 2003