EXPRESS - это стандартный язык моделирования данных язык для данных продукта. EXPRESS формализована в стандарте ISO для обмена продуктами модели STEP (ISO 10303) и стандартизирована как ISO 10303-11.
Модели данных формально определяют объекты данных и отношения между объектами данных для интересующей области. Некоторые типичные приложения моделей данных включают поддержку разработки баз данных и обеспечение обмена данными для конкретной интересующей области. Модели данных задаются на языке моделирования данных. EXPRESS - это язык моделирования данных, определенный в ISO 10303-11, Справочном руководстве по языку EXPRESS.
Модель данных EXPRESS может быть определена двумя способами: текстовым и графическим. Для формальной проверки и в качестве входных данных для таких инструментов, как SDAI текстовое представление в файле ASCII является наиболее важным. С другой стороны, графическое представление часто больше подходит для использования человеком, например, для объяснения и обучения. Графическое представление, называемое EXPRESS-G, не может представить все детали, которые могут быть сформулированы в текстовой форме.
EXPRESS похож на языки программирования, такие как Pascal. В рамках SCHEMA можно определять различные типы данных вместе со структурными ограничениями и алгоритмическими правилами. Основная особенность EXPRESS - это возможность формально проверить совокупность типов данных - это проверка всех структурных и алгоритмических правил.
EXPRESS-G - это стандартная графическая нотация для информационных моделей. Это дополнение к языку EXPRESS для отображения определений сущностей и типов, отношений и количества элементов. Эта графическая запись поддерживает подмножество языка EXPRESS. Одно из преимуществ использования EXPRESS-G перед EXPRESS заключается в том, что структура модели данных может быть представлена в более понятной форме. Недостатком EXPRESS-G является то, что сложные ограничения не могут быть определены формально. Рисунок 1 - это пример. Модель данных, представленная на рисунке, может быть использована для определения требований к базе данных для коллекции аудио компакт-дисков (CD).
Простая модель данных EXPRESS выглядит как рис 2, а код выглядит следующим образом:
SCHEMA Family; ЛИЦО Лицо АБСТРАКТНЫЙ НАД ТИП (ONEOF (Мужской, Женский)); имя: STRING; мать: НЕОБЯЗАТЕЛЬНО Самка; отец: НЕОБЯЗАТЕЛЬНО кобель; END_ENTITY; СУЩЕСТВО Женский ПОДТИП (Человек); END_ENTITY; СУЩЕСТВО Мужской ПОДТИП (Человек); END_ENTITY; END_SCHEMA;
Модель данных заключена в Семейство схем EXPRESS. Он содержит сущность супертипа Person с двумя подтипами Male и Female. Поскольку Person объявлен как ABSTRACT, могут существовать только вхождения (ONEOF) подтипа Male или Female. Каждое появление человека имеет обязательный атрибут имени и, необязательно, атрибуты матери и отца. Существует фиксированный стиль чтения атрибутов некоторых типов сущностей:
EXPRESS предлагает серию типов данных с определенными символами типов данных в нотации EXPRESS-G:
Следует упомянуть несколько общих моментов для типов данных.
Атрибуты сущности позволяют добавлять "свойства" "сущностям и связать одну сущность с другой в определенной роли. Имя атрибута определяет роль. Большинство типов данных могут напрямую служить типом атрибута. Это также включает агрегирование.
Существует три различных типа атрибутов: явные, производные и обратные. И все это можно повторно объявить в подтипе. Кроме того, явный атрибут может быть повторно объявлен как производный от подтипа. Никакое другое изменение типа атрибутов невозможно.
Конкретные символы атрибутов объекта Обозначение EXPRESS-G:
Сущность может быть определена как подтип одной или нескольких других сущностей (множественное наследование разрешено!). Супертип может иметь любое количество подтипов. В STEP очень распространена практика построения очень сложных графов под супертипов. Некоторые графики связывают друг с другом 100 и более объектов.
Экземпляр сущности может быть сконструирован либо для отдельной сущности (если не абстрактной), либо для сложной комбинации сущностей в таком графе под супертипа. Для больших графиков количество возможных комбинаций, вероятно, будет расти в астрономических пределах. Чтобы ограничить возможные комбинации, были введены специальные ограничения супертипа, такие как ONEOF и TOTALOVER. Более того, объект может быть объявлен абстрактным, чтобы гарантировать, что ни один экземпляр не может быть построен только из этого объекта, но только если он содержит неабстрактный подтип.
Сущности и определенные типы данных могут быть дополнительно ограничены правилами WHERE. Правила WHERE также являются частью глобальных правил. Правило WHERE - это выражение, которое должно оцениваться как ИСТИНА, в противном случае заполнение схемы EXPRESS недействительно. Подобно производным атрибутам, это выражение может вызывать функции EXPRESS, которые могут дополнительно вызывать процедуры EXPRESS. Функции и процедуры позволяют формулировать сложные операторы с локальными переменными, параметрами и константами - очень похоже на язык программирования.
Язык EXPRESS может описывать локальные и глобальные правила. Например:
ENTITY area_unit SUBTYPE OF (named_unit); ГДЕ WR1: (SELF \ named_unit.dimensions.length_exponent = 2) И (SELF \ named_unit.dimensions.mass_exponent = 0) И (SELF \ named_unit.dimensions.time_exponent = 0) И (SELF \ named_unit.dimensions.electric_current_exponent = 0) И (SELF \ named_unit.dimensions. Thermodynamic_temperature_exponent = 0) AND (SELF \ named_unit.dimensions.amount_of_substance_exponent = 0) AND (SELF \ named_unit.dimensions.luminous_intensity_exponent = 0); END_ENTITY; - area_unit
В этом примере описывается, что объект area_unit должен иметь квадратное значение длины. Для этого атрибут sizes.length_exponent должен быть равен 2, а все остальные показатели основных единиц СИ должны быть 0.
Другой пример:
TYPE day_in_week_number = INTEGER; WHERE WR1: (1 <= SELF) AND (SELF <= 7); END_TYPE; -- day_in_week_number
То есть, это означает, что значение недели не может превышать 7.
Итак, вы можете описать некоторые правила для своих сущностей. Подробнее о данных примерах можно найти в ISO 10303 -41
Викискладе есть носители, относящиеся к EXPRESS. |
Эта статья включает материалы общественного достояния с веб-сайта Национального института стандартов и технологий https://www.nist.gov.