Data model: Difference between revisions

Content deleted Content added
mNo edit summary
No edit summary
Line 1:
A '''data model is''' is a model that describes in an abstract way how data is represented in an [[information system]] or a [[database]]. In general it describes the following aspects:
According to [[Fabian Pascal]], a data model is ''a general theory of data defining structural, integrity and manipulation features.''
# ''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 specifi user ___domain.
# ''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.
 
ForAn example, the general theory inis the [[relational model]] is two-valued predicate logic and setin theory;which the structure is that of relations; integritydata is assureddefined byas declaredsubsets constraints, and manipulation is made through relational algebra and calculus.of
[[n-ary relation]]s. It furthermore defines a set of specific constraints (candidate keys, foreign keys, functional dependencies, multi-valued dependencies, join dependencies) 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.
 
Other examples are the [[Entity-Relationship Model]] and [[ORM]].