Товары в корзине: 0 шт Оформить заказ
Стр. 1 

50 страниц

Определяет отображение конструкций языка EXPRESS на метамодель обмена UML для обеспечения обмена данными, соответствующего стандарту XMI. Данное отображение является односторонним отображением из языка EXPRESS на метамодель обмена UML. Данные ограничения делают такое отображение непригодным для полного отображения EXPRESS-схем на UML-модели, необходимого для информационного моделирования. Требования стандарта распространяются на: - отображение конструкций языка EXPRESS на метамодель обмена UML для обеспечения обмена данными, соответствующего стандарту XMI. Требования стандарта не распространяются на: - отображение конструкций языка EXPRESS на метамодель обмена UML для иных целей, чем обмен с использованием XMI; - отображение конструкций языка EXPRESS, которые не соответствуют метамодели обмена UML, включая: - глобальные и локальные правила; - отображение большинства ограничений на супертипы языка EXPRESS; - отображение выражений, функций, процедур и констант языка EXPRESS; - отображение явных атрибутов на языке EXPRESS, переобъявленных как производные атрибуты; - отображение комментариев на языке EXPRESS; - отображение понятий UML на язык EXPRESS.

 Скачать PDF

Идентичен ISO/TS 10303-25:2005.

Оглавление

1 Область применения

2 Нормативные ссылки

3 Термины, определения и сокращения

4 Соответствие

     4.1 Соответствие препроцессора

     4.2 Соответствие обменного документа

5 Отображение конструкций языка EXPRESS на метамодель обмена UML

     5.1 Неотображаемые понятия языка EXPRESS

     5.2 Общие требования к отображению

     5.3 Отображения для простых типов данных языка EXPRESS

     5.4 Отображения для объявлений EXPRESS-схем и спецификаций интерфейсов

     5.5 Отображения для объектных типов данных языка EXPRESS

     5.6 Отображения для объявлений подтипов данных языка EXPRESS

     5.7 Отображения для явных и инверсных атрибутов языка EXPRESS

     5.8 Отображения для вычисляемых атрибутов языка EXPRESS

     5.9 Отображения для определенных типов данных языка EXPRESS

     5.10 Отображения для агрегированных типов данных языка EXPRESS

Приложение А (обязательное) Регистрация информационного объекта

Приложение В (справочное) Примеры схем, DTD, UML-диаграмм и ХМI-файлов

Приложение С (справочное) Представление на языке EXPRESS частей метамодели обмена UML

Приложение D (справочное) Выдержки из Спецификации UML 1.4

Приложение Е (справочное) Краткое изложение отображения

Приложение F (справочное) Техническое обсуждение

Приложение G (справочное) Сценарии применения

Приложение ДА (справочное) Сведения о соответствии ссылочных международных стандартов и документов ссылочным национальным стандартам Российской Федерации

Библиография

Стр. 1
стр. 1
Стр. 2
стр. 2
Стр. 3
стр. 3
Стр. 4
стр. 4
Стр. 5
стр. 5
Стр. 6
стр. 6
Стр. 7
стр. 7
Стр. 8
стр. 8
Стр. 9
стр. 9
Стр. 10
стр. 10
Стр. 11
стр. 11
Стр. 12
стр. 12
Стр. 13
стр. 13
Стр. 14
стр. 14
Стр. 15
стр. 15
Стр. 16
стр. 16
Стр. 17
стр. 17
Стр. 18
стр. 18
Стр. 19
стр. 19
Стр. 20
стр. 20
Стр. 21
стр. 21
Стр. 22
стр. 22
Стр. 23
стр. 23
Стр. 24
стр. 24
Стр. 25
стр. 25
Стр. 26
стр. 26
Стр. 27
стр. 27
Стр. 28
стр. 28
Стр. 29
стр. 29
Стр. 30
стр. 30

НАЦИОНАЛЬНЫМ

СТАНДАРТ

РОССИЙСКОЙ

ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ТЕХНИЧЕСКОМУ РЕГУЛИРОВАНИЮ И МЕТРОЛОГИИ

гост р исо/тс

10303-25—

2012

Системы автоматизации производства и их интеграция

ПРЕДСТАВЛЕНИЕ ДАННЫХ ОБ ИЗДЕЛИИ И ОБМЕН ЭТИМИ ДАННЫМИ

Часть 25

Методы реализации.

Связь EXPRESS с XMI

ISO/TS 10303-25:2005 Industrial automation systems and integration — Product data representation and exchange — Part 25: Implementation methods. EXPRESS to XMI binding

(IDT)

Издание официальное

Москва

Стандартинформ

2013

Предисловие

Цели и принципы стандартизации в Российской Федерации установлены Федеральным законом от 27 декабря 2002 г. № 184-ФЗ «О техническом регулировании», а правила применения национальных стандартов Российской Федерации — ГОСТ Р 1.0-2004 «Стандартизация в Российской Федерации. Основные положения»

Сведения о стандарте

1    ПОДГОТОВЛЕН Федеральным государственным автономным научным учреждением «Центральный научно-исследовательский и опытно-конструкторский институт робототехники и технической кибернетики» на основе собственного аутентичного перевода на русский язык международного документа, указанного в пункте 4

2    ВНЕСЕН Техническим комитетом по стандартизации ТК459 «Информационная поддержка жизненного цикла изделий»

3    УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 03 сентября 2012 г. № 267-ст

4    Настоящий стандарт идентичен международному документу ИСОЯС 10303-25:2005 «Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 25. Методы реализации. Связь EXPRESS сХМ1» (130Я5 10303-25:2005 «Industrial automation systems and integration — Product data representation and exchange — Part 25: Implementation methods. EXPRESS to XMI binding»).

При применении настоящего стандарта рекомендуется использовать вместо ссылочных международных стандартов и документов соответствующие им национальные стандарты Российской Федерации, сведения о которых приведены в дополнительном приложении ДА

5    ВВЕДЕН ВПЕРВЫЕ

Информация об изменениях к настоящему стандарту публикуется в ежегодно издаваемом информационном указателе «Национальные стандарты», а текст изменений и поправок—в ежемесячно издаваемом информационном указателе «Национальные стандарты». В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ежемесячно издаваемом информационном указателе «Национальные стандарты». Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования — на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет

©Стандартинформ, 2013

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

ГОСТ Р ИСО/ТС 10303-25—2012

Рисунок 4 — EXPRESS-G диаграмма частей метамодели обмена UML

-    правила области определения в объявлениях ENTITY или ТУРЕ;

-    правила UNIQUE в объявлениях ENTITY;

-    объявления SUPERTYPE, кроме ABSTRACT SUPERTYPE и полных ограничений ONEOF;

-    объявления FUNCTION;

-    объявления PROCEDURE;

-    объявления CONSTANT;

-    факультативные ограничения OPTIONAL для атрибутов, областями определения которых являются агрегированные типы данных;

-    явные атрибуты, переобъявленные как производные атрибуты;

-комментарии.

Примечания

1    Большинство неотображаемых конструкций являются «правилами» (локальными правилами, глобальными правилами и некоторыми ограничениями на подтипы) и конструкциями, которые могут использоваться только в правилах. Хотя язык описания объектных ограничений (OCL), разработанный в OMG, предназначен для аналогичной цели в UML-моделях, лишь немногие понятия языка EXPRESS, используемые в правилах, имеют точные эквиваленты в OCL.

2    Конструкциями, не отображаемыми на UML, являются в основном конструкции, которые не представляются на EXPRESS-G диаграммах.

5.2 Общие требования к отображению

