ИСМ-06-2:

назад

10. б) формат STEP, язык Express, SDAI, ISO 10303

(ГОСТ Р ИСО 10303)

Формат ISO 10303 STEP – «Стандарт обмена данными о модели изделия», разрабатываемый Международной Организацией по стандартизации с 1983 года.

Стандарт STEP предусматривает объектный подход к организации данных.  Стандарт STEP предназначен для представления большого количества аспектов изделия (т.е. с помощью стандарта STEP можно представлять данные об изделии с точки зрения множества предметных областей, например, конструирование механической части изделия, конструирование электронных компонентов, подготовка технологического процесса, поверочные расчеты, эксплуатация и т.д.).   Единая Модель Изделия, отражающая все требуемые аспекты изделия, содержит данные, описываемые многими сотнями и тысячами понятий.

 В качестве теоретической основы можно применить «Концепцию смысла» немецкого философа конца XIX – начала XX века Готлоба Фреге.

 

Рис. 8 Треугольник Фреге в  интерпретации Ю. Р. Валькмана

Денотат – это объект, подлежащий описанию, т.е. моделированию.  Естественно, что объект может быть составным и включать в себя некоторое множество объектов, т.е. может быть каким-то фрагментом реального мира.   Также это может быть воображаемый фрагмент или объект – например, проектируемое изделие, которого в действительности еще нет (а, быть может, никогда и не будет).  Другим типом воображаемых фрагментов или объектов, подлежащих моделированию, могут быть различные схемы: например, кинематические схемы, которые не существуют в качестве физических объектов, принципиальные электрические схемы, организационные структуры и т.д.

Концепт – это идея, т.е. набор понятий или понятие, которые соответствуют содержимому денотата.  Концепт различается в зависимости от точки зрения или предметной области.  Например, для тех же львов, упомянутых Шопенгауэром, идея льва с точки зрения организатора сафари будет отличаться от идеи льва с точки зрения работника зоопарка или с точки зрения дрессировщика цирка.

Знак – это описание денотата в соответствии с  концептом.  Под этим в интерпретации Ю. Р. Валькмана подразумевается математическая, или знаковая модель денотата.  Именно этот угол треугольника различается более всего в концепции Фреге и в интерпретации Валькмана.  Это и не удивительно, ведь для информационных технологий наибольший интерес представляет электронная модель объекта, о  которой в эпоху Фреге не могло быть и речи.  Таким образом, знак в современном понимании – это данные, созданные при помощи компьютера, хранящиеся в компьютере и обрабатываемые с помощью компьютера.  Эти данные являются отображением денотата.

Более конкретное понимание концепта в данном контексте – это концептуальная схема данных, описывающая некоторую предметную область, и  содержащая информацию о том:

Концептуальная схема данных может быть представлена:


Рис. 9 Треугольник Фреге применительно к ISO 10303 STEP

В STEP стандартизован набор концептуальных схем данных для некоторых прикладных предметных областей.  Каждая концептуальная схема данных прикладной предметной  области содержится  в отдельном томе стандарта.  Такой том в STEP называется «Прикладной протокол» (тома 200-й серии).  В STEP концептуальные схемы данных представляются с помощью языка концептуальных схем данных EXPRESS (поэтому далее такие схемы будем называть «EXPRESS-схемами»).  Кроме самой EXPRESS-схемы Прикладной протокол содержит  толкование схемы с кратким описанием входящих в схему понятий (сущностей), а также некоторая информация о том, как была построена данная EXPRESS-схема.  Язык EXPRESS сам по себе также является частью стандарта STEP.

Необходимым программным инструментом для работы с  данными является инструментальная библиотека SDAI.

Первый из методов реализации STEP (обменный файл) предусматривал представление и  хранение данных, соответствующих STEP, только в  символьном виде. Первые работы по реализации стандарта STEP начались задолго до утверждения стандарта. В ходе этих первых работ выяснилось, что кроме реализации стандарта в виде символьного обменного файла необходима и реализация в виде базы данных. Такой метод реализации и получил название SDAI.

