Расширение реляционной модели для лучшего отражения семантики


Альтернативное обобщение


Мы можем теперь расширить обычное понятие иерархии обобщения, заметив, что тип сущностей может быть обобщен в два или более альтернативных (alternative) типа. Например, предположим, что в базе данных, относящейся к заказчикам (см. рис. 8), заказчик (customer) может быть какой-либо компанией (company), товариществом (partnership) или индивидуальным лицом (individual), и все они являются юридическими лицами (legal unit). Предположим также, что для каждого из этих пяти типов сущностей должны регистрироваться различные атрибуты. Поэтому помимо регистрации в UGI-отношении безусловного включения заказчиков, компаний, товариществ и индивидуальных лиц в юридические лица мы должны также где-то регистрировать альтернативное или условное включение заказчиков в компании, товарищества или в число индивидуальных лиц. Для поддержки такой возможности мы вводим отношение альтернативного обобщения по включению (alternative gen inclusion relation, AGI-отношение) – тернарное отношение, в точности похожее на UGI-отношение, за исключением его интерпретации. В данном случае (SUB:m, SUP:n, PER:p) принадлежит AGI-отношению, если E-отношение с именем m принуждается условно включаться в E-отношение n

вследствие обобщения по категории p.

Рис. 8. Альтернативное обобщение

Допустим, что вставляется информация о новой сущности, и специфицируется только один из ее нескольких типов. Тогда система может (и, в соответствии с правилом 7, должна) автоматически вставить суррогат, сгенерированный для этой сущности, не только в E-отношение, непосредственно представляющее объявленный тип, но также и в E-отношение для каждой сущности, которая, в соответствии с UGI и AGI, является главенствующей по отношению к объявленной сущности. Должны учитываться оба графовых отношения, поскольку A может быть альтернативно подчинено B и C, которые, в свою очередь, являются безусловно подчиненными D. Следовательно, A безусловно подчинено D, но не непосредственно.

Для иллюстраций операционных различий между UGI и AGI рассмотрим внесение нового заказчика в базу данных, которая соответствует рис. 8. Учитывая UGI, система устанавливает, что суррогат для этого заказчика должен быть введен в E-отношение для юридических лиц, а также для заказчиков. Учитывая AGI, она устанавливает, что для определения необходимости ввода суррогата в E-отношение для компаний, товариществ или индивидуальных лиц требуется дополнительная расширенная информация. Пока не появится эта информация, система не может определить, наследует ли заказчик, упоминаемый в запросе, свойства от компании, товарищества или индивидуальных лиц. Соответственно, AGI (в отличие от UGI) приводит систему в состояние, когда ей требуется получить и учесть расширенную информацию, которой она могла бы руководствоваться.




Начало  Назад  Вперед



Книжный магазин