Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Model generation from JSONSchema definition #294

Closed
mttrbrts opened this issue Jul 3, 2021 · 0 comments · Fixed by #297
Closed

Model generation from JSONSchema definition #294

mttrbrts opened this issue Jul 3, 2021 · 0 comments · Fixed by #297
Labels
Difficulty: Medium Type: Enhancement ✨ Improvement to process or efficiency Type: Feature Request 🛍️ New feature or request

Comments

@mttrbrts
Copy link
Member

mttrbrts commented Jul 3, 2021

Feature Request 🛍️

Generate Concerto models from JSONSchema definitions.

Use Case

This would allow round-tripping between Concerto and (a suitable sub-set of) JSONSchema which would be useful for contexts where client applications standardise on this. For example in microservices applications using OpenAPI definitions.

Context

JSONSchema is a document validation tool rather than a type system. This makes it difficult to perform operations such as code generation from models. Furthermore, JSONSchema does not support type extension, at least not in the usual OO sense.

However, JSONSchema is pervasive and well adopted across platforms.

Bi-directional support for JSONSchema in Concerto would broaden it's reach to more systems, while retaining the benefits of a strongly types schema language.

Detailed Description

  1. Implement a JSONSchema-to-Concerto visitor in concerto-tools to complement the existing Concerto-to-JSONSchema code generation that we already have.
  2. Identify a suitable sub-set of JSONSchema that can be mapped to Concerto
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Difficulty: Medium Type: Enhancement ✨ Improvement to process or efficiency Type: Feature Request 🛍️ New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant