4.3 1.3 Состояния среды программирования
Среда программирования может быть представлена в виде конечного автомата (finite state machine), то есть она находится в каждый момент времени в определенном состоянии. Состояние описывает при этом, какие операции SDAI в определенный момент времени допустимы в сеансе SDAI. Среда программирования переводится из одного состояния в другое при успешном выполнении операции SDAI. В конце концов это описывает ряд операций, которые требуются в сеансе SDAI для того, чтобы выполнить определенное задание. Успешное выполнение операций SDAI может, хотя и не обязательно, изменить также набор допустимых операций SDAI в сеансе SDAI и этим изменить его состояние.
Переходы между состояниями среды программирования описываются в модели состояния SDAI (SDAI-State-Model). Эта модель представлена в ISO 10303-22 в табличном виде. Описаны только операции, которые изменяют состояние сеанса SDAI.
Для различных областей среды программирования определены допустимые состояния. То, в каком состоянии сейчас конкретно находится данная область, зависит от состояния области, в которой она запрошена, и от того, какие операции над ней была выполнены. Состояния определяются для сеансов, хранилищ, трансакций и моделей SDAI.
Пример:
Исходное состояние сеанса SDAI называется NO SESSION. Единственная допустимая операция - открыть сеанс (Open session). Если эта операция будет успешно выполнена, то станет допустимой операция закрытия сеанса (Close session) и открытия и закрытия хранилищ. Сеанс SDAI переведен в состояние SESSION. Состояние SESSION требуется для выполнения операций открытия и закрытия хранилищ. Если хранилище открыто, то сессия переводится в состояние REPOSITORY OPEN. Если хранилище опять закрывается, сессия возвращается в Состояние SESSfON и т. дисконтирования.
4.3.2 Операции SDAI
Операции, которые специфицированы в ISO 10303-22, описывают минимальные оперативные возможности операции SDAI в каждой привязке к языку.
4.3.2.1 Определение операций
Каждая операция определена в ISO 10303-22 следующим образом:
• описание функций операции или утилит, которые выполняются операциями
• требуемые входные и выходные параметры - через описание их содержания и задание типов с применением entities схемы SDAI
• возможные сообщения об ошибках - через задание состояния, при котором операция не закончилась успешно
• Воздействие операции на окружение SDAI - через описание, как взаимно влияют входные параметры и данные сеанса.
Пример:
Create SDAl-model
Эта операция устанавливает новую модель sdai_niodel, в которой экземпляры entity могут быть созданы и обработаны.
• Вход:
Хранилище sdai repository;
хранилище, в котором должна быть создана модель SDAI.
Имя модели: STRING;
имя новой модели SDAI.
Схема: schema_de£inition;
схема, описывающая типы entities, которые могут быть созданы в новой модели.
Выход:
Модель: sdai model;
новая модель SDAI.
Возможные указания ошибок:
S S_NO РЫ сеанс не открыт
RP_MEXS хранилище не существует
RP_NOPN хранилище не открыто
Т R_NRW режим трансакции не для чтения-записи
MO_DOp повторение модели SDAI
SD_MDE F схема не определена
SY_ERR последствие системной ошибки
Воздействие на окружение SDAI:
Будет создан новый экземпляр sdai_model. Model. name будет установлен в ModelName. Model. underlying_schema будет установлена в Schema. Model. mode не будет установлен.
Model.contens.instances и Model.contens.populated folders будут пустыми.
Model, contens. folders будут содержать одиночный экземпляр entity_extent для каждого entity_definition a Schema, entities, с entity_extent. definition установит для соответствия entity_definition и entity_extent. instances, будучи пустыми.
4.3.2.2 Категории операций
Операции SDAI могут быть разделены на несколько категорий:
• операции окружения
• операции сеанса
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.