Спецификация UML 1.4 определяет два механизма, в которых присутствуют объявления: UML-mo-дель и UML-пакет. UML-модель «собирает представление о физической системе»; она «определяется своим назначением и уровнем абстракции (например, модель анализа, модель проектирования, модель

5

реализации)» и «является полным описанием физической системы». UML-пакет используется «в рамках модели для группировки объектов ModelElement».

EXPRESS — это язык описания данных. В языке EXPRESS схема определяет область определения, а также раздел, в котором присутствуют объявления. Для целей настоящего стандарта должна быть выбрана одна схема для представления контекста реализации. Что касается спецификации данных, то совокупность схем, находящихся в области видимости для данной контекстной схемы, определяет полный набор доступных типов данных.

Основываясь на ключевых понятиях UML, EXPRESS и настоящего стандарта, можно сформулировать следующие требования к формированию групп и разделов:

-    в UDS должна присутствовать одна UML-модель, определяющая вид спецификации данных системы, определенной контекстной схемой;

-    EXPRESS-схемы должны отображаться на UML-пакеты в рамках данной UML-модели в соответствии с 5.4.

У любого XML-элемента в UDS, имеющего XML-атрибут с именем “visibility” (видимость), представляющий в языке ими<онцепцию видимости объекта, значением данногоXML-атрибута должно быть «public» (общедоступный).

5.3    Отображения для простых типов данных языка EXPRESS

Представления на языке UML простых типов данных языка EXPRESS должны присутствовать в UDS в рамках того же пространства имен UML, что и UML-представление объявлений EXPRESS-схемы.

Примечание — Простые типы данных языка EXPRESS не объявляются в схеме, а являются глобальными.

Настоящий стандарт определяет два способа отображения простых типов данных языка EXPRESS. Все простые типы данных языка EXPRESS для конкретного отображения должны отображаться с использованием одного и того же способа.

Первый способ заключается в том, что все простые типы данных языка EXPRESS должны отображаться на классы UML. Именем класса UML должно быть имя простого типа данных языка EXPRESS, начинающееся с прописной буквы, за которой следуют строчные буквы. Класс UML должен иметь значение стереотипа UML “«primitive»”. У всех концов связей AssociationEnd, связанных с данным классом UML, значением атрибута “navigability” (возможность навигации) должно быть “true” (истина).

Второй способ заключается в том, что простые типы данных языка EXPRESS должны отображаться в соответствии со следующими правилами:

-тип данных INTEGER языка EXPRESS должен отображаться на тип данных Integer языка UML;

-    тип данных STRING языка EXPRESS должен отображаться на тип данных String языка UML;

-    тип данных BOOLEAN языка EXPRESS должен отображаться на тип данных Boolean языка UML;

-    тип данных LOGICAL языка EXPRESS должен отображаться на тип данных Enumeration языка UML с именем “Logical”, атрибуты EnumerationLiteral которого должны иметь значение “false”, “true” или “unknown”. При этом должен применяться стереотип UML “« enumeration»”;

-    тип данных BINARY языка EXPRESS должен отображаться на класс DataType языка UML с именем “Binary”.

Примечание — Ни UML, ни MOF не имеют встроенного типа данных, соответствующего типу данных BINARY. В реализациях на основе CORBA может использоваться отображение на встроенный тип данных Octet;

-    типы данных NUMBER и REAL языка EXPRESS должны отображаться на класс DataType языка UML с именем “Double”. Область определения этого типа данных должна совпадать с областью определения типа данных MOF 1.4 Primitive DataType с именем “Double”.

Примечание — UML не имеет встроенного типа данных, соответствующего типам данных REAL или NUMBER, поэтому используется тип данных MOF Double.

5.4    Отображения для объявлений EXPRESS-схем и спецификаций интерфейсов

Конкретная EXPRESS-схема является контекстом для некоторого отображения и называется контекстной схемой. В любом конкретном отображении необходимо рассматривать только данную контекстную схему и EXPRESS-схемы, определенные в ее области видимости с помощью спецификаций интерфейсов языка EXPRESS. Для каждого объявления EXPRESS-схемы, видимой для данной контекстной схемы и видящей данную контекстную схему, в UDS должен присутствовать UML-пакет. Атрибут UML

ГОСТ Р ИСО/ТС 10303-25—2012

ModelElement.name UML-пакета должен иметь имя EXPRESS-схемы, начинающееся с прописной буквы, за которой следуют строчные буквы.

Ниже в данном разделе понятие «в контексте отображения» относится только к тем конструкциям языка EXPRESS, которые прямо или косвенно имеют интерфейсы сданной контекстной схемой.

Для каждого оператора USE FROM или REFERENCE FROM языка EXPRESS из основной схемы в UDS должен присутствовать объект UML Elementlmport. Значением атрибута UML Element-mport.importedElement должна быть ссылка на UML-пакет, представляющий схему, имеющую интерфейс с данной схемой. Значением атрибута UML Elementlmport.package должна быть ссылка на UML-пакет, представляющий соответствующую EXPRESS-схему.

Для каждой отображенной конструкции языка EXPRESS, не являющейся частью схемы, но указанной в операторах USE FROM или REFERENCE FROM языка EXPRESS, в UDS должен присутствовать объект UML Elementlmport. Значением атрибута UML Elementlmport.importedElement должна быть ссылка на конструкцию языка UML, представляющую связанную через интерфейс конструкцию языка EXPRESS. Значением атрибута UML Elementlmport.package должна быть ссылка на UML-пакет, представляющий соответствующую EXPRESS-схему. Если конструкция языка EXPRESS переименовывается с использованием ключевого слова AS языка EXPRESS, то значением атрибута UML Elementlmport.alias должно быть новое имя, указанное после ключевого слова AS языка EXPRESS, начинающееся с прописной буквы, за которой следуют строчные буквы.

Для всех объектов UML Elementlmport, присутствующих в UDS, значением атрибута Elementlmport. visibility должно быть “public”.

Конструкции языка UML, представляющие конструкции языка EXPRESS, прямо или косвенно связанные через интерфейс с данной контекстной EXPRESS-схемой, должны присутствовать в UDS в UML-пакете, представляющем EXPRESS-схему, в рамках которой они объявлены.

Кроме конструкций языка UML, представляющих конструкции языка EXPRESS, видимые в данной контекстной схеме, в UDS могут быть включены конструкции языка UML, представляющие конструкции языка EXPRESS, невидимые в данной контекстной схеме. Если такие конструкции имеются, то они должны отображаться в соответствии с настоящим стандартом.

Для каждой конструкции языка UML из UDS, соответствующая UML-ассоциация, связывающая объект UML ModelElement с его пространством имен (объектом UML Namespace), должна присутствовать в UDS. В данной UML-ассоциации значением атрибута ModelElement.namespace должна быть ссылка на UML-пакет, представляющий EXPRESS-схему, в которой объявлен данный элемент, а атрибут Namespace.ownedElement должен содержать ссылку на конструкцию языка UML, представляющую конструкцию языка EXPRESS, объявленную в данной схеме.

5.5    Отображения для объектных типов данных языка EXPRESS

Для каждого объектного типа данных языка EXPRESS в контексте отображения в UDS должен присутствовать класс UML. Значением атрибута UML ModelElement.name данного класса UML должно быть наименование объектного типа данных языка EXPRESS, который он представляет, начинающееся с прописной буквы, за которой следуют строчные буквы. Если объектный тип данных языка EXPRESS объявлен как ABSTRACT SUPERTYPE, то значением атрибута UMLGeneralizableElement.isAbstract класса UML должно быть “true”, в противном случае — “false”. У всех классов UML, представляющих объектные типы данных языка EXPRESS, значением атрибутов UML GeneralizableElement.isLeaf и .isRoot должно быть “false”.

