Disambiguation: this term refers to multiple things, mostly depending on the (sub)fields, informally:
- Models at the instance-level (mathematics, logics in computer science)
- Models at the type-level (software engineering in computer science)
D1 (simplified from V1.1)
- A model denotes a domain where its individuals and relations among them are such that they satisfy what is declared in the logical theory (such as an ontology).
D2 (extracted, merged, and simplified from V1.2-1.3)
- A model is an abstraction of a domain, consisting of entity types, relationships, and constraints.
V1 (instance-level) [ Hedman, 2004 ]
- For any set of sentences constructed from a given vocabulary of function, relation, and constant symbols (V-sentences, G), a model of G is a V-structure (a non-empty underlying set D along with an interpretation of V) that models each sentence in G. The class of all models of G is denoted by M(G).
V2 (type-level) [ Embley, 2009 ]
- A (conceptual/semantic data) model represents data in terms of named sets of objects, named sets of values, named sets of relationships, and constraints over these object, value, and relationship sets. The semantics of a semantic data model are the intensional declarations: the names for object, value, and relationship sets that indicate intended membership in the various sets and the declared constraints that the data should satisfy. The data of a semantic data model is extensional and consists of instances of object identifiers and values for object and value sets and of m-tuples of instances for m-ary relationship sets. The model of a semantic-datamodel instance describes intensionally a real-world domain of interest. The modeling components of the semantic data model specify the modeling elements from which a real-world model instances can be built.
V3 (type-level, in Model-Driven Engineering) [ Kühne, 2006 ]
- A model is an abstraction of a (real or language-based) system allowing predictions or inferences to be made.