ГОСТ Р ИСО 10303-11— 2009
Пример — На рисунке D.21 представлена следующая модель:
ENTITY person:
END_ENTITY;
ENTITY male SUBTYPE OF (person);
END_ENTITY;
ENTITY female SUBTYPE OF (person);
END_ENTITY;
SUBTYPE_CONSTRAINT gender FOR person;
TOTAL_OVER (male, female);
ONEOF (female, male):
END_SUBTYPE_CONSTRAINT:
П р и м е ч а н и я
1 На рисунке D.22 предсгавлена EXPRESS-G диаграмма для примера из приложения J, раздел J.3, изобра
жающая объект sub2 в качестве абстрактного супертипа.
2 На рисунке D.15 показано, что объекты sub1. sub2 и sub5 являются подтипами супертипа super. Экземп
ляр супертипа super может не иметь подтипов, поскольку super не является абстрактным супертипом. Объекты
sub3 и sub4 являются подтипами супертипа sub2. Объекты sub3 и sub4 связаны друг с другом отношением
ONEOF
Рисунок D.22 — Полная диаграмма уровня объектов графа наследования для примера из приложения J,
раздел J.3 (лист 1 из 1)
Язык EXPRESS допускает повторное объявление атрибутов супертипа в подтипе. При этом повторнообъяв
ленный атрибут является конкретизацией типа данных атрибута супертипа. Если повторное объявление атрибута
включает в себя также его переименование, то новое имя указывается после исходного имени и отделяется от него
символом «больше чем» <>). В графической нотации EXPRESS-G повторно объявленный атрибут представ ляется
так же. как атрибут его супертипа, но с добавлением символов RT в круглых скобках, то есть (RT) перед именем
атрибута.
П р и м е ч а н и е — Некоторые формы повторного объявления атрибутов, представленных в примере на
языке EXPRESS из приложения J. раздел J.4 показаны на рисунке D.23. Объект sub_a повторно объявляет
атрибут attr из своего супертипа как подтип атрибута своего супертипа. Объект sup_b имеет необязательный
атрибут типа NUMBER В его подтипе данный атрибут повторно объявлен как обязательный атрибут типа REAL.
ettr
«ipj>|- ^
---------------
с
NUUBB*
-----------t f " ’ Дри----------dя Ё л Г
150
Рисунок D.23 — Полная диаграмма уровня объектов для примера из приложения J. раздел J.4,
показывающая повторные объявления атрибутов в подтипах (лист 1 из 1)