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.
- new()
-
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
- set_triple()
- 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
- get_triple ()
- 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
- get_object()
- Returns triple object
Type : Accessor
Title : get_object
Usage : my $val = $anno->get_object;
Function: Returns triple object
Returns : A triple object
Args : NONE
- get_predicate()
- Returns triple predicate
Type : Accessor
Title : get_predicate
Usage : my $val = $anno->get_predicate;
Function: Returns triple predicate
Returns : A triple predicate
Args : NONE
- get_predicate_namespace()
- 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
- get_predicate_local()
- 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
- get_object_type()
- 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
- is_resource()
- 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
- is_xml_literal()
- 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
- to_dom()
-
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.
- Bio::Phylo::Dictionary
- Annotation objects are combined into a dictionary.
- Bio::Phylo::NeXML::Writable
- This object inherits from Bio::Phylo::NeXML::Writable, so methods defined
there are also applicable here.
- Bio::Phylo::Manual
- 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>