From: rich a. <che...@ya...> - 2004-08-13 02:44:01
|
Hello Ola, I can see how the similarities and differences among the half dozen or so Java cheminformatics frameworks/applications might be difficult to pick out (CDK, JChemPaint, JOELib, Octet, Structure, JUMBO, Marvin, soon QSAR, others) . The good news is most of them are open source. I'd like to offer some thoughts on what we're trying to do with Octet (http://octet.sourceforge.net) and Structure (http://structure.sourceforge.net) because I'm most involved with those. Learning a new API is difficult, especially with something as multifaceted as cheminformatics. In part to flatten the learning curve, Octet is designed to deliver the minimal functionality that will be needed in all cheminformatics contexts. This is actually a lot harder than it might sound - the temptation to add just a little bit of extra functionality here and there is very powerful. As a result, Octet's major functionality consists of: (1) The representation of Molecules with any bonding arrangement, from nonclassical carbocations to coordination complexes to inorganics to simple organic compounds is possible. All Molecules are queried using a unified interface that requires no exceptional handling for "wierd" molecules. (2) All model-level objects (Atom, Molecule, etc.) are defined in terms of Java interfaces. The ways that concrete Molecules are implemented can vary drastically, but as long as the interface methods give consistent results, Octet can handle them all. This enables Octet users to fine-tune the Molecule implementation to their particular needs. For example, when dealing with large numbers of Molecules, low memory usage may be a high priority. When working with a limited number of very large Molecules such as proteins, the ability to speedily address and manipulate Atoms and bonding arrangements may be critical. An implementation that works in one case may fail miserably for the other case. So the flexibility to choose is essential for a robust framework. (3) Simplified SMILES, Molfile, and SD file format readers and writers. (4) An API for traversal of Molecules as graph objects. Breadth-first, depth-first, cycle, and isomorphism traversal are all possible via a consistent API. (5) An API for substructure, exact-structure, and query atom queries. (6) Identification of essential Molecule properies such as hydrogen atom count, formal bond order, and electron count. (7) To be implemented in the near future, definition and manipulation of molecular stereochemistry. And that's it for the functionality itself. Of course, this narrow focus leaves many specialized areas untouched, but the features above will be essential for most cheminformatics problems. Recently, support for the use of CDK Molecules within Octet and the use of Octet Molecules within CDK has been developed. This package is called CDKTools. A copy with source code and unit tests can be downloaded here: https://sourceforge.net/project/showfiles.php?group_id=96108 By keeping the API small and simple, we hope to increase the probability that Octet will become a stable framework that is easy to learn, use, and especially extend. Structure extends Octet's capabilities by enabling 2D structure drawing of Molecules. Not much progress has been made on this project recently - due mainly to efforts to move Octet closer to an API freeze and eventual 1.0 release, but it is indeed still alive. The overall approach to Structure is similar to the approach taken with Octet: to deliver the minimal functionality that will be needed in the majority of 2D molecular rendering contexts. 2D coordinate generation falls into that category, and so it is a goal for the project. CDK has has done a wonderful job with 2D structure layout. But there is clearly room for a variety of new approaches in this largely neglected area, especially given the complementary functionality that Octet provides. Regarding JChemPaint and Structure, both are aimed at 2D molecular rendering. However, they address the problem from different perspectives (feel free to correct me if I'm misstating, Egon). JChemPaint is a client-side application/applet that enables both rendering and editing of molecules, and has features that can be used as a library. Structure is solely a framework for 2D Molecule rendering that will provide the functionality on which rendering applications can be built. This may sound like a minor distinction at first, but it results in a very different set of design decisions that need to be made, bugs that need to be fixed, and resource committment. Well, that's a long-winded attempt to try to answer your questions. Let me know if I can give you any further info. best, rich Ola Spjuth <ola...@lc...> wrote: Hello, I am a little confused and don't know how these projects overlap and their licenses. CDK LGPL JOElib GPL Octet LGPL Jmol LGPL Jchempaint GPL Structure LGPL 1) Have I understood the licenses above correctly? On some SF pages (joelib & jchempaint) it says GPL or LGPL. What does that mean? May I choose? 2) How much do CDK and JOElib overlap? I know you can use them together, what are the benefits of this? Descriptors? Will descriptors not be implemented in CDK? 3) What does Octet add to this mix (except that it's LGPL and JOElib is not)? Can it be used with CDK? Overlap? Are the projects competing against each other? 4) What does the Structure project add to all this (except that it's built on Octet and LGPL)? The homepage says they are working on SDG, isn't that already present in CDK? Doesn't JchemPaint do the same thing as Structure? I am posting this question in the CDK, Octet and JOElib mailinglists in order to get more extensive information. Best regards, .../Ola Spjuth -- --- Ola Spjuth, PhD student Dept of Pharmacology & Linnaeus Centre for Bioinformatics Uppsala University, Sweden ------------------------------------------------------- SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media 100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33 Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift. http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285 _______________________________________________ octet-devel mailing list oct...@li... https://lists.sourceforge.net/lists/listinfo/octet-devel --------------------------------- Do you Yahoo!? Yahoo! Mail Address AutoComplete - You start. We finish. |