text
Usage - print $def->text() or $def->text($text)
Returns - the definition text (string)
Args - the definition text (string)
Function - gets/sets the definition text
dbxref_set
Usage - $def->dbxref_set() or $def->dbxref_set($dbxref_set)
Returns - the definition dbxref set (OBO::Util::DbxrefSet)
Args - the definition dbxref set (OBO::Util::DbxrefSet)
Function - gets/sets the definition dbxref set
dbxref_set_as_string
Usage - $definition->dbxref_set_as_string() or $definition->dbxref_set_as_string("[GOC:elh, PMID:9334324, UM-BBD_pathwayID:2\,4\,5-t]")
Returns - the dbxref set (string) of this definition; [] if the set is empty
Args - the dbxref set (string) describing the source(s) of this definition
Function - gets/sets the dbxref set of this definition. The set operation actually *adds* the new dbxrefs to the existing set
Remark - make sure that colons (,) are scaped (\,) when necessary
equals
Usage - $def->equals($another_def)
Returns - either 1 (true) or 0 (false)
Args - the definition to compare with
Function - tells whether this definition is equal to the parameter
NAME
OBO::Core::Def - A definition structure of a term. A term should have zero or one instance of this type per term description.
SYNOPSIS
use OBO::Core::Def;
use OBO::Core::Dbxref;
use strict;
# three new def's
my $def1 = OBO::Core::Def->new();
my $def2 = OBO::Core::Def->new();
my $def3 = OBO::Core::Def->new();
$def1->text("APO:vm text");
$def2->text("APO:ls text");
$def3->text("APO:ea text");
my $ref1 = OBO::Core::Dbxref->new();
my $ref2 = OBO::Core::Dbxref->new();
my $ref3 = OBO::Core::Dbxref->new();
$ref1->name("APO:vm");
$ref2->name("APO:ls");
$ref3->name("APO:ea");
my $dbxref_set1 = OBO::Util::DbxrefSet->new();
$dbxref_set1->add($ref1);
my $dbxref_set2 = OBO::Util::DbxrefSet->new();
$dbxref_set2->add($ref2);
my $dbxref_set3 = OBO::Util::DbxrefSet->new();
$dbxref_set3->add($ref3);
$def1->dbxref_set($dbxref_set1);
$def2->dbxref_set($dbxref_set2);
$def3->dbxref_set($dbxref_set3);
# dbxref_set_as_string
$def2->dbxref_set_as_string('[APO:vm, APO:ls, APO:ea "Erick Antezana"] {opt=first}');
my @refs_def2 = $def2->dbxref_set()->get_set();
my %r_def2;
foreach my $ref_def2 (@refs_def2) {
$r_def2{$ref_def2->name()} = $ref_def2->name();
}
DESCRIPTION
A OBO::Core::Def object encapsules a definition for a universal. There must be zero or one instance of this type per term description. An object of this type should have a quote enclosed definition text, and a OBO::Core::Dbxref set containing data base cross references which describe the origin of this definition (see OBO::Core::Dbxref for information on how Dbxref lists are used).
c.f. OBO flat file specification.
AUTHOR
Erick Antezana, <erick.antezana -@- gmail.com>
COPYRIGHT AND LICENSE
Copyright (c) 2006-2015 by Erick Antezana. All rights reserved.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.7 or, at your option, any later version of Perl 5 you may have available.