On 4/13/07, Chris
Partridge <mail@xxxxxxxxxxxxxxxxxx > wrote:
Hi Ed,
Just to say before I get to the
discussion/questions - I really liked your seminar. I especially liked your
listing and analysis of the functionality required for information models. We
need more of this.
I think we were asked to continue our
discussion on this forum.
The point I started to raise (and we started to
discuss) in the forum was where the 'real world', things or entities entered
into the equation.
You mentioned Peter Chen and the distinction he
made between modelling things and the information about things – which (as
you said) shows this has been a concern for some time.
What I felt was that your exposition of
information modelling (as is often the case) seemed to me to dance between
these two interpretations. Let me try and justify my claim.
For example:
EB>"Entity type classifies things in
the universe
Value type classifies information about things
Data type represents Value types"
Line one seems to be discussing the domain,
whereas line two deals with information.
It is clear that there is a strong strand
through the development of information modelling of the need to model the
domain (the universe of discourse).
There is also a clear distinction between a
logical system model and physical system model, where the logical model does
not concern it self with the particular physical platform.
I think OMG's MDA structure is a useful
framework to illustrate this point. One can see the CIM as the model of the
domain, the PIM as the logical model and the PSM as the physical model. I
have a diagram of this if anyone wants.
What seems to me to have happened back in the
70's and 80's (and I am publishing a paper on this) is that the business
domain model and the logical system model have been (deliberately?) confused.
One reason, I think, is that there is an assumption that the same model can
be seamlessly interpreted in two ways. Another reason is the lack of a
framework for explaining/understanding the structure of the domain (and so
its model) and how this is translated into information.
How does the confusion arise? Firstly, I think
there is a problem with the terms. One would expect an 'information model' to
be a model (in the engineering sense) of the information – rather than a
model of the domain referred to by the information.
EB>"Information models
universe is things used by the business processes
classification/axioms are as used by the
business
business rules, not accepted scientific truth
distinguish conceptual schema
=
invariants, quantified assertions
from the information base
= current
assertions about individual things "
Similarly, one would expect that 'conceptual
schema' and 'information base' to be at one remove from the domain/real world
– in the information world.
There also seems to a divide between academics and
practitioners, where the academics focus on the information model and its
structure, whereas practitioners worry more about how the 'real world' is
reflected in the domain.
What seems to me to be opportunity open to
ontology is to build on the requirement these practitioners are raising – for
a model of the domain.
A modern definition of ontology ( "the set of things whose existence is acknowledged by a
particular theory or system of thought." (E. J. Lowe, The Oxford
Companion to Philosophy) ) seems suited – and
one can go back to 1967 (Mealy) to find this being recognised.
However, the computer science favoured
definition of ontology (Gruber's "specification of a
conceptualization") seems more to focus on information/concepts than the
domain.
From what you said in the seminar, it would
seem you look favourably on 'real world' models.
However, I think the information modelling
community is so tied into looking at information, it often misses the domain.
I would like to, if I may, take an example from
your slides.
You talked about identifiers – and gave a v.
useful overview on how they are used in information models/systems.
However, it seems to me that not enough
attention is being paid to the 'real world' here.
Before, I explain, let me make clear that I am
not talking here about the (internal) identifiers that systems need to
maintain to keep track of items. These seem to me to sit within the
information world, rather than the universe of discourse.
EB>"Identifiers/keys distinguish instances
of an entity class
simple key: a property whose inverse is
"functional"
for each v in the range, there exists at most 1
d in the domain
such that P(d,v)
almost always an attribute (value type)"
What I understood you to be saying is that things
should have identifiers.
While this is a practical issue for the
information system, it is not true that these exist in the real world.
Something have identifiers – some don't. Some have multiple identifiers. Etc.
What is more interesting to me is what kind of
thing names/identifiers are. I do not see much investigation of this in the
information modelling community.