NAME

Bio::Variation::SeqDiff - Container class for mutation/variant descriptions

SYNOPSIS

  $seqDiff = Bio::Variation::SeqDiff->new (
                                           -id => $M20132,
					   -alphabet => 'rna',
                                           -gene_symbol => 'AR'
                                           -chromosome => 'X',
                                           -numbering => 'coding'
                                           );
  # get a DNAMutation object somehow
  $seqDiff->add_Variant($dnamut);
  print  $seqDiff->sys_name(), "\n"; 

DESCRIPTION

SeqDiff stores Bio::Variation::VariantI object references and descriptive information common to all changes in a sequence. Mutations are understood to be any kind of sequence markers and are expected to occur in the same chromosome. See Bio::Variation::VariantI for details.

The methods of SeqDiff are geared towards describing mutations in human genes using gene-based coordinate system where 'A' of the initiator codon has number 1 and the one before it -1. This is according to conventions of human genetics.

There will be class Bio::Variation::Genotype to describe markers in different chromosomes and diploid genototypes.

Classes implementing Bio::Variation::VariantI interface are Bio::Variation::DNAMutation, Bio::Variation::RNAChange, and Bio::Variation::AAChange. See Bio::Variation::VariantI, Bio::Variation::DNAMutation, Bio::Variation::RNAChange, and Bio::Variation::AAChange for more information.

Variant objects can be added using two ways: an array passed to the constructor or as individual Variant objects with add_Variant method.

FEEDBACK

Mailing Lists

User feedback is an integral part of the evolution of this and other Bioperl modules. 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

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:

http://bugzilla.open-bio.org/

AUTHOR - Heikki Lehvaslaiho

Email: heikki-at-bioperl-dot-org

CONTRIBUTORS

Eckhard Lehmann, ecky@e-lehmann.de

APPENDIX

The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _

new

Title   : new
Usage   : $seqDiff = Bio::Variation::SeqDiff->new;
Function: generates a new Bio::Variation::SeqDiff
Returns : reference to a new object of class SeqDiff
Args    : 

id

Title   : id
Usage   : $obj->id(H0001); $id = $obj->id();
Function: 

          Sets or returns the id of the seqDiff.
          Should be used to give the collection of variants a UID
          without semantic associations.

Example : 
Returns : value of id, a scalar
Args    : newvalue (optional)

sysname

Title   : sysname
Usage   : $obj->sysname('5C>G'); $sysname = $obj->sysname();
Function: 

          Sets or returns the systematic name of the seqDiff.  The
          name should follow the HUGO Mutation Database Initiative
          approved nomenclature. If called without first setting the
          value, will generate it from L<Bio::Variation::DNAMutation>
          objects attached.

Example : 
Returns : value of sysname, a scalar
Args    : newvalue (optional)

trivname

Title   : trivname
Usage   : $obj->trivname('[A2G;T56G]'); $trivname = $obj->trivname();
Function: 

          Sets or returns the trivial name of the seqDiff.
          The name should follow the HUGO Mutation Database Initiative
          approved nomenclature. If called without first setting the
          value, will generate it from L<Bio::Variation::AAChange>
          objects attached.

Example : 
Returns : value of trivname, a scalar
Args    : newvalue (optional)

chromosome

Title   : chromosome
Usage   : $obj->chromosome('X'); $chromosome = $obj->chromosome();
Function: 

          Sets or returns the chromosome ("linkage group") of the seqDiff.

Example : 
Returns : value of chromosome, a scalar
Args    : newvalue (optional)

gene_symbol

Title   : gene_symbol
Usage   : $obj->gene_symbol('FOS'); $gene_symbol = $obj->gene_symbol;
Function: 

          Sets or returns the gene symbol for the studied CDS.

Example : 
Returns : value of gene_symbol, a scalar
Args    : newvalue (optional)

description

Title   : description
Usage   : $obj->description('short description'); $descr = $obj->description();
Function: 

          Sets or returns the short description of the seqDiff.

Example : 
Returns : value of description, a scalar
Args    : newvalue (optional)

alphabet

Title   : alphabet
Usage   : if( $obj->alphabet eq 'dna' ) { /Do Something/ }
Function: Returns the type of primary reference sequence being one of 
          'dna', 'rna' or 'protein'. This is case sensitive.

Returns : a string either 'dna','rna','protein'. 
Args    : none

numbering

Title   : numbering
Usage   : $obj->numbering('coding'); $numbering = $obj->numbering();
Function: 

          Sets or returns the string giving the numbering schema used
          to describe the variants.

Example : 
Returns : value of numbering, a scalar
Args    : newvalue (optional)

offset

Title   : offset
Usage   : $obj->offset(124); $offset = $obj->offset();
Function: 

          Sets or returns the offset from the beginning of the DNA sequence 
          to the coordinate start used to describe variants. Typically
          the beginning of the coding region of the gene. 
          The cds_start should be 1 + offset.

Example : 
Returns : value of offset, a scalar
Args    : newvalue (optional)

cds_start

