-
-
Notifications
You must be signed in to change notification settings - Fork 280
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
Allow defining payloads with non-JSON standards (XSD, Protobuf, etc.) #881
Comments
I looked into the linked draft PR and the long discussion there. It was hard to follow as there was a lot of OpenAPI and JSON Schema "history" involved and I got lost. just to make it clear: for me this is clearly only about the message payload referencing so referencing of schemas only, not referencing other parts of AsyncAPI what I understand is:
How about solving it by having another way of referencing things:
So in short
or xsd element:
the only problem I see is with the PS. I do not worry that we will not have out-of-the-box tooling support as we have for |
Agreed, I think it will just over complicate things otherwise.
That would definitely be possible yes. Do you know if serverlessworkflow has a core tool for solving references we could maybe use if this became the case?
That is a contradicting sentence, cause Studio and IDE plugins can't support it without the core tool in place 🤷 Unless they implement the functionality themself of course, but then it might as well be in a separate tool everyone can integrate. Or did I misunderstand you? 🤔 |
So started specific discussions for the 2 proposals in JSON Schema referencing repository and answered the outstanding clarification questions in separate issues for each standard
They seem to both support what we want, and leave it up to the context specification (AsyncAPI) to dictate the behavior necessary for referencing non-JSON Standards. |
I do not think they have any standard there. Their needs are also super specific, like for example in case of referencing AsyncAPI, reference points to Regarding |
+1 |
@derberg i dont see GraphQL support. |
@GreenRover well, maybe not competitor, but yeah it is different spec for different use cases, and it has 2 things in one, synchronous queries and mutations and asynchronous subscriptions. What I meant by mentioning GraphQL is specifically GraphQL schemas. Just like with OpenAPI, we support that someone can reference OpenAPI Schema in AsyncAPI document. Can be that someone already has schemas provided for GraphQL API, and they could reference them in AsyncAPI docs for other service. But there is nothing custom here, whatever solution we will have for XSD or Proto will work with GraphQL as it is very similar to Proto as far as I remember (didn't use it for over 3 year 😅 ) |
I think we have as well to consider another type of async messaging added now as well to Open API: So i wonder how to handle that Callbacks which can be used for webhooks but shown under Open API which most people associate more with synchronous messaging and not as well async. For the message other message formats a fast help could be a reference to other schemas. Maybe similar to #ref we could have #extref |
@rober15 we will "soon" release AsyncAPI 3.0 where one of features is support for |
This issue has been automatically marked as stale because it has not had recent activity 😴 It will be closed in 120 days if no further activity occurs. To unstale this issue, add a comment with a detailed explanation. There can be many reasons why some specific issue has no activity. The most probable cause is lack of time, not lack of interest. AsyncAPI Initiative is a Linux Foundation project not owned by a single for-profit company. It is a community-driven initiative ruled under open governance model. Let us figure out together how to push this issue forward. Connect with us through one of many communication channels we established here. Thank you for your patience ❤️ |
Is it still valid? @jonaslagoni @derberg |
I choose to start a new issue to map out more precisely what is needed to support this, without any specific sight on one approach or the other. This is a generic solution that would work with all non-JSON standards regardless of which one.
This was first pursued for V3 of the spec, but I don't believe that it will be possible for that deadline. Therefore I gathered the current progress to have one place to discuss it so it can be removed from the progress list.
Steps currently being taken:
Related resources:
The text was updated successfully, but these errors were encountered: