From: Arno P. <ar...@pu...> - 2010-03-16 16:16:35
|
Guys, there have been some questions regarding our licensing model. I would like to take this opportunity to express our (i.e., the XMLVM Core Team) intent. Before I go into details, I want to point out that our goal is to create a fair model that serves both the XMLVM Core Team as well as contributors. We acknowledge that some of you are interested in using XMLVM for commercial purposes. We ask you to acknowledge that we have legitimate business interests as well. The goal is to find a balance that works for all of us. XMLVM is and always will be Open Source. We use the GPL license and as many of you know, this license is very restrictive. The GPL license requires you to put your own source code under the GPL license. If you are just doing Open Source work, this is usually fine, however, if you want to develop commercial applications, this is not acceptable for obvious reasons. That is where the idea of dual licensing kicks in. We offer a second, commercial license, that will allow you to develop proprietary products based on XMLVM. Note that the idea of dual licensing is not new. Projects such as MySQL and JBoss have been doing this for a long time. Our commercial license is a non-transferrable GPL Linking Exception (or just linking exception for short) that takes away the 'viral' component of the GPL. This means, if we grant you a linking exception, you are *not* required to release your own application that is based on XMLVM to the Open Source. This linking exception is not transferrable. You cannot transfer this right to your customers. What is somewhat new with XMLVM is that we still want XMLVM to be a community project. That means, we hope and encourage the community to make contributions to XMLVM. It is important to us that we do not leave the perception of exploiting contributors via our commercial license. For that reason we have come up with a way to 'reward' outside contributors: If you make a (non-trivial) contribution to XMLVM, we will give you a commercial license (i.e., non-transferrable linking exception) that will allow you to develop a commercial application with XMLVM without sharing your proceeds with us. Of course there are some details that need to be clarified and there have been some questions on the mailing list regarding the details. Let us make a specific example: you send us a patch to XMLVM that is non-trivial (lets not get into the discussion on what is a non-trivial contribution. There is obviously no objective way of measuring the quality of a contribution. We will make that call on a case-by-case basis). If we (the XMLVM Core Team) agrees to merge your patch with the code base of XMLVM, we will give you a non-transferrable linking exception in return. In terms of the scope of this non-transferrable linking exception, there are several components: (1) to which version of XMLVM does the linking exception apply? (2) who is the recipient of the linking exception? (3) what is the duration of the linking exception? Let me address these issues individually. (1) we do not maintain an official versioning scheme for XMLVM. Things happen so fast in our code base that we do not plan to introduce official version numbers. In the future we might change this, but for now, we simply refer to the Subversion revision numbers. The linking exception is issued for the version of XMLVM that includes the contributors patch and any version of XMLVM released in the following 6 months. For really significant contributions we are willing to extend that time frame. (2) the linking exception is issued to the contributor of the patch. This can be an individual or the company for which the contributor works. This will allow the individual/company to develop applications that can be sold to their customers without having to share revenues with the XMLVM Core Team. The linking exception *cannot* be transferred to the customers of the contributor. (3) for the versions of XMLVM for which we issue the linking exception, the usage is not limited to the aforementioned 6 months. I.e., 6 months after you made your contribution you may still use older versions of XMLVM for commercial purposes. Only if you want to benefit from new features introduced to XMLVM after those 6 months, you will need to make another contribution to XMLVM to extend the duration of the linking exception. I would like to start a discussion with you guys on the mailing list to refine these rules. Again, we want to strike a balance between your legitimate commercial interest and ours. Let me know what you think. Arno |