[The copy of this message in moderator's queue can be deleted]

Hey all,

The attached file (which is small enough to send to everyone) contains
prototypes for the headers for Geotools code files once we start signing
the copyright assignment agreements.


Does this approach seem reasonable to everyone?
Did I miss any case that we should consider right now?

You will hopefully have comments/ideas. I am not so interested in the
specific wording since I did not even start from the current geotools
header; in this iteration I am only concerned to get consensus on the
approach to documenting the provenance, attribution and licensing which
will determine the eventual use.

  Provenance would be defined in the class @author tag as:
     @author  PhysicalAuthor   OriginalCopyrightHolder  AssignmentType
  where the assignmentType explains how OSGeo got the right to use the
  contents, i.e. it can be a license or a copyright grant.
  
  Copyright would be listed at the top of the file *and* in any license
  notice when those notices cannot be modified.
  
  The user license (LGPL) would be stated at the top of the file as 
  coming from OSGeo and following the terms of the LGPLv2.

Note that all past authors who don't sign anything will be treated
according to the only rights we can realistically assume: OSGeo becomes
a licensor of their code under the terms of the LGPLv2.


If there is consensus on this approach, I could use someone's help in
  1) creating the formal wording for these licenses, and
  2) creating an appropriate writeup in the developer guide.

Thanks, adrian.


// 
// HEADER FRAGMENTS FOR USE BY THE GEOTOOLS PROJECT
//   contents (c) the Open Source Geospatial Foundation
// 
//   Redistribution and use in source and binary forms, with or 
//   without modification, are permitted with no restriction.
// 

The code sections below show prototype headers for use in the Geotools project 
when different cases are encountered. The cases described are:
 I.   All (c) held by OSGeo.
 II.  All (c) held by original authors.
 III. Partial (c) held by OSGeo and partially by third parties.
 IV.  Partial (c) held by OSGeo and some contents of the file 
      licensed under a compatible but unmodifiable license.



Notes:

@author
  I am using the javadoc @author tags to store provenance information. This is 
  all right because, as stated in the @author section of
    http://java.sun.com/j2se/javadoc/writingdoccomments/
  which states:
    "The @author tag is not critical, because it is not included 
     when generating the API specification, and so it is seen only 
     by those viewing the source code. (Version history can also be 
     used for determining contributors for internal purposes.)"
  from which it sounds like we can extend the tag "for internal purposes" which, 
  in this case, is to document who had the original copyright and therefore 

BSD or other third party compatible licenses
  The BSD license is used as an example here but code used under any other 
  license could be addressed in the same way. Do be aware that there are many 
  trivially distinct phrasings of the BSD license so the one incorporated should 
  be the one in the file of the code used.
  - If we use a file unmodified, then we do not need to change anything.
  - If we incorporate a file into a java or geotools structure, then we have an
    author and we are in the dual system for which there is a header below.
  - If we only use part of a file and only in a few well defined places in our 
    code, then we should attempt to identify the code and its location so that 
    if the code were one day to be removed, the license could also be dropped.
  Note that the (c) section duplicates the name of the coder, this is not 
  necessary but seems good form since each group 






////////////////////////////////////////////////////////////////////////////////
// I. When copyright for the whole file is held by OSGeo.
//   Hopefully, this will be the most common case.
////////////////////////////////////////////////////////////////////////////////

/*
 * This file is part of Geotools: http://www.geotools.org/
 * 
 * (c) 1997-2007 The Open Source Geospatial Foundation: http://www.osgeo.org/
 * 
 * Use of the file contents licensed to all by the Open Source Geospatial 
 * Foundation under the terms of the GNU Lesser General Public License, v2. 
 *
 */
 
 ...
 
 //in class javadoc
 @author Author S Name.     Original (c) of XbeforeY Corporation, granted to OSGeo.
 @author Zaphod Beeblebrox. Original (c) of author,               granted to OSGeo.
 





