stringtranslate.com

EXPRESS (язык моделирования данных)

Рис. 1. Требования к базе данных для коллекции аудиокомпакт-дисков (CD), представленные в нотации EXPRESS-G.

EXPRESS — это стандарт для универсального языка моделирования данных для данных о продуктах . EXPRESS формализован в стандарте ISO для модели обмена продуктами STEP (ISO 10303) и стандартизирован как ISO 10303-11. [1]

Обзор

Модели данных формально определяют объекты данных и отношения между объектами данных для интересующей области. Некоторые типичные приложения моделей данных включают поддержку разработки баз данных и обеспечение обмена данными для определенной области интересов. Модели данных определены на языке моделирования данных. [2] EXPRESS — это язык моделирования данных, определенный в ISO 10303-11, Справочном руководстве по языку EXPRESS. [3]

Модель данных EXPRESS может быть определена двумя способами: текстовым и графическим. Для формальной проверки и в качестве входных данных для таких инструментов, как SDAI, текстовое представление в файле ASCII является наиболее важным. Графическое представление, с другой стороны, часто больше подходит для использования человеком, например, для объяснений и учебных пособий. Графическое представление, называемое EXPRESS-G, не способно представить все детали, которые можно сформулировать в текстовой форме.

EXPRESS похож на языки программирования, такие как Pascal . В SCHEMA могут быть определены различные типы данных вместе со структурными ограничениями и алгоритмическими правилами. Главной особенностью EXPRESS является возможность формальной проверки популяции типов данных — то есть проверка всех структурных и алгоритмических правил.

ЭКСПРЕСС-Г

EXPRESS-G — это стандартная графическая нотация для информационных моделей . [4] Это дополнение к языку EXPRESS для отображения определений сущностей и типов, отношений и мощности. [5] Эта графическая нотация поддерживает подмножество языка EXPRESS. Одним из преимуществ использования EXPRESS-G по сравнению с EXPRESS является то, что структура модели данных может быть представлена ​​более понятным образом. Недостатком EXPRESS-G является то, что сложные ограничения не могут быть формально указаны. Рисунок 1 является примером. Модель данных, представленная на рисунке, может быть использована для указания требований к базе данных для коллекции аудио компакт-дисков (CD). [2]

Простой пример

Рис. 2. Диаграмма EXPRESS-G для схемы Family

Простая модель данных EXPRESS выглядит так, как показано на рис. 2, а код выглядит так:

Семейство СХЕМА;СУЩНОСТЬ Лицо АБСТРАКТНЫЙ СУПЕРТИП (ОДИН ИЗ (Мужской, Женский)); имя: СТРОКА; мать: НЕОБЯЗАТЕЛЬНО Женщина; отец: НЕОБЯЗАТЕЛЬНО Мужской;КОНЕЦ_ЭНТЕТИ;СУЩНОСТЬ Женский ПОДТИП (Лица);КОНЕЦ_ЭНТЕТИ;СУЩНОСТЬ Мужской ПОДТИП (Лица);КОНЕЦ_ЭНТЕТИ;КОНЕЦ_СХЕМЫ;

Модель данных заключена в схему EXPRESS Family . Она содержит супертип сущности Person с двумя подтипами Male и Female . Поскольку Person объявлен как ABSTRACT , могут существовать только вхождения (ONEOF) подтипа Male или Female . Каждое вхождение person имеет обязательный атрибут name и необязательные атрибуты mother и father . Существует фиксированный стиль чтения для атрибутов некоторого типа сущности:

ЭКСПРЕСС Строительные блоки

Типы данных

EXPRESS предлагает ряд типов данных с определенными символами типов данных нотации EXPRESS-G: [2]

Следует упомянуть несколько общих моментов, касающихся типов данных.

Сущность-Атрибут

Атрибуты сущности позволяют добавлять "свойства" к сущностям и связывать одну сущность с другой в определенной роли. Имя атрибута определяет роль. Большинство типов данных могут напрямую служить типом атрибута. Это также включает агрегацию.

Существует три различных вида атрибутов: явные, производные и обратные. И все они могут быть переопределены в подтипе. Кроме того, явный атрибут может быть переопределен как производный в подтипе. Никакие другие изменения вида атрибутов невозможны.

