Notes for Reviewers
This PR is a proposal for v1beta1 for designs . some parts might not be technically correct !!
The current design schema, although undocumented, is a mix of our internal model constructs, deprecated Open Application Model (OAM) elements, and Cytoscape objects. This inconsistency makes it difficult to manage and analyze data effectively.
This revision proposes a stricter schema based on our well-defined internal constructs like models, components, and relationships.
Example of Current Design (replace with an actual example)
Much of the current content, particularly traits, lacks a defined schema and acts as a repository for Cytoscape-specific information.
Removal of Services and Traits:
The revamped component schema in V1 Beta 1 enhances component versatility for representing infrastructure entities, annotations, and presentation. This allows us to remove the need for both services and traits.
Design-Level Control:
V1 Beta 1 introduces the ability to store design-level preferences, including specifying permitted relationships between components.
Explicit Relationships:
The current schema relies on implicit Cytoscape constructs to define relationships. V1 Beta 1 introduces a dedicated "relationships stanza" for explicitly defining connections. This stanza uses a structured format with attributes like <from>
, <to>
, <kind>
, <type>
, <subtype>
, and <status>
to improve clarity.
Designs now have version information stored as an integer (int
) independent of the specific versioning system used. This means the version number itself is an integer, and the logic for assigning and incrementing it can differ depending on the chosen system.