2

If I will have Saxon-EE (.NET version) individual license, I can compile stylesheet and export to XML Format (without bytecode) on my side. But I don't know can i distribute Saxon-EE libraries with my .NET app for importing compiled stylesheets on user side or not?

My xslt does not contain licensable Saxon features.

Saxon documentation:

Exporting stylesheet packages requires Saxon-EE, optionally with the Developer Master Key if stylesheets with embedded license information are to be exported. Importing stylesheet packages requires the Saxon-PE or Saxon-EE software to make the package import possible, but no license key need be purchased unless the stylesheet to be executed uses licensable Saxon features. (This means that the run-time software needed to execute packaged code in this way is free-of-charge but not open source.)

This means user can use Saxon-EE without license key for running compiled stylesheet. Can I include saxon-EE dll in my app for distributing?

1 Answers1

1

We've now established email contact to discuss the commercial possibilities, but for the benefit of other readers, here's a description of the technical features referred to.

Saxon-EE 9.7 has an "export" capability which allows you to export a compiled and optimized stylesheet in XML form; this can be reloaded for execution at any time on a different machine. Reloading an exported stylesheet is substantially faster than loading and compiling the source code (we measured 500ms vs 3s for the DITA-OT stylesheets); the other benefit is that it allows you to keep the source code secret from your end users.

In Saxon 9.7 we also have the capability to issue a "developer master key". If you install this, then the exported stylesheet will include a digitally-signed license key which allows your end users (well, anyone actually) to execute the stylesheet even though they do not themselves have a Saxon-EE license. The only thing people can do with the exported stylesheet is to execute it against source documents; they can't modify it, and they can't incorporate it into a bigger stylesheet using xsl:include/import/use-package. The stylesheet can make use of any Saxon-EE features, for example schema-awareness, streaming, use of Saxon extensions, call-out to Java or .NET methods, etc. (The one exception, currently, is byte-code generation).

We don't currently have a standard commercial offering or price for supplying a developer master key but we're happy to make proposals for users interested in the capability. We see it being in some cases an attractive alternative to buying a redistribution license, which is what most developers of applications that incorporate Saxon XSLT functionality end up doing.

Michael Kay
  • 156,231
  • 11
  • 92
  • 164