This project is read-only.

It's possible Use ExtremeML in Commercial (Closed- source) projects?

May 9, 2010 at 5:46 PM

Hi, I'm develop an commercial application and searching for library/toolkit/component to export data to Excel(xlsx) files.

I found Extreme ML is so powerful and meets my requirement except the License.

The Extreme ML was licnesed in GPL V2, which required all applications use ExtremeML to be GPLed.

Is there a way to use ExtremeML in commercial(closed source) applications? Or you plan to release ExtremeML in other license such as MIT or Appache or MS-PL? (Dual-licensed)



May 9, 2010 at 6:08 PM

Hello and thank you for your question.

Until recently we were developing a commercial edition of ExtremeML (known as the premium edition) but after conducting some research among our beta users, we have concluded that there is insufficient interest to justify the considerable effort and cost that would be entailed with releasing and supporting this product. We are therefore forced to abandon this aspect of the project and to allow the community edition to develop at its own pace, with the correspondingly reduced level of resource that we are able to devote to it.

Consequently, in the very near future, the entire current codebase of the premium edition will be merged into the community edition (available here on CodePlex) and development work on new premium features will stop. Under this rationalized project architecture, ExtremeML will only be available under the GPL v2 license (although existing beta users of the premium edition will continue to benefit from non-viral licensing).

I apologize that we are therefore unable to meet your requirements.

Thanks and best regards,

Tim Coulter

May 10, 2010 at 12:41 PM

Thank you for your reply.

Even ExtremeML is GPLed, I have my solution: 1) Shift to other components that not released with GPL, such as Simple OOXML(, or XOOX(, etc.;  or 2) Develop a seperate Report subsystem (GPLed & open source) based on ExtremeML, which is  in a single Executable(.exe) so that the main-business application do not affected by the GPL license.

May 10, 2010 at 1:06 PM

What you suggest in option (2) is an innovative solution, but I doubt whether it would solve your problem.

As far as I am aware (and I am not a lawyer), the GPL attaches itself to every component in a system, even components that are dynamically linked to a GPL library. So, if your main application is compiled with references to either the reporting subsystem or to ExtremeML it would be subject to the terms of the GPL. Moreover, even if this were not the case, you would not be permitted to distribute either the reporting subsystem or ExtremeML as part of the installer for your main application - your clients would have to separately obtain and pre-install these components.

I recommend that you give preference to your option (1) but, as I said above, this is not to be construed as legal advice.

May 11, 2010 at 2:25 PM

Thanks for your remind.

As far as I know, GPLed application and None-GPLed Property application can be combined  into a "single solution"(Such in a single setup file),  and can be put into the same folder to work together as they are deployed to the end-user/customer's computer.

If I have a "solution" that consisted with two partition, consider the two cases:

Case 1: a Main-Application (named Main.exe) and a Helper-Application( named Helper.exe), Main.exe call Helper.exe by command line, or call System API (In C#, System.Diagnostics.Process.Start();) to start a new instance of Helper.exe.;

Case 2:  A Main-Application (named Main.exe) and a dynamic library named Helper.dll, Main.exe referenced and linking to Helper.dll,  and call the classes or API methods in Helper.dll directly.

Let's say both Helper.exe and Helper.dll are built from GPLed codes,  under my understanding of GPL license, in Case 1, Main.exe is not affected by GPL, in Case 2, Main.exe must be GPLed. Case 1 is called "Aggregate" and  Case 2 is called "Modified Version" in GPL. See  If I choose Solution 2, I will take Case 1.

English is not my native language, I hope I'm not misunderstood., and it's helpfull If others who has a deep understanding of GPL license to post a reply here to explain it.

I will ask a lawyer for more information If I choose Solution 2, and I will take Solution 1 as possible as I can.

Thank you very very much!


May 11, 2010 at 6:00 PM

And, I found NPOI is also a very good project:

Aug 6, 2010 at 9:02 PM
Edited Aug 6, 2010 at 9:02 PM
Tim, have you considered the possibility of changing the licencing to LGPL? ( Can you share why did you choose GPLv2 licencing? Thanks in advance
Aug 30, 2010 at 6:12 PM

Add my vote for LGPL.

However, I do understand wanting to dual-license (closed + regular GPL) to be rewarded for the incredible investment in making this project what it is.

Mar 7, 2011 at 5:37 PM

A bit late, but add my vote for LGPL.