Bio::V...riantI(3pm)

๐Ÿ’– Bio::Variation::VariantI โ€” the vibe is "sequence change superclass" ๐Ÿ’–

okay bestie, welcome to Bio::Variation::VariantI, a SeqFeature abstract class all about sequence changes. it lives in the User Contributed Perl Documentation zone (section 3pm, iykyk). grab a strawberry ๐Ÿ“ and let's get into it.


โœจ NAME โœจ

Bio::Variation::VariantI โ€” Sequence Change SeqFeature abstract class ๐Ÿงฌ๐Ÿ’…


๐ŸŒธ SYNOPSIS ๐ŸŒธ

okay so here's the whole entire moment, verbatim, no notes:

  #get Bio::Variant::VariantI somehow
  print $var->restriction_changes, "\n";
  foreach $allele ($var->each_Allele) {
      #work on Bio::Variation::Allele objects
  }

like. it's giving "I have a variant and I wanna look at it." iconic. ๐Ÿ‘‘


๐Ÿฆ‹ DESCRIPTION ๐Ÿฆ‹

so this superclass defines the common methods for basic sequence changes. periodt. the actual instantiable classes that use them are Bio::Variation::DNAMutation, Bio::Variation::RNAChange and Bio::Variation::AAChange. if you want more info, go read Bio::Variation::DNAMutation, Bio::Variation::RNAChange, and Bio::Variation::AAChange โ€” they're right there waiting for you ๐Ÿซถ

these classes store information only. the heavy computation to figure out allele sequences? that happens elsewhere, bestie. not here. this is just the storage unit. ๐Ÿ“ฆโœจ

the database cross-references are implemented as Bio::Annotation::DBLink objects. the methods to access them are defined in Bio::DBLinkContainerI. so if you need the details, check out Bio::Annotation::DBLink and Bio::DBLinkContainerI. ๐Ÿ’œ

Bio::Variation::VariantI redefines and extends Bio::SeqFeature::Generic for sequence variations. this class describes specific sequence change events. and listen โ€” these events are always from a specific reference sequence to something different. always. no cap. want more? see Bio::SeqFeature::Generic. ๐ŸŒˆ

IMPORTANT: ๐Ÿšจ the notion of reference sequence permeates all Bio::Variation classes. this is especially important to remember when you're dealing with Alleles. in a polymorphic site, there can be a large number of alleles. one of them has to be selected to be the reference allele (allele_ori). ALL the rest has to be passed to the Variant using the method add_Allele, including the mutated allele in a canonical mutation. the IO modules and generated attributes depend on it. they ignore the allele linked to using allele_mut and circulate each Allele returned by each_Allele into allele_mut and calculate the changes between that and allele_ori. ๐Ÿ˜ค๐Ÿ’€

๐Ÿ’ฌ 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 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. lots of 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 detail the better, bestie โ€” it's giving helpful. โœจ

๐Ÿ› 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

go off, tell them everything. ๐Ÿ‘‘


๐Ÿ‘‘ AUTHOR - Heikki Lehvaslaiho

Email: heikki-at-bioperl-dot-org