////////////////////////////////////////////////////////////////////////////////
// II. Old code with no copyright transfer
//     In this case:
//         the original authors retain (c)
//         the OSGeo distributes under the terms of the LGPL,v.2
////////////////////////////////////////////////////////////////////////////////

/*
 * This file is part of Geotools: http://www.geotools.org/
 * 
 * (c) 1997-1999 XbeforeY Corporation.
 * (c) 1998      Zaphod Beeblebrox.
 * 
 * Use of the file contents licensed to all by the Open Source Geospatial 
 * Foundation under the terms of the GNU Lesser General Public License, v2. 
 *
 */
 
 ...
 
 //in class javadoc
 @author Author S. Name.    Original (c) of XbeforeY Corporation, licensed under LGPL, v2.
 @author Zaphod Beeblebrox. Original (c) of author,               licensed under LGPL, v2.






////////////////////////////////////////////////////////////////////////////////
// III. Old code with some copyright transfer
//     In this case:
//         some original authors grant (c) to OSGeo
//         the original authors retain (c)
//         the OSGeo distributes under the terms of the LGPL,v.2
////////////////////////////////////////////////////////////////////////////////

/*
 * This file is part of Geotools: http://www.geotools.org/
 * 
 * (c) 1997-2007 The Open Source Geospatial Foundation: http://www.osgeo.org/
 * (c) 1997-1999 XbeforeY Corporation.
 * 
 * Use of the file contents licensed to all by the Open Source Geospatial 
 * Foundation under the terms of the GNU Lesser General Public License, v2. 
 *
 */
 
 ...
 
 //in class javadoc
 @author Author S Name.     Original (c) of XbeforeY Corporation, licensed under LGPL, v2.
 @author Zaphod Beeblebrox. Original (c) of author,               granted to OSGeo.






////////////////////////////////////////////////////////////////////////////////
// When incorporating BSD Code into a larger Geotools file
////////////////////////////////////////////////////////////////////////////////

/*
 * This file is part of Geotools: http://www.geotools.org/
 * 
 * (c) 1997-2007 The Open Source Geospatial Foundation: http://www.osgeo.org/
 * (c) 1997-1999 XbeforeY Corporation.
 * (c) 2002-2003 Ay Smart Coder.
 * 
 * Use of the file contents doubly licensed to all by the Open Source Geospatial 
 * Foundation under the terms of both
 *   the GNU Lesser General Public License, v2. and
 *   the BSD license, version without the advertising clause.
 *
 * To satisfy the BSD license which covers elements of this file:
 *   - the cluster analysis code in method itsAClusterWeShouldDoSomething(.)
 *   - the incorrect calculator in method guessDontCalculate(.)
 * the BSD method is included here.
 * 
 *   Copyright (c) 2002-2003, Ay Smart Coder
 *   
 *   All rights reserved.
 *   
 *   Redistribution and use in source and binary forms, with or without 
 *   modification, are permitted provided that the following conditions are met:
 *       1.Redistributions of source code must retain the above copyright notice, 
 *         this list of conditions and the following disclaimer. 
 *       2.Redistributions in binary form must reproduce the above copyright 
 *         notice, this list of conditions and the following disclaimer in the 
 *         documentation and/or other materials provided with the distribution. 
 *       3.The name of the author may not be used to endorse or promote products 
 *         derived from this software without specific prior written permission. 
 *   
 *   THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED 
 *   WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 
 *   MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO 
 *   EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 
 *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 
 *   PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 
 *   OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 
 *   WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 
 *   OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 
 *   ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 * 
 */
 
 ...
 
 //in class javadoc
 @author Author S Name.     Original (c) of XbeforeY Corporation, licensed under LGPL, v2.
 @author Ay Smart Coder.    Original (c) of author,               licensed under BSD.
 @author Zaphod Beeblebrox. Original (c) of author,               granted to OSGeo.
 
 ...
 
 //in the code
 
 // Start of BSD code block:
 ...
 // End of BSD code block:

























-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
Geotools-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to