[Bioperl-l] RE: Integrating caBIOperl with BIOperl

Steve Chervitz Trutane steve at trutane.net
Wed Nov 3 20:35:30 EST 2004


Note: 
* perl MAGEstk - any tie in?
* Always thought it would be nice to have a bridge into bioperl from
MAGEstk. Would caBIO perl act as this bridge?
* Are the caBio perl MAGE objects autogenerated from MAGE-OM?

Steve

> From: Hilmar Lapp <hlapp at gmx.net>
> Date: Wed, 3 Nov 2004 09:35:59 -0800
> To: "Covitz, Peter (NIH/NCI)" <covitzp at mail.nih.gov>
> Cc: "'bioperl-l at bioperl.org'" <bioperl-l at bioperl.org>, "'lstein at cshl.edu'"
> <lstein at cshl.edu>
> Subject: Re: [Bioperl-l] RE: Integrating caBIOperl with BIOperl
> 
> I very much agree with Lincoln's comment. One of the more frequent
> comments we have gotten is that expecially to newbies the plethora of
> modules in Bioperl and the apparent diversity of its APIs are already
> confusing. A bridge that binds the caBIOperl API to the existing
> Bioperl object model would be a great addition though.
> 
> -hilmar
> 
> On Wednesday, November 3, 2004, at 06:47  AM, Covitz, Peter (NIH/NCI)
> wrote:
> 
>> Agreed, getting it into CPAN is the first order of business.
>> 
>> caBIOperl is itself a wrapper around a lower-level SOAP-XML API.  That
>> gives
>> us some flexibility on how we present the visible API interfaces.
>> Once we
>> get it into CPAN, I'd be interested in continuing the discussion of
>> what the
>> appropriate bridging and interface strategy would be to make it more
>> suitable for use with bioperl.
>> 
>> Thanks for the feedback!
>> 
>> Regards,
>> 
>> Peter
>> 
>> -----Original Message-----
>> From: Lincoln Stein [mailto:lstein at cshl.edu]
>> Sent: Tuesday, November 02, 2004 5:48 PM
>> To: Covitz, Peter (NIH/NCI); 'bioperl-l at bioperl.org'
>> Subject: Re: [Bioperl-l] RE: Integrating caBIOperl with BIOperl
>> 
>> 
>> I think that caBIOperl and BioPerl will both need some work in order
>> to make
>> 
>> the APIs coherent with each other.  I am not eager to see caBIOperl
>> just
>> dropped in without a more thorough integration.  Why not just release
>> caBIOPerl onto CPAN?
>> 
>> Lincoln
>> 
>> On Tuesday 02 November 2004 03:13 pm, Covitz, Peter (NIH/NCI) wrote:
>>> Ewan,
>>> 
>>> I thought jump in and pick up this thread.  I understand and agree
>>> with
>>> your point about needing a 'bridge' between caBIO classes and
>>> equivalent
>>> existing bioperl classes.  Your suggestion on how to go about
>>> implementing
>>> such a bridge was helpful, thanks.
>>> 
>>> Beyond that, I had been thinking that it might be useful to
>>> contribute the
>>> entire caBIOperl module to bioperl and make it part of the bioperl
>>> core
>>> package.  caBIOperl is really just an object-oriented query interface
>>> to
>>> caBIO data servers, so I naively thought it might fit nicely under
>>> Bio::DB::Query, perhaps Bio::DB::Query::caBIO ??
>>> 
>>> Of course people can use caBIOperl without it being part of bioperl.
>>> However, there are a some classes and subject areas in caBIO that are
>>> not
>>> in bioperl, so we thought it might be a useful extension to bioperl
>> itself.
>>>  In the next major caBIOperl release (~March 2005) we are going to
>>> include
>>> a full implementation of the MAGE-OM microarray data standard as part
>>> of
>>> the caBIOperl API, so that might be among the subject areas of
>>> interest to
>>> the bioperl community.
>>> 
>>> I'd be interested to hear whether you and others think there might be
>> value
>>> in incorporating caBIOperl itself into bioperl, or if you'd rather
>>> just
>>> consider incorporating the 'bridge' module.
>>> 
>>> Regards,
>>> 
>>> Peter Covitz
>>> 
>>> -----Original Message-----
>>> From: Ewan Birney [mailto:birney at ebi.ac.uk]
>>> Sent: Tuesday, October 12, 2004 4:07 AM
>>> To: Jiang, Shan (NIH/NCI)
>>> Cc: bioperl-l at bioperl.org
>>> Subject: Re: Integrating caBIOperl with BIOperl
>>> 
>>> On Mon, 11 Oct 2004, Jiang, Shan (NIH/NCI) wrote:
>>>> Hi Ewan,
>>>> 
>>>> I would like to introduce myself. I am a colleage of Gene Levinson at
>> the
>>>> National Cancer Institue in the US. I am the original developer of
>>>> caBIOperl, which Gene presented at BOSC '04. I believe Gene talked to
>> you
>>>> quite extensively during the meeting as well. (Gene asked me to say
>>>> hi!)
>>>> 
>>>> Currently, I am undertaking the task of integrating caBIOperl with
>>>> BIOperl.Gene indicated that you would be a great source to talk to.
>>>> I am
>>> 
>>> in
>>> 
>>>> the process of learning BIOperl before deciding how to proceed. So I
>>>> would much appreciate your help in learning BIOperl as well as
>>>> looking
>>>> into possible ways of integrating caBIOperl with BIOperl.
>>> 
>>> Great - I'm cc'ing this message to the main bioperl list to check I
>>> give
>>> you the best advice!
>>> 
>>>> Let me start asking some questions to start the ball rolling.
>>>> 
>>>> 1. Has similar kinds of integration work been done before? If so is
>> there
>>> 
>>> a
>>> 
>>>> general recommended approach?
>>> 
>>> The recommendation is definitely to have an caBIOperl "bridge" to
>>> Bioperl
>>> objects. The main ones you want to have are Bio::SeqI,
>>> Bio::DB::RandomAccessI and Bio::AnnotationCollectionI and
>>> Bio::SeqFeatureI
>>> 
>>> The "I" means interface (a bit like Java)
>>> 
>>> In each case you would have wrapper classes that has-a caBIOPerl
>>> object
>>> and is-a Bioperl object, for example, imagining the caBIOPerl sequence
>>> object has methods "human_readable_name" and "sequence_as_string" (of
>>> course, they might have something completely different...)
>>> 
>>>   package Bio::caBIOBridge::Seq;
>>> 
>>>   @ISA = qw( Bio::SeqI );
>>> 
>>>   ...
>>>   ...
>>> 
>>>   # Bio::SeqI isa Bio::PrimarySeqI, and needs to implement
>>>   # display_id. this should give back the human readable name
>>>   sub display_id {
>>>     my $obj = shift;
>>> 
>>>     # the caBIOPerl method is "human_readable_name"
>>>     return $obj->{'_cabioperl_object'}->human_readable_name()
>>>   }
>>> 
>>>   # Bio::SeqI needs to implement seq
>>>   sub seq {
>>>     return $obj->{'_cabioperl_object'}->sequence_as_string()
>>>   }
>>> 
>>> 
>>> etc etc
>>> 
>>> 
>>> This is, BTW, something I am planning to do with Ensembl as - make an
>>> Ensembl-Bioperl bridge.
>>> 
>>>> 2. Do you have a repository where people can just "donate" their code
>>> 
>>> into?
>>> 
>>> I would suggest that the caBIO-Bioperl bridge was its own cvs module
>>> and
>>> donated into CPAN. You could run the cvs module at Bioperl.org or do
>>> it in
>>> your own shop - entirely up to you.
>>> 
>>>> 3. caBIOperl has its own object model, if the end vision is to
>>>> integrate
>>>> this model with BIOperl, how should I proceed?
>>> 
>>> see above
>>> 
>>>> 4. Can I get access to the CVS repository?
>>> 
>>> You shouldn't need access to the bioperl cvs repository to come up
>>> with
>>> some working code - if you want to have the caBio-Bioperl bridge
>>> repository hosted at bioperl.org that's feasible, but probably
>>> building
>>> some proof-of-concept classes first off would be great.
>>> 
>>> 
>>> A great first step would be if someone could write a script like:
>>> 
>>> 
>>> use Bio::caBIOBridge::DBAccess;
>>> use Bio::SeqIO;
>>> 
>>> # default to well known caBio server
>>> $db = Bio::caBIOBridge::DBAccess->new();
>>> 
>>> $ca_wrapped_seq = $db->get_Seq_by_id('some_id');
>>> 
>>> # $ca_wrapped_seq is Bio::SeqI object but is actually a thin wrapper
>>> over
>>> # caBIO objects
>>> 
>>> # Bio::SeqIO is a Bioperl object writer that works with Bio::SeqI
>>> # compliant objects
>>> $seqout = Bio::SeqIO->new( -format => 'EMBL');
>>> 
>>> # Here we see the bridge in action!
>>> $seqout->write_seq($ca_wrapped_seq);
>>> 
>>>> I am not sure how familiar you are with caBIOperl. So if you have any
>>>> question, please do not hesistate to ask me.
>>>> 
>>>> Regards,
>>>> Shan Jiang
>>>> (Contractor)
>>> 
>>> _______________________________________________
>>> Bioperl-l mailing list
>>> Bioperl-l at portal.open-bio.org
>>> http://portal.open-bio.org/mailman/listinfo/bioperl-l
>> 
>> -- 
>> Lincoln Stein
>> lstein at cshl.edu
>> Cold Spring Harbor Laboratory
>> 1 Bungtown Road
>> Cold Spring Harbor, NY 11724
>> (516) 367-8380 (voice)
>> (516) 367-8389 (fax)
>> _______________________________________________
>> Bioperl-l mailing list
>> Bioperl-l at portal.open-bio.org
>> http://portal.open-bio.org/mailman/listinfo/bioperl-l
>> 
>> 
> -- 
> -------------------------------------------------------------
> Hilmar Lapp                            email: lapp at gnf.org
> GNF, San Diego, Ca. 92121              phone: +1-858-812-1757
> -------------------------------------------------------------
> 
> 
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at portal.open-bio.org
> http://portal.open-bio.org/mailman/listinfo/bioperl-l




More information about the Bioperl-l mailing list