1. Automatic data persistence and replication. Objects and relations can be copied in or out from disk or network transparently. No custom serialization functions or translation layers from your objects to different storage paradigms are ever required. This is almost always significantly more efficient than any other database or replication mechanism, see Benchmarks.
  2. More maintainable code makes teams move faster. At all times, developers are aware of the data model. This avoids conceptual errors, inefficient use of data, and duplication.
  3. Model as Code provides clear visual documentation of your data model. One of our tools, Layout, reads the data model and generates a visually appealing UML class diagram which is never out of date. Layout is based on world class layout algorithms for VLSI. See Example.
  4. Supports reusable bi-directional associations. Many real life relations are bi-directional such as Graph, Aggregate, and Finite State Machine, yet standard libraries support only uni-directional associations. This means bi-directional association implementations without Structured Data are not reusable.
  5. Simple to start or migrate. Structured Data is extremely simple to use. The conversion of classes from standard libraries to Structured Data is limited to syntactical changes.
  6. Supports reusable Structural Design Patterns. Structural Design Patterns can be implemented as reusable library classes in the same style as Collections, Graphs, or other data structures.