モデルからモデルへの変換出力に対するマージ・オプションの指定

変換によって生成される出力は、既存のモデルと置き換えたりマージしたりできます。 変換を実行する前に作成する変換構成に、マージ・プロパティーを指定しなければなりません。 マージの可用性は、出力メタモデルのマージ戦略の仕様によって決まります。
始める前に
通常は、変換で処理する入力モデルを含むプロジェクト内、 または、変換で上書きまたはマージするターゲット・モデルを含むプロジェクト内に、変換構成ファイルを定義しなければなりません。 変換構成ファイルは、ファイル名拡張子 .tc を持ち、モデルからモデルへの変換の実行方法を定義します。 ターゲット・メタモデルで CompareMerge コンテンツ・タイプ拡張が宣言されていなければなりません。ターゲット・モデルのメタモデルで CompareMerge 拡張が宣言されていない場合、 変換を実行するとターゲット・モデルが上書きされます。
このタスクについて

モデルからモデルへの変換出力にマージ・オプションを指定する手順は、以下のとおりです。

  1. 「プロジェクト・エクスプローラー」ビューで、変換構成ファイルを右クリックし、「開く」をクリックします。
  2. 変換構成エディターの「プロパティー」タブをクリックします。
  3. 変換によって生成されるモデルをターゲット・モデルにマージする方法を指定します。
  4. 「ファイル」 > 「保存」をクリックします。

変換によって、input.ecore メタモデルのインスタンスである MyOutputModel.input という出力モデルが生成される場合を例に考えてみます。 input.ecore メタモデル・プラグインの plugin.xml ファイルに、デフォルトの Ecore マージ戦略を指定するマージ拡張が含まれていると想定します。 変換構成にターゲット・モデルとして MyOutputModel.input を指定し、 かつ、オーバーライド・マージ・オプションを指定する変換構成を作成する場合、 変換を実行すると、MyOutputModel.input の内容が、変換実行時に生成される temp.input モデルの内容で置き換えられます。

変換構成に、他のマージ・オプション (自動、サイレント、ビジュアルなど) を指定し、 かつ、input.ecore メタモデル・プラグインでデフォルトの EMF マージ戦略を指定している場合、 変換を実行すると、temp.input と MyOutputModel.input の内容がマージされます。

input.ecore メタモデル・プラグインでマージ戦略が指定されていない場合、変換構成内の情報に関係なく、マージは実行されません。 変換は、オーバーライド・マージ・オプションが指定されている場合と同様に実行されます。


フィードバック