ГОСТ Р ИСО 10303-11— 2009
FUNCTION years (past: date): INTEGER;
(* "years" Данная функция рассчитывает число лет
между датой в прошлом и текущей датой*)
END_FUNCTION;
END_SCHEMA;
J.2 Модель взаимосвязей
В приведенном ниже примере представлена простая модель, демонстрирующая некоторые объявления и
взаимосвязи на языке EXPRESS. Модель содержит объекты супертипов, объекты подтипов и объекты, не являю
щиеся ни тем, ни другим. Также показаны два определенных типа данных, выбираемый тип данных и несколько
простых типов.
Пример— Модель, содержащая простойобъект и взаимосвязь типов данных.
SCHEMA etr,
ENTITY super;
END_ENTITY;
ENTITY sub_1
SUBTYPE OF (super);
attr: from_ent;
END_ENTITY;
ENTITY sub_2
SUBTYPE OF (super);
pick: choice;
END_ENTITY;
ENTITY an_ent;
int:INTEGER:
END_ENTITY;
ENTITY from_ent:
description;OPTIONAL to_ent:
values :ARRAY [1 : 3] OF UNIQUE REAL;
END_ENTITY;
ENTITY to_ent;
text; strings;
END_ENTITY;
TYPE choice = SELECT
(an_ent,
name);
END_TYPE;
TYPE name = STRING;
END_TYPE;
TYPE strings = LIST [1 : ?] OF STRING;
END.TYPE;
END_SCHEMA:
J.3 Простое дерево подтипов/супертипов
Язык EXPRESS позволяет определять очень сложные деревья (и сети) подтипов/супертипов. Показанное в
приведенном ниже примере дерево относительно простое.
Пример —Дерево подтипов/супертипов на языке EXPRESS.
SCHEMA simple_trees;
ENTITY super;
END_ENTITY;
ENTITY sub1
SUBTYPE OF (super);
END_ENTITY;
ENTITY sub2:
SUBTYPE OF (super);
END_ENTITY;
SUBTYPE_CONSTRAINT sc_sub2 FOR sub2;
ABSTRACT;
ONEOF(sub3, sub4);
END_SUBTYPE_CONSTRAINT;
184