5.6    Отображения для объявлений подтипов данных языка EXPRESS

Для каждого объявления SUBTYPE в объектном типе данных языка EXPRESS в контексте отображения, в UDS должно присутствовать UML-обобщение. Значением атрибута Generalization.discriminator должна быть пустая строка.

UML-ассоциация между UML-обобщением и классом UML, представляющим подтип данных языка EXPRESS, должна присутствовать в UDS. Объект UML AssociationEnd с именем “child”, должен ссылаться на класс UML, представляющий подтип данных языка EXPRESS, а объект UML AssociationEnd с именем “generalization (обобщение)” должен быть ссылкой на класс UML, представляющий супертип языка EXPRESS.

UML-ассоциация между UML-обобщением и классом UML, представляющим супертип данных языка EXPRESS, должна присутствовать в UDS. Объект UML AssociationEnd с именем “parent (предок)”, должен ссылаться на класс UML, представляющий подтип данных языка EXPRESS, а объект UML AssociationEnd

7

с именем “specialization (специализация)” должен быть ссылкой на класс UML, представляющий подтип языка EXPRESS.

Для каждого объектного типа данных языка EXPRESS, видимого в контексте отображения, который имеет видимые в контексте отображения подтипы и в котором не заданы ограничения супертипа, в UDS должно присутствовать ограничение UML “overlapping (перекрытие)”. Для каждого объектного типа данных языка EXPRESS, являющегося подтипом объектного типа данных языка EXPRESS, в котором не заданы ограничения супертипа, UML-обобщение, представляющее взаимосвязь данного подтипа языка EXPRESS, должно быть включено в ограничение UML “overlapping”, созданное для данного супертипа языка EXPRESS.

Примечани е — Ограничение перекрытия в языке UML эквивалентно оператору ANDOR языка EXPRESS. Это необходимо, так как ограничение непересечения в UML (эквивалентное ONEOF в EXPRESS) используется по умолчанию.

Для каждого объектного типа данных языка EXPRESS, видимого в контексте отображения, который имеет видимые в контексте отображения подтипы, каждый из которых присутствует в одном ограничении SUPERTYPE ONEOF, в UDS должно присутствовать ограничение UML “disjoint (непересечение)”. Для каждого объектного типа данных языка EXPRESS, являющегося подтипом объектного типа данных языка EXPRESS, присутствующим в ограничении SUPERTYPE ONEOF, UML-обобщение, представляющее взаимосвязь данного подтипа языка EXPRESS, должно быть включено в ограничение UML “disjoint”, созданное для ограничения SUPERTYPE ONEOF языка EXPRESS.

5.7 Отображения для явных и инверсных атрибутов языка EXPRESS

Для каждого явного атрибута объектного типа данных языка EXPRESS в контексте отображения в UDS должны присутствовать атрибут UMLлибo UML-ассоциация. Значением параметра ModelElement.name атрибута UML или UML-связи должно быть имя атрибута языка EXPRESS, представленное строчными буквами.

Если атрибут языка EXPRESS является повторным объявлением унаследованного атрибута, то его не надо повторять в отображении подтипа. В случае если повторное объявление является конкретизацией объектного типа данных в графе супертипов / подтипов, то в UDS должно присутствовать выражение на языке OCL. Атрибут UML Constraint.name должен иметь значение “redeclared- (повторно объявленный)” с добавлением после дефиса наименования атрибута языка EXPRESS, представленного строчными буквами. Атрибут UMLConstraint.body должен иметь следующий вид: context <classname> inv <constraintname> : self. <attributename> -> forAII (ocilsTypeOf (<subclassname>)),

где:

-    <classname> — имя класса UML, представляющего объектный тип данных языка EXPRESS, в котором определено данное повторное объявление;

-    <constraintname> — атрибут UML Constraint.name;

-    <attributename> — наименование повторно объявленного атрибута языка EXPRESS, представленное строчными буквами;

-    <subclassname> — наименование класса UML, представляющего область определения повторно объявленного атрибута.

Для атрибута UML, представляющего явный атрибут языка EXPRESS, значением параметра UML Feature.owner должна быть ссылка на класс UML, представляющий объектный тип данных языка EXPRESS. Для атрибута UML начальное значение не устанавливают.

Для UML-ассоциации, представляющей явный атрибут языка EXPRESS, значение атрибута “navigability” у объектов UML AssociationEnd должно задаваться следующим образом:

-    если ни один инверсный атрибут языка EXPRESS не связан с явным атрибутом, то значением атрибута “navigability” объекта UML AssociationEnd, связанного с классом UML представляющим объектный тип данных языка EXPRESS, должно быть “false”;

-    если инверсный атрибут языка EXPRESS связан с явным атрибутом, то значением атрибута «navigability» объекта UML AssociationEnd, связанного с классом UML, представляющим объектный тип данных языка EXPRESS, может быть “true” или “false”, и такое же значение должно быть задано для всех инверсных атрибутов в контексте отображения;

-для объекта UML AssociationEnd, связанногос классом UML-классификатором, представляющим область определения явного атрибута языка EXPRESS, значением атрибута “navigability” должно быть “true”.

ГОСТ Р ИСО/ТС 10303-25—2012

Если явный атрибут языка EXPRESS объявлен как факультативный и он представлен атрибутом UML, то кратность данного атрибута UML должна иметь значение “0 ..1”.

Если явный атрибут языка EXPRESS объявлен как факультативный и он представлен UML-ассоциацией, то значением нижней границы кратности объекта UML AssociationEnd должен быть “0” на конце, относящемся к UML-классификатору, представляющему область определения данного явного атрибута.

Остальные отображения явных атрибутов языка EXPRESS зависят от области определения атрибута и определены ниже.

5.7.1    Области определения простых типов данных

Для каждого явного атрибута языка EXPRESS, областью определения которого является простой или перечисляемый тип данных языка EXPRESS, в UDS должен присутствовать атрибут UML с единственным значением. Параметр UMLStructuralFeature.type данного атрибута UML должен ссылаться на представление данной области определения на языке UML(cm. 5.3 и 5.9.1).

5.7.2    Области определения именованных типов данных и типов данных SET и LIST OF UNIQUE, базирующихся на именованном типе данных

UML-ассоциация и два относящихся к ней объекта UML AssociationEnd должны присутствовать в UDS для каждого явного атрибута языка EXPRESS, областью определения которого является один из следующих типов данных:

-    именованный тип данных;

-    тип данных SET, базовым типом которого является именованный тип данных;

-тип данных LIST OF UNIQUE, базовым типом которого является именованный тип данных.

Один объект UML AssociationEnd должен ссылаться на класс UML, представляющий именованный тип данных языка EXPRESS, а значением его атрибута UML ModelElement.name должно быть наименование явного атрибута языка EXPRESS, представленное строчными буквами. Если областью определения является именованный тип данных, то кратность данного объекта UML AssociationEnd должна иметь значение если данный явный атрибут является обязательным, и “0..1”, если он факультативный. Если областью определения является тип данных SET или LIST OF UNIQUE, то кратность объекта UML Association должна иметь значение, отражающее мощность множества типа данных SET или LIST OF UNIQUE, за исключением случая, когда явный атрибут является факультативным. В данном случае значением нижней границы должен быть “0”. Если типом данных LIST OF UNIQUE является агрегированный тип данных языка EXPRESS, то у объекта UML AssociationEnd, ссылающегося на представление на языке UML именованного типа данных языка EXPRESS, значением атрибута AssociationEnd.ordering должно быть “ordered (упорядоченный)”.

