EOのマッピングについて教えて下さい。

Person、Member、Employeeという三つのentityがあります。
Personには住所氏名が
Memberには会員番号などが含まれ、会員としての活動が紐付いていきます。
Employeeには役職が含まれ、業務履歴が紐付いてゆきます。
Employeeであり、MemberでもあるPersonが存在します。
PLAN-A:
PersonをextendしてEmployeeとMemberを定義した場合、
最初にMemberとなったPersonが後にEmployeeとなるケース(または逆)をマップするには
主キーをプロパティーとして操作しないといけないようで
PLAN-B:
PersonにpersonIDとmemberIDとemployeeIDを
EmployeeにEmployeeIDとpersonIDを
MemberにMemberIDとpersonIDを
それぞれ持たせ、多重にn対1リレーションを張ることで希望の動作は可能なのですが
激しく美しくなくほとほと悩んでいます。

寝不足で頭の堅くなったわたくしに、どなたか最適回をお授け下さい。