ga4gh-discovery / ga4gh-case-discovery

A framework for searching genomic data sharing services
Apache License 2.0
8 stars 5 forks source link

Should we allow for private / custom components? #17

Closed fschiettecatte closed 6 years ago

fschiettecatte commented 6 years ago

fschiettecatte commented 6 years ago

By private I mean for internal use within organizations. For example organization X has a number of internal databases and wants to use this protocol but wants to use their own record type. The protocol as currently defined supports this but this is not official.

Relequestual commented 6 years ago

Private components?

My vote would be no, since it would add complexity? @harindra-a - Migrated

Relequestual commented 6 years ago

I think we can allow for groups to define their own components. In the MME API, we specify that anything prefixed with an underscore is non standard. Allowing the same thing for component types should be fine I feel, and would allow for groups to define their own components. I don't think we need to call them "private" though, but that's more semantics.

Relequestual commented 6 years ago

Reviewing this again, I think there's no problem, with like MME, specifying that components prefixes with an underscore _ are propritary and not defined.

This can be specified in the JSON Schema. I don't think there is any way to specify this using JSON Schema other than for annotations.

Unless there are any objections, I'll schedule this for 0.1.0, but it can be moved to post 0.1.0 if time becomes pressing.

Relequestual commented 6 years ago

It turns out this is pretty tricky to specify using JSON Schema, especially if I want to maintain draft-5 backwards compatibility to eventually auto convert to OpenAPI. Given it's part of the written spec, we don't NEED to enforce this using JSON Schema.