Конкретные атрибутивные символы нотации EXPRESS-G: [2]

Супертипы и подтипы

Сущность может быть определена как подтип одной или нескольких других сущностей ( множественное наследование разрешено!). Супертип может иметь любое количество подтипов. В STEP очень распространена практика построения очень сложных графов под-супертипов. Некоторые графы связывают друг с другом 100 и более сущностей.

Экземпляр сущности может быть создан либо для одной сущности (если она не абстрактная), либо для сложной комбинации сущностей в таком графе под-супертипа. Для больших графов число возможных комбинаций, вероятно, будет расти в астрономических диапазонах. Для ограничения возможных комбинаций были введены специальные ограничения супертипа, такие как ONEOF и TOTALOVER. Кроме того, сущность может быть объявлена ​​абстрактной, чтобы обеспечить невозможность создания экземпляра только из этой сущности, но только если она содержит неабстрактный подтип.

Алгоритмические ограничения

Сущности и определенные типы данных могут быть дополнительно ограничены правилами WHERE . Правила WHERE также являются частью глобальных правил. Правило WHERE — это выражение, которое должно быть оценено как TRUE, в противном случае популяция схемы EXPRESS недействительна. Подобно производным атрибутам, эти выражения могут вызывать функции EXPRESS, которые могут далее вызывать процедуры EXPRESS. Функции и процедуры позволяют формулировать сложные операторы с локальными переменными, параметрами и константами — очень похоже на язык программирования.

Язык EXPRESS может описывать локальные и глобальные правила. Например:

 СУЩНОСТЬ единица_площади  ПОДТИП ( единица_измерения ) ; ГДЕ WR1 : ( SELF \ единица_измерения . размеры . показатель_длины = 2 ) И ( SELF \ единица_измерения . размеры . показатель_массы = 0 ) И ( SELF \ единица_измерения . показатель_времени = 0 ) И ( SELF \ единица_измерения . размеры . показатель_электрического_тока = 0 ) И ( SELF \ единица_измерения . показатель_термодинамической_температуры = 0 ) И ( SELF \ единица_измерения . показатель_количества_вещества = 0 ) И ( SELF \ единица_измерения . показатель_светимости = 0 ) ; КОНЕЦ СУЩНОСТИ ; -- единица_измерения                                   

В этом примере описывается, что сущность area_unit должна иметь квадратное значение длины. Для этого атрибут dimensions.length_exponent должен быть равен 2, а все остальные показатели степеней основных единиц СИ должны быть равны 0.

Другой пример:

 ТИП номер_дня_в_неделе = ЦЕЛОЕ ЧИСЛО ; ГДЕ WR1 : ( 1 <= SELF ) И ( SELF <= 7 ); КОНЕЦ_ТИП ; -- номер_дня_в_неделе              

То есть это означает, что значение недели не может превышать 7.

Итак, вы можете описать некоторые правила для ваших сущностей. Более подробную информацию о приведенных примерах можно найти в ISO 10303 -41

Смотрите также

Предметы, связанные с ИСО
Другие смежные темы

Ссылки

Общественное достояние В статье использованы материалы, являющиеся общественным достоянием Национального института стандартов и технологий.

  1. ^ ISO 10303-11:2004 Системы промышленной автоматизации и интеграция. Представление и обмен данными о продукции. Часть 11. Методы описания. Справочное руководство по языку EXPRESS.
  2. ^ abcd Майкл Р. Маккалеб (1999). «Концептуальная модель данных систем данных». Национальный институт стандартов и технологий. Август 1999.
  3. ^ Международный стандарт ISO 10303-11:1994, Системы промышленной автоматизации и интеграция. Представление и обмен данными о продукции. Часть 11. Методы описания. Справочное руководство по языку EXPRESS, Международная организация по стандартизации, Женева, Швейцария (1994).
  4. ^ 4 Обзор языка EXPRESS-G Архивировано 09.11.2008 на Wayback Machine . Доступно 9 ноября 2008 г.
  5. ^ Информацию о нотации EXPRESS-G см. в Приложении B к Справочному руководству по языку EXPRESS (ISO 10303-11).

Дальнейшее чтение