Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the difference between an Information Model and an Ontology?

What is the difference between an Information Model and an Ontology?

They look the same to me.

Thanks!

like image 529
PedroD Avatar asked May 31 '15 19:05

PedroD


3 Answers

The short answer is Ontology is the theory and the Information Model is the application.

Difference Between Ontology and Epistemology

Ontology studies how various existing entities can be grouped together on the basis of similar characteristics and it tries to find out those similarities. The field also tries to find a relation between the objects that exist.

In a particular application, you don't need all of the entities and all of the relationships. You only need the ones that make sense for that application or group of applications (company).

A simple example is an address. Most companies store the address as a String, because they only use an address when generating correspondence with another company or customer.

The United States Postal Service needs to break all their addresses into distinct fields. They have to cross check the zip code with the city and state. In larger cities, zip codes can change depending on the house number of a particular street.

This address ontology for the postal service would be too detailed for most other companies use.

like image 150
Gilbert Le Blanc Avatar answered Oct 19 '22 20:10

Gilbert Le Blanc


There isn't a 100% clear division between the two, which might explain why you're seeing them as the same thing. You could say that an ontology is always a model, but a model is not always an ontology - that view is backed up by this presentation, which covers the discussion in rather more depth (and perhaps rather more conceptually, at times) than is suitable for SO.

If you accept the above explanation (that ontologies are a subset of models), then it's just a matter of understanding when an information model is an ontology. Going back to the presentation, it says that an ontology is conceptual rather than concerned with physical constructs, and is about the real world rather than being about software or code.

The presentation compares creation of an ontology to domain modelling that is carried out ahead of creation of class diagrams, but as you've asked about this in a database context, the obvious comparison is a conceptual data model... which is of course potentially identical to such a domain model. If you think about the data modelling process, you create a conceptual model which has no attributes or data types, before moving to logical and then physical models, which exist in order to deal with normalizing the model to prevent anomalies in the data, defining data types, and so on. So the conceptual data model may well be able to be described as an ontology, but the logical and physical models cannot be.

The reason that a domain model (intended as the first step towards an object-oriented class model) could be identical to a conceptual model (intended as the first step towards a relational physical data model) is that we are entirely free of the restrictions imposed by OO languages and RDBMSs or the rules of normalization at that point in the process. We are modelling only the concepts that we are interested in, and the relationships between them. The object-relational impedance mismatch issue only exists once you get into these two ways of modelling a domain area physically - it does not exist at a conceptual level.

What Gilbert was saying in his answer is almost there - he's right that the physical representation of an address as a string is an information modelling definition. But the USPS deciding to store it as separate fields is also an information modelling definition. The ontological definition would just be about the concept of an address, and the concepts describing the different parts of the address, and how the relationships between those mean that an address is made up of a specific collection of conceptual parts. If someone working for a retail company and someone working for the USPS decided to both create an ontological definition of an address using the same language or tool, they should come up with something very similar if not identical. The decisions to store those concepts all in one string or as a number, a string, another number, etc. are for the world of information modelling.

like image 26
Jo Douglass Avatar answered Oct 19 '22 21:10

Jo Douglass


Some quotes with "ontology"

The challenge in ontology learing from text is certainly to derive meaningful concepts on the basis of the usage of certain symbols, i.e. words or terms

("Ontology Learning and Population from Text", Philipp Cimiano)

In order to really cope with the current and the future challenges, a conceptual model of the eterprise is needed taht is ceherent, comprehensive, consistent and concise and that only shows the seesnce of the operation of an enterprise model ... We shall call such a conceptual model an ontological model"

("Enterprise Ontology", Jan Dietz)

According to that, I would say the information model and ontology are synonyms. Ontology has a more philosophical background, greek origins and is more expected in books of Michel Foucault than an IT documentation, but both of these words mean "things that exist".

like image 27
lokson Avatar answered Oct 19 '22 22:10

lokson