У меня есть приложение, которое читает входной xml-файл и строит модель emf / ecore (которую можно сохранить как xmi-файл).
Файл формата ввода «заблокирован», что означает, что никакие новые теги, атрибуты и т. Д., Еще не определенные в файле, не могут появиться. Но количество существующих тегов или значений атрибутов может измениться.
Теперь я бы хотел поддержать следующий сценарий:
1) Пользователь импортирует xml_01, и модель ЭДС строится.
2) Пользователь изменяет модель и сохраняет ее на диске.
3) Пользователь импортирует xml_02, который почти идентичен xml_01, но с некоторыми дополнительными узлами.
4) Во время второго импорта существующая модель должна обновляться на основе дополнительного содержимого из xml_02 и возможных конфликтов, сообщаемых пользователю.
Теперь у меня есть идея, как с этим начать - в основном, писать программу обновления с нуля.
Но есть ли какие-нибудь инструменты / библиотеки, которые могут помочь в написании такого рода средств обновления, особенно когда речь идет об изменении модели ЭДС?