Тефкат - Tefkat

Тефкат это Язык преобразования модели и механизм преобразования модели. Язык основан на F-логика и теория программ стратифицированной логики. Двигатель - это Затмение плагин для Среда моделирования Eclipse (ЭДС).

История

Tefkat был одним из подпроектов проекта Pegamento на Центр технологий распределенных систем (DSTC), Австралия. Несмотря на то, что проект уже начался, наиболее активные исследования были направлены на представление ответа на О, мой бог с Минфин 2.0 Запросы / Представления / Преобразования Запрос предложений.

Tefkat был открыт до закрытия DSTC в июне 2006 года.

Краткое описание

Tefkat определяет отображение набора исходных метамоделей на набор целевых метамоделей. Преобразование Тефкат состоит из правила, узоры и шаблоны. Правила содержат исходный термин и целевой срок. Шаблоны просто называются составными исходными терминами, а шаблоны просто называются составными целевыми терминами. Эти элементы основаны на F-логике и чисто логическом программировании, однако отсутствие функциональных символов означает значительное снижение сложности.

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

Декларативная семантика преобразования Tefkat - это идеально модель следов и целей, удовлетворяющая всем правилам. Более императивной семантикой преобразования Тефкат является повторенная наименьшая фиксированная точка непосредственных последствий каждого правила. Из-за стратификации эта семантика эквивалентна и однозначна. Tefkat не использует явный вызов правил; все (не абстрактные) правила срабатывают независимо от всех остальных, однако правила могут быть слабо связаны с помощью отслеживания, внедрения, расширения правил и / или замены правил.

Конкретный синтаксис

Tefkat имеет конкретный синтаксис, похожий на SQL, предназначенный для краткой передачи смысла каждого правила, шаблона или шаблона.

ПРАВИЛО ClassToTableFORALL Класс c {name: n; } СОЗДАТЬ таблицу t {name: n; };

Соблюдение

Язык Tefkat определен в терминах (E) MOF 2.0, однако движок реализован в терминах Ecore, метаметамодели, подобной EMOF, в центре EMF. Этот язык очень похож на пакет Relations в QVT, однако не является строго совместимым.

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

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