OSI-approved license that assigns contributor copyright to me

Brian C brianwc at ocf.berkeley.edu
Sun Jul 10 16:13:01 UTC 2005


Hi David and Alex,

(What follows is not legal advice. IANAL (yet).)

Alex Bligh wrote:
> David,
> 
> See
> http://www.openvendor.org/
> 
> The OVPL is a modern license that does what you want I think. We are
> in the process of applying for OSI approval. If you think the license
> should be approved, please drop a note to this list.
> 
> Alex

As I read the OVPL it doesn't require copyright assignment, which David
asked about, but rather provides for a sufficiently generous
license-back such that it might still meet David's needs.

As an aside, in OVPL 3.3 everything after "BUT SUCH GRANT SHALL BE AND
SHALL REMAIN CONDITIONAL UPON..." strikes me as fairly unclear. Has
there been a discussion on this list yet of what exactly that part of
the license is trying to say? Whatever the answer, it seems it could be
said more clearly.

> --On 10 July 2005 02:07 -0700 David Barrett <dbarrett at quinthar.com> wrote:
> 
>> I've developed an application from scratch, and thus I own the copyright
>> on the entire codebase.  I'd like to dual-license the codebase, once
>> under an OSI-approved open-souce license, and a second time under a
>> commercial license.  Naturally the question is how to incorporate code
>> contributed under the OSI license into my commercial release.

Many projects do this. However, none that I'm aware of make the
assignment part of the initial license. This is likely because doing it
within the license introduces numerous practical problems and may even
make it run afoul of OSD-compliance. (More on this in a second.)

What people generally do is pick an OSI-approved license and then
separately require that anyone in the community who wants to contribute
code sign a separate copyright assignment agreement. (Some projects only
require a generous license.) A few things about this:

1. Copyright assignments, at least in the US, must be signed and in
writing. For you to receive these assignments you'll need to specify a
mailing address to receive the signed assignment (or an email address to
received scanned copies which may be sufficient; ask your lawyer.)
Putting such a requirement in the license itself presents practical
problems. This license may well govern the code for the entire term of
copyright, which, in many countries, is the life of the author plus 70
years. Can you say with certainty what the appropriate mailing address
will be for (c) assignments to be sent to in 100+ years? Will we even be
using email as it currently exists at that time? Better to have a
license that doesn't mention such things and a policy on one's website
that informs contributing developers what steps they must take to submit
contributions.

>> For maximum flexibility, I would like to have the OSI license require
>> contributors to transfer ownership of the copyright of their contributed
>> code to me, thus enabling me to re-license it just as my own.  In this
>> way, I retain total ownership over the copyright of the entire codebase,
>> whether written by me or not.

2. Flexibility. You may be able to get all the flexibility you want with
something short of assignment. Sun uses a Joint Copyright Agreement that
makes contributors and Sun joint owners of the contributed code. This
allows Sun to do what it wants while allowing developers to retain
co-ownership of their contributions. Some developers find that
attractive. https://jdk.dev.java.net/Sun_Contributor_Agreement.pdf

I mentioned above that some projects only require a license to modify
and distribute the contribution under [you fill in the terms]. So your
separate contributor agreement could simply require that contributors
grant you a non-exclusive [worldwide royalty-free blah blah] license to
modify and distribute the code under the terms of the OSI-approved
license of your choice as well as under the terms of your proprietary
license. If it were just a license you might not need signed paperwork
(ask your lawyer) and might get by with a click-wrap agreement on your
website that people could see right before submitting code (or once as a
condition of access to a developer portion of your site).

3. Control. However, something about your message makes me wonder if you
 want more than just assignments of code contributed to you, but of
every modification that anyone makes and distributes even if part of a
"fork." That's where you may start to bump into problems with
OSD-compliance and certainly such a scheme would be considered
incompatible with the Debian Free Software Guidelines and programs under
your license wouldn't be allowed in Debian. (Before you say you don't
care think about how many distros are based upon Debian: Ubuntu,
Knoppix, Xandros, Mepis, Progeny, Linspire...) For more on why they'd
reject this, see:
http://people.debian.org/~bap/dfsg-faq.html

While perhaps not technically a problem for OSD #3 (must allow derived
works) requiring assignment as part of the license certainly thwarts the
intent of #3 and of open source software generally. Open source software
generally is thought of as providing a "right to fork". That right would
become fairly meaningless if I could fork, but every change I made and
distributed had to be assigned back to you. I'd have a fork in which I
had no ownership and so if, for instance, you or someone else were to
start violating the terms of the license, I couldn't even do anything to
stop it because I wouldn't own any portion of my fork.

Requiring assignments in the license itself might also violate the
spirit but not the letter of OSD #7 (no need for execution of additional
license by recipients). What you'd be requiring perhaps wouldn't be
exactly another license or an NDA, which OSD #7 explicitly forbids, but
it would require that anyone who distributes modifications send in a
signed assignment form, which is at least onerous. Don't expect
developers to flock to contribute to a project that gives them so little
back for their work. Even if unexercized, the idea that one can take the
code and go one's own direction with its future development is a strong
incentive to contribute to begin with.

But keep in mind, I think all these problems arise only from
incorporating the assignment directly into the license and requiring
assignment for every single distributed modification whether *you* use
that mod or not. If you keep the license and assignment separate and
allow people to distribute their own modifications without paying any
attention to you, then you'll be following a well-traveled path, one
that even the FSF has adopted for the GNU project.

4. License reusability. Also keep in mind that if you submit a license
for OSI-approval that has a clause like "assign ownership of the
modification's copyright to David Barrett" then it wouldn't be approved
given OSI's recent statement on license proliferation:
http://www.opensource.org/docs/policy/licenseproliferation.php

That doc specifically mentions including proper names as a no-no. You'd
need a template version in addition to taking into account all the other
requirements for OSI-approval.

Brian

>> Is there an OSI license that does this, or nearly this?
>>
>> Reading through the list, it appears the QPL (Qt Public License) is the
>> nearest.  However, (so far as I can tell -- it's rather complex) it
>> doesn't explicitly transfer ownership over the copyright back to the
>> "initial developer".  Indeed, the key paragraph is:
>>
>> ----
>> b. When modifications to the Software are released under this license, a
>> non-exclusive royalty-free right is granted to the initial developer of
>> the Software to distribute your modification in future versions of the
>> Software provided such versions remain available under these terms in
>> addition to any other license(s) of the initial developer.
>> ----
>>
>> Overall I find the entire license a bit confusing (who is the 'initial
>> developer'?  Linus?  Charles Babbage?) and more complicated than I would
>> think is necesasry.  Rather, I think the essential clauses would include
>> something like:
>>
>> 1) You can modify the software so long as you give up all rights to the
>> modification and immediately assign ownership of the modification's
>> copyright to David Barrett
>>
>> 2) You can redistribute the compiled software so long as you make
>> available for download the uncompiled source code
>>
>> 3) You can redistribute the modified or unmodified software in uncompiled
>> souce code form so long as it is complete, non-obfuscated, blah blah
>> legalese
>>
>>
>> Is there an OSI license that accomplishes this in a more straightforward
>> and deliberate fashion than the QPL?  Thanks!
>>
>> -david
>>
> 
> Alex



More information about the License-discuss mailing list