Altova UModel 2024 Enterprise Edition

Der Ausgangspunkt zum Aufrufen vom UML-Elementen ist das Root-Paket (IUMLPackage), welches eine Eigenschaft der IDocument Schnittstelle ist. Alle Child-Elemente des Root-Pakets sind Subtypen von IUMLElement und werden gespeichert, wie in der UML 2.4 Superstructure  Specification der OMG definiert (siehe auch http://www.uml.org). So ist z.B. in der UML Superstructure Specification die folgende Beziehung für UML-Elemente definiert:

UMLSS_Element

 

D.h. jedes UML-Element kann eine Liste von Elemente dazugehöriger Elemente (="owned elements") haben und jedes UML-Element mit Ausnahme des Root-Pakets hat einen "Owner".

 

In der UModel API wird ein UML-Element UMLElement zugeordnet und hat die Eigenschaften OwnedElement und Owner. Da diese Beziehungen in der UML-Spezifikation schreibgeschützt sind, können beide Eigenschaften in der UModel API nicht geändert werden.

 

In der UML Superstructure Specification sind außerdem die folgenden Beziehungen zwischen Package und PackageableElement definiert:

UMLSS_Package

 

Dies ist IUMLPackageableElement zugeordnet und hat eine Eigenschaft OwningPackage und ein IUMLPackage, das nicht nur eine Eigenschaft PackagedElements hat, sondern auch eine Methode InsertPackagedElementAt, um neue IUMLPackageableElemente (an der angegebenen Position) einzufügen. Die Methode EraseFromModel löscht alle IUMLElemente (und deren untergeordnete Elemente) aus dem Modell.

 

Im Beispiel unten sehen Sie das Mapping eines Projekts, das aus zwei Klassen (IUMLClass) mit einer Abhängigkeit zwischen diesen Klassen (IUMLDependency) besteht:

Object model UMLData - no GuiElements

Diese Struktur ist unabhängig davon, ob diese Elemente in einem Diagramm gezeigt werden oder nicht.

 

Die Darstellung grafischer Objekte in Diagrammen (wie im Bild unten gezeigt) wird in einer zweiten Struktur mit Elementen der Art IUMLGuiElement (siehe auch Grafische Objekte) gespeichert.

 

MyClassDiagram1

 

Der Ausgangspunkt zu Aufrufen von UML GUI-Elementen ist die GuiRoot (IUMLGuiRootElement), welche eine Eigenschaft der IDocument Schnittstelle ist.

 

Linien werden durch IUMLGuiLineLinks behandelt, die meisten anderen Objekte (wie Klassen, Schnittstellen, Pakete,...) durch IUMLGuiNodeLinks.

Object model UMLData

© 2017-2023 Altova GmbH