[Biojava-l] Visualisation?? (fwd)

Thomas Down td2@sanger.ac.uk
Tue, 27 Nov 2001 13:44:13 +0000


Hi again...

On Tue, Nov 27, 2001 at 10:59:19AM +0000, Craig Melsopp wrote:
> >
> The ensembl-java port is still in progress and could be in a state for 
> you to use now; it really depends on what you need now, what database 
> access layer your code currently depends upon and your development 
> schedule.
> 
> You have 3 options for accesing the ensembl database from java:
> 1 - use ensembl-java's driver mechanism (the so called "object layer").
> 2 - use bio-java's ensembl support.
> 3 - write your own object-relational mechanism.
> 
> Option 3 is a serious case if reinventing the wheel and unless you have 
> some very peculiar requirements I am guessing you will opt for either 1 
> or 2. I have no experience of using option 2 but Thomas Down (from the 
> bio-java project) has agreed that bio-java will start using the 
> ensembl-java driver mechanism for accesing ensembl data once it is 
> complete and stable (replacing it's own support). That means that any 
> code written against the current bio-java data access system will need 
> to be changed in future.

I hope that changes won't be necessary, or will at least be
very minor.  The system I wrote is actually a two-layer
approach:

   - Low-level database access code -- basically object-relational
     mapping stuff.  When this is distributed, it tends to show
     up as ensembl-j.jar

   - Implementations of the biojava SequenceDB, Sequence, and
     Feature interfaces which sit on top of the low-level code.
     (bj-ensembl.jar)

The high-level code doesn't really have any API of it's own
worth speaking of -- it's just an implementation of BioJava
interfaces.  I'm looking at re-targeting it to sit on the 
official Ensembl-Java database access objects, but this should
have very little impact on client code (other than I might consider
making the BioJava objects read-write if there's demand.  They're
currently read-only).

So the issue probably are:

  - Do you want to use Ensembl APIs, or use some kind of abstaction
    layer?

  - If you something abstract, do you like the interfaces offered
    by BioJava?


In principle, you /could/ use my Ensembl-specific Java API
directly, but in practice it's probably not the best solution --
and once I've ported the bj-ensembl stuff to use Craig's code,
I likely won't support my own database objects any more.

   Thomas.