Architekturdiagramm

Das folgende Diagramm veranschaulicht die Gesamtarchitektur des Produkts und die Interaktion der verschiedenen Komponenten in Abhängigkeit vom jeweiligen Anwendungsfall.
Der Anwendungsfall für Datenspeicher
stützt sich auf das Diagram-Widget (ibm_ilog.diagram.widget.Diagram).
Der Entwickler erstellt ein Diagram-Widget in HTML-Markup. Ein Dojo-Datenspeicher
stellt dem Widget Daten für die Anzeige des Graphen bereit. Der Entwickler
gibt den Speicher mit dem Attribut "nodesStore" sowie die Abfrage, die zum Abrufen der Elemente aus dem Speicher
verwendet werden soll, an.
Anschließend erstellt das Widget
den Graphen und füllt ihn automatisch.
Das Diagram-Widget akzeptiert zwei Datenspeicher: den Knotendatenspeicher und den Linkdatenspeicher.
Der Knotendatenspeicher (Eigenschaft "nodesStore") ist verbindlich und stellt die Daten bereit, die als Knoten
dargestellt werden sollen.
Der Linkdatenspeicher (Eigenschaft "linksStore") ist optional und stellt die Daten bereit, die als Links dargestellt werden sollen.
Wenn kein Linkdatenspeicher angegeben wird, werden Links implizit aus den Eigenschaften
"childBinding", "parentBinding", "predecessorsBinding" und "successorsBinding" des Widgets erstellt.
Diese Eigenschaften geben die Felder im Datenelement an, die die Beziehungen zwischen den Knoten definieren.
Für jedes Element im Knotespeicher wird eine ibm_ilog.diagram.Node-Instanz erstellt und dem internen Graphen hinzugefügt.
Knoten werden aus einer bestimmten Knotenschablone (oder über einen Callback, wenn mehrere Schablonen verwendet werden) erstellt.
Wenn die Knoten erstellt wurden, werden die Knotenbeziehungen anhand der zuvor aufgeführten Bindungseigenschaften
aufgelöst und ibm_ilog.diagram.Link-Instanzen erstellt.
der programmgesteuerte Anwendungfall stützt sich auf die Komponenten "Graph",
"Node" und "Link". In diesem Anwendungsfall erstellt der Entwickler
den Graphen explizit über den Code.
Das Modell ist ein grafisches Modell, das auf dojox.gfx.API basiert. Die Formen sind Instanzen von ibm_ilog.diagram.Node
und ibm_ilog.diagram.Link. In einem Graphen können die Knoten mithilfe der GFX-API explizit an vordefinierten Positionen
platziert werden, oder sie können durch Verwendung eines Graphenlayoutalgorithmus, der Knotenpositionen
anhand bestimmter Kriterien berechnet, angeordnet werden.