Title   : cds_start
Usage   : $obj->cds_start(123); $cds_start = $obj->cds_start();
Function: 

          Sets or returns the cds_start from the beginning of the DNA
          sequence to the coordinate start used to describe
          variants. Typically the beginning of the coding region of
          the gene. Needs to be and is implemented as 1 + offset.

Example : 
Returns : value of cds_start, a scalar
Args    : newvalue (optional)

cds_end

Title   : cds_end
Usage   : $obj->cds_end(321); $cds_end = $obj->cds_end();
Function: 

          Sets or returns the position of the last nucleotitide of the
          termination codon. The coordinate system starts from cds_start.

Example : 
Returns : value of cds_end, a scalar
Args    : newvalue (optional)

rna_offset

Title   : rna_offset
Usage   : $obj->rna_offset(124); $rna_offset = $obj->rna_offset();
Function: 

          Sets or returns the rna_offset from the beginning of the RNA sequence 
          to the coordinate start used to describe variants. Typically
          the beginning of the coding region of the gene. 

Example : 
Returns : value of rna_offset, a scalar
Args    : newvalue (optional)

rna_id

 Title   : rna_id
 Usage   : $obj->rna_id('transcript#3'); $rna_id = $obj->rna_id();
 Function: 

	    Sets or returns the ID for original RNA sequence of the seqDiff.

 Example : 
 Returns : value of rna_id, a scalar
 Args    : newvalue (optional)

add_Variant

Title   : add_Variant
Usage   : $obj->add_Variant($variant)
Function: 

          Pushes one Bio::Variation::Variant into the list of variants.
          At the same time, creates a link from the Variant to SeqDiff
          using its SeqDiff method.

Example : 
Returns : 1 when succeeds, 0 for failure.
Args    : Variant object

each_Variant

Title   : each_Variant
Usage   : $obj->each_Variant();
Function: 

           Returns a list of Variants.

Example : 
Returns : list of Variants
Args    : none

add_Gene

Title   : add_Gene
Usage   : $obj->add_Gene($gene)
Function: 

          Pushes one L<Bio::LiveSeq::Gene> into the list of genes.

Example : 
Returns : 1 when succeeds, 0 for failure.
Args    : Bio::LiveSeq::Gene object

See Bio::LiveSeq::Gene for more information.

each_Gene

Title   : each_Gene
Usage   : $obj->each_Gene();
Function: 

           Returns a list of L<Bio::LiveSeq::Gene>s.

Example : 
Returns : list of Genes
Args    : none

dna_ori

 Title   : dna_ori
 Usage   : $obj->dna_ori('atgctgctgctgct'); $dna_ori = $obj->dna_ori();
 Function: 

	    Sets or returns the original DNA sequence string of the seqDiff.

 Example : 
 Returns : value of dna_ori, a scalar
 Args    : newvalue (optional)

dna_mut

 Title   : dna_mut
 Usage   : $obj->dna_mut('atgctggtgctgct'); $dna_mut = $obj->dna_mut();
 Function: 

	    Sets or returns the mutated DNA sequence of the seqDiff.
            If sequence has not been set generates it from the
            original sequence and DNA mutations.

 Example : 
 Returns : value of dna_mut, a scalar
 Args    : newvalue (optional)

rna_ori

 Title   : rna_ori
 Usage   : $obj->rna_ori('atgctgctgctgct'); $rna_ori = $obj->rna_ori();
 Function: 

	    Sets or returns the original RNA sequence of the seqDiff.

 Example : 
 Returns : value of rna_ori, a scalar
 Args    : newvalue (optional)

rna_mut

 Title   : rna_mut
 Usage   : $obj->rna_mut('atgctggtgctgct'); $rna_mut = $obj->rna_mut();
 Function: 

	    Sets or returns the mutated RNA sequence of the seqDiff.

 Example : 
 Returns : value of rna_mut, a scalar
 Args    : newvalue (optional)

aa_ori

 Title   : aa_ori
 Usage   : $obj->aa_ori('MAGVLL*'); $aa_ori = $obj->aa_ori();
 Function: 

	    Sets or returns the original protein sequence of the seqDiff.

 Example : 
 Returns : value of aa_ori, a scalar
 Args    : newvalue (optional)

aa_mut

 Title   : aa_mut
 Usage   : $obj->aa_mut('MA*'); $aa_mut = $obj->aa_mut();
 Function: 

	    Sets or returns the mutated protein sequence of the seqDiff.

 Example : 
 Returns : value of aa_mut, a scalar
 Args    : newvalue (optional)

seqobj

 Title   : seqobj
 Usage   : $dnaobj = $obj->seqobj('dna_mut');
 Function: 

	    Returns the any original or mutated sequences as a
	    Bio::PrimarySeq object.

 Example : 
 Returns : Bio::PrimarySeq object for the requested sequence
 Args    : string, method name for the sequence requested

See Bio::PrimarySeq for more information.

alignment

Title   : alignment
Usage   : $obj->alignment
Function: 

          Returns a pretty RNA/AA sequence alignment from linked
          objects.  Under construction: Only simple coding region
          point mutations work.

Example : 
Returns : 
Args    : none