Best base license to pick?

Alex Bligh alex at
Wed Feb 9 18:01:13 UTC 2005

--On 09 February 2005 12:44 -0500 David Dillard <david.dillard at> 

>> > able to experiment with and redistribute modifications."  This
>> > restriction would interfere with that goal.
>> What, then, is the purpose of Para 4 of the OSD? That's all
>> they are trying to achieve.
> That's not the way it reads to me.  You wrote "they want to (inter alia)
> ensure file format and library interface compatibility between different
> version."  I interpret this to mean (and correct me if I'm wrong) that:
> 1. They want to ensure that the files created by any derived source code
> are always in the same format as those created by the original source
> code.
> 2. They want to ensure that the interface provided by the original source
> code isn't changed by any derived source code, though the derived source
> code can add to the interface.
> Now, if that's correct then this prevents a licensee from creating some
> derived works that they may wish to create.  And that, IMO opinion
> (IANAL), violates the OSD.

No far less machiavellian than that - I should have been clearer. When I
said "ensure" I really meant "promote" and/or "retain the tools to qualify
their own support".

They do not care what derived works people create or what file formats they
use, even if they break compatibility (well I expect they won't be over the
moon, but it's not something they intend to prohibit by license). However,
they want to be able to tell *why* it broke. IE they can create a derived
work that ROT13s the fileformat for all they care, just so long as the
source for that derived work is distributed as the original, plus the ROT13
patch. So if a user has difficulty loading a particular file (let's say
created by the standard GPL'd version), they can say "does it load if you
rebuild without the patches". If the answer is yes, they can say "well one
of your patches has broken things, let's have a look at the patches and/or
try backing them out". If they answer is no, they will go fix it. Similarly
with library calls. Moreover, they want to be able to record versioning in
the file so that when an "original" version finds something hard to load,
it can have a good guess why (though nothing to prevent the derived work
using any versioning format it likes including a misleading one). Similarly
with respect to library interfaces.

The other reason is in order to make quite sure that other people's
intellectual property does not get into any commercial derived work of
theirs unless the other people concerned are happy for that to happen
(license assignment / sublicense). If things are patches, they, and
everyone else, knows they are not permitted to use them. The last thing
they want (and any licensee making a derived work wants) is a dispute over
who has licensor IPR on code - i.e. the ability to license it under a
different license.

Reasons aside, all they want to do is what appears to be specifically
allowed by Para 4 of OSD.


More information about the License-discuss mailing list