Data Model - Supertyping - Newbie Q!

From: John Maloney <jcmusic12_at_home.com>
Date: 30 Aug 2001 13:17:46 -0700
Message-ID: <20bb9b25.0108301217.1e514fad_at_posting.google.com>



Hi, I'm trying to come up with a Model for a company that sells, distributes and services a single product line of machines.

Here are some details:
A Machine is sold to a Customer by a Distributor

Customers include Parent Corporations (such as Starbucks), end-users (individual companies or store locations, distributors, or individuals.

Several types of Service (warranty, non-warranty, service, upgrade/recall) are performed on a Machine by a Service Vendor.

A Service Vendor may also be a Distributor or vice-versa. Either one could also be a Customer.

When I implement the model, I want to have a billing and shipping address for each Company. Additionally, a machine will have an installation location.

Because one company can serve multiple roles, can I create a Supertype "Company" so that I don't have multiple billing & shipping addresses for each company?

How would I implement this supertype? Since a single valued discriminator won't work, can I use attributes like 'Is_Customer', 'Is_Vendor', 'Is_Distributor', 'Parent_CorpID' ? Received on Thu Aug 30 2001 - 22:17:46 CEST

Original text of this message