Другой объект UML AssociationEnd должен ссылаться на класс UML, представляющий объектный тип данных языка EXPRESS, с которым явный атрибут языка EXPRESS был объявлен. Кратность данного объекта UML AssociationEnd должна быть равна “0..*”, за исключением случая, когда явный атрибут языка EXPRESS имеет соответствующий инверсный атрибут. В данном случае значение кратности должно отражать границы инверсного атрибута. Если атрибут языка EXPRESS имеет соответствующий инверсный атрибут, то значением атрибута UML ModelElement.name данного объекта UML AssociationEnd должно быть имя инверсного атрибута языка EXPRESS, представленное строчными буквами. Если соответствующий инверсный атрибут языка EXPRESS не определен, то значением атрибута UML ModelElement.name может быть имя явного атрибута языка EXPRESS, представленное строчными буквами, с префиксом в виде строки ‘reverse-of-’, либо данный атрибут может быть опущен.

5.7.3    Области определения типов данных BAG и LIST, базирующихся на именованном типе данных

Для каждого явного атрибута языка EXPRESS, областью определения которого является тип данных BAG или неуникальный тип данных LIST, базовым типом которого является именованный тип данных языка EXPRESS, в UDS должен присутствовать многозначный атрибут UML. Параметр UML StructuralFeature.type данного атрибута UML должен ссылаться на класс UML, представляющий именованный тип данных языка EXPRESS. Значение кратности объекта UML StructuralFeature должно отражать мощность множества типа данных BAG или неуникального LIST, за исключением случая, когда явный

атрибут является факультативным. В данном случае значением нижней границы должен быть “0”. Если тип данных LIST не является уникальным, то значением атрибута UML StructuralFeature.ordering должно быть “ordered”.

5.7.4 Области определения других агрегированных типов данных

Для каждого явного атрибута языка EXPRESS, областью определения которого является агрегированный тип данных, не относящийся к типу данных SET, BAG или LIST, базирующемуся на именованном типе данных, в UDS должна присутствовать UML-ассоциация, представляющая явный атрибут языка EXPRESS. UML-ассоциация должна иметь два объекта UML AssociationEnd: один, ссылающийся на представление на языке UML объектного типа данных языка EXPRESS с агрегированным типом данных в качестве области определения атрибута, и второй, ссылающийся на представление на языке UML типа данных, являющегося базовым для агрегированного типа данных языка EXPRESS (см. 5.10). Значением кратности UML-ассоциации должно быть “1 ..1” на конце UML AssociationEnd, связанном с классом UML, представляющим объектный тип данных языка EXPRESS, за исключением случая, когда явный атрибут является факультативным. В данном случае значением нижней границы должен быть “0”. Значением кратности UML-ассоциации должно быть “0..*” на конце UML AssociationEnd, связанном с областью определения явного атрибута.

5.8    Отображения для вычисляемых атрибутов языка EXPRESS

Для каждого вычисляемого атрибута объектного типа данных языка EXPRESS в контексте отображения в UDS должна присутствовать UML-операция класса UML, представляющего данный объектный тип данных. Значением атрибута ModelElement.name данной UML-операции должно быть имя вычисляемого атрибута языка EXPRESS, представленное строчными буквами. Значением атрибута UML BehavioralFeature.isQuery должно быть ‘true’. Единственный UML-параметр, связанный с UML-операцией, должен присутствовать в UDS, представляя тип области определения вычисляемого атрибута языка EXPRESS. Значением атрибута UML Parameter.kind должно быть ‘return’. Связь атрибута UML Parameter.parameter должна ссылаться на UML-операцию, представляющую вычисляемый атрибут языка EXPRESS. Связь атрибута UML Parameter.type должна ссылаться на класс UML или тип данных UML, представляющий область определения вычисляемого атрибута языка EXPRESS.

5.9    Отображения для определенных типов данных языка EXPRESS

Каждый из трех видов определенного типа данных языка EXPRESS отображается на разные конструкции языка UML. Перечисляемые типы данных языка EXPRESS имеют прямое соответствие с UML-перечислениями. Однако другие определенные типы данных языка EXPRESS отображаются на классы UML.

5.9.1    Отображения для перечисляемых типов данных языка EXPRESS

Для каждого перечисляемого типа данных языка EXPRESS в контексте отображения в UDS должно присутствовать UML-перечисление. Значением атрибута ModelElement.name данного UML-перечисления должно быть наименование перечисляемого типа данных языка EXPRESS, начинающееся с прописной буквы, за которой следуют строчные буквы. Значениями объектов UML EnumerationLiteral должны быть наименования элементов перечисления языка EXPRESS, представленные строчными буквами, в том же порядке, в котором они определены в объявлении перечисляемого типа данных языка EXPRESS. UML-перечисление должно иметь UML-стереотип со значением “«enumeration»”.

5.9.2    Отображения для выбираемых типов данных языка EXPRESS

Для каждого выбираемого типа данных языка EXPRESS в контексте преобразования в UDS должен присутствовать класс UML. Значением атрибута ModelElement.name должно быть наименование выбираемого типа данных языка EXPRESS, начинающееся с прописной буквы, за которой следуют строчные буквы. Для каждого именованного типа данных языка EXPRESS из списка выбора, подлежащего отображению, в UDS должна присутствовать UML-ассоциация агрегации, не являющейся композитной агрегацией. Значением атрибута UML Association.name должно быть “selection of”. UML-ассоциация должна иметь точно два конца связи UML AssociationEnd. Значением атрибута UML AssociationEnd.aggregation должно быть “aggregate” на конце, указывающем на класс UML, представляющий выбираемый тип данных языка EXPRESS, и “попе” на конце, указывающем на класс UML, представляющий элемент из списка выбора

ГОСТ Р ИСО/ТС 10303-25—2012

языка EXPRESS. Ограничение XOR языка UML должно применяться к множеству UML-ассоциаций, связывающих класс UML, представляющий выбираемый тип данных языка EXPRESS, с классами UML, представляющими элементы из списка выбора языка EXPRESS.

5.9.3 Отображения для неконструкционных определенных типов данных языка EXPRESS

Для каждого определенного типа данных языка EXPRESS, не являющегося конструкционным типом данных, в UDS должен присутствовать класс UML, представляющий определенный тип данных. Значением атрибута ModelElement.name класса UML, представляющего определенный тип данных языка EXPRESS, должно быть наименование определенного типа данных языка EXPRESS, начинающееся с прописной буквы, за которой следуют строчные буквы. В UDS должно присутствовать UML-обобщение, связывающее представление на языке UML определенного типа данных с его базовым типом. Значением атрибута Generalization.discriminator должна быть пустая строка. Должна существовать UML-ассоциация, связывающая объект GeneralizableElement, представляющий определенный тип данных, с UML-обобщением. При этом роль UML-обобщения должна быть определена как “child (потомок)”, а конец, соответствующий объекту UML GeneralizableElement, должен быть определен как “specialization (специализация)”. Должна существовать UML-ассоциация, связывающая объект UML GeneralizableElement, представляющий базовый тип данных, с UML-обобщением. При этом роль UML-обобщения должна быть определена как “parent (предок)”, а конец, соответствующий объекту UML GeneralizableElement, должен быть определен как “generalization (обобщение)”. Для определения предка в UML-обобщении следует применять одно из следующих правил:

-    если базовым типом является другой определенный тип данных языка EXPRESS, то класс UML, представляющий определенный тип данных языка EXPRESS, являющийся базовым типом, должен быть предком в UML-обобщении;

