Modell laden

Kontext

Das Laden von Modellen tritt auf, wenn der Modellierer Modelle aus einem Repository zum Bearbeiten in seinen Workspace holt. Das Laden ist auf zwei Wege möglich, zum einen über das Kontextmenü und zum anderen per drag&drop. Beide Möglichkeiten werden in den folgenden beiden Abschnitten beschrieben.

Im aktuellen Entwicklungsstand ist das Laden von mehreren selektierten Modellen noch nicht möglich.

Laden eines Modells über das Kontextmenü

Der Modellierer lädt das Modell aus dem Repository, indem in der View Model Repository das Modell selektiert und im Kontextmenü Load anklickt.

Modell laden - Modell im Repository selektieren

Es öffnet sich ein Standard Eclipse Dialog, der den Zielordner und den Zielnamen erfragt. Der Modellierer kann das Modell sofort in sein aktuelles Projekt legen, um damit zu arbeiten.

Modell laden Eclipse Dialog

Nachdem diese Parameter gesetzt wurden, befindet sich das geladene Modell im gewünschten Projekt im Workspace.

Modell geladen

Laden eines Modells per Drag&Drop

Weiterhin ist es möglich die Modelle aus einem Repository einfach per Maus in ein Projekt im Workspace zu ziehen. Dieser Schritt ersetzt die Auswahl des Kontextmenü-Eintrags Load.

Dazu das Modell in der View Model Repository selektieren und in den Workspace bzw. Package Explorer ziehen und fallen lassen.

Modell laden per drag&drop

Unabhängig davon, wo der Modellierer das Modell fallen lässt, öffnet sich der gleiche Standard Eclipse Dialog, wie oben, der den Zielordner und den Zielnamen erfragt. Bei erfolgreichem Ladevorgang, erscheint das Modell im Workspace, wie beim Laden über das Kontextmenü.

Besonderheit beim Laden von M1 Modellen

Die vom Modellierer in Eclipse erstellten M1 Modelle (Instanzmodelle) besitzen in ihrer serialisierten XMI-Darstellung das Attribut xsi:schemaLocation. Dies dient dazu, das dazugehörige Metamodell zu laden und somit die Anzeige und Bearbeitung im Sample Reflective Ecore Model Editor zu ermöglichen. Allerdings verwendet dieses Attribut zum Laden des Metamodells den Pfad im lokalen Dateisystem und ist daher für die Ablage im Repository, das unter Umständen von mehreren Benutzern angesprochen wird, irrelevant, da die Pfade in den Dateisystemen der einzelnen Modellierer nicht zwingend übereinstimmen. Zudem kann es passieren, dass sich das relevante Metamodell in der Zwischenzeit verändert hat und dadurch das Instanzmodell möglicherweise ungültig geworden ist.

Dies hat zur Folge, dass das Attribut xsi:schemaLocation beim Speichern von M1 Modellen nicht verarbeitet und entsprechend beim Laden dieser Modelle auch nicht berücksichtigt wird. Das heißt, dass ein aus dem Repository geladenes M1 Modell nicht ohne Weiteres mit dem Sample Reflective Ecore Model Editor angezeigt und bearbeitet werden kann. Damit dies möglich ist, muss zunächst das zugehörige Metamodell verfügbar gemacht werden (z.B. durch Laden aus dem Repository). Anschließend muss die Namespace URI sowie der Dateisystempfad des Metamodells als Attributwert von xsi:schemaLocation in der serialisierten XMI-Darstellung des Instanzmodells manuell eingetragen werden.

Nach oben