EntityLogic.org

www.entitylogic.org - entity modelling introduced from first principles - relational database design theory and practice - dependent type theory


Modelling Data

When we call to mind data, then we think of names, quantities, monetary values, addresses, dates, temperatures, geographical coordinates, and so on. Now, such items of data as these convey information only within specific contexts and when attributed to subjects at hand. A temperature, a colour, a price, a height, a distance all these tell us nothing less they be the temperature, the colour, the price, the height or the distance of some thing. We can paraphrase in the language of entity modelling and say they tell us nothing less they be attributed to an entity.

As stored within information systems then the individually represented items - the names, colours, quantities, the monetary amounts, the dates, etc - in the language of entity modelling, are said to be the values of attributes. Thus an actual name like "John Smith" is said to the value of a 'name' attribute of a person entity. and it is clear that computer programs are effective only in so long as the data items they manipulate are intended and understood as attributes of subject entities. It follows that to have an effective information system we must first have agreed types of subject entity and we must first have agreed the attributes of each of these types of subject entity. In this agreement we agree the data content of the program and in turn we agree its subject matter.

Now attribute values are not stored alone and independent of one another but grouped together by the subject entities to which they apply. So it is that to be able to model the data held in information system there is third element - that of an attribute. The concept of attribute sits alongside those of entity and relationship to form the basis of entity modelling. Each attribute is posited as a named property associated with a specific or general type of entity (i.e. with a particular species or with all species within a genus).

An attribute of an entity gives information about the entity above and beyond the information given by its relationships.

  • Examples of attributes of a person are their name, their height, their weight, their shoe size and so on. Attributes can be shown by additional annotations on an entity type as shown here.
Figure 6
Attributes of Person Entity.