BioSQL

From BioPerl
Jump to: navigation, search

BioSQL is a part of the OBDA standard and was developed as a common sequence database schema for the different language projects within the Open Bioinformatics Foundation.

The BioPerl client implementation is bioperl-db. It provides an Object-Relational Mapping (ORM) for various BioPerl objects, such as Bio::SeqI. Here is a simple example:

 #!/usr/bin/perl
 
 use strict;
 
 use Bio::Seq;
 use Bio::DB::BioDB;
 
 # create a database adaptor, actual parameters depend on your local database installation, here postgresql
 my $dbadp = Bio::DB::BioDB->new(-database => 'biosql',
                                -user => 'biosql',
                                -dbname => 'biosql',
                                -host => 'localhost',
                                -driver => 'Pg');
 
 my $adp = $dbadp->get_object_adaptor("Bio::SeqI");
 
 my $acc = "XP_000001"; # just a dummy
 
 my $seq = Bio::Seq->new(-accession_number => $acc,
                         -namespace => 'swissprot',
                         -version   => $ver);
 
 my $dbseq = $adp->find_by_unique_key($seq);
 
 my $feat = Bio::SeqFeature::Generic->new(-primary_tag => $primary_tag,
                                         -strand => 1,
                                         -start => 100,
                                         -end => 10000,
                                         -source_tag => 'blat');                                                          
 $dbseq->add_SeqFeature($feat);
 $dbseq->store;
Personal tools
Namespaces
Variants
Actions
Main Links
documentation
community
development
Toolbox