0

After talking to a lot of people, they seem to give the impression that once the data goes into a GPL licensed program, it can only be extracted from that program by GPL licensed software.

I am told that a plugin or addon has to be GPL.

I have even been told that anything with a "shared data structure" counts too. So you can't access the same database either.

Some have even claimed that it goes so far as to include APIs, meaning that your program has to be GPL just to use an API of a GPL program.

So, if those claims are true, how do you get data out of a GPL or AGPL program legally? The data is not GPL, just the software. The data should not be held hostage.

There has to be some legal way to get data out of a GPL program or otherwise interact with a GPL program's data, right?

8
  • 3
    Could you please provide sources for these claims? Most of them are blatantly not true, because the things you talk about are not derivative works of the GPL'd work so cannot be covered by it. Commented Jun 20, 2022 at 15:55
  • @PhilipKendall Mostly from answers here. Commented Jun 20, 2022 at 16:17
  • @PhilipKendall For example, here: opensource.stackexchange.com/questions/8080/… Commented Jun 20, 2022 at 16:20
  • 3
    "Some have even claimed that it goes so far as to include APIs, meaning that your program has to be GPL just to use an API of a GPL program." – I'm sorry, but this is just BS. This exact question was at the heart of a multi-billion dollar, 12-year lawsuit between two of the biggest corporations on the planet, involving some of the most knowledgeable lawyers and specialists in the field, going all the way up to the US Supreme Court, and in the end, even after 12 years, they were not able to answer the question. Now, if the best lawyers in the world cannot figure out the answer after 12 years Commented Jun 21, 2022 at 8:25
  • 1
    Please see the following GPL FAQ about this question: Is there some way that I can GPL the output people get from use of my program. Also, this SE question: Is the output of an open source program licensed the same?
    – Brandin
    Commented Jun 21, 2022 at 11:30

1 Answer 1

5

they seem to give the impression that once the data goes into a GPL licensed program, it can only be extracted from that program by GPL licensed software.

This cannot possibly be correct. The GPL (and any other open source license) fundamentally derives its power from copyright law, so the absolute maximum of its reach is the same as the absolute maximum reach of copyright law: any derivative works. If something is not a derivative of the GPL'd work, then it simply isn't covered by the GPL.

The exact boundary of a derivative work is something which is jurisdiction and case dependent, but a good rule of thumb is "if the work could exist without the original, it is not a derivative work".

I am told that a plugin or addon has to be GPL.

The top voted answer on the question you are using (in a comment) as your source for your claims makes it very clear it is not as simple as this. It all depends on the degree of "entanglement" between the two components, and again comes down to whether the plugin is a derivative of the main program or not.

I have even been told that anything with a "shared data structure" counts too. So you can't access the same database either.

You are misinterpreting "shared data structure" - in this context, it means "actually using the same bytes of memory", not "uses the same schema". Again, your argument simply cannot be true because the data is (in almost every case) not a derivative work of the program that produced it, so the license of the producing program is irrelevant in copyright terms.

Some have even claimed that it goes so far as to include APIs, meaning that your program has to be GPL just to use an API of a GPL program.

You will need to provide a citation for this; put simply, people that claim this do not understand either the GPL or copyright law.

2
  • The problem is that there has to be a certain level of "entanglement" to extract the data. For example, you have to know the database schema or you have to know how to use the REST API. And the data is structured in a certain way so you have to structure it similarly in your program too. At what point does this "entanglement" lead to having to license your work as a derivative work? Commented Jun 22, 2022 at 10:11
  • 1
    @ScottM.Stolz To quote my answer: "The exact boundary of a derivative work is something which is jurisdiction and case dependent". My opinion as an experienced software engineer without legal training is that there is no way a database schema would ever meet that threshold, and I believe that reflects the overwhelming consensus. If you want any more than that, you will need to talk to a qualified lawyer. Commented Jun 22, 2022 at 10:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.