Re: One Ring to Bind Them

From: Marshall Spight <mspight_at_dnai.com>
Date: Sun, 27 Jun 2004 01:21:43 GMT
Message-ID: <GipDc.159689$3x.28156_at_attbi_s54>


"Anthony W. Youngman" <wol_at_thewolery.demon.co.uk> wrote in message news:jJnvJwDHSy0AFw$a_at_thewolery.demon.co.uk...

>

> Yes, but relational formalises metadata INTO data. Once it's in an RDBMS
> it's no longer metadata, because the rdbms doesn't understand any
> meaning in it and can't take advantage of that meaning so it's just
> data.

This is just fundamentally wrong. It's so pervasively wrong it's almost hard to know where to start.

Okay, simple example: foreign key. A foreign key relationship is metadata. DBMSs record foreign key values, and they also record foreign key relationships, in a table in the catalog. The database knows what this metadata means, and may take advantage of this knowedge in deciding how to store the data.

Those tables that form the catalog are the tables that the DBMS understands the meaning of "out of the box." (If you include no metadata when you add a user-defined table, then it could indeed be said that the DBMS doesn't understand the meaning of the new tables. Such as when someone using MySQL builds a database without specifying any integrity constaints. But that's pathological.)

Perhaps I misunderstand, but MV has only the one kind of relationship it is capable of understanding: containment. Yes, it understands the meaning of this, so it knows what a one-to-many relationship means. Does it have any other facilities for understanding meaning? It can do ON DELETE CASCADE but can it do ON DELETE RESTRICT? Can it handle and understand many-to-many relationships? Can it understand and enforce arbitrary constraints a la SQL's CHECK? (These are actual questions, not rhetorical ones; I'm not that familiar with MV.)

Marshall Received on Sun Jun 27 2004 - 03:21:43 CEST

Original text of this message