<!DOCTYPE html>
<html><head>
<title>Making Contributions to the OpenOffice.org Project</title>
<meta HTTP-EQUIV="content-type" CONTENT="text/html; charset=UTF-8">
</head>
<body>
<h2>The OpenOffice.org Project</h2>
<BR><BR>

<h4>Making Contributions to the OpenOffice.org Project</h4>

<p>
The use of the dual-license scheme is both open and beneficial for the development,
access, distribution, and compatibility of OpenOffice.org technologies and
standards. For contributions of technology from the open communities, it is
necessary to use the identical mechanisms and terms already in use by the
OpenOffice.org project. Specifically, the following two requirements regarding
the terms under which such contributions are made must be met in order to allow a
contribution to be accepted into the OpenOffice.org Project technology base.
<BR><BR><BR>
<A NAME=duel_license><B>1. Dual-License Usage</B></A>
<BR>
The contributing individual or organization should issue their contributions for
inclusion within the OpenOffice.org project technology base using the dual-license
mechanism of GPL/LGPL + OpenOffice.org SISSL, without modification to the
license terms and conditions. Contributions that cannot be made available under this
dual-licensing mechanism will be incompatible with the required open access to the
OpenOffice.org technology, and thus cannot be incorporated into the OpenOffice.org
technology base.
Such dual-licensing practices are now common within the open source communities.
Examples include technology projects such as Perl (Artistic + GPL) Mozilla&#153; (MPL + NPL), and various others.

<BR><BR><BR>
<A NAME=copyright><B>2. Copyright Assignment</B></A>
<BR>
To enable Sun Microsystems to effectively provide license management, enforce
legal compliance, and issue technology adequately to commercial licensees,
all contributions being made for inclusion in the OpenOffice.org technology base
must make a copyright assignment of the source code to Sun Microsystems, Inc.
This follows the same principals as recommended by the Free Software
Foundation regarding copyright assignment for contributions to the GNU Project.
Copyright assignment is a common requirement within open source projects for
legal indemnification management and for flexibility of second licensing.
<BR><BR>

<P ALIGN=right VALIGN=bottom><A HREF="strategy.html">back</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<A HREF="openofficefoundation.html">next</A>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</P>


</body>
</html>

