Search code examples
odatabreeze

Breeze MetadataStore in comparison to OData Metadata/CSDL


I've read through the Breeze site, and found how one can populate Breeze's MetadataStore with OData metadata. I've also read the OData metadata capabilities (basically the CSDL definition) and skimmed through Breeze's metadata capabilities.

Two related questions on the subject:

  1. How complete does Breeze cover the OData/CSDL metadata capabilities? I assume relationships entities and datatypes are all supported, but are there notable gaps to be aware of?

  2. Can I export a Breeze MetadataStore (back) to CSDL? If not, is this on the roadmap of being supported? and if not :) how much of a coding effort would it be to add that support myself?
    I guess this also relates to question #1 and to how close are the Breeze and OData metadata models to one another.

Thanks!


Solution

  • The Breeze "native" metadata format is a superset of what is available in the OData /CSDL. The idea was that we wanted to be able to support non-relational models and custom metadata in addition to what OData/CSDL does. In addition, we wanted something that was a bit more readable and used JSON as its native format and was easily extensible. I don't know of any gaps, but if you find any please let us know.

    Exporting the metadata store as CSDL is not currently supported because it would be a lossy conversion. It certainly would be possible but for what purpose?.

    Hope this helps.