[xsd-users] License and Portability
Peter Backes
rtc at cdl.uni-saarland.de
Fri Jul 1 10:41:35 EDT 2011
On Sun, Jun 19, 2011 at 06:21:28PM +0200, Boris Kolpackov wrote:
> Klaim - Joël Lamotte <mjklaim at gmail.com> writes:
>
> > 1. The xsd license is GPL even for generated code, right?
> > As my project's license is MIT and I wish companies to build over my code,
> > using xsd to generate code forces me and other companies using or selling my
> > tool to provide the source code or to have a commercial license with your
> > company? Am I correct?
>
> In addition to the GPL we also have the Free/Libre and Open Source
> Software (FLOSS) exception which, provided you actually build
> something useful on top of the generated code, allows you to
> effectively re-license the generated code under other open-source
> licenses, including MIT. For more information see the FLOSSE text
> which has a nice "Intent" section including more detail on situations
> where it can and cannot be used:
The FSF has generally taken the position that you cannot claim
copyright of the output users generate with the help of your program,
except if that program copies some significant amount of its source
code into the output. That is why gcc compiled programs need not be
put under the GPL.
Thus, IMO, the only thing that prevents XSD users from choosing any
license they want is the fact that the header-only XSD runtime library
is needed to make an executable.
http://www.codesynthesis.com/projects/xsd/FLOSSE seems wrong to me when
it justifies its claims by also referring to "XSD generated code"
See http://www.gnu.org/licenses/gpl-faq.html
Is there some way that I can GPL the output people get from use of my
program? For example, if my program is used to develop hardware
designs, can I require that these designs must be free?
In general this is legally impossible; copyright law does not give
you any say in the use of the output people make from their data
using your program. If the user uses your program to enter or
convert his own data, the copyright on the output belongs to him,
not you. More generally, when a program translates its input into
some other form, the copyright status of the output inherits that
of the input it was generated from.
So the only way you have a say in the use of the output is if
substantial parts of the output are copied (more or less) from text
in your program. For instance, part of the output of Bison (see
above) would be covered by the GNU GPL, if we had not made an
exception in this specific case.
You could artificially make a program copy certain text into its
output even if there is no technical reason to do so. But if that
copied text serves no practical purpose, the user could simply
delete that text from the output and use only the rest. Then he
would not have to obey the conditions on redistribution of the
copied text.
In what cases is the output of a GPL program covered by the GPL too?
Only when the program copies part of itself into the output.
Regards
Peter
--
Peter Backes, rtc at cdl.uni-saarland.de Office 403
Compiler Design Lab, Saarland University Campus E1 3
Phone: +49-681-302-2454, Fax: -3065 66123 Saarbruecken
http://rw4.cs.uni-saarland.de/people/rtc.shtml GERMANY
More information about the xsd-users
mailing list