[jdom-interest] Imcompatibility with GPL
jhunter at servlets.com
Thu Sep 28 10:48:32 PDT 2006
Henttonen Katja wrote:
> I tried to register a new free software project at Savannah and learned
> that JDOM is not compatible with GPL and thus cannot be legally combined
> with GPL'ed libraries.
It's a matter of legal opinion whether two licenses are compatible. You
can ask programmers for their opinion, but it does just as much good as
asking lawyers about Java code.
And in fact you can ask ten lawyers their opinion and get ten answers (I
know, I have talked to many lawyers through my work at Apache). They're
all making educated guesses of what a judge would rule, so fundamentally
everyone's just guessing what some random judge is going to think.
That said, let me tell you my thoughts about licenses. :)
First, let's assume for the sake of argument the two licenses are so
clearly incompatible that even a programmer can tell. Let's assume the
JDOM license has clauses that the GPL would violate which way from
Sunday. Now let's assume you don't care and you go ahead anyway.
What's the risk? The risk is that the owner of the project whose
license you "wronged" (JDOM) is going to sue you. And let me give you a
hint, I'm not going to sue you for this.
OK, make sense? When combining code with the GPL it's the license owner
of the non-GPL code whose call it is if they're compatible, because
they're the party who would be entitled to take legal recourse. The
owner of the GPL code didn't have their license changed -- their IP is
still licensed as it was before; new obligations have been made on the
non-GPL code that it follow the GPL rules, and so that's the party to
ask about perceived compatibility. Now people argue about this, but if
I write a line of code under the GPL, you write a line of code under
License X, and our friend thinks they're compatible and thus ships them
both under the GPL (which is what happens if they're "compatible", it
means the GPL is a superset of requirements so the more liberally
licensed code can be GPL-ified) then I'm not out anything as the GPL
code author. It's you as License X author who has to decide if License
X was violated in this action.
Now, the JDOM license is an Apache 1.1 license (they didn't have 2.0
back then) with the acknowledgment clause removed. (I don't care to
require people to worry about stuff like that. Just use it, be happy.)
The ack clause is what GPL folks usually pointed toward as an
incompatibility (not that their opinion legally mattered). Well, we
don't have it.
We do have the clause that you can't use JDOM as a name in a derived
product. And that proved useful when dom4j forked because it was
originally called "JDOM++". That's just WRONG to fork a project and
name it like that. I complained, some said, "JDOM isn't a good enough
trademark." and I replied, "It doesn't matter, it's in the license, and
copyright law is a lot clearer and faster acting than trademark law."
and it got a new name. Obviously I'm not removing that clause because I
believe very strongly in it. So the license is what it is, except I'd
like to move to Apache 2.0 someday.
I would not consider moving JDOM to a *GPL license. People contribute
here because they want to and because it's in all our best interest, not
because of legal license arm twisting. I think JDOM should be core
infrastructure for all projects doing XML in Java, not just projects
with certain licenses. And I think the license should be so short and
simple that even a programmer can tell they're OK in using it.
More information about the jdom-interest