Bio::Phylo::Taxa::Taxon(3)

NAME
Bio::Phylo::Taxa::Taxon - Operational taxonomic unit

SYNOPSIS
 use Bio::Phylo::IO qw(parse);
 use Bio::Phylo::Factory;
 my $fac = Bio::Phylo::Factory->new;

 # array of names
 my @apes = qw(
     Homo_sapiens
     Pan_paniscus
     Pan_troglodytes
     Gorilla_gorilla
 );

 # newick string
 my $str = '(((Pan_paniscus,Pan_troglodytes),';
 $str   .= 'Homo_sapiens),Gorilla_gorilla);';

 # create tree object
 my $tree = parse(
    -format => 'newick',
    -string => $str
 )->first;

 # instantiate taxa object
 my $taxa = $fac->create_taxa;

 # instantiate taxon objects, insert in taxa object
 foreach( @apes ) {
    my $taxon = $fac->create_taxon(
        -name => $_,
    );
    $taxa->insert($taxon);
 }

 # crossreference tree and taxa
 $tree->cross_reference($taxa);

 # iterate over nodes
 while ( my $node = $tree->next ) {

    # check references
    if ( $node->get_taxon ) {

        # prints crossreferenced tips
        print "match: ", $node->get_name, "\n";
    }
 }

DESCRIPTION
The taxon object models a single operational taxonomic unit. It is useful for cross-referencing datum objects and tree nodes.

METHODS

  MUTATORS

set_data()
    Associates argument data with invocant.

     Type    : Mutator
     Title   : set_data
     Usage   : $taxon->set_data( $datum );
     Function: Associates data with
               the current taxon.
     Returns : Modified object.
     Args    : Must be an object of type
               Bio::Phylo::Matrices::Datum

set_nodes()
    Associates argument node with invocant.

     Type    : Mutator
     Title   : set_nodes
     Usage   : $taxon->set_nodes($node);
     Function: Associates tree nodes
               with the current taxon.
     Returns : Modified object.
     Args    : A Bio::Phylo::Forest::Node object

unset_datum()
    Removes association between argument data and invocant.

     Type    : Mutator
     Title   : unset_datum
     Usage   : $taxon->unset_datum($node);
     Function: Disassociates datum from
               the invocant taxon (i.e.
               removes reference).
     Returns : Modified object.
     Args    : A Bio::Phylo::Matrix::Datum object

unset_node()
    Removes association between argument node and invocant.

     Type    : Mutator
     Title   : unset_node
     Usage   : $taxon->unset_node($node);
     Function: Disassociates tree node from
               the invocant taxon (i.e.
               removes reference).
     Returns : Modified object.
     Args    : A Bio::Phylo::Forest::Node object

  ACCESSORS

get_data()
    Retrieves associated datum objects.

     Type    : Accessor
     Title   : get_data
     Usage   : @data = @{ $taxon->get_data };
     Function: Retrieves data associated
               with the current taxon.
     Returns : An ARRAY reference of
               Bio::Phylo::Matrices::Datum
               objects.
     Args    : None.

get_nodes()
    Retrieves associated node objects.

     Type    : Accessor
     Title   : get_nodes
     Usage   : @nodes = @{ $taxon->get_nodes };
     Function: Retrieves tree nodes associated
               with the current taxon.
     Returns : An ARRAY reference of
               Bio::Phylo::Trees::Node objects
     Args    : None.

SEE ALSO
There is a mailing list at <https://groups.google.com/forum/#!forum/bio-phylo> for any user or developer questions and discussions.

Bio::Phylo::NeXML::Writable
    The taxon objects inherits from the Bio::Phylo::NeXML::Writable object. The methods defined there are also applicable to the taxon object.

Bio::Phylo::Manual
    Also see the manual: Bio::Phylo::Manual and <http://rutgervos.blogspot.com>.

CITATION
If you use Bio::Phylo in published research, please cite it:

Rutger A Vos, Jason Caravas, Klaas Hartmann, Mark A Jensen and Chase Miller, 2011. Bio::Phylo - phyloinformatic analysis using Perl. BMC Bioinformatics 12:63. <http://dx.doi.org/10.1186/1471-2105-12-63>