свойств некоторого множества объектных классов сохранялся в объединенном классе. Обобщение является методом, применяемым одновременно с классификацией, и позволяет получить иерархию определений, причем класс-наследник определяет более общие свойства объекта, чем те, которые определяет предок. Для предотвращения конфликта между специализацией и обобщением обычно вводится следующее свойство. Свойство в.(МДг). Одновременное существование только одного способа выделения подкласса. если Зу> х СЕМ у -\(х 8РЕС 2) для любого г. Если рассматривать различные приложения объектной модели, то очевидно, что на функцию могут быть наложены различные пользовательские ограничения, в случае, если это требуется при разработке реальной модели. Кроме классов, отражающих группы понятий, рассмотренных в предыдущей главе, то есть служащих для представления входной (для модели) информации, в объектно-семантической модели выделяется специальный класс, сохраняющий информацию, получаемую в процессе создания модели. Объектной модели однозначно сопоставляется ее графическое отображение. Как правило, для помещения графического отображения выделяется схематический класс. Схематический класс представлен в модели через С с О. Информационная структура, лежащая в основе экземпляра схематического класса может быть получена через декомпозицию этого экземпляра. Данное свойство формально записывается через отношение X -< с: С х О, что интерпретируется следующим образом: если .т -< у, то это означает, что у может быть получен декомпозицией х, либо, у является частью объекта, полученного в результате декомпозиции х. Таким образом, информационная структура %(х) для схематического класса х может быть представлена в виде набора объектных классов, 62 |
80 обобщения применима, если различные объектные классы могут играть идентичные роли в фактических классах (имеют одинаковые свойства). Обобщение не является обратной функцией специализации. Обе функции независимы и имеют различные свойства. Изначально формализация данных абстрактных механизмов была привнесена в объекгное моделирование из теории множеств и опирается на различные аксиомы этой теории. Специализация базируется на определении множества ({х е N ф(х)), где ф(х)правило определения подкласса), в то время как обобщение базируется на свойствах объединения множеств. При обобщении обычно требуется, чтобы множество свойств обобщенного объектного класса было тождественно объединению свойств набора базовых объектных классов. При этом, в отличие от специализации, не требуется правил определения обобщенного класса. Применение двух способов получения новых классов различно. Специализация требуется тогда, когда необходимо, чтобы некоторый набор свойств некоторого множества объектных классов сохранялся в объединенном классе. Обобщение является методом, применяемым одновременно с классификацией, и позволяет получить иерархию определений, причем класснаследник определяет более общие свойства объекта, чем те, которые * определяет предок. Для предотвращения конфликта между специализацией и обобщением обычно вводится Свойство Ь.{Ы{1г). Одновременное существование только одного способа выделения подкласса. если Зу, х СИМ у => -.(* ИРИС г) для любого г. Если рассматривать различные приложения объектной модели, то очевидно, что на функцию могут быть наложены различные пользовательские ограничения, в случае, если это требуется при разработке реальной модели. Кроме классов, отражающих группы понятий, рассмотренных в » I I 81 предыдущей главе, то есть служащих для представления входной (для модели) информации, в объектно-ролевой модели выделяется специальный класс, сохраняющий информацию, получаемую в процессе создания модели. Объектной модели однозначно сопоставляется ее графическое отображение. Как правило, для помещения графического отображения выделяется схематический класс. Схематический класс представлен в модели через С с О. Информационная структура, лежащая в основе экземпляра схематического класса может быть получена через декомпозицию этого экземпляра. Данное свойство формально записывается через отношение ЛЧсО х(), что интерпретируется следующим образом: если х < у , то это означает, что у может быть получен декомпозицией .г, либо, у является частью объекта, полученного в результате декомпозиции х . Таким образом, информационная структура у(х) для схематического класса х может быть представлена в виде набора объектных классов, получаемых при помощи декомпозиции .х, ()х {у € О \ х ■< у). Из общего набора объектов Ох могут быть аналогичным образом выделены классы абстрактный, конкретный, базовый и так далее. На данном множестве могут быть определены все указанные выше функции. Определение 1. Определение информационной структуры модели. Если х е(' => у/х) является информационной структурой модели. Как уже указывалось выше, элементы абстрактного и конкретного классов нельзя смешивать в одном схематическом построении. Для связи между ними существует класс связки. Формально данное правило можно записать так: Правило 1. Разделение классов. Если дчя х,у справедливо любое выражение из трех: х-ЕШу), либо х<у, либо х 1с//7гу, следовательно для х,у справедливо одно х,у е Л. либо х,у е N.из двух |