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

OpenAPI/JSON Schema Inference Enhancements #589

Closed
4 of 5 tasks
mttrbrts opened this issue Jan 13, 2023 · 0 comments · Fixed by #594
Closed
4 of 5 tasks

OpenAPI/JSON Schema Inference Enhancements #589

mttrbrts opened this issue Jan 13, 2023 · 0 comments · Fixed by #594
Assignees

Comments

@mttrbrts
Copy link
Member

mttrbrts commented Jan 13, 2023

This issue tracks future enhancements to the OpenAPI inference:

  • Inference should generate Metamodel JSON rather than CTO. CTO printing can be added as necessary in a post-processing step
  • Inferred concepts should have a @final decorator. This can be used during deserialisation to ensure that future sub-types are not supported. Related to Optimize JSON (De)serialization (Final Types et al) #482
  • OpenAPI interference should be extended to support inline types for API operations. Today only named components / schemas are converted to concepts.
  • Generated models should be decorated with their source operations or schema names to aid mapping back to the OpenAPI / JSON Schema document. e.g. @source("myspec.json#/components/schemas/account_branding_settings")
  • The OpenAPI and JSON Schema inference should be refactored to decouple OpenAPI specific logic from the JSON Schema specific logic. Furthermore, we should adopt a more extensible pattern (such as Visitor, Transducer etc.)
@mttrbrts mttrbrts converted this from a draft issue Jan 13, 2023
@mttrbrts mttrbrts changed the title OpenAPI Inference Enhancements OpenAPI/JSON Schema Inference Enhancements Jan 13, 2023
@github-project-automation github-project-automation bot moved this from In Progress to Done in Concerto Roadmap Mar 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

2 participants