Licenses exclusive or license puts out of character limitations on data package #214

trickvi opened this Issue Sep 22, 2015 · 1 comment


None yet

1 participant

trickvi commented Sep 22, 2015

The data package descriptor file allows (even if it isn't explicitly named in the specification) any additional properties except in one case:

license (or licenses) - is a field specifying the license (or licenses) under which the package is provided. You MAY specify either a license field or a licenses field but NOT both.

This means a data package can have additional properties EXCEPT license IF it already contains licenses OR licenses IF it already containslicense``.

This is obviously very hard to enforce in a schema where you cannot really define what you don't want, but you can get around it with code, but that's not as reusable and transferable as a schema.

I think this exclusive or for license and licenses adds unnecessary extra complexity to data packages and would like to propose going for one or the other.

Of the two I would vote for license. Having an array of licenses on a data package level isn't really helpful. It is not possible to know to what piece work each of the licenses in the array applies but to me that would be the most useful thing.

It is possible to define licenses on a resource level which is way more practical because then it is clear to what piece of work the license applies. This is actually not the case now because the resource level only supports licenses not license which makes it really unusable because then you do not know which parts each license applies. I therefore would also like to propose that the licenses be dropped from resources and instead license would be introduced for resources.

That way we could have only a single license for the data package itself which can be inherited by resources that do not define a license) but could overwrite the data package license on the resource level if applicable.

So basically I propose we drop licenses as a property on all levels and introduce license on a resource level.

trickvi commented Sep 23, 2015

This was closed via pull request #215

@trickvi trickvi closed this Sep 23, 2015
@vitorbaptista vitorbaptista added a commit to vitorbaptista/dataprotocols that referenced this issue Nov 16, 2015
@vitorbaptista vitorbaptista Change "licenses" to "license" in sample datapackage
Licenses was dropped in favor of license on version 1.0.0-beta.14 (issue #214).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment