восстановить ecore после изменения схемы - PullRequest
3 голосов
/ 09 августа 2009

У меня есть схема в файле xsd. время от времени создается новая версия схемы, и мне нужно обновить .ecore (и .genmodel). Как мне обновить их, не удаляя их и заново генерируя их. Я сделал некоторые ручные изменения в ecore и хочу сохранить эти изменения.

идо.

Ответы [ 4 ]

3 голосов
/ 10 августа 2009

Используйте действие Обновить ... в * .genmodel, чтобы обновить * .ecore на основе новой версии * .xsd.

1 голос
/ 10 августа 2009

И не меняйте .ecore напрямую. Использование ecore: аннотации в схеме. http://www.eclipse.org/modeling/emf/docs/overviews/XMLSchemaToEcoreMapping.pdf

0 голосов
/ 10 августа 2009

Вы можете восстановить с помощью параметров контекстного меню. Чтобы сохранить ваши модификации:

  • Если есть метод, к имени которого добавлено «Gen» - например, setWhwhatGen в дополнение к setWhwhat - новый метод будет генерироваться для метода "Gen". Поэтому оставьте метод «Gen» в покое, чтобы его можно было перезаписать, а затем вызовите его из метода не-Gen, который вы можете изменить.
  • Все сгенерированные методы помечены @ генерируется . Если вы добавите «НЕ» - @ сгенерировано НЕ - оно не будет перезаписано.

Весь другой контент должен быть объединен. Продолжайте экспериментировать - вот для чего нужен контроль версий ....

0 голосов
/ 10 августа 2009

Я никогда не пробовал это, но XSD FAQ говорит это:

JAXB создает простой API Java, заданный XML-схема и делает это с помощью по сути, дизайн черного ящика. EMF создает модель Ecore с XML Схема, а затем использует на основе шаблона генераторная технология для генерации богатый Java API (написано от руки качественный). Схема XML для Ecore преобразование может быть адаптировано, шаблоны, используемые для генерации Java API может быть адаптирован, и в результате Java API может быть адаптирован. The генератор поддерживает слияние регенерация, чтобы сохранить Ваши рукописные изменения. В других слова, ЭДС намного богаче и больше гибкий и поддерживает более широкий Подмножество XML-схемы (особенно в 2.0, где будут поддерживаться подстановочные знаки и смешанный контент).

На вашем месте я бы попробовал провести несколько экспериментов, чтобы увидеть, насколько хорошо работает этот процесс и каковы практические ограничения.

...