| Artifact: Data Model
 Purpose  | ||||||||||||||||||||||||||||||||||||||||||||||
| Property Name | Brief Description | UML Representation | 
| Introduction | A textual description that serves as a brief introduction to the model. | Tagged value, of type "short text". | 
| Packages | The packages used for organizational grouping purposes. | Owned via the association "represents", or recursively via the aggregation "owns". | 
| Tables | The tables in the data model, owned by the packages. | Components, stereotyped as <<table>>. | 
| Relationships | The relationships between tables in the model. | Associations, stereotyped as <<foreign key>>. | 
| Columns | The data values of the tables. | Attributes, stereotyped as <<column>>. | 
| Diagrams | The diagrams in the model, owned by the packages. | - " - | 
| Indexes | Data access structures used to speed access along specified paths. | Components, stereotyped as <<index>>. | 
| Triggers | Event-activated behavior associated with tables. | Operation, stereotyped as <<trigger>>. | 
| Procedures | Explicitly invoked behavior, associated with tables or with the model as a whole. | Component, stereotyped as <<procedure>>. | 

The data model determines the architecture of the database.

An database designer is responsible for the integrity of the data model, ensuring that the data model as a whole is correct, consistent, and understandable.

Needs to be adapted to the semantics of the database, which may vary slightly between RDBMS's. Object Database systems have quite different semantics and the model described above needs to be modified accordingly.

| 
 
 |