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

Resource types / patterns for Path Item Objects #588

Closed
ralfhandl opened this issue Mar 1, 2016 · 6 comments
Closed

Resource types / patterns for Path Item Objects #588

ralfhandl opened this issue Mar 1, 2016 · 6 comments
Labels
Moved to Moonwalk Issues that can be closed or migrated as being addressed in Moonwalk

Comments

@ralfhandl
Copy link
Contributor

OData services mainly consist of "entity sets" which are collections of "entities" that are uniquely identified by their key property values within their entity set.

So a "read-only entity set" will support

  • GET on the set, with a predefined set of query options for paging ($top, $skip), filtering, sorting, free-text search, ...
  • GET on the individual entity by specifying the entity set plus the key property values

And "updatable entity sets" will in addition support

  • POST on the set to add new entities
  • PATCH and DELETE on individual entities

Basically an OData-aware client only needs the entity set name, the structure definition for each entity, and the "readonly/updatable" information to know the path templates and expected request and response bodies, allowed headers, possible response codes etc.

Spelling this out for OData-unaware clients takes a lot of highly repetitive content in the /paths section.

It would be great to have resource types or parameterized templates/patterns for Path Item objects that would allow to specify

/Products:
ReadOnlyEntitySetOfType
{ $ref: #/definitions/Product }
/People:
UpdatableEntitySetOfType
{ $ref: #/definitions/Person }

Please note that we foresee (well, actually have :-) services with dozens or hundreds of entity sets, so this would significantly reduce the size of the OpenAPI documents.

@webron
Copy link
Member

webron commented Mar 1, 2016

Parent issue: #560

@fehguy
Copy link
Contributor

fehguy commented Apr 11, 2016

@OAI/tdc removing from OpenAPI.Next proposal and making a future consideration.

@webron
Copy link
Member

webron commented Apr 12, 2016

Agreed.

@ralfhandl
Copy link
Contributor Author

See OAI/sig-moonwalk#30

@handrews handrews added the Moved to Moonwalk Issues that can be closed or migrated as being addressed in Moonwalk label Jan 29, 2024
@handrews
Copy link
Member

As noted in the previous comment, the best place to continue this is in the Moonwalk repository, in the linked discussion. Closing out of this repo - @ralfhandl if you think there's something that we might consider here for 3.x please comment and I'll be happy to re-open.

@ralfhandl
Copy link
Contributor Author

Let's tackle it in Moonwalk first and then check whether we want to downport it to 3.x

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Moved to Moonwalk Issues that can be closed or migrated as being addressed in Moonwalk
Projects
None yet
Development

No branches or pull requests

4 participants