ГОСТ Р ИСО 13584-42—2012
(aggregate_entity_instance_value,
list_value.
set_value.
bag_value.
array_value,
set_with_subset_constraint_value.
compatible_complete_types_and_value):
C
Примечание — Схематики. накоторыевыше производятсяссыпки, описаны в нижеследующихдокументах:
ISO13584_IEC61360_dictionary_schemaв МЭК 61360-2
(дублируется для удобства в разделе 4.5 идалее).
IS013584_extended_dictionary_schemaв ИСО 13584-24:2003
IS013584_instance_resource_schemaв ИСО 13584-24:2003
IS013584_aggregate_value_schemaв ИСО 13584-25
F.5.1 Введение в стандартную схему ограничений класса ISO13584_IEC61360_class_constraint_schema
Схема ISO13584_IEC61360_class_constraint_schema задает конструктивы языка EXPRESS, позволяющие
переопределить, путем задания ограничений, область значений данного свойства, если оно применяется в под
классе характеристического класса, где данное свойств определено как видимое. Данное ограничение должно
явно описывать только те ограничения области значений, которые следуют из структуры класса.
Пример — В ИСО 13584-511 класс болтов/винтов с метрической резьбой определен следующим
образом: «гкрепежный элемент с головкой, наружной резьбой, цилиндрическим телом, на котором резь ба
нарезана частично или полностью, и головкой с приспособлениями для завинчивания».Данный класс
имеет, среди прочих, два свойства: тип головки и свойства головки. Область значений свойства тип
головки — это неколичественный тип данных, включающий, главным образом, нижеследующие значе
ния: шестигранная_головка. восьмигранная_головка и круглая_головка. Свойство свойства головки
является особенностью. Это означает, что она имеет тип данных item_class. Областью значений
является класс головка, определяющийлюбой вид головки. Класс головка имеет несколько подклассов:
шестигранная головка, ассоциированная со всеми свойствами, позволяющими описывать шестигран
ную головку (например, размер под ключ), и круглая головка, ассоциированная со всеми свойствами,
позволяющими описывать круглую головку (например, диаметр головки).
Класс болтов/еинглое с метрической резьбой имеет подкласс, называемый винты с шестигранной голов
кой и определяемый следующим образом: «крепежный элемент с метрической наружной резьбой, шестигранной
головкой и резьбой, нарезанной до головки». Данный класс унаследует свойства: типголовкии свойства головки.
Из определения подкласса винтов с шестигранной головкой ясно, что свойство тип головки может принимать
только значение шестигранная_гоповка. Свойство свойства головки может быть только реализацией класса осо
бенностей шестигранная головка. Однако указанные ограничения являются неявными: они просто фиксируются
неформально вопределении сущности.
Таким образом, указанные ограничения не являются компьютерными. Рассматриваемые ограничения, опре
деленные стандартной схемой ограничений класса ISO13584_IEC61360_cIass_constraint_schema. позволяют
сделать нижеследующие два ограничения явными путем ассоциирования их с классом винтов с шестигранной
головкой: (1) ограничение нумерации enumeration_constraintдля свойства тип головки(допускающее только код
швстигранная_головка) и (2) subclass_constraint для свойства свойства головки (допускающее только класс
особенностей шестигранная головка).
Ограничения наследуются. Если свойство, область значений которого имеет одно ограничение в классе С,
требует задания другого ограничения в подклассе С, то оба ограничения применяются совместно. Таким образом,
реальная область значений в подклассе С— это пересечениедвухобластей, определенныхдвумя ограничениями.
Предложенный механизм аналогичен механизму повторного определения типа на языке EXPRESS.
Данная схема позволяет выразить ограничения, применимые к типам данных системы типов стандартной
словарной схемы ISO13584_IEC61360_dictionary_schema. По правилу для данных сущностей, ссылающихся на
ограничение, каждое ограничение применимо к типу данных, к которому оно относится.
F.5.2 Определения сущностей стандартной схемы ограничений класса ISO13584_IEC61360_class_
constraint_schema
Данный Раздел определяет сущности стандартной схемы ограничений класса ISO13584_IEC61360_class_
constraint_schema.
F.5.2.1Ограничение (Constraint)
Сущность constraint позволяет дать определение ограничения.
Пример представления на языке EXPRESS:
*)
ENTITY constraint
ABSTRACT SUPERTYPE OF (ONEOF (
property_constraint.
dass_constraint));
constraintjd: OPTIONAL constraintjdentifier.
END_ENTITY: — constraint
(*
130