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 generator behaviour #2

Open
onthebreeze opened this issue Jun 7, 2019 · 0 comments
Open

OpenAPI generator behaviour #2

onthebreeze opened this issue Jun 7, 2019 · 0 comments
Assignees
Labels
question Further information is requested

Comments

@onthebreeze
Copy link
Contributor

I think we might be using the UML "isID" property of an attribute in a misleading way. I have used it to indicate the attributes of the target class of an aggregation (eg vessels) that might be useful to return in the structure of the source class (eg voyages). The idea is that these data elements should be sufficient to know exactly which vessel is doing the voyage - without returning all the properties of the vessel in the query response about a voyage.

But the UML "isID" is one way to tag attributes. Another way to use a UML construct called a "tagged value". UML Tags are name/value pairs so we could have a tag name like "OpenAPI" (which means the open API generator should look for these tags) and a value like "query". That would mean that the API generator should include this property as allowed GET query string parameters.

Another OpenAPI tag value might be "aggregate" - meaning include this property in the data model of the source class when generating API. In general we can add optional richness to API generation by adding more tag values that drive specific treatment by the generator.

Thoughts?

@onthebreeze onthebreeze added the question Further information is requested label Jun 7, 2019
@onthebreeze onthebreeze self-assigned this Jun 7, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

1 participant