Data model: Difference between revisions

Content deleted Content added
this entry partially still is redundant with other entries and somehow inconsistent. Might better be disambiguation page.
restructuring
Line 2:
 
This term is ambiguous since it can be the way
#how data generally is organized, e.g. as described in [[Database management system]]. This is sometimes also called "[[database model]]"
#or how data of a specific application is organized logically (e.g. the data model of some business)
 
== General Organization of Data ==
In general the first aspects describes the following aspects:
# ''Structure:'' defines what the structure of the representation is. This should not only specify how data is represented but also how a schema can be specified that defines the structure of the data in a specific user ___domain.
In general the first aspectsaspect ("[[database model]]") describes the following aspects:
# ''Structure:'' defines how data are organized (hierarchical, network, relational, object-oriented).
# ''Integrity:'' provides a language for the definition of rules that restrict which instances of the defined structure are allowed.
# ''Manipulation:'' provides a language in which updates of the data can be expressed.
# ''Querying:'' provides a language in which the data can be queried.
 
AnFor example isin the [[relational model]] in which all data is represented by
[[mathematical relation]]s (or, to be precise, a slightly generalized version thereof).
IfThere a relational model is used set of specific constraints ([[candidate key]]s, [[foreign key]]s) andexists a general language for specifying constraints ([[first-order logic]]), and for manipulations and querying the data the [[relational algebra]], [[tuple calculus]] and [[___domain calculus]] are introduced.
Additional information about this topic can also be found in [[Database management system|database management system]].
 
== Organization of Data in a Specific Application (Domain) ==
 
For a specific application tables (objects, relations, ..., the naming conventions depend on the general model) are defined, for example "customer", "order", "item" as well as relations between them ("customer orders items").
 
If a relational model is used set of specific constraints ([[candidate key]]s, [[foreign key]]s) and a general language for specifying constraints ([[first-order logic]]), and for manipulations and querying the data the [[relational algebra]], [[tuple calculus]] and [[___domain calculus]] are introduced.
If a relational model is used, sets of specific constraints ([[candidate key]]s, [[foreign key]]s) have to be defined (using the appropriate language as defined for the general model, e.g. [[SQL]]).
 
The [[Entity-Relationship Model]] method is used to establish a ___domain specific data model. Other examples like the [[Functional Data Model]] and the [[Object Role Model]] also describe subsets/aspects of a data model.