type

Usage    - print $synonym->type() or $synonym->type("EXACT")
Returns  - the synonym type
Args     - the synonym type: 'EXACT', 'BROAD', 'NARROW', 'RELATED'
Function - gets/sets the synonym name

def

Usage    - print $synonym->def() or $synonym->def($def)
Returns  - the synonym definition (CCO::Core::Def)
Args     - the synonym definition (CCO::Core::Def)
Function - gets/sets the synonym definition

def_as_string

Usage    - $synonym->def_as_string() or $synonym->def_as_string("Here goes the synonym.", "[GOC:elh, PMID:9334324]")
Returns  - the synonym text (string)
Args     - the synonym text plus the dbxref list describing the source of this definition
Function - gets/sets the definition of this synonym

equals

Usage    - print $synonym->equals($another_synonym)
Returns  - either 1 (true) or 0 (false)
Args     - the synonym to compare with
Function - tells whether this synonym is equal to the parameter

NAME

CCO::Core::Synonym  - A term synonym.

SYNOPSIS

use CCO::Core::Synonym; use CCO::Core::Dbxref; use strict;

my $syn1 = CCO::Core::Synonym->new(); my $syn2 = CCO::Core::Synonym->new(); my $syn3 = CCO::Core::Synonym->new(); my $syn4 = CCO::Core::Synonym->new();

# type $syn1->type('EXACT'); $syn2->type('BROAD'); $syn3->type('NARROW'); $syn4->type('NARROW');

# def my $def1 = CCO::Core::Def->new(); my $def2 = CCO::Core::Def->new(); my $def3 = CCO::Core::Def->new(); my $def4 = CCO::Core::Def->new();

$def1->text("Hola mundo1"); $def2->text("Hola mundo2"); $def3->text("Hola mundo3"); $def4->text("Hola mundo3");

my $ref1 = CCO::Core::Dbxref->new(); my $ref2 = CCO::Core::Dbxref->new(); my $ref3 = CCO::Core::Dbxref->new(); my $ref4 = CCO::Core::Dbxref->new();

$ref1->name("CCO:vm"); $ref2->name("CCO:ls"); $ref3->name("CCO:ea"); $ref4->name("CCO:ea");

my $refs_set1 = CCO::Util::DbxrefSet->new(); $refs_set1->add_all($ref1,$ref2,$ref3,$ref4); $def1->dbxref_set($refs_set1); $syn1->def($def1);

my $refs_set2 = CCO::Util::DbxrefSet->new(); $refs_set2->add($ref2); $def2->dbxref_set($refs_set2); $syn2->def($def2);

my $refs_set3 = CCO::Util::DbxrefSet->new(); $refs_set3->add($ref3); $def3->dbxref_set($refs_set3); $syn3->def($def3);

my $refs_set4 = CCO::Util::DbxrefSet->new(); $refs_set4->add($ref4); $def4->dbxref_set($refs_set4); $syn4->def($def4);

# def as string $syn3->def_as_string("This is a dummy synonym", "[CCO:vm, CCO:ls, CCO:ea \"Erick Antezana\"]"); my @refs_syn3 = $syn3->def()->dbxref_set()->get_set(); my %r_syn3; foreach my $ref_syn3 (@refs_syn3) { $r_syn3{$ref_syn3->name()} = $ref_syn3->name(); }

DESCRIPTION

A synonym for a term held by the ontology. This synonym must have a type and definition (CCO::Core::Def) describing the origins of the synonym, and may indicate a synonym category or scope information.

The synonym scope may be one of four values: EXACT, BROAD, NARROW, RELATED.

A term may have any number of synonyms.

c.f. OBO flat file specification.

AUTHOR

Erick Antezana, <erant@psb.ugent.be>

COPYRIGHT AND LICENSE

Copyright (C) 2006 by erant

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.