The design of the Diva canvas comes from two divergent influences. First, structured 2D graphics packages such as HotDraw, Fresco, the Tycho Slate, provided the basic structuring approach, in which classes called Drawing, Glyph, or Item are sub-classed to provide application-specific classes, which can in turn contain other instance of this class. This approach provides tight encapsulation and makes programming interactive editors fairly simple, but suffers from limited flexibility in the rendering and display of these objects.
The second influence comes from 3D scene models such as Open Inventor and VTK. In these models, a scene is described in an explicit and exposed tree, which provides a very powerful and flexible construction and rendering model, but at the cost of complex data structures. To provide some of this flexibility without paying the cost of a large increase in data structure complexity, we "opened" the rendering model enough to allow complex rendering and transformation nodes to be inserted into the tree, but not enough to fully expose the tree structure.