CIDER: A component-based toolkit for creating smart diagram environments

Smart Diagram Environments (SDEs) are software applications that use structured diagrams to provide a natural visual interface that behaves as if the computer "understands" the diagram. Unfortunately, despite their potential usefulness, SDEs are not easy to build. We present CIDER a Java toolkit for building SDEs which greatly simplifies this task. CIDER is a generic component-based system which is designed to be easily embedded in Java applications. It provides automatic interpretation of diagrams as they are constructed and manipulated, structure preserving manipulation, and a powerful transformation system for specifying diagram manipulations and user interaction. CIDER's main innovation is its component-based approach to SDE development which provides substantially increased architectural flexibility to the application programmer.

How GraphNode and GraphEdge symbols are interpreted by Cider.