Applying the Apache license is not onerous. You typically need two text files ("LICENSE" and "NOTICE") and a header added to human-readable files (e.g. XPages, Java classes etc). For almost all projects, this can be completed in a few minutes.

1. Copy an existing License file or save it from here.
2. Save it at the top level of your project's zip file.

If your project includes third-party source code for a significantly different license, you may need to add a copy of the license file as well. But if you're including MIT-licensed source code in an Apache-licensed project, the Apache license file already covers it. Don't be worried that you must get it right first time, our IP Manager will let you know during his review and it's easy to fix.

1. This file must be called “NOTICE”. The first few lines of each NOTICE file should include the following text, suitably modified to reflect the project name, developers involved in the project and year(s) of distribution of the current and past versions of the product:

Copyright [yyyy] [Copyright owner(s)]

This product includes software developed for
OpenNTF – (
Licensed under [License name]
Try to update the year for future releases, so it may become e.g. "2014 - 2017".

The NOTICE file also needs to include, for each third party package that is used in the project:
- the name and version number of the package
- the URL where it may be obtained
- the license under which it was obtained

For example:
Includes content from OpenLog under Apache License 2.0
Copyright Julian Robichaux
Watson Developer Cloud Java SDK, Version 4.0.0 ( under Apache V2.0 ( and dependencies

If third party code has a NOTICE file, either include them in your NOTICE file, or as a separate file in the root of the zip file.

Human Readable Code
All human-readable files built from scratch should include the following source file header text, where feasible.

Copyright [yyyy] [name of copyright owner(s)]
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License

This should be added to, for example:
  • Java classes
  • JavaScript files
  • CSS files
  • XPages
  • Custom Controls
  • LotusScript Agents and Script Libraries

It doesn't need adding to, for example:
  • Images
  • Forms in an NSF
  • Viewsin an NSF
  • Application or XSP properties
  • Themes in an NSF
  • pom.xml

Look for a plugin to your IDE like Eclipse Copyright Generator to automatically add this to files. Alternatively, it's often possible to add this to code templates or as snippets to add via shortcut keys.

Packaging of Releases
Please use this structure for your zip file (there may be additional folders or files, e.g. for Javadocs, documentation, samples etc):
  • readme.pdf or readme.txt or
  • updatesite
    • features
    • plugins
  • sources
    • project1 (e.g. plugin)
    • project2 (e.g. feature)
  • x.ntf/x.nsf