У меня есть 5 таблиц MainReg, Person, PersonInfo, Company, CompanyInfo
CREATE TABLE [MainReg] (
[IdMainReg] [uniqueidentifier] NOT NULL,
[PersonalObjectId] [int] NULL,
[OwnerId] [nvarchar](36) NULL,
...)
CREATE TABLE [Person] (
[IdPerson] [uniqueidentifier] NOT NULL,
[PersonInfoId] [nvarchar](36) NULL,
...)
CREATE TABLE [PersonInfo] (
[IdPersonInfo] [uniqueidentifier] NOT NULL,
...)
CREATE TABLE [Company] (
[IdCompany] [uniqueidentifier] NOT NULL,
[CompanyInfoId] [nvarchar] NULL,)
...)
CREATE TABLE [CompanyInfo] (
[IdCompanyInfo] [uniqueidentifier] NOT NULL,
...)
Столбец [MainReg.OwnerId] ссылается на строку в таблице [Company], если [MainReg.PersonalObjectId] = 1, и на строку в таблице [Person], если [MainReg.PersonalObjectId] = 2.
Мой вопрос: как сопоставить эти таблицы с помощью JPA?