Re: Distributed key constraints
Date: 30 Apr 2005 23:11:18 -0700
Message-ID: <1114927878.893660.16780_at_g14g2000cwa.googlegroups.com>
Roy,
Here is a link to the paper I was referring to:
http://web.onetel.com/~hughdarwen/TheThirdManifesto/Missing-info-without-nulls.pdf
I can't say that I agree with his approach to missing information, but this is the first time of which I am aware that he uses the term distributed key publicly. After looking through it (it's not really a paper, so much as a presentation) again, he does not introduce any syntax for them.
If you're interested, we have proposed some syntax for these constraints internally. Here is an example:
create table Invoice { ID : Integer, Date : DateTime, key { ID } };
create table SalesOrder { ID : Integer, Customer_ID : Integer, key { ID } };
create reference SalesOrder_Invoice
SalesOrder { ID } references Invoice { ID };
create table PurchaseOrder { ID : Integer, Vendor_ID : Integer, key { ID } };
create reference PurchaseOrder_Invoice
PurchaseOrder { ID } references Invoice { ID };
// Generalized Key
create key Invoice_Exclusive
{ SalesOrder { ID }, PurchaseOrder { ID } };
// Generalized Reference
create reference Invoice_Inclusive
Invoice { ID } references { Sales_Order { ID }, PurchaseOrder { ID } };
Semantically, every table reference in a generalized key constraint would have to target a key constraint in that table. In addition, a generalized reference constraint would be required to target a generalized key.
Regards,
Bryn
Received on Sun May 01 2005 - 08:11:18 CEST