| BioPerl documentation | Contained in the BioPerl distribution. |
Bio::Phenotype::PhenotypeI - An interface for classes modeling phenotypes
#get Bio::Phenotype::PhenotypeI somehow
print $phenotype->name(), "\n";
print $phenotype->description(), "\n";
my @keywords = ( "achondroplasia", "dwarfism" );
$phenotype->add_keywords( @keywords );
foreach my $keyword ( $phenotype->each_keyword() ) {
print $keyword, "\n";
}
$phenotype->remove_keywords();
foreach my $gene_symbol ( $phenotype->each_gene_symbol() ) {
print $gene_symbol, "\n";
}
foreach my $corr ( $phenotype->each_Correlate() ) {
# Do something with $corr
}
foreach my $var ( $phenotype->each_Variant() ) {
# Do something with $var (mutation)
}
foreach my $measure ( $phenotype->each_Measure() ) {
# Do something with $measure
}
This superclass defines common methods for classes modelling phenotypes. Bio::Phenotype::OMIM::OMIMentry is an example of an instantiable phenotype class (the design of this interface was partially guided by the need to model OMIM entries). Please note. This interface provides methods to associate mutations (methods "each_Variant", ...) and genotypes (methods "each_Genotype", ...) with phenotypes. Yet, these aspects might need some future enhancements, especially since there is no "genotype" class yet.
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
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.
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://redmine.open-bio.org/projects/bioperl/
Christian M. Zmasek
Email: czmasek-at-burnham.org or cmzmasek@yahoo.com
WWW: http://monochrome-effect.net/
Address:
Genomics Institute of the Novartis Research Foundation 10675 John Jay Hopkins Drive San Diego, CA 92121
The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _
Title : name
Usage : $obj->name( "r1" );
or
print $obj->name();
Function: Set/get for the name or id of this phenotype.
Returns : A name or id [scalar].
Args : A name or id [scalar] (optional).
Title : description
Usage : $obj->description( "This is ..." );
or
print $obj->description();
Function: Set/get for the description of this phenotype.
Returns : A description [scalar].
Args : A description [scalar] (optional).
Title : species
Usage : $obj->species( $species );
or
$species = $obj->species();
Function: Set/get for the species of this phenotype.
Returns : A species [Bio::Species].
Args : A species [Bio::Species] (optional).
Title : comment
Usage : $obj->comment( "putative" );
or
print $obj->comment();
Function: Set/get for a comment about this phenotype.
Returns : A comment [scalar].
Args : A comment [scalar] (optional).
Title : each_gene_symbol()
Usage : @gs = $obj->each_gene_symbol();
Function: Returns a list of gene symbols [scalars, most likely Strings]
associated with this phenotype.
Returns : A list of scalars.
Args :
Title : add_gene_symbols
Usage : $obj->add_gene_symbols( @gs );
or
$obj->add_gene_symbols( $gs );
Function: Pushes one or more gene symbols [scalars, most likely Strings]
into the list of gene symbols.
Returns :
Args : scalar(s).
Usage : $obj->remove_gene_symbols();
Function: Deletes (and returns) the list of gene symbols [scalars,
most likely Strings] associated with this phenotype.
Returns : A list of scalars.
Args :
Title : each_Variant()
Usage : @vs = $obj->each_Variant();
Function: Returns a list of Bio::Variation::VariantI implementing objects
associated with this phenotype.
This is for representing the actual mutation(s) causing this
phenotype.
{* The "variants" data member and its methods will/might need to be
changed/improved in one way or another, CZ 09/06/02 *}
Returns : A list of Bio::Variation::VariantI implementing objects.
Args :
Usage : $obj->add_Variants( @vs );
or
$obj->add_Variants( $v );
Function: Pushes one or more Bio::Variation::VariantI implementing objects
into the list of Variants.
Returns :
Args : Bio::Variation::VariantI implementing object(s).
Title : remove_Variants
Usage : $obj->remove_Variants();
Function: Deletes (and returns) the list of Bio::Variation::VariantI implementing
objects associated with this phenotype.
Returns : A list of Bio::Variation::VariantI implementing objects.
Args :
Title : each_Reference()
Usage : @refs = $obj->each_Reference();
Function: Returns a list of Bio::Annotation::Reference objects
associated with this phenotype.
Returns : A list of Bio::Annotation::Reference objects.
Args :
Title : add_References
Usage : $obj->add_References( @refs );
or
$obj->add_References( $ref );
Function: Pushes one or more Bio::Annotation::Reference objects
into the list of References.
Returns :
Args : Bio::Annotation::Reference object(s).
Title : remove_References()
Usage : $obj->remove_References();
Function: Deletes (and returns) the list of Bio::Annotation::Reference objects
associated with this phenotype.
Returns : A list of Bio::Annotation::Reference objects.
Args :
Title : each_CytoPosition()
Usage : @cps = $obj->each_CytoPosition();
Function: Returns a list of Bio::Map::CytoPosition objects
associated with this phenotype.
Returns : A list of Bio::Map::CytoPosition objects.
Args :
Title : add_CytoPositions
Usage : $obj->add_CytoPositions( @cps );
or
$obj->add_CytoPositions( $cp );
Function: Pushes one or more Bio::Map::CytoPosition objects
into the list of CytoPositions.
Returns :
Args : Bio::Map::CytoPosition object(s).
Title : remove_CytoPositions
Usage : $obj->remove_CytoPositions();
Function: Deletes (and returns) the list o fBio::Map::CytoPosition objects
associated with this phenotype.
Returns : A list of Bio::Map::CytoPosition objects.
Args :
Title : each_Correlate()
Usage : @corrs = $obj->each_Correlate();
Function: Returns a list of Bio::Phenotype::Correlate objects
associated with this phenotype.
(Correlates are correlating phenotypes in different species;
inspired by mouse correlates of human phenotypes in the OMIM
database.)
Returns : A list of Bio::Phenotype::Correlate objects.
Args :
Title : add_Correlates
Usage : $obj->add_Correlates( @corrs );
or
$obj->add_Correlates( $corr );
Function: Pushes one or more Bio::Phenotype::Correlate objects
into the list of Correlates.
Returns :
Args : Bio::Phenotype::Correlate object(s).
Title : remove_Correlates
Usage : $obj->remove_Correlates();
Function: Deletes (and returns) the list of Bio::Phenotype::Correlate objects
associated with this phenotype.
Returns : A list of Bio::Phenotype::Correlate objects.
Args :
Title : each_Measure()
Usage : @ms = $obj->each_Measure();
Function: Returns a list of Bio::Phenotype::Measure objects
associated with this phenotype.
(Measure is for biochemically defined phenotypes
or any other types of measures.)
Returns : A list of Bio::Phenotype::Measure objects.
Args :
Title : add_Measures
Usage : $obj->add_Measures( @ms );
or
$obj->add_Measures( $m );
Function: Pushes one or more Bio::Phenotype::Measure objects
into the list of Measures.
Returns :
Args : Bio::Phenotype::Measure object(s).
Title : remove_Measures
Usage : $obj->remove_Measures();
Function: Deletes (and returns) the list of Bio::Phenotype::Measure objects
associated with this phenotype.
Returns : A list of Bio::Phenotype::Measure objects.
Args :
Title : each_keyword()
Usage : @kws = $obj->each_keyword();
Function: Returns a list of key words [scalars, most likely Strings]
associated with this phenotype.
Returns : A list of scalars.
Args :
Title : add_keywords
Usage : $obj->add_keywords( @kws );
or
$obj->add_keywords( $kw );
Function: Pushes one or more keywords [scalars, most likely Strings]
into the list of key words.
Returns :
Args : scalar(s).
Title : remove_keywords
Usage : $obj->remove_keywords();
Function: Deletes (and returns) the list of key words [scalars,
most likely Strings] associated with this phenotype.
Returns : A list of scalars.
Args :
Title : each_DBLink()
Usage : @dbls = $obj->each_DBLink();
Function: Returns a list of Bio::Annotation::DBLink objects
associated with this phenotype.
Returns : A list of Bio::Annotation::DBLink objects.
Args :
Title : add_DBLinks
Usage : $obj->add_DBLinks( @dbls );
or
$obj->add_DBLinks( $dbl );
Function: Pushes one or more Bio::Annotation::DBLink objects
into the list of DBLinks.
Returns :
Args : Bio::Annotation::DBLink object(s).
Title : remove_DBLinks
Usage : $obj->remove_DBLinks();
Function: Deletes (and returns) the list of Bio::Annotation::DBLink objects
associated with this phenotype.
Returns : A list of Bio::Annotation::DBLink objects.
Args :
Title : each_Reference()
Usage : @gts = $obj->each_Reference();
Function: Returns a list of "Genotype" objects
associated with this phenotype.
{* the "genotypes" data member and its methods certainly will/needs to be
changed/improved in one way or another since there is
no "Genotype" class yet, CZ 09/06/02 *}
Returns : A list of "Genotype" objects.
Args :
Title : add_Genotypes
Usage : $obj->add_Genotypes( @gts );
or
$obj->add_Genotypes( $gt );
Function: Pushes one or more "Genotypes"
into the list of "Genotypes".
Returns :
Args : "Genotypes(s)".
Title : remove_Genotypes
Usage : $obj->remove_Genotypes();
Function: Deletes (and returns) the list of "Genotype" objects
associated with this phenotype.
Returns : A list of "Genotype" objects.
Args :
| BioPerl documentation | Contained in the BioPerl distribution. |
# # BioPerl module for Bio::Phenotype::PhenotypeI # # Please direct questions and support issues to <bioperl-l@bioperl.org> # # Cared for by Christian M. Zmasek <czmasek-at-burnham.org> or <cmzmasek@yahoo.com> # # (c) Christian M. Zmasek, czmasek-at-burnham.org, 2002. # (c) GNF, Genomics Institute of the Novartis Research Foundation, 2002. # # You may distribute this module under the same terms as perl itself. # Refer to the Perl Artistic License (see the license accompanying this # software package, or see http://www.perl.com/language/misc/Artistic.html) # for the terms under which you may use, modify, and redistribute this module. # # THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED # WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF # MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. # # You may distribute this module under the same terms as perl itself # POD documentation - main docs before the code
# Let the code begin... package Bio::Phenotype::PhenotypeI; use base qw(Bio::Root::RootI);
sub name { my ( $self ) = @_; $self->throw_not_implemented(); } # name
sub description { my ( $self ) = @_; $self->throw_not_implemented(); } # description
sub species { my ( $self ) = @_; $self->throw_not_implemented(); } # species
sub comment { my ( $self ) = @_; $self->throw_not_implemented(); } # comment
sub each_gene_symbol { my ( $self ) = @_; $self->throw_not_implemented(); } # each_gene_symbol
sub add_gene_symbols { my ( $self ) = @_; $self->throw_not_implemented(); } # add_gene_symbols
sub remove_gene_symbols { my ( $self ) = @_; $self->throw_not_implemented(); } # remove_gene_symbols
sub each_Variant { my ( $self ) = @_; $self->throw_not_implemented(); } # each_Variant
sub add_Variants { my ( $self ) = @_; $self->throw_not_implemented(); } # add_Variants
sub remove_Variants { my ( $self ) = @_; $self->throw_not_implemented(); } # remove_Variants
sub each_Reference { my ( $self ) = @_; $self->throw_not_implemented(); } # each_Reference
sub add_References { my ( $self ) = @_; $self->throw_not_implemented(); } # add_References
sub remove_References { my ( $self ) = @_; $self->throw_not_implemented(); } # remove_References
sub each_CytoPosition { my ( $self ) = @_; $self->throw_not_implemented(); } # each_CytoPosition
sub add_CytoPositions { my ( $self ) = @_; $self->throw_not_implemented(); } # add_CytoPositions
sub remove_CytoPositions { my ( $self ) = @_; $self->throw_not_implemented(); } # remove_CytoPositions
sub each_Correlate { my ( $self ) = @_; $self->throw_not_implemented(); } # each_Correlate
sub add_Correlates { my ( $self ) = @_; $self->throw_not_implemented(); } # add_Correlates
sub remove_Correlates { my ( $self ) = @_; $self->throw_not_implemented(); } # remove_Correlates
sub each_Measure { my ( $self ) = @_; $self->throw_not_implemented(); } # each_Measure
sub add_Measures { my ( $self ) = @_; $self->throw_not_implemented(); } # add_Measures
sub remove_Measures { my ( $self ) = @_; $self->throw_not_implemented(); } # remove_Measures
sub each_keyword { my ( $self ) = @_; $self->throw_not_implemented(); } # each_keyword
sub add_keywords { my ( $self ) = @_; $self->throw_not_implemented(); } # add_keywords
sub remove_keywords { my ( $self ) = @_; $self->throw_not_implemented(); } # remove_keywords
sub each_DBLink { my ( $self ) = @_; $self->throw_not_implemented(); }
sub add_DBLinks { my ( $self ) = @_; $self->throw_not_implemented(); } # add_DBLinks
sub remove_DBLinks { my ( $self ) = @_; $self->throw_not_implemented(); } # remove_DBLinks
sub each_Genotype { my ( $self ) = @_; $self->throw_not_implemented(); } # each_Genotype
sub add_Genotypes { my ( $self ) = @_; $self->throw_not_implemented(); } # add_Genotypes
sub remove_Genotypes { my ( $self ) = @_; $self->throw_not_implemented(); } # remove_Genotypes 1;