-    если базовым типом является простой тип данных языка EXPRESS, то представление на языке UML этого простого типа данных языка EXPRESS должно быть предком в UML-обобщении;

-    если базовым типом является агрегированный тип данных языка EXPRESS, то класс UML, представляющий агрегированный тип данных языка EXPRESS в соответствии с 5.10, должен быть предком в UML-обобщении.

5.10 Отображения для агрегированных типов данных языка EXPRESS

Язык EXPRESS поддерживает агрегированные типы данных, для которых не существует прямого эквивалента в языке UML. По этой причине, даже если агрегированные типы данных языка EXPRESS имеют сходные структуры, при отображении на язык UML результатом не всегда будут такие же структуры. Каждое использование агрегированных типов данных языка EXPRESS трактуется в настоящем стандарте следующим образом:

-    отображение для использования агрегированного типа данных языка EXPRESS в качестве базового типа для определенного типа данных, установлено в 5.9.3 и в последующей части настоящего подраздела;

-    отображение для использования агрегированного типа данных языка EXPRESS в качестве базового типа для другого агрегированного типа данных, установлено в последующей части настоящего подраздела;

-    отображение для использования агрегированного типа данных языка EXPRESS в качестве объявленного типа данных для локальной переменной или параметра функции не установлено в настоящем стандарте, так как оператор FUNCTION языка EXPRESS не отображается на язык UML;

-    отображение для использования агрегированного типа данных языка EXPRESS в качестве области определения явного атрибута трактуется по-разному, в зависимости от деталей его использования. Отображение для явных атрибутов языка EXPRESS с областями определения именованных типов данных SET или LIST OF UNIQUE установлено в 5.7.2. Отображение для явных атрибутов языка EXPRESS с областями определения именованных типов данных BAG или LIST OF установлено в 5.7.3. В этих случаях никакой класс UML сам по себе не представляет агрегированный тип данных языка EXPRESS. Для остальных случаев отображение установлено в последующей части настоящего подраздела.

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

нам, единственным случаем, когда структура агрегированного типа данных языка EXPRESS отображается на UML-ассоциации, является использование явных атрибутов языка EXPRESS, областью определения которых является тип данных SET или LIST OF UNIQUE, базовым типом которого является именованный тип данных языка EXPRESS (см. 5.7.2). Другие агрегированные типы данных языка EXPRESS не отображаются на UML-ассоциации, поэтому тот факт, что они могут представлять взаимосвязь в EXPRESS-схеме, является менее очевидным в результирующем отображении на UML.

Для всех применений агрегированных типов данных языка EXPRESS, кроме определенных в 5.7.2 и 5.7.3, в UDS должен присутствовать один или несколько классов UML, представляющих агрегированный тип данных языка EXPRESS. В последующей части настоящего подраздела подробно описаны данные классы и другие имеющие к ним отношение конструкции языка UML, которые должны присутствовать BUDS.

5.10.1    Базовые типы агрегированных типов данных, являющиеся агрегированными типами данных

Если базовым типом агрегированного типа данных языка EXPRESS является агрегированный тип данных (или любое число последующих вложений агрегированных типов данных языка EXPRESS), то он должен быть представлен двумя или более классами UML.

Класс UML, представляющий самый последний из вложенных агрегированных типов данных языка EXPRESS, для которого базовым типом не является другой агрегированный тип данных, должен присутствовать в UDS в соответствии с 5.10.2.

Класс UML, представляющий каждый уровень вложения агрегированных типов данных языка EXPRESS, должен присутствовать в UDS. Значение атрибута UML ModelElement.name каждого из этих классов UML должно быть конкатенацией следующих составляющих:

1)    наименования вида агрегированного типа данных языка EXPRESS (Set, Bag, List или Array), начинающегося с прописной буквы, за которой следуют строчные буквы;

2)    строки, представляющей целое число, обозначающее нижнюю границу, за которой следует строка за которой, в свою очередь, следует строка, представляющая целое число, обозначающее верхнюю

границу, или строка “unbounded (неограниченный)” в тех случаях, когда взаимосвязь между агрегированным типом данных и его базовым типом представлена многозначным атрибутом UML;

3)    строки “-of-”;

4)    значения атрибута UML ModelElement.name, представленного всеми строчными буквами, конструкции языка UML, представляющей базовый тип агрегированного типа данных языка EXPRESS.

Для каждой пары классов UML, представляющих агрегированный тип данных языка EXPRESS (или отдельный уровень вложения в многократно вложенном агрегированном типе данных), в UDS должна присутствовать UML-ассоциация для агрегированного типа данных или многозначный атрибут UML в соответствии с 5.10.3.

5.10.2    Базовые типы агрегированных типов данных, не являющиеся агрегированными типами данных

Если базовым типом агрегированного типа данных языка EXPRESS является неагрегированный тип данных, то он должен быть представлен одним классом UML. Значение атрибута UML ModelElement.name данного класса UML должно быть конкатенацией следующих составляющих:

1)    наименования вида агрегированного типа данных языка EXPRESS (Set, Bag, List или Array), начинающегося с прописной буквы, за которой следуют строчные буквы;

2)    строки, представляющей целое число, обозначающее нижнюю границу, за которой следует строка за которой, в свою очередь, следует строка, представляющая целое число, обозначающее верхнюю

границу, или строка “unbounded” (неограниченный) в тех случаях, когда взаимосвязь между агрегированным типом данных и его базовым типом представлена многозначным атрибутом UML;

3)    строки “-of-”;

4)    значения атрибута UML ModelElement.name, представленного всеми строчными буквами, конструкции языка UML, представляющей базовый тип агрегированного типа данных языка EXPRESS.

В UDS должна присутствовать UML-ассоциация для агрегированного типа данных или многозначный атрибут UML для того, чтобы связать агрегированный тип данных языка EXPRESS с его базовым типом в соответствии с 5.10.3.

Примечание — Отображения явных атрибутов языка EXPRESS с базовыми типами данных SET, LIST и BAG, базирующимися на именованных типах данных, определены в 5.7.2 и 5.7.3.

12

5.10.3 Связь агрегированных типов данных с их базовыми типами

Для каждого агрегированного типа данных языка EXPRESS, т. е. BAG, ARRAY или неуникального LIST, в классе UML должен присутствовать многозначный атрибут UML, представляющий этот агрегированный тип данных языка EXPRESS. Значением параметра UML Attribute.name должно быть “elements (элементы)”. Атрибут UML должен быть задан как ссылка на Class, представляющий базовый тип агрегированного типа данных языка EXPRESS. Для типов данных BAG или LIST языка EXPRESS значение кратности атрибута UML должно отражать мощность множества агрегированного типа данных языка EXPRESS. Для типа данных ARRAY языка EXPRESS значение кратности атрибута UML должно отражать число элементов в агрегированном типе данных языка EXPRESS. Если атрибут UML представляет тип данных ARRAY или неуникальный LIST языка EXPRESS, то значением параметра UML StructuralFeature.ordering должно быть “ordered (упорядоченный)”.

Для каждого агрегированного типа данных SET или LIST OF UNIQUE языка EXPRESS в UDS должна присутствовать совместно используемая UML-ассоциация для агрегированного типа данных, атрибут UML Association.name которой должен иметь значение “aggregation_of”. UML-ассоциация должна иметь точно два конца связи UML AssociationEnd. Атрибут UML AssociationEnd.aggregation, относящийся к классу UML, представляющему агрегированный тип данных языка EXPRESS, должен иметь значение “aggregate”. Атрибут UML AssociationEnd.aggregation, относящийся к классу UML, представляющему базовый тип агрегированного типа данных языка EXPRESS, должен иметь значение “попе”. Значение кратности объекта UML AssociationEnd должно отображать мощность множества агрегированного типа данных языка EXPRESS. В случае если агрегированным типом данных языка EXPRESS является ARRAY или LIST OF UNIQUE, то у объекта UML AssociationEnd, относящегося к представлению на языке UML базового типа агрегированного типа данных языка EXPRESS, атрибут UML AssociationEnd.ordering должен иметь значение “ordered”.

