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 похож на такие языки программирования, как Паскаль . В СХЕМЕ могут быть определены различные типы данных вместе со структурными ограничениями и алгоритмическими правилами. Основной особенностью EXPRESS является возможность формальной проверки совокупности типов данных - это проверка всех структурных и алгоритмических правил.

ЭКСПРЕСС-Г

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

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

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

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

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

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

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

Типы данных

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

В отношении типов данных следует упомянуть несколько общих вещей.

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

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

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

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

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

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

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

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

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

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

 ENTITY area_unit  ПОДТИП ( named_unit ) ; ГДЕ WR1 : ( SELF \ named_unit.dimension.length_exdependent = 2 ) AND ( SELF \ named_unit.dimension.mass_exdependent = 0 ) AND ( SELF \ named_unit.dimension.time_exdependent = 0 ) AND ( SELF \ named_unit.dimension.electric_current_exdependent = 0 ) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ И ( SELF \ named_unit.dimensions.thermdynamic_temperature_exdependent = 0 ) AND ( SELF \ named_unit.dimensions.mount_of_substance_exdependent = 0 ) И ( SELF \ named_unit.dimensions.luminous_intensity_exdependent = 0 ) ; _ _ _ _ _ _ _ _ _ _ _ КОНЕЦ_ENTITY ; -- единица_площади                                   

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

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

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

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

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

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

Темы, связанные с ISO
Другие связанные темы

Рекомендации

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

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

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