On Sun, Dec 04, 2005 at 10:59:10PM -0700, Trent Shipley wrote: > Relational Constraint Inheritance Algebra > With regard to class and attribute uniqueness <snip> It's taken a while to digest this and sorry for the delay. While I find the ideas intreguing there is a little voice in the back of my head asking: practical applications? For programming, inheritance provides a way of reusing code in a way that encapsulates changes. But I have yet to find a lot of data that really needs this kind of encapsulation. I think one of the reason inheritance hasn't had a lot of work done in PostgreSQL is because the use-cases aren't compelling enough to make someone want to put the effort in. Indeed, most data is structured such that you have a unique key and various attributes associated with that. What SQL excels at it joining tables on those keys. The uniqueness or otherwise of non-key fields is not generally important. The only situation I've come across inheitence being truly useful would be where you have several different "services" which are associated with a customer but each require different services. But even then, the inheritence would only be useful if code utilizing it is within the backend. As soon as the data is transferred to the application, *that* is where the inheritence hierarchy is and it no longer cares if the inheritence is present in the database itself. That's my 2c anyway... -- Martijn van Oosterhout <kleptog@xxxxxxxxx> http://svana.org/kleptog/ > Patent. n. Genius is 5% inspiration and 95% perspiration. A patent is a > tool for doing 5% of the work and then sitting around waiting for someone > else to do the other 95% so you can sue them.
Attachment:
pgpyylAMpDhfT.pgp
Description: PGP signature