13

ПриложениеА (обязател ьное)

Регистрация информационного объекта

Для однозначного обозначения информационного объекта в открытой системе настоящему стандарту присвоен следующий идентификатор объекта:

{ iso standard 10303 part(25) version(l) }

Смысл данного обозначения установлен в ИСО/МЭК 8824-1 и описан в ИСО 10303-1.

Приложение В (справочное)

Примеры схем, DTD, UML-диаграмм и ХМ1-файлов

Настоящее приложение содержит примеры EXPRESS-схем, DTD, UML-диаграмм и ХМ1-файлов.

В.1 Стандартные XMI DTD для UML

OMG опубликовала несколько соответствующих XMI шаблонов DTD для обмена UML-моделями. Примерами этих шаблонов DTD являются:

-    шаблон DTD для обмена моделями UML 1.4 и 1.5, документ OMG от 01-02-16;

-    шаблон DTD для UML 1.3, на основе XMI 1.0.

Эти шаблоны DTD поддерживают весь язык UML и поэтому содержат много объявлений, не используемых в отображениях, определенных в настоящем стандарте.

ГОСТ Р ИСО/ТС 10303-25—2012

Содержание

1    Область применения....................................... 1

2    Нормативные ссылки....................................... 1

3    Термины, определения и сокращения............................... 2

4    Соответствие............................................ 3

4.1    Соответствие препроцессора.................................. 3

4.2    Соответствие обменного документа............................... 4

5    Отображение конструкций языка EXPRESS на метамодель обмена UML.............. 4

5.1    Неотображаемые понятия языка EXPRESS........................... 4

5.2    Общие требования к отображению............................... 5

5.3    Отображения для простых типов данных языка EXPRESS................... 6

5.4    Отображения для объявлений EXPRESS-схем и спецификаций интерфейсов.......... 6

5.5    Отображения для объектных типов данных языка EXPRESS.................. 7

5.6    Отображения для объявлений подтипов данных языка EXPRESS............... 7

5.7    Отображения для явных и инверсных атрибутов языка EXPRESS............... 8

5.8    Отображения для вычисляемых атрибутов языка EXPRESS.................. 10

5.9    Отображения для определенных типов данных языка EXPRESS................ 10

5.10    Отображения для агрегированных типов данных языка EXPRESS............... 11

Приложение А (обязательное) Регистрация информационного объекта................ 14

Приложение В (справочное) Примеры схем, DTD, UML-диаграмм и ХМ1-файлов........... 14

Приложение С (справочное) Представление на языке EXPRESS частей метамодели обмена UML . .    25

Приложение D (справочное) Выдержки из Спецификации UML 1.4.................. 29

Приложение Е (справочное) Краткое изложение отображения.................... 34

Приложение F (справочное) Техническое обсуждение........................ 37

Приложение G (справочное) Сценарии применения.......................... 39

Приложение ДА (справочное) Сведения о соответствии ссылочных международных стандартов и документов ссылочным национальным стандартам Российской Федерации........ 41

Библиография............................................ 42

ГОСТ Р ИСО/ТС 10303-25—2012

В.2 Пример — три связанные схемы

В приложении Е представлен итоговый пример отображения, определенного в настоящем стандарте. Приведенные в приложении Е фрагменты EXPRESS-схем взяты из схемы: context_schema, связанной со схемами s2_schema и s3_schema.

Файл примера с XMI 1.2 содержит представления большинства конструкций, присутствующих в этих трех схемах.

Примечание — Следующие конструкции не включены в пример, так как инструментарий UML, используемый для создания XMI-файла, не поддерживает данные конструкции:

-ONE OF;

-    REFERENCE FROM;

-    USE FROM одиночный объект и AS для его переименования;

-    литералы перечисляемого типа.

SCHEMA context_schema;

-    - данная схема является контекстной схемой REFERENCE FROM s2_schema;

USE FROM s3_schema (entityl AS renentityl);

TYPE typel = SELECT (entityl ,type2);

END_TYPE;

TYPE type2 = ENUMERATION OF (red, white);

ENDJYPE;

TYPE type3 = STRING;

END_TYPE;

TYPE type4 = LIST OF STRING;

END_TYPE;

ENTITY entity2 ABSTRACT SUPERTYPE; a5 : LIST OF typel; a6 : LIST OF UNIQUE entity4; a7: REAL;

DERIVE

dal : REAL := 2.4*a7;

END_ENTITY;

ENTITY entityl

SUPERTYPE OF (ONEOF(entity4, entity5))

SUBTYPE OF (entity2); all : SET OF entityl0;

END_ENTITY;

ENTITY entity4

SUBTYPE OF (entityl); a2 : entity5; a8: LIST OF STRING; a12: type4; a13 : renentityl;

END_ENTITY;

ENTITY entity5

SUBTYPE OF (entityl);

INVERSE

ial : SET[1:?] OF entity4 FOR a2;

END_ENTITY;

END_SCHEMA;

SCHEMA s2_schema;

-    - данная схема получает данные через ссылки из context schema

15

ГОСТ Р ИСО/ТС 10303-25—2012

Введение

Стандарты комплекса ИСО 10303 распространяются на компьютерное представление информации об изделиях и обмен данными об изделиях. Их целью является обеспечение нейтрального механизма, способного описывать изделия на всем протяжении их жизненного цикла. Этот механизм применим не только для обмена файлами в нейтральном формате, но является также основой для реализации и совместного доступа к базам данных об изделиях и организации архивирования.

Стандарты комплекса ИСО 10303 представляют собой набор отдельно издаваемых стандартов (частей). Стандарты данного комплекса относятся к одной из следующих тематических групп: «Методы описания», «Методы реализации», «Методология и основы аттестационного тестирования», «Интегрированные обобщенные ресурсы», «Интегрированные прикладные ресурсы», «Прикладные протоколы», «Комплекты абстрактных тестов», «Прикладные интерпретированные конструкции» и «Прикладные модули». Полный перечень стандартов комплекса ИСО 10303 можно получить на сайте http://www.tc184-sc4.org/titles/ STEP_Titles.htm. Настоящий стандарт входит в тематическую группу «Методы реализации». Он подготовлен подкомитетом SC4 «Производственные данные» Технического комитета 184 ИСО «Системы автоматизации производства и их интеграция».

Настоящий стандарт устанавливает связь языка EXPRESS cXMl.

Рабочая группа по развитию стандартов объектного программирования [Object Management Group (OMG)] стандартизировала спецификацию обмена метаданными XML [XML Metadata Interchange specification (XMI)], объединяющую стандарты OMG, в которых определены унифицированный язык моделирования [Unified Modeling Language (UML)] и метаобъектные средства [Meta-Object Facility (MOF)], со стандартом Консорциума по разработке стандартов и протоколов Интернета [World Wide Web Consortium (W3C)], определяющим расширяемый язык разметки [Extensible Markup Language (XML)] [2]. XMI предоставляет механизм для обмена метаданными между средствами моделирования на базе UML и репозиториями метаданных на базе MOF. Кроме того, OMG стандартизировала совместимый с XML формат обмена для UML, установив тем самым лексическое представление UML-моделей, основанных на унифицированной метамодели UML. Данное лексическое представление обладает, помимо всего прочего, способностью обмениваться информацией о типах данных, информацией о классах (или объектах), группировками классов, обеспечивающих пространства имен для классов (или схем), связями и наследованиями между классами (или подтипами).

