meshery / schemas

Logical object models for Meshery
Apache License 2.0
17 stars 27 forks source link

add v1beta draft for designs #75

Closed aabidsofi19 closed 3 months ago

aabidsofi19 commented 4 months ago

Notes for Reviewers

This PR is a proposal for v1beta1 for designs . some parts might not be technically correct !!

Motivation

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.

New in V1 Beta 1

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.

Versioning of Design

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.

Signed commits

welcome[bot] commented 4 months ago

Yay, your first pull request! :thumbsup: A contributor will be by to give feedback soon. In the meantime, you can find updates in the #github-notifications channel in the community Slack. Be sure to double-check that you have signed your commits. Here are instructions for making signing an implicit activity while performing a commit.

leecalcote commented 4 months ago

Will the concept of Designs and how they fit into a Catalog continue to be separately considered?

Should Designs self-contain their own summarization of statistics like:

dragon-slayer875 commented 4 months ago

@aabidsofi19 Will it be a good question to ask what level of conversion will be required to map this schema to the RJSF format? Or at what point will the conversion occur?

stale[bot] commented 3 months ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

leecalcote commented 3 months ago

Whoa. The stalebot showed up here.

MUzairS15 commented 3 months ago

I am unable to push on your branch, I will merge this PR and open other PR with updates.