[Biopython-dev] Structure and LDNe

Bruce Southey bsouthey at gmail.com
Mon Jan 12 17:34:50 UTC 2009

Peter wrote:
> On Thu, Jan 8, 2009 at 10:24 PM, Jason Eshleman <jae at lmi.net> wrote:
>> Greetings all,
>> Presently, the code I have for dealing with STRUCTURE is similar to the code
>> for interacting with Clustal, in that it does not modify any of the STRUCTURE
>> source code by merely initiates the compiled executable.
> Biopython has code for interacting with lots of command line tools,
> and this neatly avoids any copyright/licence questions about being a
> derived work.
I have no problem with this provided that the parsing follows documented 
information such a description of the output. I would have a problem if 
you based it code from another source that uses undocumented information 
or information not obvious from the output.

>> Initially, I have used my code in place of their Java front end as it allows
>> for more control of the run-time variables for successive runs with varying
>> run parameters.  At some point, I'd like to get it to interface more
>> directly with the STRUCTURE code to be able to pipe results directly to
>> python for parsing rather than working with the STRUCTURE text output but
>> that's a ways off still.
> I'm not quite clear what you have in mind, but this would probably
> need a little more thought from the legal perspective.  If STRUCTURE
> provides an API with header files you can compile against, that should
> be OK (but I am not a lawyer).  Note that do this within Biopython
> would then mean adding another build time dependency, which would need
> to be justified in terms of the benefits it brings.
> Peter
Linking against header files is a gray area but some views considered it 
to be illegal (see the Linux kernel discussions on that!). It does 
really depend on whether or not the result can be considered to a 

Unless STRUCTURE is released under a BSD-compatible license, you should 
not use any code from it (and probably should not even look at the 
code). Just saying the code is free is insufficient because code 
licensed under the GPL is 'free' but not BSD-compatible. So if STRUCTURE 
does not have a license then either get one or forget about this until 
it does have a BSD-compatible license. Alternatively, get STRUCTURE to 
support your changes.

One is being difficult simply because of the potential impact on the 
Biopython project by including code incompatible with the BSD license.


More information about the Biopython-dev mailing list