Настоящий стандарт определяет отображение конструкций, представленных на языке EXPRESS, на метамодель UML. Поскольку стандарт ХМ I определяет XML-представление конструкций метамодели UML, унифицированное отображение EXPRESS-конструкций на UML-конструкции поддерживает ХМ 1-представ-ление EXPRESS-схем. EXPRESS-схемы, являющиеся спецификациями данных, отображаются на понятия метамодели UML, присутствующие в статических структурных диаграммах UML. Настоящий стандарт не определяет отображение всех EXPRESS-конструкций на метамодель UML, так как данная метамодель не поддерживает все соответствующие EXPRESS-понятия. Установленное в настоящем стандарте отображение является односторонним отображением из языка EXPRESS на метамодель обмена UML. Данные ограничения делают отображение непригодным для общей взаимозаменяемости EXPRESS-схем и UML-моделей для целей информационного моделирования.

Пользователям настоящего стандарта необходимо детальное знание языка EXPRESS в редакции 1 и языка OMGUML1.5.

На рисунке 1 показан пример использования настоящего стандарта, относящийся к реализации прикладного протокола ИСО 10303. В данном примере участвуют:

-    специалист по информационному моделированию в формате STEP, разрабатывающий прикладной протокол ИСО 10303;

-    реализация настоящего стандарта, представляющая собой программное приложение, реализующее настоящий стандарт;

-    специалист по UML-моделированию, использующий инструментарий UML-моделирования для формирования спецификации системы программного обеспечения, исходя из UML-модели, сгенерированной реализацией настоящего стандарта;

-    программа UML-моделирования, генерирующая базовый Java-код из UML-модели;

-    разработчик программы на языке Java, выполняющий разработку системы программного обеспечения на основании Java-кода, автоматически сгенерированного программой UML-моделирования.

IV

ГОСТ Р ИСО/ТС 10303-25—2012


Определить информационные требования к системе

Специалист по информационному моделированию в формате STEP

Унифицировать ПФМ



и



Унифицировать отображение ПИМ на языке EXPRESS


Реализация ИСО 10303-25


Генерировать UML-код из EXPRESS


С


Создать модель системы программного обеспечения


Специалист по UML-моделированию


С


Сгенерировать Java-код из UML


>


/''Со:


Программа

UML-моделирования

Создать систему программного обеспечения на языке Java

Рисунок 1 — Реализация прикладного протокола


Разработчик программы на языке Java


На рисунке 2 показана концепция, положенная в основу настоящего стандарта, целью которой является обеспечение возможности использования средств разработки программного обеспечения на базе UML, если исходная модель данных написана на языке EXPRESS.


V


ГОСТ Р ИСО/ТС 10303-25—2012


VI


SCHEMA people;

ENTITY person; name : STRING;

END_ENTITY;

ENTITY organization; name : STRING; members : SET OF person; END_ENTITY;

END SCHEMA;



Рисунок 2 — Понятия, лежащие в основе связи EXPRESS с XMI


НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ

Системы автоматизации производства и их интеграция ПРЕДСТАВЛЕНИЕ ДАННЫХ ОБ ИЗДЕЛИИ И ОБМЕН ЭТИМИ ДАННЫМИ

Ч а с т ь 25

Методы реализации. Связь EXPRESS cXMl

Industrial automation systems and integration. Product data representation and exchange. Part 25. Implementation

methods. EXPRESS to XMI binding

Дата введения —2013 — 05—01

1    Область применения

Настоящий стандарт определяет отображение конструкций языка EXPRESS на метамодель обмена UML для обеспечения обмена данными, соответствующего стандарту ХМ I. Данное отображение является односторонним отображением из языка EXPRESS на метамодель обмена UML. Данные ограничения делают такое отображение непригодным для полного отображения EXPRESS-схем на UML-модели, необходимого для информационного моделирования.

Примечание — В общем случае обмен в соответствии со стандартом XMI является обменом информацией, представляющей UML-модель (т. е. схему), между инструментальными средствами UML-моделирования программных систем, репозиториями метаданных UML или другими подобными приложениями.

Требования настоящего стандарта распространяются на отображение конструкций языка EXPRESS на метамодель обмена UML для обеспечения обмена данными, соответствующего стандарту ХМI.

Требования настоящего стандарта распространяются на:

-    отображение конструкций языка EXPRESS на метамодель обмена UML для иных целей, кроме обмена с использованием XMI;

-    отображение конструкций языка EXPRESS, которые не соответствуют метамодели обмена UML,

включая:

-    глобальные и локальные правила;

-    отображение большинства ограничений на супертипы языка EXPRESS;

-    отображение выражений, функций, процедур и констант языка EXPRESS;

-    отображение явных атрибутов на языке EXPRESS, переобъявленных как производные атрибуты;

-    отображение комментариев на языке EXPRESS;

-    отображение понятий UML на язык EXPRESS.

Примечание — Большинство неотображаемых конструкций являются «правилами» (локальными правилами, глобальными правилами и некоторыми ограничениями на подтипы) и конструкциями, которые могут использоваться только в правилах. Хотя язык описания объектных ограничений (OCL), разработанный в OMG, предназначен для аналогичной цели в UML-моделях, лишь немногие понятия языка EXPRESS, используемые в правилах, имеют точные эквиваленты в OCL.

2    Нормативные ссылки

В настоящем стандарте использованы ссылки на следующие международные стандарты и документы (для датированных ссылок следует использовать только указанное издание, для недатированных ссылок следует использовать последнее издание указанного документа, включая все поправки):

Издание официальное

ИСО/МЭК 8824-1:20021 Информационная технология. Абстрактная синтаксическая нотация версии 1 (АСН.1). Часть 1. Спецификация основной нотации (ISO/IEC 8824-1:2002, Information technology—Abstract Syntax Notation One (ASN.1) — Part 1: Specification of basic notation)

ИСО 10303-1:1994 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 1. Общие представления и основополагающие принципы (ISO 10303-1:1994, Industrial automation systems and integration — Product data representation and exchange

—    Part 1: Overview and fundamental principles)

ИСО 10303-11:19942 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 11. Методы описания. Справочное руководство по языку EXPRESS (ISO 10303-11:1994, Industrial automation systems and integration — Product data representation and exchange

—    Part 11: Description methods: The EXPRESS language reference manual)

ИСО 10303-28:20033 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 28. Методы реализации. Представления схем и данных EXPRESS на языке XML (ISO 10303-28:2003, Industrial automation systems and integration — Product data representation and exchange — Part 28: Implementation methods: XML representations of EXPRESS schemas and data)

Спецификация унифицированного языка моделирования OMG, версия 1.5, официальный документ Рабочей группы по развитию стандартов объектного программирования, март 2003 г. (цитирован 11.02.2004 г.). Доступен в Интернете по адресу: <http://www.omg.org/cgi-bin/doc7formal/03-03-01> (OMG Unified Modeling Language Specification Version 1.5, Object Management Group Document formal/2003-03-01, March 2003 [cited 2004-02-11]. Available from World Wide Web: <http://www.omg.org/cgi-bin/doc7formal/03-03-01>)

Спецификация обмена метаданными XML (XMI) OMG, версия 1.2, официальный документ Рабочей группы по развитию стандартов объектного программирования, январь 2002 г. (цитирован 11.02.2004 г.). Доступен в Интернете по адресу: <http://www.omg.org/cgi-bin/doc7formal/2002-01-01> (OMGXML Metadata Interchange (XMI) Specification Version 1.2, Object Management Group Document formal/2002-01 -01, January 2002 [cited 2004-02-11]. Available from World Wide Web: <http://www.omg.org/cgi-bin/doc7formal/2002-01-01>)

