I'm building a database consisting of large JSON files, based on sources that are licensed under the public domain or CC-BY. I would like this database to remain open but I would also like to prevent people from creating proprietary software that they sell to others essentially milking my work while not giving back to the public.
I considered 3 licenses but all of them seem to have drawbacks:
- CC-BY-SA: Not good for databases or source code, not really compatible with other licenses, loopholes around derivative works like binaries.
- ODbL: Great for databases but the "share-alike" side seems to be only in effect when the dataset itself is changed.
- GPL: Great for code and has the most strict "share-alike" policy but seems like it can still be circumvented by downloading the data from an external source. Not recommended for databases.
Maybe my understanding of "open data" is not in line with its definition. Seems like downloading the data file from and external source (just for reading, not for modifying) can't be prevented through these licenses. Should I just give up this requirement?