yFiles license files validity checks
Questions & AnswersSummary
Description
Nearly all of the yFiles diagramming libraries need a license file to function:
- yFiles for HTML
- yFiles.NET
- yFiles WPF
- yFiles for JavaFX
- yFiles for Java
The license file contains information about the licensee, the licensed product, and the actual license type and deployment contexts. This information is necessary for a yFiles-powered application to run.
When you build your application, this information is being embedded so that on each application start, it can be checked for consistency and validity.
The description in this article refers only to perpetual licenses, i.e., licenses that do not contain an <expires>
tag (XML-based license file), respectively an "expires"
entry (JSON-based license file).
There are two cases for the validity checks in your yFiles-powered application. When you have a
- license with subscription
- license without subscription
Note
In the following discussion, a <some-tag-name>
tag in a XML-based license file analogously means a "some-tag-name"
entry in a JSON-based license file.
License with subscription
If there is a <subscription>
tag in your XML-based license file, then the check for validity compares this tag's value (i.e., the subscription (end) date) with the release date of the yFiles diagramming library that your application is built against.
In addition, the value of the <version>
tag in your XML-based license file is compared with the version of the yFiles library.
When the corresponding major version number of the yFiles library that the application is built against matches the version number from the license file or the subscription (end) date is after the release date of the corresponding major version of the yFiles library, then the checks return successfully and the application will run.
Example
If your XML-based license file contains these entries: <version>1.1</version>
and <subscription>08/07/2015</subscription>
, then your application will work with all versions from the 1.1 version series of your licensed yFiles product and all versions of your licensed yFiles product where the corresponding major version was released before or on August 07, 2015.
In particular, if there are major versions 1.1, 1.2, and 1.3 of your licensed yFiles product available with the following release dates: 06/20/2013, 08/14/2014, and 09/04/2015, respectively, then your application will run with version 1.1 and all
its minor versions as well as 1.2 and all its minor versions.
(Considering only the license file's validity.)
It will not run with version 1.3 or any of its minor versions, since their release date is after your subscription (end) date and thus not covered by your subscription.
It will also not run with version 1.0 and its minor versions.
License without subscription
If your yFiles license file does not contain an entry related to a subscription (end) date, i.e. there is no <subscription>
tag in your XML-based license file, then the check for validity basically only compares the value of the <version>
tag from your XML-based license file with the version of the yFiles diagramming library that your application is built against.
When the value of the <version>
tag matches the major version number of the yFiles library that the application is built against, then the checks return successfully and the application will run.
Example
If your XML-based license file contains this entry: <version>1.2</version>
, then your application will work with all versions from the 1.2 version series of your licensed yFiles product.
Your application will run with version
1.2,
1.2.0.1, 1.2.0.2, etc.,
1.2.1, 1.2.1.1, etc.,
etc.
It will not run with version 1.0, 1.1, 1.3, 1.4, etc. or any of their respective minor versions.
Related questions
I have received a new license file. What should I do with it?
If you have received the new license file
- in the course of a subscription renewal, you will need it when you want to use a newer version of your licensed yFiles product that was released after the subscription (end) date as specified in your current license file
- due to technical changes in a new version of the yFiles library, you will need it when you want to use that new version of the yFiles library
In both cases, when upgrading to the newer yFiles library, it is also necessary that you update the build process of your yFiles-powered application to use the new license file.
There is a newer major version of my licensed yFiles product available. Do I need an update to my license file?
Generally, you should always use the latest license file that you have received from yWorks.
Usually, as a yFiles licensee with a subscription, you will receive a new license file from yWorks
- in the course of a subscription renewal
- when the new yFiles version needs a new license file due to technical changes (new license file format, for example)
Note that you don't need an update to your license file, if you are a yFiles licensee with a subscription and the release date of that newer major version is before the subscription (end) date found in your license file (i.e., the value of the <subscription>
tag in your XML-based license file).
As described above (see "License with subscription"), your current license file will work with the newer yFiles version (and all its minor versions) without problems.
In contrast, if the release date of that newer major version is after the subscription (end) date found in your license file and you are sure that you are using the latest license file you have received from yWorks, then, in order to switch to the new yFiles version, you need a newer license file, which you can get by means of a subscription renewal.
To discuss your subscription renewal options, just get in touch with our sales team (sales@yworks.com).
Lastly, if your yFiles license file does not contain an entry related to a subscription (end) date, i.e. there is no <subscription>
tag in your XML-based license file, then your license file is only valid in conjunction with the yFiles version that you originally licensed (and the minor versions thereof).
To get a license file that is valid for the newer yFiles version, just get in touch with our sales team (sales@yworks.com).