Bio::D...ationI(3pm)

πŸ“¦
version 1.7.8 Β· 3 versions
, in debian bookworm, debian trixie, ubuntu jammy, ubuntu noble

πŸ’– NAME πŸ’–

Bio::DB::LocationI β€” it's a RandomAccessI-like abstract interface for grabbing location data out of a sequence database and handing you back Bio::LocationI objects. Yes bestie, the whole file lives under Bio::D...ationI(3pm) in the User Contributed Perl Documentation corner of your system, and we're getting into it. πŸ¦‹


✨ SYNOPSIS ✨

#
# get a database object somehow using a concrete class
#

$loc = $db->get_Location_by_id('123456');

#
# $loc is a Bio::LocationI object
#
Okay so lowkey the whole plot twist is: you don't call this class. You get a database object from some concrete class first, and then you ask it for locations. That's the vibe. πŸ’…

🌸 DESCRIPTION 🌸

This is a pure interface class β€” fr fr, all it does is define methods that the other (concrete) classes are gonna actually implement. It's giving blueprint energy, not build-it-yourself energy. πŸ’€

The Bio::DB::LocationI class defines the methods used to retrieve location data from a sequence. That data comes back to you in the form of Bio::LocationI objects, which can include:

  • Bio::Location::Simple
  • Bio::Location::Fuzzy
  • Bio::Location::Split

At the moment it is just the ability to make Bio::LocationI objects from a name or unique id (id), an accession number (acc), and so on. That's it, that's the whole menu. πŸŽ€


🫢 CONTACT 🫢

Ewan Birney originally wrote Bio::DB::RandomAccessI, from which this class is based. Iconic lineage, we respect it. πŸ‘‘

🌈 Mailing Lists

User feedback is an integral part of the evolution of this and other Bioperl modules. Send your comments and suggestions preferably to one of the Bioperl mailing lists. Your participation is much appreciated. πŸ₯Ή

bioperl-l@lists.open-bio.org               - General discussion
http://bioperl.org/Support.html  - About the mailing lists

πŸ’œ Support

Please direct usage questions or support issues to the mailing list:

bioperl-l@bioperl.org

rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem with code and data examples if at all possible. (The original really does spell it "reponsive" β€” we're keeping it, no cap. πŸ™ˆ)

πŸ› Reporting Bugs

Report bugs to the Bioperl bug tracking system to help us keep track the bugs and their resolution. Bug reports can be submitted via the web.

https://github.com/bioperl/bioperl-live/issues

🧚 AUTHOR 🧚

Email cjfields at bioperl dot org πŸ’Œ


πŸ‘‘ APPENDIX πŸ‘‘

The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _ β€” that underscore is your little "hands off, bestie, this is private" signal. 🚫

πŸ”₯ get_Location_by_id

  • Title β€” get_Location_by_id
  • Usage β€” $loc = $db->get_Location_by_id('123456')
  • Function β€” Gets a Bio::LocationI-implementing object by its name (id)
  • Returns β€” a Bio::LocationI object or undef if not found
  • Args β€” the id (as a string) of a sequence

⭐ get_Location_by_acc

  • Title β€” get_Location_by_acc
  • Usage β€” $loc = $db->get_Location_by_acc('X77802');
  • Function β€” Gets a Bio::LocationI object by accession number
  • Returns β€” A Bio::LocationI object or undef if not found
  • Args β€” accession number (as a string)
  • Throws β€” "more than one sequences correspond to this accession" if the accession maps to multiple primary ids and method is called in a scalar context
Heads up bestie: that throw is a real one. Scalar context + ambiguous accession = drama. πŸ’€

🌟 get_Location_by_version

  • Title β€” get_Location_by_version
  • Usage β€” $loc = $db->get_Location_by_version('X77802.1');
  • Function β€” Gets a Bio::LocationI object by sequence version
  • Returns β€” A Bio::LocationI object
  • Args β€” accession.version (as a string)
  • Throws β€” "acc.version does not exist" exception

perl v5.32.1 ✦ 2021-08-15 β€” and that's the whole page, mwah. Stay slay, go fetch those locations, and remember: interface class today, concrete implementation tomorrow. πŸ’…βœ¨πŸ¦‹

πŸ“¦ where this page comes from