EA独自形式のXML

<< 目次を表示 >>

ページ位置:  プロジェクトの作成と管理 > モデルの入出力・転送 > XMLファイルを利用したプロジェクトの転送 >

EA独自形式のXML

EA独自形式のXMLは、モデルの内容を標準のXMIではなく、Enterprise Architect(のバージョン15.0以降)のみが利用できる形式で出力したファイルです。この形式は、Enterprise Architectのプロジェクト間でのやりとりなど、他のツールと関係しないモデルのやりとりのために追加されました。XMI 1.1/2.1と比較すると、この形式の内容はEnterprise Architect固有のものであり、互換性の想定はありません。結果として、モデルの入出力の速度がXMIと比較すると非常に高速になります。

 

XMLファイルの読み込み時には、対象となるパッケージがある場合にはまず削除してから、XMIの内容を読み込みます。EA独自形式の読み込みの場合には、内容は削除せずそのまま上書きします。結果として、読み込み時の動作がXMIファイルに比べると早くなります。

 

パッケージをEA独自形式で出力する場合には、対象のパッケージがXMLファイル内のルート(最上位)パッケージとして出力されます。パッケージの配下(子パッケージ・要素・ダイアグラムなど)の情報は、ルート項目の子としてXMLに出力されます。読み込み時には、以下のようなチェックを行います。

 

 

対象の項目がモデル内に存在しない場合には、新規項目として作成します。

 

すでにモデル内に存在する場合には、その内容をXMLの情報で更新します。

 

 

すでにモデル内に一部の内容が存在する場合の動作について

ここでは、EA独自形式のXMLファイルに含まれる要素が、すでに読み込み先のモデルに存在する場合の動作を考えます。次のような2つのプロジェクトを例にします。

 

 

パッケージ 'Order' は2つのプロジェクトの両方に存在します。 'Project X' では、パッケージ 'Order' は、別のパッケージ 'Abstract Class Model' の子パッケージになっています。, 一方で、 'Project Y' では最上位のパッケージとなっています。

 

ここで、パッケージ 'Abstract Class Model' を 'Project X' からEA独自形式で出力すると、以下のようになります。

 

 

このファイルを 'Project Y' に読み込むと、以下のようなチェックを行います。

 

 

このような場合には、次のような「既存の項目の読み込み」ダイアログが表示されます。このダイアログは、最上位のパッケージはモデルに存在しないが、配下の項目がすでに存在する場合に表示されます。一覧には、すでに存在する要素の種類と名前が表示されます。

 

 

項目

説明

一覧の項目をダブルクリック

対象の項目の、モデルブラウザ内の位置にカーソルを移動します。

既存の項目をXMLの内容で置換

この選択をすると、次の動作となります。

  • 既存のモデル内の項目(要素など)は削除される
  • XMLファイルの内容に沿って読み込まれる

 

上記の例では、以下のような結果となります。

既存の項目は維持し、新規要素としてXMLの内容を読み込み

この選択をすると、次の動作となります。

  • 既存のモデル内の項目(要素など)はそのまま維持される
  • 重複する項目は、新しいGUIDを割り振って新規要素として読み込む

 

上記の例では、以下のような結果となります。

 

上の図にあるように、パッケージ 'Order' が2つ 'ProjectY' 内に存在する結果になります。元々存在したパッケージ 'Order' はそのまま残り、同内容で別GUIDのパッケージ 'Order' が新たに生成されます。

キャンセル

読み込みをキャンセルします。既存のモデルには変更はありません。

 

 

モデルの異なる位置に存在する場合の読み込みの動作について

次に、以下のような構成を考えます。

 

 

この例では、パッケージ 'Abstract Class Model' および 'Order' は、両方のプロジェクトに存在します。ただし、 'Project X' ではパッケージ 'Order' は、パッケージ 'Abstract Class Model' のこパッケージであるのに対し、 'Project Y' では同階層に配置されています。

 

ここで、パッケージ 'Abstract Class Model' を 'Project X' からEA独自形式で出力すると、以下のようになります。(前の例と同じ)

 

 

このファイルを 'Project Y' に読み込むと、以下のようなチェックを行います。

 

 

このような例では、XMLファイルの内容が正しいものとして、親子関係を更新します。つまり、パッケージ 'Order' は自動的にパッケージ 'Abstract Class Model' の子パッケージとなるように処理されます。「既存の項目の読み込み」ダイアログは表示されません。

 

 

注意:

  • セキュリティ(アクセス権)機能が有効の場合には、「XMIの出力」あるいは「XMIの読み込みのアクセス権が必要です。
  • EA独自形式のファイルは、バージョン15.0より前のバージョンでは読み込むことはできません。
  • EA独自形式のファイルは、ユーザーオプションの「XMLに関する設定」グループにある「整形して出力」の設定は影響しません。常に整形せずに出力します。
  • SQLServerをDBMSリポジトリに利用している場合には、ファイルの読み込みを実行するユーザーはt_imageテーブルに対してALTERのパーミッションが必要です。

 

 

参考: