Nested SDM models and nested graphers

Rogue Wave®  JViews Diagrammer uses an SDM data model that specifies the application objects (also called model objects). The data model contains nested graphs if any model objects have a parent-child relationship. The parent-child relationship is expressed in the interface IlvSDMModel by the following two methods:
Enumeration getChildren(Object parent);
Object getParent(Object parent);
If for any model node, the call model.getChildren(node) returns a non-null value, then this model node is a subgraph and all its child nodes must return this node as their parent. In this case, the entire SDM model is called nested.
The SubGraph renderer translates a nested SDM model into a display of nested graphers. A nested grapher is an instance of IlvGrapher that contains other instances of IlvGrapher as graphic nodes. A subgrapher can be expanded (its inner node and links are shown) or collapsed (its contents is hidden and the collapsed subgrapher looks like a normal node). The SubGraph renderer is responsible only for creating the nested graphers and managing the collapse/expand state, but it does not perform any layout on the nested graphers. For more details on the SubGraph renderer, see The SubGraph renderer in JViews Diagrammer SDK.