Comments (2)
/cc @olydis
from spec.
Hey @fearthecowboy!
Thanks for reaching out. What you're telling me sounds exciting. If I understand correctly, you want to come up with a schema that could unify both specifications, right? If that's the case, it shouldn't be hard if you start from AsyncAPI. I started by cloning OpenAPI and changing what was really needed. And I can tell you it wasn't that much.
AsyncAPI v2.0.0
I think it would be interesting for you to follow up the work I'm doing on the v2
branch. The README is not updated, but you can get a taste of what's coming by looking at https://github.com/asyncapi/asyncapi/tree/v2/test/docs.
This branch contains some breaking changes, breaking as in comparison with version 1 and OASv3. All of them are justified and have been approved after some people reported the need for them. Anyhow, it shouldn't differ very much from OASv3.
Response to provoking thought number one.
Adding an OASv3 path item object to AsyncAPI should be pretty straightforward. Topics and Paths share the same format. However, be aware that in AsyncAPI v2 a topic object will become an array of messages.
Response to provoking thought number two.
I have the same feeling. However, take into account that maintaining such schema alongside the evolution of OAS and AsyncAPI can be a pain, as both specs have different targets and very different problems to tackle.
Response to provoking thought number three.
I saw that you've also talked about supporting other "payload format definitions" and other such things. I'd like to understand what you're thinking of here.
In version 2, I'm already introducing a way to document non-JSON character sequences. They are very useful for documenting IoT APIs, where you receive a string of data formatted following a custom internal protocol. Check this example. It documents the Wolksense MQTT API.
I hope I understood correctly after all this text 😄.
Anyhow, let me know if I can help somehow. I'll be glad to do it.
from spec.
Related Issues (20)
- Confusing Operation Object Example HOT 2
- Invite Heiko Henning to join as code owner HOT 11
- Should the Reply Object extend from the Operation Object? HOT 5
- Channel parameter type HOT 2
- Send/Receive again confusion HOT 3
- AsyncAPI v3 retrospective HOT 1
- Undefined description when using `OneOf`, `AllOf` or `AnyOf` HOT 3
- Undefined behaviour of "messageId" for Message Traits and Messages defined in components. HOT 4
- Avro specification inside AsycnApi file HOT 4
- Server Object host field compatibility with protocols HOT 3
- testing -input command not found HOT 2
- Possible bug with example - adeo-kafka-request-reply-asyncapi HOT 18
- Decide what to do with OAS schema properties HOT 5
- Allow plain `string` in Message Example Object field payload for non-json payloads (like xml, yaml) HOT 7
- when to finish amqp serverBindings HOT 2
- Divide "Maintainer" role into two categories: Triager and Committer HOT 7
- How to define MQTT User Properties in an AsyncAPI document? HOT 2
- Extend Avro and OpenAPI schema versions HOT 13
- Multiple reply addresses HOT 2
- Fix description of Operation Trait object HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from spec.