Создание моделей с использованием диаграмм или иерархических редакторов модели не всегда удобно и производительно. Для быстрого создания моделей может быть разработан текстовый DSL с использованием технологии XText. Но это требует некоторых усилий. Оказывается для создания любых моделей с помощью текстового DSL можно использовать универсальный DSL под названием ESON.
ESON - текстовый DSL на базе Xtext, который позволяет создавать модели для любых мета-моделей, будь-то UML2, Capella или собственная мета-модель.
Как всегда, использованием универсальной текстовой нотации менее наглядно и выразительно, чем при использовании специализированной текстовой нотации. Но в каких-то случаях и универсальная нотация сгодится.
ESON - текстовый DSL на базе Xtext, который позволяет создавать модели для любых мета-моделей, будь-то UML2, Capella или собственная мета-модель.
Как всегда, использованием универсальной текстовой нотации менее наглядно и выразительно, чем при использовании специализированной текстовой нотации. Но в каких-то случаях и универсальная нотация сгодится.
ESON от EMF Single Object Notation (по аналогии с JSON)
Ниже пример создания модели на языке Capella с использование текстового языка ESON.
Как обычно для текстовых редакторов DSL на базе XText справа отображается outline модели (может тоже использоваться и для создания элементов). Снизу - свойства выбранного элемента
Да, кстати, ссылки (подсвечиваются синим цветом) на элементы в тексте позволяют навигироваться. Достаточно на ссылке нажать F3 и курсор устанавливатеся на определение элемента. Например для перехода на определение компонента устанавливаем курсор на SE.LogicalArchitecture.LogicalSystem.Cmp1 , нажимаем F3
Курсор оказывается на определении
А вот пример создания UML модели с использованием текстового языка ESON.
А вот пример создания UML модели с использованием текстового языка ESON.
Нельзя сказать, что ESON очень удобен для создания UML моделей, привожу только для примера.
Модели, созданные с помощью ESON также могут быть отображены на представлениях (диаграммах/таблицах/деревьях) Sirius.
На рисунке ниже отображено представление файла eson в виде дерева модели в ProjectExplorer. В DataPkg я создал Capella Class Diagram Blank и перетащил на диаграмму Class4 , который был определен в текстовом DSL ESON.
С помощью диаграммы можно создавать и новые элементы. При этом они добавляются в виде текстовых элементов в файл ESON. Class 1 я создал на диаграмме. В ESON файле добавился соответствующий элемент.
На рисунке ниже отображено представление файла eson в виде дерева модели в ProjectExplorer. В DataPkg я создал Capella Class Diagram Blank и перетащил на диаграмму Class4 , который был определен в текстовом DSL ESON.
С помощью диаграммы можно создавать и новые элементы. При этом они добавляются в виде текстовых элементов в файл ESON. Class 1 я создал на диаграмме. В ESON файле добавился соответствующий элемент.
Чтобы создать модель с ипользованием языка ESON в Eclipse:
- устанавливается плагин ESON (используя updatesite)
- создается файл c расширением eson
- в начале файла указывается используемые мета-модели
- создается содержимое модели с использованием текстового языка






Комментариев нет:
Отправить комментарий