Bio::I...iableI(3pm)

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

✨ Bio::IdentifiableI ✨

okay so bestie, this is the manual page for Bio::IdentifiableI πŸŽ€ and if you clock the page header it's also floating around as Bio::I...iableI(3pm) in the User Contributed Perl Documentation set πŸ’… anyway, let's get into it.


πŸ’– NAME πŸ’–

Bio::IdentifiableI β€” the interface for objects with identifiers πŸ¦‹


🌸 SYNOPSIS 🌸

# to test this is an identifiable object

$obj->isa("Bio::IdentifiableI") ||
  $obj->throw("$obj does not implement the Bio::IdentifiableI interface");

# Accessors

$object_id = $obj->object_id();
$namespace = $obj->namespace();
$authority = $obj->authority();
$version   = $obj->version();
# Gets authority:namespace:object_id
$lsid = $obj->lsid_string();
# Gets namespace:object_id.version
$ns_string = $obj->namespace_string();

πŸ’œ DESCRIPTION πŸ’œ

So this interface describes the methods you're expected to have on identifiable objects β€” like, the ones that carry identifiers meant to make sense across a whole bunch of instances and/or domains 🌈. It's modeled after the pretty much ubiquitous ideas for names in bioinformatics, which are:

databasename:object_id.version

Example time, lowkey iconic:

swissprot:P012334.2

or:

GO:0007048

The object will also work with LSID proposals, which bring in the concept of an authority β€” that's the DNS name of the organisation assigning the namespace πŸ‘‘. See http://lsid.sourceforge.net/.

Helper functions are provided so you can build the useful strings ✨:

  • lsid_string β€” string complying to the LSID standard
  • namespace_string β€” string complying to the usual convention of namespace:object_id.version

🫢 FEEDBACK 🫢

Mailing Lists

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

bioperl-l@bioperl.org                  - General discussion
http://bioperl.org/wiki/Mailing_lists  - 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 responsive 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 more deets the better, no cap.

Reporting Bugs

Report bugs to the Bioperl bug tracking system to help us keep track of the bugs and their resolution πŸ›. Bug reports can be submitted via the web:

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


πŸ‘‘ AUTHOR - Ewan Birney πŸ‘‘

Email birney@ebi.ac.uk


πŸ”₯ Implementation Specific Functions πŸ”₯

These functions are the ones that a specific implementation must define. No skipping, bestie πŸ’…

object_id

  • Title: object_id
  • Usage: $string = $obj->object_id()
  • Function: a string which represents the stable primary identifier in this namespace of this object. For DNA sequences this is its accession_number, similarly for protein sequences
  • Returns: A scalar
  • Status: Virtual

version

  • Title: version
  • Usage: $version = $obj->version()
  • Function: a number which differentiates between versions of the same object. Higher numbers are considered to be later and more relevant, but a single object described the same identifier should represent the same concept
  • Returns: A number
  • Status: Virtual

authority

  • Title: authority
  • Usage: $authority = $obj->authority()
  • Function: a string which represents the organisation which granted the namespace, written as the DNS name for organisation (eg, wormbase.org)
  • Returns: A scalar
  • Status: Virtual

namespace

  • Title: namespace
  • Usage: $string = $obj->namespace()
  • Function: A string representing the name space this identifier is valid in, often the database name or the name describing the collection
  • Returns: A scalar
  • Status: Virtual

🧚 Implementation optional functions 🧚

These functions are helper functions that are provided by the interface but can be overridden if so wished ✨

lsid_string

  • Title: lsid_string
  • Usage: $string = $obj->lsid_string()
  • Function: a string which gives the LSID standard notation for the identifier of interest
  • Returns: A scalar

namespace_string

  • Title: namespace_string
  • Usage: $string = $obj->namespace_string()
  • Function: a string which gives the common notation of namespace:object_id.version
  • Returns: A scalar

okay that's the whole page, you ate that πŸ’… go forth and identify your objects responsibly πŸ¦‹

mwah, this one's served up on perl v5.32.1, dated 2021-08-15 πŸŽ€ periodt πŸ’–

πŸ“¦ where this page comes from