| <?php require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php"); require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php"); require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php"); $App = new App(); $Nav = new Nav(); $Menu = new Menu(); include($App->getProjectCommon()); # All on the same line to unclutter the user's desktop' |
| $pageTitle = "A Guide to the Legal Documentation for Eclipse-Based Content"; |
| $html = <<<EOHTML |
| |
| <style> |
| .checklist { |
| border: 1px solid #ccc; |
| list-style: none; |
| } |
| |
| .checklist, .checklist li { margin: 0; padding: 0; } |
| |
| .checklist label { |
| display: block; |
| padding-left: 25px; |
| text-indent: -25px; |
| } |
| .postit { |
| border: 1px dashed black; |
| margin: 10px 0 10px 0; |
| } |
| .postitinner { |
| margin: 0 5px 5px 5px; |
| } |
| </style> |
| <form action="#" method="GET"> |
| |
| <div id="midcolumn"> |
| <h1>$pageTitle</h1> |
| <p>Last updated: September 25, 2007</p> |
| <p> |
| This document is intended to assist the Eclipse committers in fulfilling their |
| obligations to implement the <a href="/org/documents/Eclipse_IP_Policy.pdf">Eclipse IP Policy</a>. |
| In addition to their role as |
| the leading developers on Eclipse projects, Committers are also charged with |
| the responsibility of ensuring that the software distributed by the Eclipse |
| Foundation meets the expectations of the community with respect to |
| intellectual property. This document provides |
| a set of specific checklists for developers on Eclipse Projects to follow regarding |
| the legal documentation required in all source files, builds, and releases. |
| While these checklists should cover most projects, there will obviously be cases |
| where additional advice is needed: if so, please contact <a href="mailto:emo@eclipse.org">the |
| Eclipse Management Organization</a>. |
| |
| <h2>1. Source Code</h2> |
| <p> |
| Every source file must have a Copyright and License Notice. |
| The standard format for these notices can be found in <a href="copyrightandlicensenotice.php" target="_blank"> |
| Default Copyright and License Notice</a>. If the source is to be licensed |
| under a license other than the EPL alone, you must ensure that the Eclipse |
| Foundation has approved the notice.</p> |
| <p> |
| Source files must have the Copyright and License Notice <em><b>before</b></em> |
| the files are checked into the eclipse.org source repository. |
| </p> |
| |
| <ul class="checklist"> |
| <li><label for="o1"><input id="o1" name="o1" type="checkbox" />Every source file has a Copyright and License Notice</label></li> |
| </ul> |
| |
| <h2>2. Documentation</h2> |
| <p> |
| The help documentation must have a Legal page with a copyright notice |
| and a link to the <a href="#about_files">About file</a> in the plug-in that contains the help documentation. |
| For example:</p> |
| <img src="guidetolegaldoc_files/Help_legal_page.jpg" width="598" height="260"> |
| <p>Documentation books usually contain a "Legal" page as the last |
| page in the book. </p> |
| |
| <ul class="checklist"> |
| <li><label for="o2"><input id="o2" name="o2" type="checkbox" />Every help documentation set contains a Legal page</label></li> |
| </ul> |
| |
| <h2><a name="3_Builds"></a>3. Builds</h2> |
| <p> |
| Every build distribution, such as a zip or tar file, must contain a |
| <a href="epl/notice.html" target="_blank">Eclipse Foundation Software User Agreement</a> |
| (known as the "SUA") in the root directory of the distribution |
| in HTML format in a file named "notice.html".</p> |
| <p> |
| A copy of the Project's primary license(s) must be in the root directory |
| of the distribution in HTML format. In most cases, this will be the |
| <a href="epl-v10.html">Eclipse Public License</a> alone in a file named |
| "epl-v10.html" In exceptional circumstances, the Board may approve |
| the licensing of a project under license terms other than the EPL alone. |
| |
| <ul class="checklist"> |
| <li><label for="o31"><input id="o31" name="o31" type="checkbox" />Every build distribution has the standard SUA in the root as "notice.html"</label></li> |
| <li><label for="o32"><input id="o32" name="o32" type="checkbox" />Every build distribution |
| has a copy of the primary license(s) in the root, e.g., "epl-v10.html"</label></li> |
| </ul> |
| <div class="postit"><div class="postitinner"><a name="SUA"></a><h3>What is the Software User Agreement?</h3> |
| The Software User Agreement is the agreement that governs the use of all |
| software distributed by the Eclipse Foundation. The SUA references the |
| Eclipse Public License as the primary vehicle to grant license rights and |
| obligations to use the software. In addition, it also references other legal |
| notices and agreements and describes the potential layout of the legal |
| documentation in the accompanying Content. |
| <p> |
| The reason for the SUA is that Eclipse-based content is highly modularized |
| to facilitate ease of delivery, extensibility, and upgradeability. |
| A typical Eclipse installation may potentially include plug-ins and features authored |
| and/or distributed by many different parties including the Eclipse Foundation, other |
| open-source organizations, and commercial vendors. |
| <p> |
| This modularity makes an Eclipse distribution |
| somewhat different from a classical software product delivered with a single license file. |
| The Eclipse Foundation SUA guides the consumer to the various licenses distributed |
| through out the Eclipse Project distribution. |
| </div></div> |
| |
| <h2>4. Features</h2> |
| <p> |
| A feature is a set of one or more related plug-ins and/or fragments that |
| can be installed and upgraded together. Every feature must have at least three |
| (usually at least four) legal files: |
| <p>For example:</p> |
| <blockquote> |
| <table cellspacing="4"> |
| <tr> |
| <td><i>eclipse</i></td> |
| <td>(installation root directory)</td> |
| </tr> |
| <tr> |
| <td> <i>features</i></td> |
| <td>(features directory)</td> |
| </tr> |
| <tr> |
| <td> <i>org.eclipse.sdk_3.0.1</i></td> |
| <td>(feature directory)</td> |
| </tr> |
| <tr> |
| <td> <i>license.html</i></td> |
| <td><b>(#1 Feature License)</b></td> |
| </tr> |
| <tr> |
| <td> <i>epl-v10.html</i></td> |
| <td><b>(#2 Project's Primary License(s) (typically EPL alone) referenced by Feature License)</b></td> |
| </tr> |
| <tr> |
| <td> <i>feature.properties</i></td> |
| <td><b>(#3 Feature Update License in "license" property)</b></td> |
| </tr> |
| <tr> |
| <td> <i>plugins</i></td> |
| <td>(plug-ins and fragments directory)</td> |
| </tr> |
| <tr> |
| <td> <i>org.eclipse.sdk_3.0.1</i></td> |
| <td>(plug-in packaged as a directory)</td> |
| </tr> |
| <tr> |
| <td> <i>about.properties</i></td> |
| <td><b>(#4 Feature Blurb in "blurb" property)</b></td> |
| </tr> |
| </table> |
| </blockquote> |
| The first required file is "license.html". This file is required to be the |
| <a href="epl/notice.html" target="_blank">Eclipse Foundation SUA</a> in HTML format (and thus |
| an exact duplicate of the "notice.html" in <a href="#3_Builds">the root of the distribution</a>). |
| This file is referred to as <em>The Feature License</em>. |
| <p> |
| The second required file is the <a href="epl-v10.html">Eclipse Public License</a> in HTML format in a file named |
| "epl-v10.html" (and thus also an exact duplicate of the "epl-v10.html" |
| in <a href="#3_Builds">the root of the distribution</a>). |
| <p> |
| Each feature has a file named "feature.xml" with a <code>license</code> node. |
| Often the strings in the "feature.xml" file are externalized in a "feature.properties" |
| file. Either way, the <code>license</code> node or property must contain the |
| <a href="epl/notice.txt" target="_blank">Eclipse Foundation SUA</a> in PLAIN TEXT format. |
| This text (node or property) is referred to as <em>The Feature Update License</em>. |
| <p> |
| Each feature has at least one plug-in associated with it which is the |
| "feature plug-in" for that feature. Not surprisingly, this plug-in |
| usually has the same name as the feature. The "about.properties" |
| property named "blurb" |
| contains text that appears in the "About features" dialog in |
| the Eclipse workbench. This is known as a "Feature Blurb." Blurbs |
| often contain copyright notices and any other statements of attribution |
| that may be required by licenses. |
| |
| <ul class="checklist"> |
| <li><label for="o41"><input id="o41" name="o41" type="checkbox" />Every feature has the standard SUA in <u>HTML</u> in "license.html"</label></li> |
| <li><label for="o42"><input id="o42" name="o42" type="checkbox" />Every feature has the |
| Project's primary license(s) (e.g., the EPL in "epl-v10.html")</label></li> |
| <li><label for="o43"><input id="o43" name="o43" type="checkbox" />Every feature has the standard SUA in <u>plain text</u> in "feature.xml <license>" or "feature.properties / license"</label></li> |
| <li><label for="o44"><input id="o44" name="o44" type="checkbox" />Every feature plug-in has copyright notices, etc. in the "blurb" property of "about.properties"</label></li> |
| </ul> |
| <div class="postit"><div class="postitinner"><h3>Why So Many Copies?</h3> |
| <p>For technical reasons (i.e., this is the way the software works), |
| each of the different copies of the SUA and Project license(s) (e.g., EPL) |
| are shown to the user |
| at different times. We need to make sure that the SUA and Project license(s) |
| are available |
| to the user regardless of which installation and/or browsing mechanism he |
| or she uses, thus the existence of numerous copies of the same legal documents. |
| </div></div> |
| |
| <div class="postit"><div class="postitinner"><h3>What’s the Difference Between These Files?</h3> |
| <p>The difference between the Feature License and Feature Update License |
| is when they are shown to the user. The Feature License is only available |
| once a feature has been installed. The Feature Update License is seen |
| when a user is using the Eclipse Update Manager to install or upgrade |
| a feature and must agree to an agreement before proceeding with the installation. |
| One thing that is important to note is that with the distributed licensing |
| model used by plug-ins, unless a Feature Update License contains an aggregation |
| of all the notices from the plug-ins for a feature, a user will not be |
| able to see these notices before installing the feature.</p> </div></div> |
| |
| <h2>5. Plug-ins</h2> |
| <p> |
| <a name="#about_files"></a> |
| All plug-in directories must have an "about.html" file describing |
| the license terms of the code and content of the plug-in. The "about.html" |
| file may also contain other information such as whether the content contains |
| cryptographic functionality that may be subject to export controls. |
| These "about.html" are collective known as "Abouts." |
| <p> |
| Most plug-ins of Eclipse Projects are pure EPL and thus the about.html file |
| will be <a href="epl/about.html" target="_blank">default about for EPL plug-ins</a>. |
| If a plug-in contains non-EPL content, read more about |
| <a href="epl/about.php">About files</a> and how to write About files for third-party |
| content. |
| <p> |
| In JAR’ed plug-ins, any local files linked from an About such |
| as copies of licenses, must be located in a directory called "about_files." |
| The contents of the "about_files" directory are handled specially |
| so that links resolve correctly when the About in a JAR’ed plug-in is |
| viewed in an external browser spawned from the About dialog.</p> |
| <p>As an example:</p> |
| <blockquote> |
| <table cellspacing="4"> |
| <tr> |
| <td><i>eclipse</i></td> |
| <td>(installation root directory)</td> |
| </tr> |
| <tr> |
| <td> <i>plugins</i></td> |
| <td>(plug-ins and fragments directory)</td> |
| </tr> |
| <tr> |
| <td> <i>org.apache.ant_1.6.2</i></td> |
| <td>(plug-in packaged as a directory)</td> |
| </tr> |
| <tr> |
| <td> <i>about.html</i></td> |
| <td><b>About</b></td> |
| </tr> |
| <tr> |
| <td> <i>asl-v20.txt</i></td> |
| <td><b>Apache Software License referenced by about.html</b></td> |
| </tr> |
| <tr> |
| <td> <i>LICENSE.dom.html</i></td> |
| <td><b>W3C License referenced by about.html</b></td> |
| </tr> |
| <tr> |
| <td> <i>org.eclipse.core.runtime_3.1.0.jar</i></td> |
| <td>(plug-in packaged as a JAR)</td> |
| </tr> |
| <tr> |
| <td> <i>about.html</i></td> |
| <td><b>About</b></td> |
| </tr> |
| <tr> |
| <td> <i>about_files</i></td> |
| <td>(directory for any local files linked from about.html)</td> |
| </tr> |
| <tr> |
| <td> <i>asl-v20.txt</i></td> |
| <td><b>Apache Software License referenced by about.html</b></td> |
| </tr> |
| </table> |
| </blockquote> |
| <ul class="checklist"> |
| <li><label for="o51"><input id="o51" name="o51" type="checkbox" />Every plug-in has an "about.html", usually the standard one.</label></li> |
| <li><label for="o53"><input id="o53" name="o53" type="checkbox" />Every plug-in with a non-standard "about.html" contains the additional referenced license files.</label></li> |
| <li><label for="o52"><input id="o52" name="o52" type="checkbox" />Every ’ed plug-in stores linked files in "about_files"</label></li> |
| </ul> |
| |
| |
| <h2>6. Download Web Pages</h2> |
| <p>Any web page that makes builds available must have a link to the <a href="#SUA">SUA</a> |
| with the following wording: |
| <blockquote> |
| <p>All downloads are provided under the terms and conditions of the <a href="epl/notice.php" target="_blank">Eclipse |
| Foundation Software User Agreement</a> unless otherwise specified.</p> |
| </blockquote> |
| <ul class="checklist"> |
| <li><label for="o61"><input id="o61" name="o61" type="checkbox" />All download pages contain the standard reference to the SUA.</label></li> |
| </ul> |
| |
| <h2>Appendix A. Viewing All These Files</h2> |
| |
| <h3>About Files</h3> |
| <p>Users looking for legal documentation may find the Abouts by browsing |
| the directory structure of an Eclipse installation but the files are also |
| viewable from the "About plug-ins" dialog in the Eclipse workbench. |
| To view the Abouts, go to the menu item <strong>Help -> About Eclipse |
| Platform</strong> and then click on the button "Plug-in Details" |
| and then select a plug-in and click on the button "More Info."</p> |
| <img src="guidetolegaldoc_files/About_plugins_dialog.jpg" width="598" height="447"> |
| |
| <h3>Feature Blurbs</h3> |
| <p>To view the blurb for each installed feature, go to |
| the menu item <strong>Help > About Eclipse Platform</strong> and then |
| click "Feature Details" and then select a feature. The blurb |
| will appear in the bottom half of the dialog. </p> |
| <img src="guidetolegaldoc_files/About_features_dialog.jpg" width="598" height="536"> |
| |
| |
| |
| </div> |
| |
| </form> |
| |
| |
| EOHTML; |
| |
| |
| # Generate the web page |
| $App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html); |
| ?> |