Bio::Phylo::NeXML::Meta - Single predicate/object annotation, attached to an xml-writable subject
use Bio::Phylo::Factory; use Bio::Phylo::Util::CONSTANT ':namespaces'; my $fac = Bio::Phylo::Factory->new; my $url = 'http://purl.org/phylo/treebase/phylows/study/TB2:S1787'; my $proj = $fac->create_project->add_meta( $fac->create_meta( '-namespaces' => { 'cdao' => _NS_CDAO_ }, '-triple' => { 'cdao:hasMeta' => $fac->create_meta( '-namespaces' => { 'cdao' => _NS_CDAO_ }, '-triple' => { 'cdao:has_External_Reference' => $url } ) } ) );
To comply with the NeXML standard (http://www.nexml.org), Bio::Phylo implements metadata annotations which consist conceptually of RDF triples where the subject is a container object that subclasses Bio::Phylo::NeXML::Writable, and the predicate and object are defined in this class.
The objects of the triples provided by this class can be of any simple type (string, number) or one of XML::DOM, XML::GDOME, XML::LibXML, XML::Twig, XML::DOM2, XML::DOMBacked, XML::Handler, XML::Element, XML::API, XML::Code or XML::XMLWriter or RDF::Core::Model.
When serialized, the Bio::Phylo::NeXML::Meta object in NeXML is typically written out as an element called 'meta', with RDFa compliant attributes.
Type : Constructor Title : new Usage : my $anno = Bio::Phylo::NeXML::Meta->new; Function: Initializes a Bio::Phylo::NeXML::Meta object. Returns : A Bio::Phylo::NeXML::Meta object. Args : optional constructor arguments are key/value pairs where the key corresponds with any of the methods that starts with set_ (i.e. mutators) and the value is the permitted argument for such a method. The method name is changed such that, in order to access the set_value($val) method in the constructor, you would pass -value => $val
Populates the triple, assuming that the invocant is attached to a subject.
Type : Mutator Title : set_triple Usage : $meta->set_triple( $predicate, $object ); Function: Populates the triple. Returns : Modified object. Args : $predicate - a CURIE whose namespace prefix must have been bound previously using $meta->set_namespaces( $prefix, $uri ); $object - any of the valid object types: a number, a string, a url, a nested annotation or anything that can be adapted by Bio::Phylo::NeXML::Meta::XMLLiteral
Returns predicate and object for the triple
Type : Accessor Title : get_triple Usage : my ( $predicate, $object ) = $anno->get_triple; Function: Returns triple Returns : Predicate and object of a triple Args : NONE
Returns triple object
Type : Accessor Title : get_object Usage : my $val = $anno->get_object; Function: Returns triple object Returns : A triple object Args : NONE
Returns triple predicate
Type : Accessor Title : get_predicate Usage : my $val = $anno->get_predicate; Function: Returns triple predicate Returns : A triple predicate Args : NONE
Returns predicate namespace
Type : Accessor Title : get_predicate_namespace Usage : my $val = $anno->get_predicate_namespace; Function: Returns predicate namespace Returns : A namespace Args : NONE
Returns predicate without prefix
Type : Accessor Title : get_predicate_local Usage : my $val = $anno->get_predicate_local; Function: Returns predicate without prefix Returns : A predicate Args : NONE
Returns data type of object
Type : Accessor Title : get_object_type Usage : my $val = $anno->get_object_type; Function: Returns data type of object Returns : A local predicate, e.g. 'boolean' Args : NONE
Returns whether the object is a resource (e.g. an href or a nested XMLLiteral)
Type : Accessor Title : is_resource Usage : my $val = $anno->is_resource; Function: Returns whether object is a resource Returns : Boolean Args : NONE
Returns whether the object is a nested XMLLiteral
Type : Accessor Title : is_xml_literal Usage : my $val = $anno->is_xml_literal; Function: Returns whether object is a nested XMLLiteral Returns : Boolean Args : NONE
Type : Serializer Title : to_dom Usage : $obj->to_dom Function: Generates a DOM subtree from the invocant and its contained objects Returns : a DOM element object (default: XML::Twig flavor) Args : DOM factory object Note : This is the generic function. It is redefined in the classes below.
There is a mailing list at https://groups.google.com/forum/#!forum/bio-phylo for any user or developer questions and discussions.
Annotation objects are combined into a dictionary.
This object inherits from Bio::Phylo::NeXML::Writable, so methods defined there are also applicable here.
Also see the manual: Bio::Phylo::Manual and http://rutgervos.blogspot.com.
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
To install Bio::Phylo, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Bio::Phylo
CPAN shell
perl -MCPAN -e shell install Bio::Phylo
For more information on module installation, please visit the detailed CPAN module installation guide.