Subject: Re: restrictions on web service linking?
From: "Clark C. Evans" <cce@clarkevans.com>
Date: Mon, 20 Nov 2006 21:21:27 -0500

On Mon, Nov 20, 2006 at 11:42:49PM +0100, Arnoud Engelfriet wrote:
| OSD #9 says that you can impose restrictions on derivative works
| of your software, but not on other software that it interacts with.

If I'm distributing foo.exe that is dynamically linked to bar.dll, does
not the GPL insist that bar.dll is also "GPL compatible"?  Or is the OSI
explicitly viewing the GPL to apply only to statically linked libraries?

| > I hope the above declaration addresses these concerns.  It is not what I
| > was originally proposing, but it is now.  I concede, in the tradition of
| > the GPL, that an open source license should not restrict the private
| > usage of that software or other software components.  The issue at hand
| > is public distribution and performance of derived works which are
| > dependent upon proprietary code.
| 
| In my opinion, such a derivative is no more "dependent" upon
| proprietary database software than it is on its operating system.

This is a fair assessment.  However, I would note that the GPL license
provides an explicit exception for operating systems; it does not have
an corresponding exception for databases.

| The OS and the DBMS are both independent programs with which
| your software communicates and interacts to do what it does.
| Do you think the OS should be as free/open as the DBMS people
| want to use with your software?

I would perhaps be completely thrilled with a license that acts like the
GPL, but one where the test was on "dependency" rather than on "static
linking".  Let's define an Depend license as something following...
 
  Let any "System" mean an arrangement of software (perhaps across
  one or more computers) that acts as a recognizable whole.

  Let "Dependent" mean that a System in question would fail to
  operate normally if a given software component were removed.

  Let an "Open System" mean a System where each and every software
  component that it is Dependent upon is either part of the operating
  system, or published under the Depend or any Open Source License.

  The Depend License would then restrict the Original Work to usage
  within a Open Systems.

I'm not saying that this is particularly practical, or useful, but
it is probably a highly flammable straw man. ;)

Cheers!

Clark