(more coming bestie, don't go anywhere ๐Ÿ’…)

๐Ÿฆ‹ APPENDIX ๐Ÿฆ‹

okay bestie, this is the part where we go method by method ๐Ÿ’… the main docs are done, now it's time for the deep dive. Internal methods usually start with an _, so if you see that, mind your business, it's not for you ๐Ÿซถ


โœจ id โœจ

  • Title โ€” id
  • Usage โ€” $obj->id
  • Function โ€” Read only method. It hands you back the id of the variation object. And likeโ€ฆ the id is literally the id of the first DBLink object attached to this object, so no, you can't just make one up ๐Ÿ’€
  • Example โ€” (none, she's mysterious)
  • Returns โ€” scalar
  • Args โ€” none

๐ŸŒธ add_Allele ๐ŸŒธ

  • Title โ€” add_Allele
  • Usage โ€” $self->add_Allele($allele)
  • Function โ€” Adds one Bio::Variation::Allele into the list of alleles. And bestie, heads up: this method forces the convention that nucleotide sequence is in lower case and amino acds are in upper case. No negotiating, that's just the vibe โœจ
  • Example โ€” (none)
  • Returns โ€” 1 when succeeds, 0 for failure.
  • Args โ€” Allele object

๐ŸŽ€ each_Allele ๐ŸŽ€

  • Title โ€” alleles
  • Usage โ€” $obj->each_Allele();
  • Function โ€” Returns a list of Bio::Variation::Allele objects
  • Example โ€” (none)
  • Returns โ€” list of Alleles
  • Args โ€” none

๐Ÿ’– isMutation ๐Ÿ’–

  • Title โ€” isMutation
  • Usage โ€” print join('/', $obj->each_Allele) if not $obj->isMutation;
  • Function โ€” Returns or sets the boolean value indicating that the variant described is a canonical mutation with two alleles assinged to be the original (wild type) allele and mutated allele, respectively. If this value is not set, it is assumed that the Variant describes polymorphisms.
  • Returns โ€” a boolean

๐ŸŒˆ allele_ori ๐ŸŒˆ

  • Title โ€” allele_ori
  • Usage โ€” $obj->allele_ori();
  • Function โ€” Links to and returns the Bio::Variation::Allele object. If value is not set, returns false. All other Alleles are compared to this. Amino acid sequences are stored in upper case characters, others in lower case.
  • Example โ€” (none)
  • Returns โ€” string
  • Args โ€” string
See Bio::Variation::Allele for more. ๐Ÿ’œ

๐Ÿงš allele_mut ๐Ÿงš

  • Title โ€” allele_mut
  • Usage โ€” $obj->allele_mut();
  • Function โ€” Links to and returns the Bio::Variation::Allele object. Sets and returns the mutated allele sequence. If value is not set, returns false. Amino acid sequences are stored in upper case characters, others in lower case.
  • Example โ€” (none)
  • Returns โ€” string
  • Args โ€” string
See Bio::Variation::Allele for more. ๐Ÿ’œ

๐Ÿ‘‘ length ๐Ÿ‘‘

  • Title โ€” length
  • Usage โ€” $obj->length();
  • Function โ€” Sets and returns the length of the affected original allele sequence. If value is not set, returns false == 0.

Value 0 means that the variant position is before the start=end sequence position. (Value 1 would denote a point mutation). This follows the convension to report an insertion (2insT) in equivalent way to a corresponding deletion (2delT) (Think about indel polymorpism ATC <=> AC where the origianal state is not known ).

  • Example โ€” (none)
  • Returns โ€” string
  • Args โ€” string

๐Ÿ’œ upStreamSeq ๐Ÿ’œ

  • Title โ€” upStreamSeq
  • Usage โ€” $obj->upStreamSeq();
  • Function โ€” Sets and returns upstream flanking sequence string. If value is not set, returns false. The sequence should be >=25 characters long, if possible.
  • Example โ€” (none)
  • Returns โ€” string or false
  • Args โ€” string

๐Ÿ’œ dnStreamSeq ๐Ÿ’œ

  • Title โ€” dnStreamSeq
  • Usage โ€” $obj->dnStreamSeq();
  • Function โ€” Sets and returns dnstream flanking sequence string. If value is not set, returns false. The sequence should be >=25 characters long, if possible.
  • Example โ€” (none)
  • Returns โ€” string or false
  • Args โ€” string

๐Ÿท๏ธ label ๐Ÿท๏ธ

  • Title โ€” label
  • Usage โ€” $obj->label();
  • Function โ€” Sets and returns mutation event label(s). If value is not set, or no argument is given returns false. Each instantiable class needs to implement this method. Valid values are listed in 'Mutation event controlled vocabulary' in http://www.ebi.ac.uk/mutations/recommendations/mutevent.html.
  • Example โ€” (none)
  • Returns โ€” string
  • Args โ€” string

โญ status โญ

  • Title โ€” status
  • Usage โ€” $obj->status()
  • Function โ€” Returns the status of the sequence change object. Valid values are: 'suspected' and 'proven'
  • Example โ€” $obj->status('proven');
  • Returns โ€” scalar
  • Args โ€” valid string (optional, for setting)

๐Ÿ”ฅ proof ๐Ÿ”ฅ

  • Title โ€” proof
  • Usage โ€” $obj->proof()
  • Function โ€” Returns the proof of the sequence change object. Valid values are: 'computed' and 'experimental'.
  • Example โ€” $obj->proof('computed');
  • Returns โ€” scalar
  • Args โ€” valid string (optional, for setting)

๐ŸŒธ region ๐ŸŒธ

  • Title โ€” region
  • Usage โ€” $obj->region();
  • Function โ€” Sets and returns the name of the sequence region type or protein domain at this location. If value is not set, returns false.
  • Example โ€” (none)
  • Returns โ€” string
  • Args โ€” string

๐ŸŒธ region_value ๐ŸŒธ

  • Title โ€” region_value
  • Usage โ€” $obj->region_value();
  • Function โ€” Sets and returns the name of the sequence region_value or protein domain at this location. If value is not set, returns false.
  • Example โ€” (none)
  • Returns โ€” string
  • Args โ€” string

๐Ÿ“ region_dist ๐Ÿ“

  • Title โ€” region_dist
  • Usage โ€” $obj->region_dist();
  • Function โ€” Sets and returns the distance tot the closest region (i.e. intro/exon or domain) boundary. If distance is not set, returns false.
  • Example โ€” (none)
  • Returns โ€” integer
  • Args โ€” integer

๐Ÿ”ข numbering ๐Ÿ”ข

  • Title โ€” numbering
  • Usage โ€” $obj->numbering()
  • Function โ€” Returns the numbering chema used locating sequnce features. Valid values are: 'entry' and 'coding'
  • Example โ€” $obj->numbering('coding');
  • Returns โ€” scalar
  • Args โ€” valid string (optional, for setting)

๐Ÿงฎ mut_number ๐Ÿงฎ

  • Title โ€” mut_number
  • Usage โ€”
$num = $obj->mut_number;
$num = $obj->mut_number($number);
  • Function โ€” Returns or sets the number identifying the order in which the mutation has been issued. Numbers should start from 1. If the number has never been set, the method will return ''

If you want the output from IO modules look nice and, for multivariant/allele variations, make sense you better set this attribute.

  • Returns โ€” an integer

๐Ÿฆ‹ SeqDiff ๐Ÿฆ‹

  • Title โ€” SeqDiff
  • Usage โ€”
$mutobj = $obj->SeqDiff;
$mutobj = $obj->SeqDiff($objref);
  • Function โ€” Returns or sets the link-reference to the umbrella Bio::Variation::SeqDiff object. If there is no link, it will return undef

Note: Adding a variant into a SeqDiff object will automatically set this value.

  • Returns โ€” an obj_ref or undef
See Bio::Variation::SeqDiff for more information. ๐Ÿ’œ

  • Title โ€” add_DBLink
  • Usage โ€” $self->add_DBLink($ref)
  • Function โ€” adds a link object
  • Example โ€” (none)
  • Returns โ€” (none)
  • Args โ€” (none)

  • Title โ€” each_DBLink
  • Usage โ€” foreach $ref ( $self->each_DBlink() )
  • Function โ€” gets an array of DBlink of objects
  • Example โ€” (none)
  • Returns โ€” (none)
  • Args โ€” (none)

โœ‚๏ธ restriction_changes โœ‚๏ธ

  • Title โ€” restriction_changes
  • Usage โ€” $obj->restriction_changes();
  • Function โ€” Returns a string containing a list of restriction enzyme changes of form +EcoRI, separated by commas. Strings need to be valid restriction enzyme names as stored in REBASE. allele_ori and allele_mut need to be assigned.
  • Example โ€” (none)
  • Returns โ€” string
  • Args โ€” string

and that's a wrap on the whole page, bestie ๐ŸŽ€ go forth and annotate your variants, you absolute icon ๐Ÿ‘‘

this doc came from perl v5.32.1, dated 2021-12-02, and it's the manual for Bio::V...riantI(3pm) โ€” mwah, thanks for reading, ily ๐Ÿ’–

๐Ÿ“ฆ where this page comes from