Diagram API Object Model Synchronization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional diagramming tools have cumbersome APIs that require significant code to synchronize diagrams with underlying data, support high-quality user interfaces, and handle large complex drawings, leading to performance issues and scalability problems.
Innovation Solution
A diagram system with an object model API that manages presentation elements in the same context as the depicted elements, using a control-less design and modern API techniques like class inheritance to facilitate synchronization and customizability, and employs a rich framework to support both document and diagram state.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If conventional diagramming tools use traditional APIs to manage diagrams and data, then developers can access diagram functionality, but developers must write large amounts of code to synchronize diagrams with underlying data
Solution Approach 1:
The patent segments the diagram management functionality into distinct components: a Diagram class for presentation elements and a Model class for data elements, with explicit mapping relationships. This segmentation allows the synchronization logic to be divided into manageable parts through the established mapping between diagram elements and data elements, reducing overall code complexity while maintaining synchronization capability.
Solution Approach 2:
The patent introduces an intermediary mapping mechanism between the Diagram class and Model class. This mapping acts as a mediator that automatically synchronizes changes between the diagram presentation layer and the underlying data layer, eliminating the need for developers to write extensive synchronization code while maintaining tight coupling between diagram and data.
2Ease of operation
If conventional diagramming tools use traditional APIs to support high-quality user interfaces, then developers can create functional interfaces, but the APIs are cumbersome and require significant code
Solution Approach 1:
The patent creates universal base classes (Diagram class and Model class) that provide multi-functional capabilities through inheritance. These base classes handle common operations such as element creation, modification, and synchronization, allowing developers to inherit and extend functionality rather than rewriting code for each specific requirement, thereby simplifying UI development.
Solution Approach 2:
The patent establishes the diagram-element-to-data-element mapping relationship in advance during the design phase. This preliminary action of defining the mapping structure allows the system to automatically handle synchronization and UI updates without requiring developers to write extensive code during implementation, reducing both API and implementation complexity.
3Adaptability or versatility
If conventional diagramming tools handle large complex drawings, then diagrams can be created, but the software fails or operates unacceptably slowly
Solution Approach 1:
The patent segments the diagram into manageable units by separating presentation elements (Diagram class) from data elements (Model class). This segmentation allows the system to process and render only the necessary portions of large drawings efficiently, improving operational speed while maintaining the ability to handle complex drawings with many elements through the modular architecture.
Data Source
AI summary
A system and method facilitating diagramming is provided. The diagram system includes a diagram that stores shape element(s) and an application program interface (API) that includes a control that facilitates access to the diagram. The control maintains state information associated with the diagram. For example, application(s) can employ the API to access and/or modify the diagram.The system employs a rich framework to support both document and diagram state. Because the same framework is used to manipulate the state in a consistent way, it becomes much easier to keep the diagram synchronized with the underlying data than with conventional system(s).


