[sc34wg3] a new name for the Reference Model

Lars Marius Garshol sc34wg3@isotopicmaps.org
03 Jan 2003 01:55:51 +0100


* Sam Hunting
| 
| Using Patrick's metaphor: I have a "model" of a VW -- a kit of
| plastic parts to assemble according to a set of printed of
| directions. Then again there is a "meta-model" which could be the
| molds used to make the parts and the directions considered as
| content. Then again there is a "meta-meta-model" which is the
| ... principles used to design the molds and write the directions....

I don't think this metaphor is useful at all. Let's take a real
example instead. The SAM is a data model, that is, a definition of the
structure of some infinite set of data instances. It is defined using
information item types and properties, and so consists of a set of
item types with corresponding named properties.

If you look closely at this you'll see that there are two different
things here:

  - the principles of building models from item types with properties,
    and

  - a particular model built using those principles.
 
To put it another way, we have a metamodel, a model for building
models, and we have a model built using that metamodel. The metamodel
is the information set and the model is the SAM or Topic Map
Information Set. (To put it a third way, a metamodel is a model whose
instances are other models.)

So what the prefix "meta" tells you is that a metamodel is not the
same as a data model, it's a way to build data models. Or, if you
like, a set of principles for doing so. The reason I don't call it a
set of principles is that "set of principles" is very vague and
generic, whereas to call it a "metamodel" implies much greater
internal cohesion and completeness than does "principles". 

The RM is clearly a model, and it sits at the borderline between a
full-fledged metamodel and a model. The bare graph abstraction
underneath the RM is a metamodel, but the RM adds to this some few
structural rules. I think even so we are still justified in calling it
a metamodel, especially as it is our intent that it be used solely for
creating model instances.

Does that help?

-- 
Lars Marius Garshol, Ontopian         <URL: http://www.ontopia.net >
ISO SC34/WG3, OASIS GeoLang TC        <URL: http://www.garshol.priv.no >