Согласно EMF FAQ, можно создать карту в EMF:Как определить карту в Xcore
EMAP в основном Список экземпляров java.util.Map $ Входа. Поэтому, чтобы создать карту, необходимую для первой модели ввод карты с помощью , выполнив следующие действия:
- Создание EClass с именем [Type1] К [Type2] Карта, где [Type1] представляет на тип ключа и тому [Type2] представляет тип значения.
- Задайте свойство класса экземпляра только что созданного EClass для java.util.Map $ Entry.
- Создайте EAttribute или EReference с именем «key» и установите для него EDataType или EClass.
- Создайте EAttribute или EReference под названием «значение» и установите для него EDataType или EClass.
Теперь, когда вы создаете EReference где-то, что использует эту карту запись класс как его EClass, генератор EMF код обнаружит это специальный дело и генерировать правильно набранный EMAP геттер/сеттер для вас вместо из обычный ELIS-приемник/сеттер.
Могу ли я использовать это с помощью моделей Xcore? Я не уверен, возможен ли шаг №2 в Xcore или он вообще поддерживает карты.