-
-
Notifications
You must be signed in to change notification settings - Fork 276
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
Make Schema a superset of JSON Schema Draft 07 #256
Conversation
the payload can still be XML serializable? https://github.com/asyncapi/asyncapi/pull/256/files#diff-c579311543db4dde2bd2e2ca895ffed1R76 |
Oh yeah! The payload can be serialized to anything. We're just removing a feature (originally from OpenAPI schemas) that allows you to define XML using JSON Schema-like syntax. I'm doing this on purpose to keep it simple. If people request this feature in the future we can consider adding it. Adding is easy and quick but removing it later would be a mess and would require a major version bump. It's on the roadmap for the next minor version to add support for non-JSON schema languages: XSD, Protobuf, etc. XSD is what most people using XML use for schema contracts. |
Also, people can still use OpenAPI schemas if they need it. What's being changed here is the default schema format. |
896a21f
to
1e80c7c
Compare
I'm moving forward and gonna merge this PR. Please, if you see something wrong, missing, or just don't agree with the changes, don't hesitate to leave a comment after it's merged. I'll be happy to address these questions afterward. |
Thanks, @philsturgeon, and @WaleedAshraf for reviewing it. |
🎉 This PR is included in version 1.0.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
Fixes #212
@philsturgeon would you mind having a look at this PR? I took yours and changed/added some stuff.
Clarifications:
xml
property have been removed. Future versions of AsyncAPI will support XSD, which is better suited for XML definitions.deprecated
to our superset. Once Draft-08 is out and tooling implemented it, we can get rid of this property.schemaFormat
isapplication/vnd.oai.openapi;version=3.0.0
. Actually, once OpenAPI gets rid of their current Schema object and evolves into a Draft-08 superset, we will be able to align again.