stringtranslate.com

Язык трансформации ATLAS

Операционный контекст ATL

ATL ( Язык трансформации ATLAS ) — это язык преобразования моделей и набор инструментов, разработанный и поддерживаемый OBEO и AtlanMod. Инициатором его выступила команда AtlanMod (ранее называвшаяся ATLAS Group). В области модельно-ориентированного проектирования (MDE) ATL предоставляет способы создания набора целевых моделей из набора исходных моделей.

Выпущенный на условиях общественной лицензии Eclipse , ATL представляет собой компонент M2M (Eclipse) , входящий в состав Eclipse Modeling Project (EMP).

Обзор

ATL — это язык преобразования моделей (MTL), разработанный OBEO и INRIA для ответа на запрос предложений QVT . QVT — это стандарт Object Management Group для выполнения преобразований моделей . Его можно использовать для синтаксического или семантического перевода . ATL построен на основе виртуальной машины преобразования модели .

ATL — это ответ исследовательской группы ATLAS INRIA и LINA на запрос предложений OMG MOF/QVT. Это язык преобразования моделей, заданный как метамодель, так и текстовый конкретный синтаксис. Это гибрид декларативности и императива. Предпочтительный стиль написания преобразований — декларативный, что означает, что простые сопоставления можно выразить просто. Однако предусмотрены императивные конструкции, чтобы можно было указать некоторые отображения, слишком сложные для декларативной обработки. Программа преобразования ATL состоит из правил, которые определяют, как элементы исходной модели сопоставляются и перемещаются для создания и инициализации элементов целевых моделей.

Архитектура

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

Пример

Программа ATL ( здесь T1.atl ) примет модель Ma.xmi в качестве входных данных и создаст модель Mb.xmi в качестве выходных данных. Обе модели могут быть выражены в стандарте OMG XMI . Модель Ma соответствует метамодели MMa.km3 . Модель Mb соответствует метамодели MMb.km3 . Нотация KM3 — это простой и нейтральный язык спецификации метамодели.

Сама программа ATL ( здесь T1.atl ) также является моделью, поэтому она соответствует метамодели (метамодели ATL), не представленной здесь.

Программа ATL состоит из заголовка, набора функций без побочных эффектов , называемых помощниками, и набора правил .

Реализации

Существует связанный с ним плагин ATL Development Toolkit , доступный в открытом исходном коде из ATL [2] Eclipse Modeling Project (EMP), который реализует язык преобразования ATL, вдохновленный языком запросов/представлений/преобразований MOF QVT . [3] Доступна большая библиотека преобразований. [4] MOF QVT — это предметно-ориентированный язык для преобразования моделей. Он поддерживает модели, соответствующие Ecore, EMOF, KM3 (специальный доменно-ориентированный язык для спецификации метамодели) и т. д. ATL также работает на MDR/ NetBeans .

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

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

  1. ^ "АТЛ - Скачать" . eclipse.org . Проверено 26 марта 2021 г.
  2. ^ "ATL | Фонд Eclipse" . www.eclipse.org . Архивировано из оригинала 15 мая 2016 года.
  3. ^ "ATL - Документация | Фонд Eclipse" . www.eclipse.org . Архивировано из оригинала 22 ноября 2016 г.
  4. ^ Аллилер, Фредди. «Преобразования ATL | Фонд Eclipse». www.eclipse.org . Архивировано из оригинала 22 ноября 2016 г.

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

Статьи

Язык преобразования моделей ATL Atlas

UMT Инструмент преобразования модели UML

Связанные подходы к разработке на основе моделей

Внешние ссылки