Bio::Phylo::Parsers::Dwca(3)

NAME
Bio::Phylo::Parsers::Dwca - Parser used by Bio::Phylo::IO, no serviceable parts inside

DESCRIPTION
This module parses standard Darwin Core Archive files as produced by GBIF (see: <http://www.gbif.org/resource/80639>). The end result is a Bio::Phylo::Taxa object that has as many taxon objects in it as there are distinct "dwc:scientificName"s in the archive. For example, if the archive is for a single species there will thus be only one taxon object in the produced result. Each taxon object is annotated with as many "dwc:Occurrence" records, instantiated as Bio::Phylo::NeXML::Meta annotations, as there are occurrences for that species in the archive. In turn, nested in each of these annotations are the predicates and objects for that record.

Using this module, the contents of a Darwin Core Archive can be easily accessed and, for example, prepared as input for MAXENT. Here is an example to show how this is done:

        use Bio::Phylo::IO 'parse';
        use Bio::Phylo::Util::CONSTANT ':objecttypes';

        # a set of fossil occurrences of th feral horse, Equus ferus Boddaert, 1785
        # this corresponds with data set doi:10.15468/dl.yyyhyn
        my $url = 'http://api.gbif.org/v1/occurrence/download/request/0074675-160910150852091.zip';

        # like every Bio::Phylo::IO module, we can parse directly from a web location
        my $proj = parse(
                '-format' => 'dwca',
                '-url'    => $url,
                '-as_project' => 1,
        );

        # write a CSV file with MAXENT header
        print "Species,Latitude,Longitude\n";
        for my $t ( @{ $proj->get_items(_TAXON_) } ) {
                my $name = $t->get_name;
                for my $m ( @{ $t->get_meta } ) {
                        my $lat = $m->get_meta_object('dwc:decimalLatitude');
                        my $lon = $m->get_meta_object('dwc:decimalLongitude');
                        print "\"$name\",$lat,$lon\n";
                }
        }

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::IO
    The dwca parser is called by the Bio::Phylo::IO object. Look there to learn how to parse data in general

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>