Re: "thou shalt not conflate meta-data with data"

From: Paul <paul_at_test.com>
Date: Sun, 06 Mar 2005 12:04:39 +0000
Message-ID: <422af1d7$0$23601$ed2e19e4_at_ptn-nntp-reader04.plus.net>


Neo wrote:
> Thanks for the excellent example. In that example, it seems meta data
> is data that provides structure for other data. Or may be even more
> precisely, meta data is data that fills in the missing info in other
> data. For example, in the tuple (John, Male), meta data tells us the
> tuple is a person, the first value is the name of the person, and the
> second value is the gender of the person. Without the meta data or
> different meta data, the same tuple might mean a dormitory owned by
> John and the dormitory only houses males. The meaning of the tuple and
> its value are unknown without the meta data. I think this is why frosty
> said that the attributes Sex and Age in the relation header are meta
> data with respect to values Male and 48 for John.

I think this might be slightly different to what is normally meant by meta-data - maybe this is actually meta-meta-data?

I think of "data" as meaning what is known inside the model.

Meta-data is what the DBMS knows about the implementation of the model. For example the names of the various tables and columns, the data types of the domains used etc., but *not the meanings*. The DBMS doesn't know or need to know whether (John, Male) refers to John's gender or the kind of dormitories owned by John. The first column could be known to the DBMS as "PersonName" or it could know it as "DkiwnjZdxs", it makes no difference to the DBMS.

I'd say that the kind of information you're talking about is a third level, it's the interpretation of the database in the mind of the end user. So maybe in a way it's coming full circle back to the first level again - the internal model.

so you've got:

data: From the abstract model of some kind of reality.

meta-data: From the implementation or representation of the abstract

            model.

In more concrete terms, you generally have "system tables" in a database that describe the other tables - their names, column names, keys, etc. These are meta-data tables, whereas the standard tables hold plain data.

In a library, you might have a special book that lists details of all the books held by the library. This book holds meta-data, all the other books hold data.

Paul. Received on Sun Mar 06 2005 - 13:04:39 CET

Original text of this message