The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Bio::DasLite - Perl extension for the DAS (HTTP+XML) Protocol (http://biodas.org/)

SYNOPSIS

  use Bio::DasLite;

  my $das = Bio::DasLite->new({
                                 'timeout'    => 60,                                       # optional timeout in seconds
                                 'dsn'        => "http://das.ensembl.org/das/ensembl1834", # optional DSN (scalar, or arrayref)
                                 'http_proxy' => "http://webcache.local.com:3128",         # optional http proxy
                                });

  $das->dsn("http://das.ensembl.org/das/ensembl1834/"); # give dsn (scalar or arrayref) here if not specified in new()

  #########
  # Retrieve other sources from the same service (returns Bio::DasLite objects)
  #
  my $src_data      = $das->dsns();

  #########
  # Retrieve entry_points, e.g. chromosomes and associated information (e.g. sequence length and version)
  #
  my $entry_points  = $das->entry_points();

  #########
  # Retrieve sequence data (probably dna or protein)
  #
  my $sequence      = $das->sequence("2:1,1000"); # segment:start,stop (e.g. chromosome 2, bases 1 to 1000)

  #########
  # Find out about different data types available from this source
  #
  my $types         = $das->types(); # takes optional args - see DAS specs

  #########
  # Different ways to fetch features -
  #
  my $feature_data1 = $das->features("1:1,100000");
  my $feature_data2 = $das->features({
                                      'segment' => "1:1,1000",
                                      'type'    => "karyotype",
                                      # optional args - see DAS Spec
                                     });
  my $feature_data3 = $das->features([
                                      {'segment' => "1:1,1000000",'type' => 'karyotype',},
                                      {'segment' => "2:1,1000000",},
                                     ]);

DESCRIPTION

This module is an implementation of a client for the DAS protocol (XML over HTTP primarily for biological-data). It requires LWP::Parallel::UserAgent.

SEE ALSO

DAS Specifications at: http://biodas.org/documents/spec.html

ProServer (A DAS Server implementation) at: http://www.sanger.ac.uk/proserver/

The venerable Bio::Das suite (CPAN and http://www.biodas.org/download/Bio::Das/).

AUTHOR

Roger Pettett, <rmp@sanger.ac.uk>

COPYRIGHT AND LICENSE

Copyright (C) 2005 by Roger Pettett

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.4 or, at your option, any later version of Perl 5 you may have available.