Спецификация обмена метаданными XML (XMI) OMG, версия 2.0, официальный документ Рабочей группы по развитию стандартов объектного программирования, май 2003 г. (цитирован 11.02.2004 г.). Доступен в Интернете по адресу: <http://www.omg.org/cgi-bin/doc7formal/2003-05-02> (OMG XML Metadata Interchange (XMI) Specification Version 2.0, Object Management Group Document formal/2002-01-01, May 2003 [cited 2004-02-11]. Available from World Wide Web: <http://www.omg.org/cgi-bin/doc7formal/2003-05-02>)

Спецификация метаобъектных средств (MOF), версия 1.4, официальный документ Рабочей группы по развитию стандартов объектного программирования, апрель 2002 г. (цитирован 11.02.2004 г.). Доступен в Интернете по адресу: <http://www.omg.org/cgi-bin/doc7formal/2002-04-03> (Meta Object Facility (MOF) Specification Version 1.4, Object Management Group formal/2002-04-03, April 2002 [cited 2004-02-11]. Available from World Wide Web: <http://www.omg.org/cgi-bin/doc7formal/2003-05-02>)

3 Термины, определения и сокращения

3.1 Термины, определенные в ИСО 10303-1

В настоящем стандарте применены следующие термины:

-    прикладной протокол; ПП (application protocol; АР);

-данные (data);

-    язык определения данных (data specification language).

ГОСТ Р ИСО/ТС 10303-25—2012
3.2    Новый термин

В настоящем стандарте применен следующий термин с соответствующим определением:

3.2.1    контекстная схема (context schema): EXPRESS-схема, возможно включающая спецификации интерфейсов языка EXPRESS, которая определяет область применения отображения на язык UML.

3.3    Сокращения

В настоящем стандарте применены следующие сокращения:

АР — прикладной протокол (application protocol);

DTD —определение типа документа (Document Type Definition);

IDL —язык определения интерфейсов (Interface Definition Language);

MOF — метаобъектные средства (Meta Object Facility);

OCL — язык описания объектных ограничений (Object Constraint Language);

OMG — Рабочая группа по развитию стандартов объектного программирования (Object Management Group);

UDS — набор объявлений UML (UML declaration set);

XMI —обмен метаданными XML (XML Meta-data Interchange);

XML — расширяемый язык разметки (Extensible Markup Language).

4 Соответствие

Отображения из EXPRESS на метамодель UML являются отображениями на понятия статических структурных диаграмм (т. е. классов) UML. Любая ссылка на понятие UML является ссылкой на определение данного понятия, как это установлено в спецификации унифицированного языка моделирования OMG, версия 1.5, март 2003 г. Спецификация UML 1.5 включает метамодель обмена UML, на которой основаны отображения, определенные в настоящем стандарте.

Примечание — Отображения, определенные в настоящем стандарте, могут применяться во всех случаях, когда понятия, определенные в предыдущих версиях UML (версии 1.3 [3] и 1.4 [4]) эквивалентны понятиям, определенным в версии 1.5.

Для того чтобы выполнить представление, соответствующее XMI, используют метамодель обмена UML 1.5 совместно с правилами, определенными в спецификации XMI, для генерации стандартного формата, используя который, можно обмениваться UML-моделями. В стандарте XMI определены два метода создания XML-документа:

1)    метод расширения пакетов;

2)    метод включения объектов.

Препроцессор, соответствующий требованиям настоящего стандарта, должен использовать метод расширения пакетов (см. 5.3.3 и 6 в XMI 1.2).

4.1    Соответствие препроцессора

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

-    исходное представление, соответствующее ИСО 10303-11;

-    исходное представление, соответствующее XML-форме представления схем согласно ИСО 10303-28.

Соответствующий требованиям препроцессор должен принимать на входе метод для определения следующих параметров:

-    опции, выбранной для отображения простых типов данных языка EXPRESS (см. 5.3);

-    опции включения формулировок на языке OCL в тех случаях, когда это задано в отображении;

-    опции, выбранной для обеспечения возможности навигации подклассов AssociationEnd языка UML, получившихся в результате отображения явных атрибутов языка EXPRESS (см. 5.7).

Соответствующий требованиям препроцессор должен генерировать обменный XML-документ, поддерживающий один или несколько XMI-совместимых форматов UML, основываясь на отображениях, определенных в настоящем стандарте.

Примечание — На рисунке 3 показаны стандарты, используемые в препроцессоре, соответствующем требованиям настоящего стандарта.

3

Управляет, если XML

I----

I

I

I

t


Управляет


DTD на языке EXPRESS


ХМ1-совместимое DTD на языке UML


f— —> ■— ___-

Средство

отображения

Текст EXPRESS-

EXPRESS на у

ХМ1-кодирование

схемы или XML

UML/XMI на базе

UML, отображенного

^-------^

ИСО 10303-25 |'

из EXPRESS-схемы

_А_


Рисунок 3 — Стандарты, используемые в реализации, соответствующей требованиям настоящего стандарта


4.2 Соответствие обменного документа

Обменный XML-документ будет соответствовать требованиям настоящего стандарта, если выполняются следующие три условия:

-    XML-документ соответствует спецификации XMI;

-XML-документ основывается на допустимой контекстной EXPRESS-схеме;

-    EXPRESS-схема отображается на метамодель UML, соответствующую настоящему стандарту и представленную в ХМ1-форме.

5 Отображение конструкций языка EXPRESS на метамодель обмена UML

В данном разделе определены отображения конструкций языка EXPRESS на метамодель обмена UML (см. UML 1.4, раздел 5) при условии, что отображаемое понятие языка EXPRESS определено и соответствующие понятия языка UML идентифицированы. Совокупность понятий языка UML, получившихся в результате отображения конкретной совокупности понятий языка EXPRESS, называется набором объявлений UML [UML declaration set (UDS)]. В качестве входных данных требуется допустимая EXPRESS-схема.

Примечание — На рисунке 4 представлена EXPRESS-G диаграмма частей метамодели обмена UML. Каждый класс UML представлен как объектный тип данных языка EXPRESS. Каждое UML-обобщение представлено как взаимосвязь подтипов языка EXPRESS. Атрибуты языка UML, кроме тех, которые относятся к наименованиям, опущены для краткости. Каждая UML-связь представлена как явный атрибут языка EXPRESS без включения инверсивного атрибута для представления второго конца UML-связи. Полная EXPRESS-схема, на которой основан данный рисунок, приведена в приложении С, а соответствующие части метамодели обмена UML приведены в приложении D.

5.1 Неотображаемые понятия языка EXPRESS

Отображение следующих понятий языка EXPRESS на UML не определено в настоящем стандарте, поэтому их включать в UDS не требуется:

-    объявления RULE;

1

Отменен. Действует ИСО/МЭК 8824-1:2008. Для однозначного соблюдения требований настоящего стандарта, выраженных в датированных ссылках, рекомендуется использовать только данный ссылочный стандарт.

2

Отменен. Действует ИСО 10303-11:2004. Для однозначного соблюдения требований настоящего стандарта, выраженных в датированных ссылках, рекомендуется использовать только данный ссылочный стандарт.

3

Отменен. Действует ИСО/МЭК 10303-28:2007. Для однозначного соблюдения требований настоящего стандарта, выраженных в датированных ссылках, рекомендуется использовать только данный ссылочный стандарт.