Второй метод реализации STEP — это протокол доступа к базам данным, содержимое которых определено средствами EXPRESS.  Назначение такого протокола заключается в  снижении стоимости эксплуатации интегрированной базы данных изделия за счет обеспечения совместимости сложных прикладных программных продуктов с такой базой данных.

SDAI описана в нескольких томах ISO 10303 STEP:

- в томе 22 даны логическая структура данных SDAI и спецификация функций обращения к базе данных в общем виде (без привязки к конкретному языку программирования);

- в томе 23 дана спецификация функций обращения к базе данных на языке C++;

- в томе 24 дана спецификация функций обращения к базе данных на языке C;

- в томе 25 дана спецификация функций обращения к базе данных на языке FORTRAN. Этот том был отменен. В настоящее время номер присвоен проекту реализации SDAI средствами UML.

- в томе 26 дана спецификация функций обращения к базе данных на языке IDL.

- в томе 27 дана спецификация функций обращения к базе данных на языке JAVA.

- в томе 28 дана спецификация структур данных SDAI на языке XML.


Рис. 10 Работа с библиотекой SDAI

Раннее и позднее связывания

Конкретные реализации SDAI могут быть разделены на две большие группы: реализация SDAI раннего связывания (EARLY BINDING) и реализация SDAI позднего связывания (LATE BINDING).

Реализация SDAI с  ранним связыванием не содержит словаря данных. Реализация SDAI с поздним связыванием содержит словарь данных, доступный для приложения во время работы.

Раннее связывание

Системы с ранним связыванием предполагают создание поддерживаемых конкретным языком программирования структур данных.  Структуры данных отображают определения данных, сделанные средствами EXPRESS.  Например, раннее связывание для Прикладного Протокола AP203, сделанное с использованием SDAI C++, использует для каждого определения, сделанного на EXPRESS, свой класс C++.  Преимущество такого подхода состоит в  возможности организации проверки типов.

Классы C++ для раннего связывания обычно генерируются компилятором EXPRESS (в специальном режиме генерации классов C++).  Определения сущностей ENTITY отображаются в классы, определения типов TYPE отображаются или в классы, или в определения типов (TYPEDEF).  Структура наследования, описанная средствами EXPRESS, отображается в иерархию классов C++.  Каждый из классов имеет методы доступа и  модификации для хранящихся атрибутов, и конструкторы для инициализации новых экземпляров.  Ниже приведен простой пример определения сущностей, сделанного средствами EXPRESS, и соответствующие этому определению классы C++.

ENTITY Point;

  x : REAL;

  y : REAL;

END_ENTITY;

Прикладная программная система может использовать методы классов C++ для создания экземпляров сущностей, присвоения значений атрибутам и записи экземпляров сущностей в  репозиторий.

/* Create a point using the default constructor

 * and use the update methods to set its values. */

 SdaiModelH mod;

 PointH point1 = SdaiCreate(mod, Point);

 Point1->x (1.0);

 Point1->y (0.0);

сущность создается с применением специальной версии оператора new.

Позднее связывание

SDAI позднего связывания, такое, как SDAI C, использует для доступа к данным словарь данных EXPRESS.  При позднем связывании не используются генерируемые структуры .  Для всех определений модели EXPRESS используется одна единственная структура данных.

Для поиска значений данных используется словарь данных SDAI.  Прикладная программная система для присвоения и запроса значений использует ограниченный набор простых универсальных функций, а не специализированные функции для каждого из значений.  Ниже приведен программный код прикладной программной системы, построенной на SDAI позднего связывания:

/* create new instances */

SdaiAppInstance point1;

point1 = sdaiCreateInstanceBN(myModel, „point“);

sdaiPutAttrBN(point1, „X“, sdaiREAL, 1.0);

sdaiPutAttrBN(point1, „Y“, sdaiREAL, 0.0);

[редактировать]

назад

© ism-06-2.ru