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

Support for Capabilities vocabulary #152

Closed
LaylaLiu opened this issue Apr 14, 2015 · 4 comments
Closed

Support for Capabilities vocabulary #152

LaylaLiu opened this issue Apr 14, 2015 · 4 comments

Comments

@LaylaLiu
Copy link
Contributor

ODataLib should have a way to expose an accurate Capabilities vocabulary.

@jogonzal
Copy link

Please pay special attention to annotations targeted towards contained entity sets. We had to hack EdmLib quite a bit to get those to work.

@ghost
Copy link

ghost commented Apr 17, 2015

👍
It may be useful if you link relevant discussions about containment* @jogonzal-msft . If there were public issues tracking that work it'd be super easy to put the link here. :)

I think it may be constructive to have a wider public discussion about how the apis for this feature are implemented. Especially since other projects, such as Vipr (https://github.com/Microsoft/Vipr) have been working with annotations in EDM lib.

I believe part of this work should include simplifying the API for accessing vocabulary terms on EDM items. (This has an added benefit that it'll make all vocabulary-related work simpler, which should also make users of custom annotations such as SAP happy)

Right now, to read vocabulary terms, you need to write some code like this ++ apply custom mapping on your own time. This shouldn't be the case long term.
https://github.com/Microsoft/Vipr/blob/master/src/Readers/Vipr.Reader.OData.v4/ODataVocabularyReader.cs

It'd additionally be nice for the underlying EDMLib to ship representations of the major vocabularies. (In particular, representations for complex types exposed in the Core and Capabilities vocabulary would be wonderful so that consumers of these apis do not need to compile their own c# class to represent Core vocabularies) Having vocabularies in the class hierarchy could also improve the design time experience.

Vipr Devs probably have more to say in this thread too.

*(In my interperetation, the key insight from most of those discussions is that the "AppliesTo" term of an annotation should be interpreted as a hint, and not a requirement. This obviously informs the implementation of capabilites vocabularies across OData.Net, WebApi, Restier)

@congysu
Copy link
Contributor

congysu commented Jun 8, 2015

Related issue: #37

xuzhg added a commit to xuzhg/odata.net that referenced this issue Jun 9, 2015
xuzhg added a commit to xuzhg/odata.net that referenced this issue Jun 12, 2015
xuzhg added a commit to xuzhg/odata.net that referenced this issue Jun 12, 2015
hotchandanisagar pushed a commit to hotchandanisagar/odata.net that referenced this issue Jul 9, 2015
@mikepizzo mikepizzo added fixed and removed not-fixed labels Jul 31, 2017
@mikepizzo
Copy link
Member

Capabilities is added in PR #232.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants