Re: Entity Relationship Modelling Problem for a Genealogy RDB

From: James <jraustin1_at_hotmail.com>
Date: 28 Oct 2001 11:25:21 -0800
Message-ID: <a6e74506.0110281125.7b208d6d_at_posting.google.com>


> INDIVIDUAL -> 1:N -> BIRTH <- N:1 <- LOCATION1 (civil)
> INDIVIDUAL -> 1:N -> BAPTISMAL <- N:1 <- LOCATION2 (religious)
> INDIVIDUAL -> 1:N -> DEATH <- N:1 <- LOCATION1
> INDIVIDUAL -> 1:N -> FUNERAL <- N:1 <- LOCATION2
> Each middle entity is a union of two foreign keys and a date.
>
> The entity MARIAGE:
> 1st - depending on the structure it may require a unique identifier!
> 2nd - 2 foreign keys mapped to INDIVIDUAL are needed to establish the union.
> 3rd - This blessed event may be certified by the state and/or sanctified
> by the church. How do you establish the right relationship to the
> proper location where the event(s) took place?
> 4th - individuals have been known to get married, get divorced and get
> married to each other again. Non-unique entries on foreign keys!

One possible solution using an objected-oriented database is shown below:

Person
  .Birth
    ->Date
    ->Loc
  .Baptism
    ->Date
    ->Loc
  .Marriage
    Marriage1

      ->Date
      ->Spouse
      ->Loc
      .Divorce
        ->Date

    MarriageN
  .Death
    ->Date
    ->Loc
  .Funeral
    ->Date
    ->Loc

Note: "." is a property, "->" indicates a reference. Each instance can have fewer or more properties than described in its class. Each property can have multiple values as indicated by its children. Each property can have multiple sub properties. Each object has a unique id. It is possible to describe a person with multiple births, baptisms, marriages (monagomy, bigamy, polygamy), divorces, deaths and funerals. You'll need many tables for an equivalent normalized solution in RDB.

XDb is an object-oriented database that can manage complex/variable data structures. Download your free copy from http://www.xdb1.com Received on Sun Oct 28 2001 - 20:25:21 CET

Original text of this message