Статус документа
Статус документа

ГОСТ Р ИСО 10303-11-2009 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 11. Методы описания. Справочное руководство по языку EXPRESS

     9.7 Ограничения подтипов


Понятия подтипа и супертипа определены в 9.2.3. Понятие ограничений подтипов/супертипов определено в 9.2.5. Существует возможность определить ограничения, в соответствии с которыми графы подтипов/супертипов могут быть реализованы вне объявления объекта. Данная возможность реализуется посредством объявления SUBTYPE_CONSTRAINT.

   Синтаксис:

315

subtype_constraint_decl = subtype_constraint_head subtype_constraint_body

END_SUBTYPE_CONSTRAINT ' ; ' .

316

subtype_constraint_head = SUBTYPE_CONSTRAINTsubtype_constraint_ID FOR

 entity_ref ' ; ' .

314

subtype_constraint_body = [ abstract_supertype ] [ total_over ]

 [ supertype_expression ' ; ' .

165

abstract_supertype = ABSTRACT SUPERTYPE ' ; ' .

326

total_over = TOTAL_OVER ' ( ' entity_ref { ',' entity_ref } ' ) ' ' ; ' .

320

supertype_expression = supertype_factor { ANDOR supertype_factor } .

321

supertype_factor = supertype_term { AND supertype_term } .

323

supertype_term-entity_ref | one_of | ' ( ' supertype_expression ' ) ' .

263

one_of = ONEOF ' ( ' supertype_expression { ' , ' supertype_expression } ' ) ' .


Объявление SUBTYPE_CONSTRAINT используется для определения следующих ограничений на возможную реализацию подтипов/супертипов:

- ограничение, что супертип является абстрактным и должен реализовываться только через свои подтипы;

- ограничение, что совокупность подтипов данного супертипа обеспечивает полное покрытие; то есть если полное покрытие задано, то экземпляр любого подтипа данного супертипа должен также быть экземпляром, по крайней мере, одного из подтипов, определенных в спецификации TOTAL_OVER;

- ограничение взаимосвязи между некоторыми подтипами.

Каждый из этих видов ограничений более детально рассмотрен в последующих пунктах. Формальный подход к определению потенциальных комбинаций подтип/супертип, которые могут быть реализованы при нескольких возможных ограничениях, описанных ниже, представлен в приложении B.